Battery Staus API: All Results

Test files: 7; Total subtests: 43

Test Files

  1. /battery-status/battery-interface-idlharness.html
  2. /battery-status/battery-promise.html
  3. /battery-status/battery-charging-manual.html
  4. /battery-status/battery-discharging-manual.html
  5. /battery-status/battery-full-manual.html
  6. /battery-status/battery-plugging-in-manual.html
  7. /battery-status/battery-unplugging-manual.html
TestChrome Beta 48 for AndroidFirefox Nightly 46 for AndroidChrome 47 for WindowsFirefox Night 46 for Windows
/battery-status/battery-interface-idlharness.htmlOKOKOKOK
Battery test: IDLPASSPASSPASSPASS
Navigator interface: operation getBattery()FAILPASSFAILPASS
Navigator must be primary interface of navigatorPASSPASSPASSPASS
Stringification of navigatorPASSPASSPASSPASS
Navigator interface: navigator must inherit property "getBattery" with the proper type (0)PASSPASSPASSPASS
BatteryManager interface: existence and properties of interface objectPASSPASSPASSPASS
BatteryManager interface object lengthPASSPASSPASSPASS
BatteryManager interface object namePASSPASSPASSPASS
BatteryManager interface: existence and properties of interface prototype objectFAILPASSFAILPASS
BatteryManager interface: existence and properties of interface prototype object's "constructor" propertyPASSPASSPASSPASS
BatteryManager interface: attribute chargingPASSPASSPASSPASS
BatteryManager interface: attribute chargingTimePASSPASSPASSPASS
BatteryManager interface: attribute dischargingTimePASSPASSPASSPASS
BatteryManager interface: attribute levelPASSPASSPASSPASS
BatteryManager interface: attribute onchargingchangePASSPASSPASSPASS
BatteryManager interface: attribute onchargingtimechangePASSPASSPASSPASS
BatteryManager interface: attribute ondischargingtimechangePASSPASSPASSPASS
BatteryManager interface: attribute onlevelchangePASSPASSPASSPASS
BatteryManager must be primary interface of managerPASSPASSPASSPASS
Stringification of managerPASSPASSPASSPASS
BatteryManager interface: manager must inherit property "charging" with the proper type (0)PASSPASSPASSPASS
BatteryManager interface: manager must inherit property "chargingTime" with the proper type (1)PASSPASSPASSPASS
BatteryManager interface: manager must inherit property "dischargingTime" with the proper type (2)PASSPASSPASSPASS
BatteryManager interface: manager must inherit property "level" with the proper type (3)PASSPASSPASSPASS
BatteryManager interface: manager must inherit property "onchargingchange" with the proper type (4)PASSPASSPASSPASS
BatteryManager interface: manager must inherit property "onchargingtimechange" with the proper type (5)PASSPASSPASSPASS
BatteryManager interface: manager must inherit property "ondischargingtimechange" with the proper type (6)PASSPASSPASSPASS
BatteryManager interface: manager must inherit property "onlevelchange" with the proper type (7)PASSPASSPASSPASS
EventTarget interface: manager must inherit property "addEventListener" with the proper type (0)PASSPASSPASSPASS
EventTarget interface: calling addEventListener(DOMString,EventListener,boolean) on manager with too few arguments must throw TypeErrorFAILPASSFAILPASS
EventTarget interface: manager must inherit property "removeEventListener" with the proper type (1)PASSPASSPASSPASS
EventTarget interface: calling removeEventListener(DOMString,EventListener,boolean) on manager with too few arguments must throw TypeErrorFAILPASSFAILPASS
EventTarget interface: manager must inherit property "dispatchEvent" with the proper type (2)PASSPASSPASSPASS
EventTarget interface: calling dispatchEvent(Event) on manager with too few arguments must throw TypeErrorPASSPASSPASSPASS
/battery-status/battery-promise.htmlOKOKOKOK
navigator.getBattery() return BatteryManagerPASSPASSPASSPASS
navigator.getBattery() shall always return the same promisePASSPASSPASSPASS
/battery-status/battery-charging-manual.htmlOKOKOKOK
Battery Test: battery neither empty or full, charger plugged inPASSPASSPASSPASS
/battery-status/battery-discharging-manual.htmlOKOKOKOK
Battery Test: battery neither empty or full, charger unplugged inPASSPASSPASSPASS
/battery-status/battery-full-manual.htmlOKOKOKOK
Battery Test: battery full, charger plugged inPASSPASSPASSPASS
/battery-status/battery-plugging-in-manual.html-OK--
/battery-status/battery-unplugging-manual.html-OK-OK
When the device is unplugged in and its charging state is updated, must set the charging attribute's value to false and fire a chargingchange event.-PASS-PASS
When the device is unplugged in and its charging time is updated, must set the chargingTime attribute's value to Infinity and fire a chargingtimechange event.-PASS-PASS
When the device is unplugged in and its discharging time is updated, must set the dischargingTime attribute's value and fire a dischargingtimechange event.-PASS-PASS
When the device is plugged in and the battery level is updated, must set the level attribute's value and fire a levelchange event.-PASS-PASS

Failure analysis:

  1. /battery-status/battery-interface-idlharness.html: Chrome has 4 failures which are not specific to Battery Status API
    1. the first due to throwing instead of rejecting on promise returning methods (in this case, getBattery())
    2. the second due to a general bug of Chrome with WebIDL, see Chrome issue 239915
    3. the last two due to not implementing addEventListener/removeEventListener as expected
  2. /battery-status/battery-plugging-in-manual.html: seems (dis)chargingtimechange event not fired
  3. /battery-status/battery-unplugging-manual.html: Chrome gets 1 and 2 remain tests on Windows and Android respectively