diff --git a/html/cross-origin-embedder-policy/none.https.html b/html/cross-origin-embedder-policy/none.https.html index e603753084cf2c..54852596835214 100644 --- a/html/cross-origin-embedder-policy/none.https.html +++ b/html/cross-origin-embedder-policy/none.https.html @@ -84,6 +84,8 @@ assert_equals(win, null); }, `"require-corp" top-level noopener popup: navigating to "none" should succeed`); +// CORP is checked because COEP of the frame is "require-corp". The parent +// frame's COEP value doesn't matter. async_test(t => { const frame = document.createElement("iframe"); const id = token(); @@ -94,8 +96,33 @@ t.done(); } })); - frame.src = `${HOST.HTTPS_NOTSAMESITE_ORIGIN}${BASE}/navigate-require-corp-same-site.sub.html?token=${id}`; + // REMOTE_ORIGIN is cross-origin, same-site. + frame.src = `${HOST.HTTPS_REMOTE_ORIGIN}${BASE}/navigate-require-corp-same-site.sub.html?token=${id}`; document.body.append(frame); -}, 'CORP: same-site is not checked.'); +}, 'CORP: same-site is checked and allowed.'); + +// CORP is checked because COEP of the frame is "require-corp". The parent +// frame's COEP value doesn't matter. +async_test(t => { + const frame = document.createElement("iframe"); + const id = token(); + t.add_cleanup(() => frame.remove()); + let loaded = false; + window.addEventListener('message', t.step_func((e) => { + if (e.data === id) { + loaded = true; + } + })); + t.step_timeout(() => { + // Make sure the iframe didn't load. See https://github.com/whatwg/html/issues/125 for why a + // timeout is used here. Long term all network error handling should be similar and have a + // reliable event. + assert_false(loaded); + t.done(); + }, 2000); + // NOTESAMESITE_ORIGIN is cross-origin, cross-site. + frame.src = `${HOST.HTTPS_NOTSAMESITE_ORIGIN}${BASE}/navigate-require-corp-same-site.sub.html?token=${id}`; + document.body.append(frame); +}, 'CORP: same-site is checked and blocked.'); diff --git a/html/cross-origin-opener-policy/resources/postback.html.headers b/html/cross-origin-opener-policy/resources/postback.html.headers index 6604450991a122..4e798cd9f5d3f7 100644 --- a/html/cross-origin-opener-policy/resources/postback.html.headers +++ b/html/cross-origin-opener-policy/resources/postback.html.headers @@ -1 +1,2 @@ Cross-Origin-Embedder-Policy: require-corp +Cross-Origin-Resource-Policy: cross-origin diff --git a/html/infrastructure/safe-passing-of-structured-data/resources/echo-iframe.html.headers b/html/infrastructure/safe-passing-of-structured-data/resources/echo-iframe.html.headers index 6604450991a122..4e798cd9f5d3f7 100644 --- a/html/infrastructure/safe-passing-of-structured-data/resources/echo-iframe.html.headers +++ b/html/infrastructure/safe-passing-of-structured-data/resources/echo-iframe.html.headers @@ -1 +1,2 @@ Cross-Origin-Embedder-Policy: require-corp +Cross-Origin-Resource-Policy: cross-origin