Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test gets skipped with pattern: http3 OR http2
- Manifest: devtools/client/storage/test/browser.toml
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
"use strict";
// Test deleting a Cache object from the tree using context menu
add_task(async function () {
await pushPref("dom.security.https_first", false);
await openTabAndSetupStorage(MAIN_DOMAIN + "storage-listings.html");
const contextMenu =
gPanelWindow.document.getElementById("storage-tree-popup");
const menuDeleteItem = contextMenu.querySelector(
"#storage-tree-popup-delete"
);
info("test state before delete");
await selectTreeItem(cacheToDelete);
ok(gUI.tree.isSelected(cacheToDelete), "Cache item is present in the tree");
info("do the delete");
const eventWait = gUI.once("store-objects-updated");
const selector = `[data-id='${JSON.stringify(
cacheToDelete
)}'] > .tree-widget-item`;
const target = gPanelWindow.document.querySelector(selector);
ok(target, "Cache item's tree element is present");
await waitForContextMenu(contextMenu, target, () => {
info("Opened tree context menu");
menuDeleteItem.click();
const cacheName = cacheToDelete[2];
ok(
menuDeleteItem.getAttribute("label").includes(cacheName),
`Context menu item label contains '${cacheName}')`
);
});
await eventWait;
info("test state after delete");
await selectTreeItem(cacheToDelete);
ok(
!gUI.tree.isSelected(cacheToDelete),
"Cache item is no longer present in the tree"
);
});