| OLD | NEW |
| (Empty) |
| 1 description('Tests that adding a new event listener from a callback works as exp
ected.'); | |
| 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 var firstListenerEvents = 0; | |
| 18 function firstListener() { | |
| 19 checkBatteryStatus(); | |
| 20 if (++firstListenerEvents == 1) { | |
| 21 battery.addEventListener('chargingchange', secondListener); | |
| 22 internals.setBatteryStatus(document, 'chargingchange', charging, chargin
gTime, dischargingTime, level); | |
| 23 } | |
| 24 else if (firstListenerEvents > 2) | |
| 25 testFailed('Too many events for first listener.'); | |
| 26 maybeFinishTest(); | |
| 27 } | |
| 28 | |
| 29 var secondListenerEvents = 0; | |
| 30 function secondListener() { | |
| 31 checkBatteryStatus(); | |
| 32 if (++secondListenerEvents > 1) | |
| 33 testFailed('Too many events for second listener.'); | |
| 34 maybeFinishTest(); | |
| 35 } | |
| 36 | |
| 37 function maybeFinishTest() { | |
| 38 if (firstListenerEvents == 2 && secondListenerEvents == 1) | |
| 39 finishJSTest(); | |
| 40 } | |
| 41 | |
| 42 battery.addEventListener('chargingchange', firstListener); | |
| 43 internals.setBatteryStatus(document, 'chargingchange', charging, chargingTime, d
ischargingTime, level); | |
| 44 window.jsTestIsAsync = true; | |
| OLD | NEW |