diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
commit | 43a97878ce14b72f0981164f87f2e35e14151312 (patch) | |
tree | 620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/html/cross-origin-embedder-policy/blob.https.html | |
parent | Initial commit. (diff) | |
download | firefox-43a97878ce14b72f0981164f87f2e35e14151312.tar.xz firefox-43a97878ce14b72f0981164f87f2e35e14151312.zip |
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/html/cross-origin-embedder-policy/blob.https.html')
-rw-r--r-- | testing/web-platform/tests/html/cross-origin-embedder-policy/blob.https.html | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/cross-origin-embedder-policy/blob.https.html b/testing/web-platform/tests/html/cross-origin-embedder-policy/blob.https.html new file mode 100644 index 0000000000..ce72f247ef --- /dev/null +++ b/testing/web-platform/tests/html/cross-origin-embedder-policy/blob.https.html @@ -0,0 +1,44 @@ +<!doctype html> +<meta charset=utf-8> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/common/utils.js"></script> +<div id=log></div> +<script> +const origins = get_host_info(); +[ + { + "origin": origins.HTTPS_ORIGIN, + "crossOrigin": origins.HTTPS_REMOTE_ORIGIN + }, + { + "origin": origins.HTTPS_REMOTE_ORIGIN, + "crossOrigin": origins.HTTPS_NOTSAMESITE_ORIGIN + }, + { + "origin": origins.HTTPS_NOTSAMESITE_ORIGIN, + "crossOrigin": origins.HTTPS_ORIGIN + } +].forEach(({ origin, crossOrigin }) => { + ["subframe", "navigate", "popup"].forEach(variant => { + async_test(t => { + const id = token(); + const frame = document.createElement("iframe"); + t.add_cleanup(() => { frame.remove(); }); + const path = new URL("resources/blob-url-factory.html", window.location).pathname; + frame.src = `${origin}${path}?id=${id}&variant=${variant}&crossOrigin=${crossOrigin}`; + window.addEventListener("message", t.step_func(({ data }) => { + if (data.id !== id) { + return; + } + assert_equals(data.origin, origin); + assert_true(data.sameOriginNoCORPSuccess, "Same-origin without CORP did not succeed"); + assert_true(data.crossOriginNoCORPFailure, "Cross-origin without CORP did not fail"); + t.done(); + })); + document.body.append(frame); + }, `Cross-Origin-Embedder-Policy and blob: URL from ${origin} in subframe via ${variant}`); + }); +}); +</script> |