43 lines
1.5 KiB
JavaScript
43 lines
1.5 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
* http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
"use strict";
|
|
|
|
// Test that lazy background tabs aren't unintentionally loaded when building
|
|
// the a11y tree (bug 1700708).
|
|
addAccessibleTask(``, async function () {
|
|
await SpecialPowers.pushPrefEnv({
|
|
set: [["browser.sessionstore.restore_on_demand", true]],
|
|
});
|
|
|
|
info("Opening a new window");
|
|
let win = await BrowserTestUtils.openNewBrowserWindow();
|
|
// Window is opened with a blank tab.
|
|
info("Loading second tab");
|
|
await BrowserTestUtils.openNewForegroundTab({
|
|
gBrowser: win.gBrowser,
|
|
url: "data:text/html,2",
|
|
});
|
|
info("Loading third tab");
|
|
await BrowserTestUtils.openNewForegroundTab({
|
|
gBrowser: win.gBrowser,
|
|
url: "data:text/html,3",
|
|
});
|
|
info("Closing the window");
|
|
await BrowserTestUtils.closeWindow(win);
|
|
|
|
is(SessionStore.getClosedWindowCount(), 1, "Should have a window to restore");
|
|
info("Restoring the window");
|
|
win = SessionStore.undoCloseWindow(0);
|
|
await BrowserTestUtils.waitForEvent(win, "SSWindowStateReady");
|
|
await BrowserTestUtils.waitForEvent(
|
|
win.gBrowser.tabContainer,
|
|
"SSTabRestored"
|
|
);
|
|
is(win.gBrowser.tabs.length, 3, "3 tabs restored");
|
|
ok(win.gBrowser.tabs[2].selected, "Third tab selected");
|
|
ok(getAccessible(win.gBrowser.tabs[1]), "Second tab has accessible");
|
|
ok(!win.gBrowser.browsers[1].isConnected, "Second tab is lazy");
|
|
info("Closing the restored window");
|
|
await BrowserTestUtils.closeWindow(win);
|
|
});
|