<!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> <script type="module"> import { getOppositeOrientation, attachIframe, } from "./resources/orientation-utils.js"; promise_test(async (t) => { await test_driver.bless("request full screen"); await document.documentElement.requestFullscreen(); const lockPromise = screen.orientation.lock(getOppositeOrientation()); await document.exitFullscreen(); await promise_rejects_dom(t, "AbortError", lockPromise); }, "Fully unlocking the screen orientation causes a pending lock to be aborted"); promise_test(async (t) => { const iframe = await attachIframe(); await test_driver.bless("request full screen"); await document.documentElement.requestFullscreen(); const lockPromise = iframe.contentWindow.screen.orientation.lock( getOppositeOrientation() ); await document.exitFullscreen(); const frameDOMException = iframe.contentWindow.DOMException; await promise_rejects_dom(t, "AbortError", frameDOMException, lockPromise); }, "Fully unlocking the screen orientation causes a pending lock in a nested browsing context to be aborted"); </script>