OLD | NEW |
| (Empty) |
1 description('Tests using BatteryStatus from multiple frames.'); | |
2 | |
3 var charging = false; | |
4 var chargingTime = Number.POSITIVE_INFINITY; | |
5 var dischargingTime = 6000; | |
6 var level = 0.7; | |
7 | |
8 var battery = navigator.webkitBattery; | |
9 | |
10 function checkBatteryStatus() { | |
11 shouldBe("battery.charging", "false"); | |
12 shouldBe("battery.chargingTime", "Infinity"); | |
13 shouldBe("battery.dischargingTime", "6000"); | |
14 shouldBe("battery.level", "0.7"); | |
15 } | |
16 | |
17 function checkChildBatteryStatus() { | |
18 shouldBe("battery.charging", "false"); | |
19 shouldBe("battery.chargingTime", "Infinity"); | |
20 shouldBe("battery.dischargingTime", "6000"); | |
21 shouldBe("battery.level", "0.7"); | |
22 } | |
23 | |
24 var hasMainFrameEventFired = false; | |
25 function mainFrameListener() { | |
26 hasMainFrameEventFired = true; | |
27 maybeFinishTest(); | |
28 } | |
29 | |
30 var hasChildFrameEventFired = false; | |
31 function childFrameListener() { | |
32 hasChildFrameEventFired = true; | |
33 maybeFinishTest(); | |
34 } | |
35 | |
36 function maybeFinishTest() { | |
37 if (hasMainFrameEventFired && hasChildFrameEventFired) { | |
38 checkBatteryStatus(); | |
39 checkChildBatteryStatus(); | |
40 finishJSTest(); | |
41 } | |
42 } | |
43 | |
44 var childFrame = document.createElement('iframe'); | |
45 document.body.appendChild(childFrame); | |
46 var childBattery = childFrame.contentWindow.navigator.webkitBattery | |
47 childBattery.addEventListener('chargingchange', childFrameListener); | |
48 battery.addEventListener('chargingchange', mainFrameListener); | |
49 | |
50 internals.setBatteryStatus(document, 'chargingchange', charging, chargingTime, d
ischargingTime, level); | |
51 window.jsTestIsAsync = true; | |
OLD | NEW |