Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
/* Any copyright is dedicated to the Public Domain.
// Check that the editor is displayed as expected.
"use strict";
const TEST_URI = "data:text/html;charset=utf8,<!DOCTYPE html><p>Test editor";
add_task(async function () {
await pushPref("devtools.webconsole.input.editor", false);
const tab = await addTab(TEST_URI);
let hud = await openConsole(tab);
info("Test that the editor mode is disabled when the pref is set to false");
is(
isEditorModeEnabled(hud),
false,
"Editor is disabled when pref is set to false"
);
const openEditorButton = getInlineOpenEditorButton(hud);
ok(openEditorButton, "button is rendered in the inline input");
const rect = openEditorButton.getBoundingClientRect();
ok(rect.width > 0 && rect.height > 0, "Button is visible");
await closeConsole();
info(
"Test that wrapper does have the jsterm-editor class when editor is enabled"
);
await pushPref("devtools.webconsole.input.editor", true);
hud = await openConsole(tab);
is(
isEditorModeEnabled(hud),
true,
"Editor is enabled when pref is set to true"
);
is(getInlineOpenEditorButton(hud), null, "Button is hidden in editor mode");
await toggleLayout(hud);
getInlineOpenEditorButton(hud).click();
await waitFor(() => isEditorModeEnabled(hud));
ok(true, "Editor is open when clicking on the button");
});
function getInlineOpenEditorButton(hud) {
return hud.ui.outputNode.querySelector(".webconsole-input-openEditorButton");
}