From 2aa4a82499d4becd2284cdb482213d541b8804dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 16:29:10 +0200 Subject: Adding upstream version 86.0.1. Signed-off-by: Daniel Baumann --- .../tests/JSWindowActor/browser_contentWindow.js | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 dom/ipc/tests/JSWindowActor/browser_contentWindow.js (limited to 'dom/ipc/tests/JSWindowActor/browser_contentWindow.js') diff --git a/dom/ipc/tests/JSWindowActor/browser_contentWindow.js b/dom/ipc/tests/JSWindowActor/browser_contentWindow.js new file mode 100644 index 0000000000..cfdc5b114f --- /dev/null +++ b/dom/ipc/tests/JSWindowActor/browser_contentWindow.js @@ -0,0 +1,47 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ +"use strict"; + +declTest("contentWindow null when inner window inactive", { + matches: [TEST_URL + "*"], + url: TEST_URL + "?1", + + async test(browser) { + { + let parent = browser.browsingContext.currentWindowGlobal; + let actorParent = parent.getActor("TestWindow"); + + await actorParent.sendQuery("storeActor"); + } + + { + let url = TEST_URL + "?2"; + let loaded = BrowserTestUtils.browserLoaded(browser, false, url); + await BrowserTestUtils.loadURI(browser, url); + await loaded; + } + + let parent = browser.browsingContext.currentWindowGlobal; + let actorParent = parent.getActor("TestWindow"); + + let result = await actorParent.sendQuery("checkActor"); + if (SpecialPowers.useRemoteSubframes) { + is( + result.status, + "error", + "Should get an error when bfcache is disabled for Fission" + ); + is( + result.errorType, + "InvalidStateError", + "Should get an InvalidStateError without bfcache" + ); + } else { + is(result.status, "success", "Should succeed when bfcache is enabled"); + ok( + result.valueIsNull, + "Should get a null contentWindow when inner window is inactive" + ); + } + }, +}); -- cgit v1.2.3