Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
/**
* Test: browser_identityPopup_clearSiteData_privateBrowsingMode.js
*
* This browser-chrome test verifies that the "Clear Site Data" controls
* (button and footer) in the identity popup are correctly hidden in
* private browsing mode.
*
* The test opens a private browsing window, loads a known HTTPS page
* icon, and checks for the visibility of:
*
* - `identity-popup-clear-sitedata-footer`
* - `identity-popup-clear-sitedata-button`
*
* Expected behavior:
* These elements should not be visible while in private browsing mode.
*
* The test uses `BrowserTestUtils.withNewTab()` to load the page in a new
* tab within the private window and ensures cleanup of both the tab and
* window after the test completes.
*
*/
add_task(async function clearSiteDataHidden() {
// Open a private browsing window
const winPrivate = await BrowserTestUtils.openNewBrowserWindow({
private: true,
});
// Use withNewTab to open a tab in the private window
await BrowserTestUtils.withNewTab(
{
gBrowser: winPrivate.gBrowser,
url: TEST_URL,
},
async _browser => {
let doc = winPrivate.document;
let { gIdentityHandler } = winPrivate;
let panelShown = BrowserTestUtils.waitForEvent(doc, "popupshown");
gIdentityHandler._identityIconBox.click();
await panelShown;
let clearFooter = doc.getElementById(
"identity-popup-clear-sitedata-footer"
);
let clearButton = doc.getElementById(
"identity-popup-clear-sitedata-button"
);
Assert.ok(
BrowserTestUtils.isHidden(clearFooter),
"The clear data footer should be hidden in private browsing."
);
Assert.ok(
BrowserTestUtils.isHidden(clearButton),
"The clear data button should be hidden in private browsing."
);
}
);
await BrowserTestUtils.closeWindow(winPrivate);
});