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 --- .../base/content/test/general/browser_bug462673.js | 66 ++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 browser/base/content/test/general/browser_bug462673.js (limited to 'browser/base/content/test/general/browser_bug462673.js') diff --git a/browser/base/content/test/general/browser_bug462673.js b/browser/base/content/test/general/browser_bug462673.js new file mode 100644 index 0000000000..fb550cb2b5 --- /dev/null +++ b/browser/base/content/test/general/browser_bug462673.js @@ -0,0 +1,66 @@ +add_task(async function () { + var win = openDialog( + AppConstants.BROWSER_CHROME_URL, + "_blank", + "chrome,all,dialog=no" + ); + await SimpleTest.promiseFocus(win); + + let tab = win.gBrowser.tabs[0]; + await promiseTabLoadEvent( + tab, + getRootDirectory(gTestPath) + "test_bug462673.html" + ); + + is( + win.gBrowser.browsers.length, + 2, + "test_bug462673.html has opened a second tab" + ); + is( + win.gBrowser.selectedTab, + tab.nextElementSibling, + "dependent tab is selected" + ); + win.gBrowser.removeTab(tab); + + // Closing a tab will also close its parent chrome window, but async + await BrowserTestUtils.domWindowClosed(win); +}); + +add_task(async function () { + var win = openDialog( + AppConstants.BROWSER_CHROME_URL, + "_blank", + "chrome,all,dialog=no" + ); + await SimpleTest.promiseFocus(win); + + let tab = win.gBrowser.tabs[0]; + await promiseTabLoadEvent( + tab, + getRootDirectory(gTestPath) + "test_bug462673.html" + ); + + var newTab = BrowserTestUtils.addTab(win.gBrowser); + var newBrowser = newTab.linkedBrowser; + win.gBrowser.removeTab(tab); + ok(!win.closed, "Window stays open"); + if (!win.closed) { + is(win.gBrowser.tabs.length, 1, "Window has one tab"); + is(win.gBrowser.browsers.length, 1, "Window has one browser"); + is(win.gBrowser.selectedTab, newTab, "Remaining tab is selected"); + is( + win.gBrowser.selectedBrowser, + newBrowser, + "Browser for remaining tab is selected" + ); + is( + win.gBrowser.tabbox.selectedPanel, + newBrowser.parentNode.parentNode.parentNode, + "Panel for remaining tab is selected" + ); + } + + await promiseWindowClosed(win); +}); -- cgit v1.2.3