summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/cross-origin-opener-policy/iframe-popup-same-origin-allow-popups-to-same-origin-allow-popups.https.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/html/cross-origin-opener-policy/iframe-popup-same-origin-allow-popups-to-same-origin-allow-popups.https.html')
-rw-r--r--testing/web-platform/tests/html/cross-origin-opener-policy/iframe-popup-same-origin-allow-popups-to-same-origin-allow-popups.https.html88
1 files changed, 88 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/cross-origin-opener-policy/iframe-popup-same-origin-allow-popups-to-same-origin-allow-popups.https.html b/testing/web-platform/tests/html/cross-origin-opener-policy/iframe-popup-same-origin-allow-popups-to-same-origin-allow-popups.https.html
new file mode 100644
index 0000000000..099424790a
--- /dev/null
+++ b/testing/web-platform/tests/html/cross-origin-opener-policy/iframe-popup-same-origin-allow-popups-to-same-origin-allow-popups.https.html
@@ -0,0 +1,88 @@
+<!doctype html>
+<meta charset=utf-8>
+<meta name=timeout content=long>
+<meta name="variant" content="?1-2">
+<meta name="variant" content="?3-4">
+<meta name="variant" content="?5-6">
+<meta name="variant" content="?7-8">
+<meta name="variant" content="?9-last">
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/common/dispatcher/dispatcher.js></script>
+<script src=/common/get-host-info.sub.js></script>
+<script src=/common/subset-tests.js></script>
+<script src=/common/utils.js></script>
+<script src="resources/common.js"></script>
+<script src="resources/iframe-test.js"></script>
+
+<body>
+<script>
+// This document has COOP: same-origin-allow-popups. The popup has COOP:
+// same-origin-allow-popups. Therefore there should only be an opener and name
+// if the frameOrigin and popupOrigin are same-origin with this document.
+[
+ {
+ "title": "same origin iframe, same origin popup",
+ "iframeOrigin": SAME_ORIGIN,
+ "popupOrigin": SAME_ORIGIN,
+ "opener": "preserved"
+ },
+ {
+ "title": "same site iframe, same origin popup",
+ "iframeOrigin": SAME_SITE,
+ "popupOrigin": SAME_ORIGIN,
+ "opener": "severed"
+ },
+ {
+ "title": "cross origin iframe, same origin popup",
+ "iframeOrigin": CROSS_ORIGIN,
+ "popupOrigin": SAME_ORIGIN,
+ "opener": "severed"
+ },
+ {
+ "title": "same origin iframe, same site popup",
+ "iframeOrigin": SAME_ORIGIN,
+ "popupOrigin": SAME_SITE,
+ "opener": "severed"
+ },
+ {
+ "title": "same site iframe, same site popup",
+ "iframeOrigin": SAME_SITE,
+ "popupOrigin": SAME_SITE,
+ "opener": "severed"
+ },
+ {
+ "title": "cross origin iframe, same site popup",
+ "iframeOrigin": CROSS_ORIGIN,
+ "popupOrigin": SAME_SITE,
+ "opener": "severed"
+ },
+ {
+ "title": "same origin iframe, cross origin popup",
+ "iframeOrigin": SAME_ORIGIN,
+ "popupOrigin": CROSS_ORIGIN,
+ "opener": "severed"
+ },
+ {
+ "title": "same site iframe, cross origin popup",
+ "iframeOrigin": SAME_SITE,
+ "popupOrigin": CROSS_ORIGIN,
+ "opener": "severed"
+ },
+ {
+ "title": "cross origin iframe, cross origin popup",
+ "iframeOrigin": CROSS_ORIGIN,
+ "popupOrigin": CROSS_ORIGIN,
+ "opener": "severed"
+ }
+].forEach(variant => {
+ subsetTest(
+ iframe_test,
+ `COOP: same-origin-allow-popups to popup COOP: same-origin-allow-popups via an iframe, with ${variant.title}`,
+ variant.iframeOrigin,
+ variant.popupOrigin,
+ { coop: 'same-origin-allow-popups' },
+ variant.opener);
+});
+</script>
+</body>