Source code

Revision control

Copy as Markdown

Other Tools

<!DOCTYPE html>
<meta charset="utf-8">
<title>Battery Test: battery neither empty or full, charger plugged in</title>
<link rel="author" title="Intel" href="">
<link rel="help" href="">
<meta name="flags" content="interact">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
This test validates that all of the BatteryManager attributes exist and are set to their correct values when battery is charging.
The device is plugged in to the charger before this test is run.
The battery must neither be empty or full, nor reach empty or full capacity during the test.
Waiting for battery level change to fire levelchange event, maybe need a long time
setup({ explicit_timeout: true });
async_test(function (t) {
navigator.getBattery().then(function (battery) {
t.step(function () {
assert_true(battery.charging, 'charging must be set to true');
assert_equals(battery.dischargingTime, Infinity, 'dischargingTime must be set to Infinity');
assert_greater_than(battery.level, 0, 'level must be greater than 0');
assert_less_than_equal(battery.level, 1.0, 'level must be less than or equal to 1.0');
var battery_level = battery.level;
battery.onlevelchange = t.step_func(function () {
assert_greater_than(battery.level, battery_level, 'The value of the level attribute must increase');
}, function (error) {
t.step(function () {
}, document.title);