diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /testing/web-platform/tests/fullscreen/api/document-fullscreen-enabled-removing-allowfullscreen.sub.html | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/fullscreen/api/document-fullscreen-enabled-removing-allowfullscreen.sub.html')
-rw-r--r-- | testing/web-platform/tests/fullscreen/api/document-fullscreen-enabled-removing-allowfullscreen.sub.html | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/testing/web-platform/tests/fullscreen/api/document-fullscreen-enabled-removing-allowfullscreen.sub.html b/testing/web-platform/tests/fullscreen/api/document-fullscreen-enabled-removing-allowfullscreen.sub.html new file mode 100644 index 0000000000..687a4ff1e4 --- /dev/null +++ b/testing/web-platform/tests/fullscreen/api/document-fullscreen-enabled-removing-allowfullscreen.sub.html @@ -0,0 +1,63 @@ +<!DOCTYPE html> +<title> + Document#fullscreenEnabled removing allowfullscreen after load and then + navigating +</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<iframe></iframe> +<script> + function requestStatus(iframe) { + iframe.contentWindow.postMessage( + "What is document.fullscreenEnabled?", + "*" + ); + return new Promise((resolve) => { + window.addEventListener("message", function listener(e) { + window.removeEventListener("message", listener); + resolve(event.data); + }); + }); + } + + promise_test(async (t) => { + const iframe = document.querySelector("iframe"); + iframe.allowFullscreen = true; + assert_true(iframe.allowFullscreen, "allowFullscreen is false"); + assert_true( + iframe.hasAttribute("allowfullscreen"), + "allowFullscreen attribute is present" + ); + await new Promise((resolve) => { + iframe.onload = resolve; + const path = location.pathname.substring( + 0, + location.pathname.lastIndexOf("/") + 1 + ); + iframe.src = `http://{{hosts[][]}}:{{ports[http][0]}}${path}resources/echo-fullscreenEnabled.html`; + }); + + assert_true( + await requestStatus(iframe), + "document.fullscreenEnabled in the iframe, before navigation" + ); + + iframe.allowFullscreen = false; + assert_false(iframe.allowFullscreen, "allowFullscreen is false"); + assert_false( + iframe.hasAttribute("allowfullscreen"), + "allowFullscreen attribute is not present" + ); + + await new Promise((resolve) => { + iframe.onload = resolve; + iframe.contentWindow.location.href = iframe.src + "?2"; + }); + + assert_false( + await requestStatus(iframe), + "document.fullscreenEnabled in the iframe, after navigation" + ); + }); +</script> |