diff options
Diffstat (limited to 'testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_allow_downloads.tentative.html')
-rw-r--r-- | testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_allow_downloads.tentative.html | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_allow_downloads.tentative.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_allow_downloads.tentative.html new file mode 100644 index 0000000000..158fc4f947 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_window_open_download_allow_downloads.tentative.html @@ -0,0 +1,29 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>Downloads triggered by window.open from sandbox are blocked.</title> +<link rel="help" href="https://html.spec.whatwg.org/multipage/#attr-iframe-sandbox"> +<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-iframe-element"> +<script src="/common/utils.js"></script> +<script src="/resources/testharness.js"></script> +<script src='/resources/testharnessreport.js'></script> +<script src="support/iframe_sandbox_download_helper.js"></script> +<body> +<script> +"use strict"; + +['', '"_blank"', '"_blank", "noopener"'].forEach(options => + async_test(t => { + const download_token = token(); + let iframe = document.createElement("iframe"); + const download_link = `support/download_stash.py?token=${download_token}` + + `&finish-delay=${StreamDownloadFinishDelay()}`; + iframe.srcdoc = `<script>window.open("${download_link}", ${options})</scr` + + `ipt>`; + iframe.sandbox = "allow-same-origin allow-popups allow-scripts " + + "allow-downloads"; + AssertDownloadSuccess(t, download_token, DownloadVerifyDelay()); + document.body.appendChild(iframe); + }, `window.open(download, ${options}) triggering download in ` + + 'sandbox is allowed by allow-downloads.')); +</script> +</body> |