OLD | NEW |
| (Empty) |
1 <!DOCTYPE html> | |
2 <html> | |
3 <body> | |
4 <script src="../../../resources/js-test.js"></script> | |
5 <script> | |
6 description('Tests using DeviceOrientation from multiple frames.'); | |
7 | |
8 var mockEvent = {alpha: 1.1, beta: 2.2, gamma: 3.3, absolute: true}; | |
9 if (window.testRunner) | |
10 testRunner.setMockDeviceOrientation(true, mockEvent.alpha, true, mockEvent.b
eta, true, mockEvent.gamma, mockEvent.absolute); | |
11 else | |
12 debug('This test can not be run without the TestRunner'); | |
13 | |
14 var deviceOrientationEvent; | |
15 function checkOrientation(event) { | |
16 deviceOrientationEvent = event; | |
17 shouldBe('deviceOrientationEvent.alpha', 'mockEvent.alpha'); | |
18 shouldBe('deviceOrientationEvent.beta', 'mockEvent.beta'); | |
19 shouldBe('deviceOrientationEvent.gamma', 'mockEvent.gamma'); | |
20 shouldBe('deviceOrientationEvent.absolute', 'mockEvent.absolute'); | |
21 } | |
22 | |
23 var hasMainFrameEventFired = false; | |
24 function mainFrameListener(event) { | |
25 checkOrientation(event); | |
26 hasMainFrameEventFired = true; | |
27 maybeFinishTest(); | |
28 } | |
29 | |
30 var hasChildFrameEventFired = false; | |
31 function childFrameListener(event) { | |
32 checkOrientation(event); | |
33 hasChildFrameEventFired = true; | |
34 maybeFinishTest(); | |
35 } | |
36 | |
37 function maybeFinishTest() { | |
38 if (hasMainFrameEventFired && hasChildFrameEventFired) | |
39 finishJSTest(); | |
40 } | |
41 | |
42 var childFrame = document.createElement('iframe'); | |
43 document.body.appendChild(childFrame); | |
44 childFrame.contentWindow.addEventListener('deviceorientation', childFrameListene
r); | |
45 | |
46 window.addEventListener('deviceorientation', mainFrameListener); | |
47 | |
48 window.jsTestIsAsync = true; | |
49 </script> | |
50 </body> | |
51 </html> | |
OLD | NEW |