blob: 0b5714fd9b91fd21e74d050d9be9ec98329c8815 [file] [log] [blame]
<!doctype HTML>
<!--
Runs an acquire(), then update(), then removes the element, and calls commit.
Update promise should reject.
-->
<style>
#container {
contain: style layout;
width: 100px;
height: 100px;
background: lightblue;
}
</style>
<div id="log"></div>
<script>
// TODO(vmpstr): In WPT this needs to be replaced with reftest-wait.
if (window.testRunner)
window.testRunner.waitUntilDone();
function finishTest(status_string) {
if (document.getElementById("log").innerHTML === "")
document.getElementById("log").innerHTML = status_string;
if (window.testRunner)
window.testRunner.notifyDone();
}
function runTest() {
let container = document.createElement("div");
container.id = "container";
container.getDisplayLock().acquire({ timeout: Infinity }).then(() => {
document.body.appendChild(container);
container.getDisplayLock().update().then(
() => { finishTest("FAIL"); },
() => {
document.body.appendChild(container);
finishTest("PASS");
});
container.remove();
container.getDisplayLock().commit();
});
}
window.onload = runTest;
</script>