aboutsummaryrefslogtreecommitdiffstats
path: root/tests/wpt/web-platform-tests/wake-lock/wakelock-object-is-independent.https.html
diff options
context:
space:
mode:
Diffstat (limited to 'tests/wpt/web-platform-tests/wake-lock/wakelock-object-is-independent.https.html')
-rw-r--r--tests/wpt/web-platform-tests/wake-lock/wakelock-object-is-independent.https.html85
1 files changed, 0 insertions, 85 deletions
diff --git a/tests/wpt/web-platform-tests/wake-lock/wakelock-object-is-independent.https.html b/tests/wpt/web-platform-tests/wake-lock/wakelock-object-is-independent.https.html
deleted file mode 100644
index c7818307759..00000000000
--- a/tests/wpt/web-platform-tests/wake-lock/wakelock-object-is-independent.https.html
+++ /dev/null
@@ -1,85 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>WakeLock object is independent</title>
-<link rel="help" href="https://w3c.github.io/wake-lock/">
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-
-<body>
-<script id="iframe" type="text/plain">
-let iframeWakeLock, iframeRequest;
-window.onmessage = async message => {
- switch(message.data) {
- case "INIT":
- iframeWakeLock = await navigator.getWakeLock("screen");
- parent.postMessage(iframeWakeLock.active, "*");
- break;
- case "ACQUIRED":
- iframeRequest = iframeWakeLock.createRequest();
- parent.postMessage(iframeWakeLock.active, "*");
- break;
- case "RELEASED":
- iframeRequest.cancel();
- parent.postMessage(iframeWakeLock.active, "*");
- break;
- default:
- parent.postMessage("unknown operation", "*");
- }
-}
-</script>
-
-<script>
-function load_iframe() {
- return new Promise(resolve => {
- const iframe = document.createElement("iframe");
- iframe.onload = () => { resolve(iframe); };
- iframe.srcdoc = "<script>" +
- document.getElementById('iframe').textContent +
- "<\/script>";
- document.body.appendChild(iframe);
- });
-}
-
-function wait_for_message(iframe) {
- return new Promise(resolve => {
- self.addEventListener("message", function listener(e) {
- if (e.source === iframe.contentWindow) {
- resolve(e.data);
- self.removeEventListener("message", listener);
- }
- });
- });
-}
-
-promise_test(async t => {
- const wakeLock1 = await navigator.getWakeLock("screen");
- const wakeLock2 = await navigator.getWakeLock("screen");
- const iframe = await load_iframe();
-
- //when wakeLock1 is acquired, wakeLock2 and iframeWakeLock are still inactived
- iframe.contentWindow.postMessage("INIT", "*");
- let request1 = wakeLock1.createRequest();
- let isActive1 = await wait_for_message(iframe);
- assert_true(wakeLock1.active, "the active is true when wakeLock1 is acquired");
- assert_false(wakeLock2.active, "the active is false before wakeLock2 is acquired");
- assert_false(isActive1, "the active is false before iframeWakeLock is acquired");
-
- //when wakeLock2 and iframeWakeLock are acquired, release wakeLock1
- iframe.contentWindow.postMessage("ACQUIRED", "*");
- let isActive2 = await wait_for_message(iframe);
- request1.cancel();
- let request2 = wakeLock2.createRequest();
- assert_false(wakeLock1.active, "the active is false when wakeLock1 is released");
- assert_true(wakeLock2.active, "the active is true when wakeLock2 is acquired");
- assert_true(isActive2, "the active is true when iframeWakeLock is acquired");
-
- //release all WakeLock objects
- iframe.contentWindow.postMessage("RELEASED", "*");
- let isActive3 = await wait_for_message(iframe);
- request2.cancel();
- assert_false(wakeLock1.active, "the active is false when wakeLock1 is released");
- assert_false(wakeLock2.active, "the active is false when wakeLock2 is released");
- assert_false(isActive3, "the active is false when iframeWakeLock is released");
-}, "Test that the WakeLock object is independent.");
-</script>
-</body>