Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test has a WPT meta file that expects 1 subtest issues.
- This WPT test may be referenced by the following Test IDs:
- /cookies/samesite/sandbox-allow-same-site-none-cookies-value.tentative.https.html - WPT Dashboard Interop Dashboard
<!doctype html>
<head>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/cookies/resources/cookie-helper.sub.js"></script>
<script src="/common/get-host-info.sub.js"></script>
</head>
<body onload="doTests()">
<script>
function doTests() {
promise_test(async function (t) {
const value = String(Math.random());
await resetSameSiteCookies(SECURE_ORIGIN, value);
const child = document.createElement("iframe");
child.src = SECURE_ORIGIN + "/cookies/samesite/resources/iframe-subresource-report.html";
child.sandbox = "allow-scripts allow-same-site-none-cookies";
document.body.appendChild(child);
const e = await wait_for_message("COOKIES");
assert_cookie(SECURE_ORIGIN, e.data, "samesite_lax", value, false);
assert_cookie(SECURE_ORIGIN, e.data, "samesite_strict", value, false);
assert_cookie(SECURE_ORIGIN, e.data, "samesite_none", value, true);
}, "SameSite=None cookies should be allowed in the iframe by the `allow-same-site-none-cookies` value");
promise_test(async function (t) {
await resetSameSiteCookies(SECURE_ORIGIN, Math.random());
const iframeB = document.createElement("iframe");
iframeB.src = SECURE_CROSS_SITE_ORIGIN + "/cookies/samesite/resources/cross-site-frame-with-sandboxed-embed.html";
document.body.appendChild(iframeB);
await fetch_tests_from_window(iframeB.contentWindow);
}, "SameSite=None cookies are not present in a frame with a cross-site ancestor (A->B->A)");
}
</script>
</body>