Wed, 31 Dec 2014 06:55:50 +0100
Added tag UPSTREAM_283F7C6 for changeset ca08bd8f51b2
1 /* Any copyright is dedicated to the Public Domain.
2 http://creativecommons.org/publicdomain/zero/1.0/ */
3 "use strict";
5 // from MouseEvents.h
6 const leftButtonFlag = 1;
7 const rightButtonFlag = 2;
9 gTests.push({
10 desc: "Test native mouse events",
11 run: function () {
12 let tab = yield addTab("about:mozilla");
14 // Mousemove.
15 let waitForMove = waitForEvent(document, "mousemove");
16 synthesizeNativeMouseMove(tab.browser, 1, 1);
17 synthesizeNativeMouseMove(tab.browser, 100, 100);
18 let mousemove = yield waitForMove;
19 is(mousemove.cancelable, false, "mousemove is not cancelable");
20 is(mousemove.buttons, 0, "no buttons are down");
22 // Left button down.
23 let waitForDown1 = waitForEvent(document, "mousedown");
24 synthesizeNativeMouseLDown(tab.browser, 100, 100);
25 let mousedown1 = yield waitForDown1;
26 is(mousedown1.cancelable, true, "mousedown is cancelable");
27 is(mousedown1.buttons, leftButtonFlag, "left button is down");
29 // Right button down.
30 let waitForDown2 = waitForEvent(document, "mousedown");
31 synthesizeNativeMouseRDown(tab.browser, 100, 100);
32 let mousedown2 = yield waitForDown2;
33 is(mousedown2.buttons, leftButtonFlag | rightButtonFlag, "both buttons are down");
35 // Left button up.
36 let waitForUp1 = waitForEvent(document, "mouseup");
37 synthesizeNativeMouseLUp(tab.browser, 100, 100);
38 let mouseup1 = yield waitForUp1;
39 is(mouseup1.buttons, rightButtonFlag, "right button is down");
41 // Right button up.
42 let waitForUp2 = waitForEvent(document, "mouseup");
43 synthesizeNativeMouseRUp(tab.browser, 100, 100);
44 let mouseup2 = yield waitForUp2;
45 is(mouseup2.buttons, 0, "no buttons are down");
47 Browser.closeTab(tab, { forceClose: true });
48 }
49 });
51 let test = runTests;