blob: 260ac80d2ff4ae91b144827790f49df71960224d [file] [log] [blame]
<!DOCTYPE html>
<meta charset="utf-8">
<title>Parent is isolated, subdomain child 1 is not isolated, same-subdomain child 2 is isolated</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script type="module">
import {
insertIframe,
testSameAgentCluster,
testDifferentAgentClusters,
} from "./resources/helpers.mjs";
promise_setup(async () => {
// Must be sequential, not parallel: the non-isolaed frame must load first.
await insertIframe("{{hosts[][www]}}");
await insertIframe("{{hosts[][www]}}", "?1");
});
// Since they're different-origin, the parent's isolation request is respected,
// as is child 1's non-request. child 2 requests isolation but is
// ignored, since child 1 is in the same browsing context group.
//
// So, the parent ends up in the origin-keyed agent cluster, and both children
// ends up in the site-keyed one.
testDifferentAgentClusters([self, 0], "Parent to child1");
testDifferentAgentClusters([self, 1], "Parent to child2");
testSameAgentCluster([0, 1], "child1 to child2");
testSameAgentCluster([1, 0], "child2 to child1");
</script>