diff options
Diffstat (limited to 'testing/web-platform/tests/screen-orientation/fullscreen-interactions.html')
-rw-r--r-- | testing/web-platform/tests/screen-orientation/fullscreen-interactions.html | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/testing/web-platform/tests/screen-orientation/fullscreen-interactions.html b/testing/web-platform/tests/screen-orientation/fullscreen-interactions.html new file mode 100644 index 0000000000..b1ac1c7000 --- /dev/null +++ b/testing/web-platform/tests/screen-orientation/fullscreen-interactions.html @@ -0,0 +1,45 @@ +<!DOCTYPE html> +<meta charset="utf-8" /> +<meta viewport="width=device-width, initial-scale=1" /> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/resources/testdriver.js"></script> +<script src="/resources/testdriver-vendor.js"></script> +<body></body> +<script type="module"> + import { + getOppositeOrientation, + attachIframe, + makeCleanup, + } from "./resources/orientation-utils.js"; + + promise_test(async (t) => { + t.add_cleanup(makeCleanup()); + await test_driver.bless("request full screen"); + await document.documentElement.requestFullscreen(); + const currentOrientation = screen.orientation.type; + await screen.orientation.lock( + getOppositeOrientation() + ); + }, "fullscreen and orientation support"); + + promise_test(async (t) => { + const iframe = await attachIframe(); + t.add_cleanup(makeCleanup(iframe)); + const iframeWindow = iframe.contentWindow; + await test_driver.bless("request full screen"); + await document.documentElement.requestFullscreen(); + const currentOrientation = window.screen.orientation.type; + const lockPromise = iframeWindow.screen.orientation.lock( + getOppositeOrientation() + ); + const fsExitPromise = document.exitFullscreen(); + await promise_rejects_dom( + t, + "SecurityError", + iframeWindow.DOMException, + lockPromise + ); + await fsExitPromise; + }, "Iframe can't itself know if it's parent is fullscreen when changing orientation"); +</script> |