diff options
Diffstat (limited to 'devtools/client/webconsole/test/browser/browser_jsterm_autocomplete_commands.js')
-rw-r--r-- | devtools/client/webconsole/test/browser/browser_jsterm_autocomplete_commands.js | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/devtools/client/webconsole/test/browser/browser_jsterm_autocomplete_commands.js b/devtools/client/webconsole/test/browser/browser_jsterm_autocomplete_commands.js new file mode 100644 index 0000000000..d86a52a0a1 --- /dev/null +++ b/devtools/client/webconsole/test/browser/browser_jsterm_autocomplete_commands.js @@ -0,0 +1,67 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +// Test that console commands are autocompleted. + +const TEST_URI = `data:text/html;charset=utf-8,<!DOCTYPE html>Test command autocomplete`; + +add_task(async function () { + const hud = await openNewTabAndConsole(TEST_URI); + const { jsterm } = hud; + const { autocompletePopup } = jsterm; + + info(`Enter ":"`); + jsterm.focus(); + let onAutocompleUpdated = jsterm.once("autocomplete-updated"); + EventUtils.sendString(":"); + await onAutocompleUpdated; + + const expectedCommands = [ + ":block", + ":help", + ":history", + ":screenshot", + ":unblock", + ]; + ok( + hasExactPopupLabels(autocompletePopup, expectedCommands), + "popup contains expected commands" + ); + + onAutocompleUpdated = jsterm.once("autocomplete-updated"); + EventUtils.sendString("s"); + await onAutocompleUpdated; + checkInputCompletionValue( + hud, + "creenshot", + "completion node has expected :screenshot value" + ); + + onAutocompleUpdated = jsterm.once("autocomplete-updated"); + EventUtils.synthesizeKey("KEY_Tab"); + await onAutocompleUpdated; + is( + getInputValue(hud), + ":screenshot", + "Tab key correctly completed :screenshot" + ); + + ok(!autocompletePopup.isOpen, "popup is closed after Tab"); + + info("Test :hel completion"); + await setInputValue(hud, ":he"); + onAutocompleUpdated = jsterm.once("autocomplete-updated"); + EventUtils.sendString("l"); + + await onAutocompleUpdated; + checkInputCompletionValue( + hud, + "p", + "completion node has expected :help value" + ); + + EventUtils.synthesizeKey("KEY_Tab"); + is(getInputValue(hud), ":help", "Tab key correctly completes :help"); +}); |