diff options
Diffstat (limited to 'dom/battery/test')
-rw-r--r-- | dom/battery/test/chrome.toml | 7 | ||||
-rw-r--r-- | dom/battery/test/mochitest.toml | 3 | ||||
-rw-r--r-- | dom/battery/test/test_battery_basics.html | 39 | ||||
-rw-r--r-- | dom/battery/test/test_battery_charging.html | 35 | ||||
-rw-r--r-- | dom/battery/test/test_battery_discharging.html | 35 | ||||
-rw-r--r-- | dom/battery/test/test_battery_unprivileged.html | 25 |
6 files changed, 144 insertions, 0 deletions
diff --git a/dom/battery/test/chrome.toml b/dom/battery/test/chrome.toml new file mode 100644 index 0000000000..2fd3810b26 --- /dev/null +++ b/dom/battery/test/chrome.toml @@ -0,0 +1,7 @@ +[DEFAULT] + +["test_battery_basics.html"] + +["test_battery_charging.html"] + +["test_battery_discharging.html"] diff --git a/dom/battery/test/mochitest.toml b/dom/battery/test/mochitest.toml new file mode 100644 index 0000000000..86f6921b30 --- /dev/null +++ b/dom/battery/test/mochitest.toml @@ -0,0 +1,3 @@ +[DEFAULT] + +["test_battery_unprivileged.html"] diff --git a/dom/battery/test/test_battery_basics.html b/dom/battery/test/test_battery_basics.html new file mode 100644 index 0000000000..3cc16ad1e8 --- /dev/null +++ b/dom/battery/test/test_battery_basics.html @@ -0,0 +1,39 @@ +<!DOCTYPE HTML> +<html> +<head> + <title>Test for Battery API</title> + <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script> + <link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"/> +</head> +<body> +<p id="display"></p> +<div id="content" style="display: none"> +</div> +<pre id="test"> +<script type="application/javascript"> + +"use strict"; + +SimpleTest.waitForExplicitFinish(); + +/** Test for Battery API **/ +ok("getBattery" in navigator, "navigator.getBattery should exist"); +ok(!("battery" in navigator), "navigator.battery should not exist"); + +navigator.getBattery().then(function(battery) { + ok(battery.level >= 0.0 && battery.level <= 1.0, "Battery level " + battery.level + " should be in the range [0.0, 1.0]"); + + SpecialPowers.pushPrefEnv({"set": [["dom.battery.test.default", true]]}, function() { + ok(battery.charging, "Battery should be charging by default"); + is(battery.chargingTime, 0, "Battery chargingTime " + battery.chargingTime + " should be zero by default"); + is(battery.dischargingTime, Infinity, "Battery dischargingTime should be Infinity by default"); + is(battery.level, 1.0, "Battery level " + battery.level + " should be 1.0 by default"); + + SimpleTest.finish(); + }); +}); + +</script> +</pre> +</body> +</html> diff --git a/dom/battery/test/test_battery_charging.html b/dom/battery/test/test_battery_charging.html new file mode 100644 index 0000000000..b284253aef --- /dev/null +++ b/dom/battery/test/test_battery_charging.html @@ -0,0 +1,35 @@ +<!DOCTYPE HTML> +<html> +<head> + <title>Test for Battery API</title> + <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script> + <link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"/> +</head> +<body> +<p id="display"></p> +<div id="content" style="display: none"> +</div> +<pre id="test"> +<script type="application/javascript"> + +"use strict"; + +SimpleTest.waitForExplicitFinish(); + +/** Test for Battery API **/ +navigator.getBattery().then(function(battery) { + ok(battery.level >= 0.0 && battery.level <= 1.0, "Battery level " + battery.level + " should be in the range [0.0, 1.0]"); + + SpecialPowers.pushPrefEnv({"set": [["dom.battery.test.charging", true]]}, function() { + is(battery.charging, true, "Battery should be charging"); + ok(battery.chargingTime >= 0, "Battery chargingTime " + battery.chargingTime + " should be nonnegative when charging"); + is(battery.dischargingTime, Infinity, "Battery dischargingTime should be Infinity when charging"); + + SimpleTest.finish(); + }); +}); + +</script> +</pre> +</body> +</html> diff --git a/dom/battery/test/test_battery_discharging.html b/dom/battery/test/test_battery_discharging.html new file mode 100644 index 0000000000..916e3725e7 --- /dev/null +++ b/dom/battery/test/test_battery_discharging.html @@ -0,0 +1,35 @@ +<!DOCTYPE HTML> +<html> +<head> + <title>Test for Battery API</title> + <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script> + <link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"/> +</head> +<body> +<p id="display"></p> +<div id="content" style="display: none"> +</div> +<pre id="test"> +<script type="application/javascript"> + +"use strict"; + +SimpleTest.waitForExplicitFinish(); + +/** Test for Battery API **/ +navigator.getBattery().then(function(battery) { + ok(battery.level >= 0.0 && battery.level <= 1.0, "Battery level " + battery.level + " should be in the range [0.0, 1.0]"); + + SpecialPowers.pushPrefEnv({"set": [["dom.battery.test.discharging", true]]}, function() { + is(battery.charging, false, "Battery should be discharging"); + is(battery.chargingTime, Infinity, "Battery chargingTime should be Infinity when discharging"); + ok(battery.dischargingTime > 0, "Battery dischargingTime " + battery.dischargingTime + " should be positive when discharging"); + + SimpleTest.finish(); + }); +}); + +</script> +</pre> +</body> +</html> diff --git a/dom/battery/test/test_battery_unprivileged.html b/dom/battery/test/test_battery_unprivileged.html new file mode 100644 index 0000000000..2129aaf6a4 --- /dev/null +++ b/dom/battery/test/test_battery_unprivileged.html @@ -0,0 +1,25 @@ +<!DOCTYPE HTML> +<html> +<head> + <title>Test for Battery API</title> + <script src="/tests/SimpleTest/SimpleTest.js"></script> + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> +</head> +<body> +<p id="display"></p> +<div id="content" style="display: none"> +</div> +<pre id="test"> +<script type="application/javascript"> + +"use strict"; + +/** Test for Battery API **/ +ok(!("getBattery" in navigator), "navigator.getBattery should not exist for unprivileged web content"); +ok(!("battery" in navigator), "navigator.battery should not exist"); +ok(!("BatteryManager" in window), "BatteryManager should not exist"); + +</script> +</pre> +</body> +</html> |