diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab3.js | |
parent | Initial commit. (diff) | |
download | firefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz firefox-26a029d407be480d791972afb5975cf62c9360a6.zip |
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab3.js | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab3.js b/browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab3.js new file mode 100644 index 0000000000..9233d7cf7a --- /dev/null +++ b/browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab3.js @@ -0,0 +1,81 @@ +// Tests referrer on context menu navigation - open link in new container tab. +// Selects "open link in new container tab" from the context menu. + +// The test runs from a container ID 2. +// Output: we have no referrer. + +getReferrerTest = getRemovedReferrerTest; + +function startNewTabTestCase(aTestNumber) { + info( + "browser_referrer_open_link_in_container_tab: " + + getReferrerTestDescription(aTestNumber) + ); + contextMenuOpened(gTestWindow, "testlink").then(function (aContextMenu) { + someTabLoaded(gTestWindow).then(function (aNewTab) { + gTestWindow.gBrowser.selectedTab = aNewTab; + + checkReferrerAndStartNextTest( + aTestNumber, + null, + aNewTab, + startNewTabTestCase, + { userContextId: 2 } + ); + }); + + let menu = gTestWindow.document.getElementById( + "context-openlinkinusercontext-menu" + ); + + let menupopup = menu.menupopup; + menu.addEventListener( + "popupshown", + function () { + is(menupopup.nodeType, Node.ELEMENT_NODE, "We have a menupopup."); + ok(menupopup.firstElementChild, "We have a first container entry."); + + let firstContext = menupopup.firstElementChild; + is( + firstContext.nodeType, + Node.ELEMENT_NODE, + "We have a first container entry." + ); + ok( + firstContext.hasAttribute("data-usercontextid"), + "We have a usercontextid value." + ); + is( + "0", + firstContext.getAttribute("data-usercontextid"), + "We have the right usercontextid value." + ); + + aContextMenu.addEventListener( + "popuphidden", + function () { + firstContext.doCommand(); + }, + { once: true } + ); + + aContextMenu.hidePopup(); + }, + { once: true } + ); + + menu.openMenu(true); + }); +} + +function test() { + waitForExplicitFinish(); + + SpecialPowers.pushPrefEnv( + { set: [["privacy.userContext.enabled", true]] }, + function () { + requestLongerTimeout(10); // slowwww shutdown on e10s + startReferrerTest(startNewTabTestCase, { userContextId: 2 }); + } + ); +} |