Bug 1458609 - Fix browser_console_context_menu_entries; r=bgrins.
The test is changed to take into account that the sidebar is still not
enabled in non-nightly build.
We check that the preference is enabled before adding it to the expected
entries.
MozReview-Commit-ID: CdgPQvhn1Q6
--- a/devtools/client/webconsole/test/mochitest/browser_console_context_menu_entries.js
+++ b/devtools/client/webconsole/test/mochitest/browser_console_context_menu_entries.js
@@ -21,51 +21,57 @@ add_task(async function() {
content.wrappedJSObject.location.reload();
});
const networkMessage = await onNetworkMessage;
info("Open and check the context menu for the network message");
let menuPopup = await openContextMenu(hud, networkMessage.node);
ok(menuPopup, "The context menu is displayed on a network message");
- let expectedContextMenu = [
+ let expectedContextMenu = addPrefBasedEntries([
"#console-menu-copy-url (a)",
"#console-menu-open-url (T)",
"#console-menu-store (S) [disabled]",
"#console-menu-copy (C)",
"#console-menu-copy-object (o) [disabled]",
"#console-menu-select (A)",
- "#console-menu-open-sidebar (V) [disabled]",
- ];
+ ]);
is(getSimplifiedContextMenu(menuPopup).join("\n"), expectedContextMenu.join("\n"),
"The context menu has the expected entries for a network message");
info("Logging a text message in the content window");
const onLogMessage = waitForMessage(hud, "simple text message");
ContentTask.spawn(gBrowser.selectedBrowser, null, () => {
content.wrappedJSObject.console.log("simple text message");
});
const logMessage = await onLogMessage;
menuPopup = await openContextMenu(hud, logMessage.node);
ok(menuPopup, "The context menu is displayed on a log message");
- expectedContextMenu = [
+ expectedContextMenu = addPrefBasedEntries([
"#console-menu-store (S) [disabled]",
"#console-menu-copy (C)",
"#console-menu-copy-object (o) [disabled]",
"#console-menu-select (A)",
- "#console-menu-open-sidebar (V) [disabled]",
- ];
+ ]);
is(getSimplifiedContextMenu(menuPopup).join("\n"), expectedContextMenu.join("\n"),
"The context menu has the expected entries for a simple log message");
await hideContextMenu(hud);
});
+function addPrefBasedEntries(expectedEntries) {
+ if (Services.prefs.getBoolPref("devtools.webconsole.sidebarToggle", false)) {
+ expectedEntries.push("#console-menu-open-sidebar (V) [disabled]");
+ }
+
+ return expectedEntries;
+}
+
function getSimplifiedContextMenu(popupElement) {
return [...popupElement.querySelectorAll("menuitem")]
.map(entry => {
const key = entry.getAttribute("accesskey");
const disabled = entry.hasAttribute("disabled");
return `#${entry.id} (${key})${disabled ? " [disabled]" : ""}`;
});
}