Bug 1255955 - Add function to dispatch events to event library; r?automatedtester
MozReview-Commit-ID: GBvXy8svoY2
--- a/testing/marionette/event.js
+++ b/testing/marionette/event.js
@@ -1274,8 +1274,23 @@ event.sendKeysToElement = function(
let c = value.charAt(i);
event.sendSingleKey(c, modifiers, window);
}
} else {
throw new ElementNotVisibleError("Element is not visible");
}
};
+
+event.sendEvent = function(eventType, el, modifiers = {}, opts = {}) {
+ opts.canBubble = opts.canBubble || true;
+
+ let doc = el.ownerDocument || el.document;
+ let ev = doc.createEvent("Event");
+
+ ev.shiftKey = modifiers["shift"];
+ ev.metaKey = modifiers["meta"];
+ ev.altKey = modifiers["alt"];
+ ev.ctrlKey = modifiers["ctrl"];
+
+ ev.initEvent(eventType, opts.canBubble, true);
+ el.dispatchEvent(ev);
+};