1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 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". The popup has COOP "same-origin". 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": "noopener"
},
{
"title": "cross origin iframe, same origin popup",
"iframeOrigin": CROSS_ORIGIN,
"popupOrigin": SAME_ORIGIN,
"opener": "noopener"
},
{
"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": "noopener"
},
{
"title": "cross origin iframe, same site popup",
"iframeOrigin": CROSS_ORIGIN,
"popupOrigin": SAME_SITE,
"opener": "noopener"
},
{
"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": "noopener"
},
{
"title": "cross origin iframe, cross origin popup",
"iframeOrigin": CROSS_ORIGIN,
"popupOrigin": CROSS_ORIGIN,
"opener": "noopener"
}
].forEach(variant => {
subsetTest(
iframe_test,
`COOP: same-origin to popup COOP: same-origin via an iframe, with ${variant.title}`,
variant.iframeOrigin,
variant.popupOrigin,
{ coop: 'same-origin' },
variant.opener);
});
</script>
</body>
|