diff options
Diffstat (limited to 'testing/web-platform/tests/html/browsers/browsing-the-web/navigating-across-documents/multiple-globals/context-for-window-open.html')
-rw-r--r-- | testing/web-platform/tests/html/browsers/browsing-the-web/navigating-across-documents/multiple-globals/context-for-window-open.html | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/browsers/browsing-the-web/navigating-across-documents/multiple-globals/context-for-window-open.html b/testing/web-platform/tests/html/browsers/browsing-the-web/navigating-across-documents/multiple-globals/context-for-window-open.html new file mode 100644 index 0000000000..0a391ef28e --- /dev/null +++ b/testing/web-platform/tests/html/browsers/browsing-the-web/navigating-across-documents/multiple-globals/context-for-window-open.html @@ -0,0 +1,28 @@ +<!DOCTYPE html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="resources/context-helper.js"></script> +<script> +window.scriptToRun = + 'relevantWindow.open("target.html", "target");'; + +async_test(t => { + window.addEventListener("message", t.step_func_done(function(e) { + // Base URL used for parsing a relative URL to `target.html` + // should be the base URL of the entry settings object in + // https://html.spec.whatwg.org/C/#window-open-steps + assert_equals( + e.data.location, + new URL('target.html', entryUrl).href, + 'Base URL should use the entry settings object'); + + // `document.referrer` should reflect the source browsing context, + // which is the entry in + // https://html.spec.whatwg.org/C/#window-open-steps + assert_equals( + e.data.referrer, entryUrl, + 'Referrer should use the entry settings object'); + })); +}, 'Fetch client and URL resolution for window.open()'); +</script> +<iframe id="entry" src="entry/entry.html"></iframe> |