Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
/* Any copyright is dedicated to the Public Domain.
"use strict";
/* import-globals-from helper-collapsibilities.js */
Services.scriptloader.loadSubScript(
CHROME_URL_ROOT + "helper-collapsibilities.js",
this
);
/**
* Check that DevTools are not closed when leaving This Firefox runtime page.
*/
add_task(async function () {
info("Force all debug target panes to be expanded");
prepareCollapsibilitiesTest();
const { document, tab, window } = await openAboutDebugging();
await selectThisFirefoxPage(document, window.AboutDebugging.store);
const connectSidebarItem = findSidebarItemByText("Setup", document);
const connectLink = connectSidebarItem.querySelector(".qa-sidebar-link");
ok(connectSidebarItem, "Found the Connect sidebar item");
info("Open devtools on the current about:debugging tab");
const toolbox = await openToolboxForTab(tab, "inspector");
const inspector = toolbox.getPanel("inspector");
info("DevTools starts workers, wait for requests to settle");
const store = window.AboutDebugging.store;
await waitForAboutDebuggingRequests(store);
info("Click on the Connect item in the sidebar");
connectLink.click();
await waitForDispatch(store, "UNWATCH_RUNTIME_SUCCESS");
info("Wait until Connect page is displayed");
await waitUntil(() => document.querySelector(".qa-connect-page"));
const markupViewElement = inspector.panelDoc.getElementById("markup-box");
ok(markupViewElement, "Inspector is still rendered");
// We explicitely destroy the toolbox in order to ensure waiting for its full destruction
// and avoid leak / pending requests
info("Destroy the opened toolbox");
await toolbox.destroy();
await removeTab(tab);
});