diff options
Diffstat (limited to 'testing/web-platform/tests/web-locks/crashtests/iframe-append.https.html')
-rw-r--r-- | testing/web-platform/tests/web-locks/crashtests/iframe-append.https.html | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/testing/web-platform/tests/web-locks/crashtests/iframe-append.https.html b/testing/web-platform/tests/web-locks/crashtests/iframe-append.https.html new file mode 100644 index 0000000000..507a40d272 --- /dev/null +++ b/testing/web-platform/tests/web-locks/crashtests/iframe-append.https.html @@ -0,0 +1,21 @@ +<!DOCTYPE html> +<html class="test-wait"> +<meta charset="utf-8"> +<iframe id="id_0"></iframe> +<script> + /** @param {HTMLIFrameElement} iframe */ + function waitForLoad(iframe) { + // iframe is initialized immediately on Chrome while it needs some time on Firefox + if (iframe.contentDocument.readyState === "complete") { + return; + } + return new Promise(r => iframe.onload = r); + } + + const iframe = document.getElementById("id_0"); + iframe.contentWindow.navigator.locks.request("weblock_0", async () => { + await waitForLoad(iframe); + document.body.append(iframe); // discards the document and destroys locks + document.documentElement.classList.remove("test-wait"); + }); +</script> |