OLD | NEW |
1 <html> | 1 <html> |
2 <head> | 2 <head> |
3 <script src="../../resources/js-test.js"></script> | 3 <script src="../../resources/js-test.js"></script> |
4 <script> | 4 <script> |
| 5 window.jsTestIsAsync = true; |
5 var expectedScrollTop = 200; | 6 var expectedScrollTop = 200; |
6 var expectedScrollLeft = 100; | 7 var expectedScrollLeft = 100; |
7 var event; | 8 var event; |
8 var div; | 9 var div; |
9 | 10 |
10 if (window.testRunner) | 11 function runTest() |
11 testRunner.waitUntilDone(); | |
12 | |
13 function dispatchWheelEvent() | |
14 { | 12 { |
15 var overflowElement = document.getElementById("overflow"); | 13 var overflowElement = document.getElementById("overflow"); |
16 if (overflowElement) { | 14 if (overflowElement) { |
17 overflowElement.addEventListener("mousewheel", mousewheelHan
dler, false); | 15 overflowElement.addEventListener("mousewheel", mousewheelHan
dler, false); |
18 | 16 |
19 // EventSender uses 40px per tick. | 17 // EventSender uses 40px per tick. |
20 eventSender.mouseMoveTo(overflowElement.offsetLeft + 5, over
flowElement.offsetTop + 5); | 18 eventSender.mouseMoveTo(overflowElement.offsetLeft + 5, over
flowElement.offsetTop + 5); |
21 eventSender.mouseScrollBy(-2.5, -5); | 19 eventSender.mouseScrollBy(-2.5, -5); |
22 } | 20 } |
23 | 21 |
24 setTimeout('checkOffsets();', 100); | |
25 } | |
26 | |
27 function checkOffsets() | |
28 { | |
29 div = document.getElementById("overflow"); | 22 div = document.getElementById("overflow"); |
30 shouldBe("div.scrollTop", "window.expectedScrollTop"); | 23 shouldBecomeEqual("div.scrollTop == window.expectedScrollTop &&
" + |
31 shouldBe("div.scrollLeft", "window.expectedScrollLeft"); | 24 "div.scrollLeft == window.expectedScrollLeft", "true", finis
hJSTest); |
32 | |
33 if (window.testRunner) | |
34 window.testRunner.notifyDone(); | |
35 } | 25 } |
36 | 26 |
37 function mousewheelHandler(e) | 27 function mousewheelHandler(e) |
38 { | 28 { |
39 event = e; | 29 event = e; |
40 shouldBe("event.deltaY", "window.expectedScrollTop"); | 30 shouldBe("event.deltaY", "window.expectedScrollTop"); |
41 shouldBe("event.deltaX", "window.expectedScrollLeft"); | 31 shouldBe("event.deltaX", "window.expectedScrollLeft"); |
42 shouldBe("event.wheelDeltaY", "-5*120"); | 32 shouldBe("event.wheelDeltaY", "-5*120"); |
43 shouldBe("event.wheelDeltaX", "-2.5*120"); | 33 shouldBe("event.wheelDeltaX", "-2.5*120"); |
44 | 34 |
45 if (e.wheelDeltaY) | 35 if (e.wheelDeltaY) |
46 shouldBe("event.wheelDelta", "-5*120"); | 36 shouldBe("event.wheelDelta", "-5*120"); |
47 else | 37 else |
48 shouldBe("event.wheelDelta", "-2.5*120"); | 38 shouldBe("event.wheelDelta", "-2.5*120"); |
49 } | 39 } |
50 </script> | 40 </script> |
51 </head> | 41 </head> |
52 | 42 |
53 <body style="margin:0" onload="setTimeout('dispatchWheelEvent();', 100)"> | 43 <body style="margin:0" onload="runTest()"> |
54 <div id="overflow" style="border:2px solid black;overflow:auto;height:20
0px;width:200px;"> | 44 <div id="overflow" style="border:2px solid black;overflow:auto;height:20
0px;width:200px;"> |
55 <div style="background-color:red;height:200px;width:400px;"></div> | 45 <div style="background-color:red;height:200px;width:400px;"></div> |
56 <div style="background-color:green;height:200px;width:400px;"></div> | 46 <div style="background-color:green;height:200px;width:400px;"></div> |
57 <div style="background-color:red;height:200px;width:400px;"></div> | 47 <div style="background-color:red;height:200px;width:400px;"></div> |
58 </div> | 48 </div> |
59 <div id="console"></div> | 49 <div id="console"></div> |
60 </body> | 50 </body> |
61 </html> | 51 </html> |
OLD | NEW |