46 lines
1.4 KiB
HTML
46 lines
1.4 KiB
HTML
<!DOCTYPE html>
|
|
<title>Ensure 'vertical-scroll' does not affect main frame</title>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="/permissions-policy/experimental-features/resources/common.js"></script>
|
|
<script src="/permissions-policy/experimental-features/resources/vertical-scroll.js"></script>
|
|
<style>
|
|
html, body {
|
|
height: 100%;
|
|
width: 100%;
|
|
}
|
|
.spacer {
|
|
width: 100%;
|
|
height: 100%;
|
|
margin-top: 100%;
|
|
margin-bottom: 100%;
|
|
}
|
|
</style>
|
|
<p> Making sure there is room for vertical scroll </p>
|
|
<div class="spacer"></div>
|
|
<div class="spacer"></div>
|
|
</p>EOP</p>
|
|
<script>
|
|
"use strict";
|
|
|
|
// Sanity check.
|
|
test(() => {
|
|
assert_false(document.featurePolicy.allowsFeature("vertical-scroll"),
|
|
"Expected 'vertical-scroll' to be disabled.");
|
|
}, "'vertical-scroll' disabled in main document.");
|
|
|
|
// Wait for the helper scripts to load.
|
|
promise_test(async() => {
|
|
if (window.input_api_ready)
|
|
return Promise.resolve();
|
|
await new Promise( (r) => {
|
|
window.resolve_on_input_api_ready = r;
|
|
});
|
|
}, "Make sure input injection API is ready.");
|
|
|
|
promise_test(async() => {
|
|
window.scrollTo(0, 0);
|
|
await inject_input("down");
|
|
assert_greater_than(window.scrollY, 0, "Page must have scrolled down.");
|
|
}, "Verify that the page scrolls vertically.");
|
|
</script>
|