From 6bf0a5cb5034a7e684dcc3500e841785237ce2dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:32:43 +0200 Subject: Adding upstream version 1:115.7.0. Signed-off-by: Daniel Baumann --- .../browser_referrer_open_link_in_container_tab.js | 80 ++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab.js (limited to 'browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab.js') diff --git a/browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab.js b/browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab.js new file mode 100644 index 0000000000..3fe5df53c4 --- /dev/null +++ b/browser/base/content/test/referrer/browser_referrer_open_link_in_container_tab.js @@ -0,0 +1,80 @@ +// Tests referrer on context menu navigation - open link in new container tab. +// Selects "open link in new container tab" from the context menu. + +function getReferrerTest(aTestNumber) { + let testCase = _referrerTests[aTestNumber]; + if (testCase) { + // We want all the referrer tests to fail! + testCase.result = ""; + } + + return testCase; +} + +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 + ); + }); + + 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." + ); + + 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); + } + ); +} -- cgit v1.2.3