diff options
Diffstat (limited to 'testing/web-platform/tests/fullscreen/rendering/fullscreen-pseudo-class.html')
-rw-r--r-- | testing/web-platform/tests/fullscreen/rendering/fullscreen-pseudo-class.html | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/testing/web-platform/tests/fullscreen/rendering/fullscreen-pseudo-class.html b/testing/web-platform/tests/fullscreen/rendering/fullscreen-pseudo-class.html new file mode 100644 index 0000000000..5b02c32ef3 --- /dev/null +++ b/testing/web-platform/tests/fullscreen/rendering/fullscreen-pseudo-class.html @@ -0,0 +1,46 @@ +<!DOCTYPE html> +<title>:fullscreen pseudo-class</title> +<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 src="../trusted-click.js"></script> +<div><div></div></div> +<script> + promise_test(async (t) => { + t.add_cleanup(() => { + if (document.fullscreenElement) { + return document.exitFullscreen(); + } + }); + const outer = document.querySelector("div"); + const inner = outer.firstChild; + + // First request fullscreen for the outer element. + await trusted_request(outer); + await fullScreenChange(); + assert_equals(document.fullscreenElement, outer); + assert_true( + outer.matches(":fullscreen"), + "outer:fullscreen in simple fullscreen" + ); + assert_false( + inner.matches(":fullscreen"), + "inner:fullscreen in simple fullscreen" + ); + + // Then request fullscreen for the inner element. + await trusted_request(inner); + // Although inner is the fullscreen element, both elements match the + // selector, as both have their fullscreen flag set. + assert_equals(document.fullscreenElement, inner); + assert_true( + inner.matches(":fullscreen"), + "inner:fullscreen in nested fullscreen" + ); + assert_true( + outer.matches(":fullscreen"), + "outer:fullscreen in nested fullscreen" + ); + }); +</script> |