diff options
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.html | 85 |
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> |