Bug 1442813 - Web console eslint fixes r=nchevobbe
authorMichael Ratcliffe <mratcliffe@mozilla.com>
Sat, 03 Mar 2018 00:34:35 +0000
changeset 461563 7a1eb24a2257c8fc3935005a3104f7873567d024
parent 461561 a9b65eec6830b856787227c22a6166d203cd844a
child 461564 0f1d3b47e1930e8e8fccca54dc06d6ca5df3c3cf
push id1683
push usersfraser@mozilla.com
push dateThu, 26 Apr 2018 16:43:40 +0000
treeherdermozilla-release@5af6cb21869d [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersnchevobbe
bugs1442813
milestone60.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1442813 - Web console eslint fixes r=nchevobbe MozReview-Commit-ID: AjhsU2lrqKT
.eslintignore
devtools/client/webconsole/new-console-output/test/mochitest/browser_console_addonsdk_loader_exception.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_console_clear_method.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_console_context_menu_entries.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_console_webconsole_console_api_calls.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_console_webconsole_private_browsing.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_accessibility.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_add_edited_input_to_history.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_array_no_index.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_cached_results.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_crossdomain_iframe.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_escape_key.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_extraneous_closing_brackets.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_helpers.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_in_chrome_tab.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_in_debugger_stackframe.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_native_getters.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_nav_and_tab_key.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_return_key.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_return_key_no_selection.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_completion.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_copy_command.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_ctrl_a_select_all.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_ctrl_key_nav.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_error_docs.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_history.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_history_persist.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_inspect.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_no_input_and_tab_key_pressed.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_no_input_change_and_tab_key_pressed.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_popup_close_on_tab_switch.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_allow_mixedcontent_securityerrors.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_batching.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_block_mixedcontent_securityerrors.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_cached_messages.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_cd_iframe.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_certificate_messages.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_click_function_to_source.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_clickable_urls.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_close_sidebar.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_closing_after_completion.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_closure_inspection.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_api_iframe.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_dir_uninspectable.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_group.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_logging_workers_api.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_table.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_trace_duplicates.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_copy_entire_message.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_copy_link_location.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_copy_object.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_object_in_sidebar.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_open_url.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_store_as_global.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_csp_ignore_reflected_xss_message.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_csp_violation.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_document_focus.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_duplicate_errors.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_errors_after_page_reload.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_eval_in_debugger_stackframe.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_eval_in_debugger_stackframe2.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_execution_scope.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_external_script_errors.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_filter_scroll.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_filters.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_filters_persist.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_highlighter_console_helper.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_hpkp_invalid-headers.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_hsts_invalid-headers.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_ineffective_iframe_sandbox_warning.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_init.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_input_field_focus_on_panel_select.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_input_focus.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_insecure_passwords_about_blank_web_console_warning.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_inspect_cross_domain_object.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_keyboard_accessibility.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_location_debugger_link.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_location_styleeditor_link.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_longstring_expand.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_multiple_windows_and_tabs.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_attach.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_exceptions.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_messages_expand.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_messages_openinnet.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_messages_status_code.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_requests_from_chrome.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_reset_filter.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_nodes_highlight.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_object_in_sidebar.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_object_inspector_while_debugging_and_inspecting.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_optimized_out_vars.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_output_copy_newlines.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_output_order.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_persist.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_reopen_closed_tab.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_repeat_different_objects.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sandbox_update_after_navigation.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_show_subresource_security_errors.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_css.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_error.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_invalid.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_nosource.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_stacktrace_location_debugger_link.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_strict_mode_errors.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_string.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_time_methods.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_timestamps.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_trackingprotection_errors.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_view_source.js
devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_visibility_messages.js
devtools/client/webconsole/new-console-output/test/mochitest/test-autocomplete-in-stackframe.html
devtools/client/webconsole/new-console-output/test/mochitest/test-bug-585956-console-trace.html
devtools/client/webconsole/new-console-output/test/mochitest/test-bug-601177-log-levels.html
devtools/client/webconsole/new-console-output/test/mochitest/test-bug-601177-log-levels.js
devtools/client/webconsole/new-console-output/test/mochitest/test-bug-632275-getters.html
devtools/client/webconsole/new-console-output/test/mochitest/test-bug-766001-console-log.js
devtools/client/webconsole/new-console-output/test/mochitest/test-bug-766001-js-errors.js
devtools/client/webconsole/new-console-output/test/mochitest/test-bug-859170-longstring-hang.html
devtools/client/webconsole/new-console-output/test/mochitest/test-bug_923281_test1.js
devtools/client/webconsole/new-console-output/test/mochitest/test-cd-iframe-child.html
devtools/client/webconsole/new-console-output/test/mochitest/test-cd-iframe-parent.html
devtools/client/webconsole/new-console-output/test/mochitest/test-certificate-messages.html
devtools/client/webconsole/new-console-output/test/mochitest/test-click-function-to-source.js
devtools/client/webconsole/new-console-output/test/mochitest/test-closure-optimized-out.html
devtools/client/webconsole/new-console-output/test/mochitest/test-closures.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-api-iframe.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-api-stackframe.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-clear.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-column.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-count.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-extras.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-iframes.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-02.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-03.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-04.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-dom-elements.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-events.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-replaced-api.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-trace-async.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-trace-duplicates.html
devtools/client/webconsole/new-console-output/test/mochitest/test-console-workers.html
devtools/client/webconsole/new-console-output/test/mochitest/test-cu-reporterror.js
devtools/client/webconsole/new-console-output/test/mochitest/test-duplicate-error.html
devtools/client/webconsole/new-console-output/test/mochitest/test-error.html
devtools/client/webconsole/new-console-output/test/mochitest/test-eval-in-stackframe.html
devtools/client/webconsole/new-console-output/test/mochitest/test-exception-stackframe.html
devtools/client/webconsole/new-console-output/test/mochitest/test-external-script-errors.js
devtools/client/webconsole/new-console-output/test/mochitest/test-iframe1.html
devtools/client/webconsole/new-console-output/test/mochitest/test-iframe2.html
devtools/client/webconsole/new-console-output/test/mochitest/test-iframe3.html
devtools/client/webconsole/new-console-output/test/mochitest/test-insecure-passwords-about-blank-web-console-warning.html
devtools/client/webconsole/new-console-output/test/mochitest/test-inspect-cross-domain-objects-frame.html
devtools/client/webconsole/new-console-output/test/mochitest/test-jsterm-dollar.html
devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-canvas-css.js
devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-empty-getelementbyid.js
devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-malformedxml-external.html
devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-workers.html
devtools/client/webconsole/new-console-output/test/mochitest/test-mutation.html
devtools/client/webconsole/new-console-output/test/mochitest/test-network-exceptions.html
devtools/client/webconsole/new-console-output/test/mochitest/test-observe-http-ajax.html
devtools/client/webconsole/new-console-output/test/mochitest/test-own-console.html
devtools/client/webconsole/new-console-output/test/mochitest/test-property-provider.html
devtools/client/webconsole/new-console-output/test/mochitest/test-reopen-closed-tab.html
devtools/client/webconsole/new-console-output/test/mochitest/test-result-format-as-string.html
devtools/client/webconsole/new-console-output/test/mochitest/test-time-methods.html
devtools/client/webconsole/new-console-output/test/mochitest/test-webconsole-error-observer.html
devtools/client/webconsole/test/browser_webconsole_column_numbers.js
devtools/client/webconsole/test/test-console-column.html
--- a/.eslintignore
+++ b/.eslintignore
@@ -137,17 +137,17 @@ devtools/client/shared/widgets/*.jsm
 devtools/client/storage/test/*.html
 !devtools/client/storage/test/storage-cookies.html
 !devtools/client/storage/test/storage-overflow.html
 !devtools/client/storage/test/storage-search.html
 !devtools/client/storage/test/storage-unsecured-iframe.html
 !devtools/client/storage/test/storage-unsecured-iframe-usercontextid.html
 devtools/client/webaudioeditor/**
 devtools/client/webconsole/net/**
-devtools/client/webconsole/new-console-output/test/mochitest/**
+!devtools/client/webconsole/new-console-output/test/mochitest/**
 devtools/client/webconsole/test/**
 devtools/client/webconsole/webconsole-connection-proxy.js
 devtools/client/webconsole/webconsole.js
 devtools/client/webide/**
 !devtools/client/webide/components/webideCli.js
 devtools/server/tests/browser/storage-*.html
 !devtools/server/tests/browser/storage-unsecured-iframe.html
 devtools/server/tests/browser/stylesheets-nested-iframes.html
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_addonsdk_loader_exception.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_addonsdk_loader_exception.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Check that exceptions from scripts loaded with the addon-sdk loader are
 // opened correctly in View Source from the Browser Console.
 // See bug 866950.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,<p>hello world from bug 866950";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_clear_method.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_clear_method.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Check that console.clear() does not clear the output of the browser console.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,<p>Bug 1296870";
 
 add_task(function* () {
   yield loadTab(TEST_URI);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_context_menu_entries.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_context_menu_entries.js
@@ -1,17 +1,17 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 // Check that we display the expected context menu entries.
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-  "new-console-output/test/mochitest/test-console.html";
+                 "new-console-output/test/mochitest/test-console.html";
 
 add_task(async function () {
   // Enable net messages in the console for this test.
   await pushPref("devtools.browserconsole.filter.net", true);
 
   await addTab(TEST_URI);
   const hud = await HUDService.toggleBrowserConsole();
 
@@ -59,11 +59,11 @@ add_task(async function () {
   await hideContextMenu(hud);
 });
 
 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]": ""}`
+      return `#${entry.id} (${key})${disabled ? " [disabled]" : ""}`;
     });
 }
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_webconsole_console_api_calls.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_webconsole_console_api_calls.js
@@ -1,20 +1,19 @@
 /* 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
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 // Test that console API calls in the content page appear in the browser console.
 
 "use strict";
 
+const TEST_URI = `data:text/html,<meta charset=utf8>console API calls`;
 
-const TEST_URI = `data:text/html,<meta charset=utf8>console API calls`
-
-add_task(async function() {
+add_task(async function () {
   await addTab(TEST_URI);
   const hud = await HUDService.toggleBrowserConsole();
 
   const contentArgs = {
     log: "MyLog",
     warn: "MyWarn",
     error: "MyError",
     info: "MyInfo",
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_webconsole_private_browsing.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_webconsole_private_browsing.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Bug 874061: test for how the browser and web consoles display messages coming
 // from private windows. See bug for description of expected behavior.
 
 "use strict";
 
 function test() {
   const TEST_URI = "data:text/html;charset=utf8,<p>hello world! bug 874061" +
                    "<button onclick='console.log(\"foobar bug 874061\");" +
@@ -19,18 +21,19 @@ function test() {
 
   // This test is slightly more involved: it opens the web console twice,
   // a new private window once, and the browser console twice. We can get
   // a timeout with debug builds on slower machines.
   requestLongerTimeout(2);
   start();
 
   function start() {
-    gBrowser.selectedTab = BrowserTestUtils.addTab(gBrowser, "data:text/html;charset=utf8," +
-                                                   "<p>hello world! I am not private!");
+    gBrowser.selectedTab =
+      BrowserTestUtils.addTab(gBrowser, "data:text/html;charset=utf8," +
+                                        "<p>hello world! I am not private!");
     gBrowser.selectedBrowser.addEventListener("load", onLoadTab, true);
   }
 
   function onLoadTab() {
     gBrowser.selectedBrowser.removeEventListener("load", onLoadTab, true);
     info("onLoadTab()");
 
     // Make sure we have a clean state to start with.
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_accessibility.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_accessibility.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the autocomplete input is being blurred and focused when selecting a value.
 // This will help screen-readers notify users of the value that was set in the input.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,<p>test code completion";
 
 add_task(async function () {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_add_edited_input_to_history.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_add_edited_input_to_history.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that user input that is not submitted in the command line input is not
 // lost after navigating in history.
 // See https://bugzilla.mozilla.org/show_bug.cgi?id=817834
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,Web Console test for bug 817834";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_array_no_index.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_array_no_index.js
@@ -14,19 +14,17 @@ const TEST_URI = `data:text/html;charset
   </script>
 </head>
 <body>bug 585991 - Autocomplete popup on array</body>`;
 
 add_task(async function () {
   let { jsterm } = await openNewTabAndConsole(TEST_URI);
 
   const {
-    autocompletePopup: popup,
-    completeNode,
-    inputNode,
+    autocompletePopup: popup
   } = jsterm;
 
   let onPopUpOpen = popup.once("popup-opened");
 
   info("wait for popup to show");
   jsterm.setInputValue("foo");
   EventUtils.sendString(".");
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_cached_results.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_cached_results.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the cached autocomplete results are used when the new
 // user input is a subset of the existing completion results.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,<p>test cached autocompletion results";
 
 add_task(async function () {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_crossdomain_iframe.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_crossdomain_iframe.js
@@ -1,11 +1,13 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that autocomplete doesn't break when trying to reach into objects from
 // a different domain. See Bug 989025.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-iframe-parent.html";
 add_task(async function () {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_escape_key.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_escape_key.js
@@ -24,17 +24,16 @@ const TEST_URI = `data:text/html;charset
 
 add_task(async function () {
   let { jsterm } = await openNewTabAndConsole(TEST_URI);
   info("web console opened");
 
   const {
     autocompletePopup: popup,
     completeNode,
-    inputNode,
   } = jsterm;
 
   let onPopUpOpen = popup.once("popup-opened");
 
   info("wait for completion: window.foo.");
   jsterm.setInputValue("window.foo");
   EventUtils.sendString(".");
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_extraneous_closing_brackets.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_extraneous_closing_brackets.js
@@ -1,22 +1,24 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that, when the user types an extraneous closing bracket, no error
 // appears. See Bug 592442.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,test for bug 592442";
 
 add_task(async function () {
   let { jsterm } = await openNewTabAndConsole(TEST_URI);
 
   try {
     await jstermSetValueAndComplete(jsterm, "document.getElementById)");
     ok(true, "no error was thrown when an extraneous bracket was inserted");
   } catch (ex) {
-    ok(false, "an error was thrown when an extraneous bracket was inserted")
+    ok(false, "an error was thrown when an extraneous bracket was inserted");
   }
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_helpers.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_helpers.js
@@ -1,19 +1,20 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the autocompletion results contain the names of JSTerm helpers.
 // See Bug 686937.
 
 "use strict";
 
-
 const TEST_URI = "data:text/html;charset=utf8,<p>test JSTerm Helpers autocomplete";
 
 add_task(async function () {
   const {jsterm} = await openNewTabAndConsole(TEST_URI);
   await testInspectAutoCompletion(jsterm, "i", true);
   await testInspectAutoCompletion(jsterm, "window.", false);
   await testInspectAutoCompletion(jsterm, "dump(i", true);
   await testInspectAutoCompletion(jsterm, "window.dump(i", true);
@@ -29,9 +30,9 @@ async function testInspectAutoCompletion
 function complete(jsterm) {
   const updated = jsterm.once("autocomplete-updated");
   jsterm.complete(jsterm.COMPLETE_HINT_ONLY);
   return updated;
 }
 
 function getPopupItemsLabel(popup) {
   return popup.getItems().map(item => item.label);
-}
\ No newline at end of file
+}
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_in_chrome_tab.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_in_chrome_tab.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that code completion works properly in chrome tabs, like about:config.
 
 "use strict";
 
 add_task(async function () {
   const hud = await openNewTabAndConsole("about:config");
   ok(hud, "we have a console");
   ok(hud.iframeWindow, "we have the console UI window");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_in_debugger_stackframe.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_in_debugger_stackframe.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that makes sure web console autocomplete happens in the user-selected
 // stackframe from the js debugger.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-autocomplete-in-stackframe.html";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_native_getters.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_native_getters.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that native getters (e.g. document.body) autocompletes in the web console.
 // See Bug 651501.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,Test document.body autocompletion";
 
 add_task(async function () {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_nav_and_tab_key.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_nav_and_tab_key.js
@@ -26,17 +26,16 @@ const TEST_URI = `data:text/html;charset
 
 add_task(async function () {
   let { jsterm } = await openNewTabAndConsole(TEST_URI);
   info("web console opened");
 
   const {
     autocompletePopup: popup,
     completeNode,
-    inputNode,
   } = jsterm;
 
   ok(!popup.isOpen, "popup is not open");
 
   const onPopUpOpen = popup.once("popup-opened");
   jsterm.setInputValue("window.foo");
 
   // Shows the popup
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_return_key.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_return_key.js
@@ -29,17 +29,16 @@ const PREF_AUTO_MULTILINE = "devtools.we
 
 add_task(async function () {
   Services.prefs.setBoolPref(PREF_AUTO_MULTILINE, false);
 
   let { jsterm } = await openNewTabAndConsole(TEST_URI);
   const {
     autocompletePopup: popup,
     completeNode,
-    inputNode,
   } = jsterm;
 
   let onPopUpOpen = popup.once("popup-opened");
 
   info("wait for completion suggestions: window.foobar.");
 
   jsterm.setInputValue("window.fooba");
   EventUtils.sendString("r.");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_return_key_no_selection.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_autocomplete_return_key_no_selection.js
@@ -16,17 +16,16 @@ const TEST_URI = `data:text/html;charset
 </head>
 <body>bug 873250 - test pressing return with open popup, but no selection</body>`;
 
 add_task(async function () {
   let { jsterm } = await openNewTabAndConsole(TEST_URI);
   const {
     autocompletePopup: popup,
     completeNode,
-    inputNode,
   } = jsterm;
 
   const onPopUpOpen = popup.once("popup-opened");
 
   info("wait for popup to show");
   jsterm.setInputValue("window.testBu");
   EventUtils.sendString("g");
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_completion.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_completion.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that code completion works properly.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,<p>test code completion";
 
 add_task(async function () {
   let {jsterm} = await openNewTabAndConsole(TEST_URI);
@@ -22,17 +24,18 @@ add_task(async function () {
   await jstermSetValueAndComplete(jsterm, "docu", undefined, jsterm.COMPLETE_FORWARD);
   is(input.value, "document", "'docu' tab completion");
   is(input.selectionStart, 8, "start selection is alright");
   is(input.selectionEnd, 8, "end selection is alright");
   is(jsterm.completeNode.value.replace(/ /g, ""), "", "'docu' completed");
 
   // Test typing 'window.Ob' and press tab.  Just 'window.O' is
   // ambiguous: could be window.Object, window.Option, etc.
-  await jstermSetValueAndComplete(jsterm, "window.Ob", undefined, jsterm.COMPLETE_FORWARD);
+  await jstermSetValueAndComplete(jsterm, "window.Ob", undefined,
+                                  jsterm.COMPLETE_FORWARD);
   is(input.value, "window.Object", "'window.Ob' tab completion");
 
   // Test typing 'document.getElem'.
   await jstermSetValueAndComplete(
     jsterm, "document.getElem", undefined, jsterm.COMPLETE_FORWARD);
   is(input.value, "document.getElem", "'document.getElem' completion");
   is(jsterm.completeNode.value, "                entsByTagNameNS",
      "'document.getElem' completion");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_copy_command.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_copy_command.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the `copy` console helper works as intended.
 
 "use strict";
 
 const text = "Lorem ipsum dolor sit amet, consectetur adipisicing " +
   "elit, sed do eiusmod tempor incididunt ut labore et dolore magna " +
   "aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco " +
   "laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure " +
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_ctrl_a_select_all.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_ctrl_a_select_all.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Map Control + A to Select All, In the web console input
 
 /* import-globals-from head.js */
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,Test console select all";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_ctrl_key_nav.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_ctrl_key_nav.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test navigation of webconsole contents via ctrl-a, ctrl-e, ctrl-p, ctrl-n
 // see https://bugzilla.mozilla.org/show_bug.cgi?id=804845
 //
 // The shortcuts tested here have platform limitations:
 // - ctrl-e does not work on windows,
 // - ctrl-a, ctrl-p and ctrl-n only work on OSX
 "use strict";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_error_docs.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_error_docs.js
@@ -18,16 +18,16 @@ add_task(async function () {
     "JSMSG_NEGATIVE_REPETITION_COUNT": "'abc'.repeat(-1);",
     "JSMSG_PRECISION_RANGE": "77.1234.toExponential(-1);",
   };
 
   for (let [errorMessageName, expression] of Object.entries(ErrorDocStatements)) {
     let title = ErrorDocs.GetURL({ errorMessageName }).split("?")[0];
 
     jsterm.clearOutput();
-    const onMessage = waitForMessage(hud, "RangeError:")
+    const onMessage = waitForMessage(hud, "RangeError:");
     jsterm.execute(expression);
     const {node} = await onMessage;
     const learnMoreLink = node.querySelector(".learn-more-link");
     ok(learnMoreLink, `There is a [Learn More] link for "${errorMessageName}" error`);
     is(learnMoreLink.title, title, `The link has the expected "${title}" title`);
   }
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_history.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_history.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests the console history feature accessed via the up and down arrow keys.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=UTF-8,test";
 const HISTORY_BACK = -1;
 const HISTORY_FORWARD = 1;
 const COMMANDS = ["document", "window", "window.location"];
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_history_persist.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_history_persist.js
@@ -1,25 +1,27 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that console command input is persisted across toolbox loads.
 // See Bug 943306.
 
 "use strict";
 
 requestLongerTimeout(2);
 
 const TEST_URI = "data:text/html;charset=utf-8,Web Console test for " +
                  "persisting history - bug 943306";
 const INPUT_HISTORY_COUNT = 10;
 
-add_task(async function() {
+add_task(async function () {
   info("Setting custom input history pref to " + INPUT_HISTORY_COUNT);
   Services.prefs.setIntPref("devtools.webconsole.inputHistoryCount", INPUT_HISTORY_COUNT);
 
   // First tab: run a bunch of commands and then make sure that you can
   // navigate through their history.
   let hud1 = await openNewTabAndConsole(TEST_URI);
 
   is(JSON.stringify(hud1.jsterm.history), "[]", "No history on first tab initially");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_inspect.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_inspect.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Check that the inspect() jsterm helper function works.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,<p>test inspect() command";
 
 add_task(async function () {
   let toolbox = await openNewTabAndToolbox(TEST_URI, "webconsole");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_no_input_and_tab_key_pressed.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_no_input_and_tab_key_pressed.js
@@ -4,17 +4,17 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 // See Bug 583816.
 
 const TEST_URI = "data:text/html,Testing jsterm with no input";
 
-add_task(async function() {
+add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
   testCompletion(hud);
 });
 
 function testCompletion(hud) {
   let jsterm = hud.jsterm;
   let input = jsterm.inputNode;
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_no_input_change_and_tab_key_pressed.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_no_input_change_and_tab_key_pressed.js
@@ -4,17 +4,17 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 // See Bug 734061.
 
 const TEST_URI = "data:text/html,Testing jsterm focus";
 
-add_task(async function() {
+add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
   let jsterm = hud.jsterm;
   let input = jsterm.inputNode;
 
   is(hasFocus(input), true, "input has focus");
   EventUtils.synthesizeKey("KEY_Tab");
   is(hasFocus(input), false, "focus moved away");
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_popup_close_on_tab_switch.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_jsterm_popup_close_on_tab_switch.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that the autocomplete popup closes on switching tabs. See bug 900448.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,<p>bug 900448 - autocomplete " +
                  "popup closes on tab switch";
 const TEST_URI_NAVIGATE = "data:text/html;charset=utf-8,<p>testing autocomplete closes";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_allow_mixedcontent_securityerrors.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_allow_mixedcontent_securityerrors.js
@@ -1,27 +1,30 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // The test loads a web page with mixed active and display content
 // on it while the "block mixed content" settings are _off_.
 // It then checks that the loading mixed content warning messages
 // are logged to the console and have the correct "Learn More"
 // url appended to them.
 // Bug 875456 - Log mixed content messages from the Mixed Content
 // Blocker to the Security Pane in the Web Console
 
 "use strict";
 
 const TEST_URI = "https://example.com/browser/devtools/client/webconsole/" +
-  "new-console-output/test/mochitest/test-mixedcontent-securityerrors.html";
-const LEARN_MORE_URI =
-  "https://developer.mozilla.org/docs/Web/Security/Mixed_content" + DOCS_GA_PARAMS;
+                 "new-console-output/test/mochitest/" +
+                 "test-mixedcontent-securityerrors.html";
+const LEARN_MORE_URI = "https://developer.mozilla.org/docs/Web/Security/" +
+                       "Mixed_content" + DOCS_GA_PARAMS;
 
 add_task(async function () {
   await Promise.all([
     pushPref("security.mixed_content.block_active_content", false),
     pushPref("security.mixed_content.block_display_content", false),
     pushPref("security.mixed_content.upgrade_display_content", false),
   ]);
 
@@ -42,17 +45,17 @@ add_task(async function () {
   ok(true, "Mixed display content warning message is visible");
 
   const mixedActiveContentMessage = await onMixedActiveContent;
   ok(true, "Mixed active content warning message is visible");
 
   const checkLink = ({ link, where, expectedLink, expectedTab }) => {
     is(link, expectedLink, `Clicking the provided link opens ${link}`);
     is(where, expectedTab, `Clicking the provided link opens in expected tab`);
-  }
+  };
 
   info("Clicking on the Learn More link");
   const learnMoreLink = mixedActiveContentMessage.querySelector(".learn-more-link");
   let linkSimulation = await simulateLinkClick(learnMoreLink);
   checkLink({
     ...linkSimulation,
     expectedLink: LEARN_MORE_URI,
     expectedTab: "tab"
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_batching.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_batching.js
@@ -2,20 +2,21 @@
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 // Check adding console calls as batch keep the order of the message.
 
-const TEST_URI = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/test-batching.html";
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/test-batching.html";
 const { l10n } = require("devtools/client/webconsole/new-console-output/utils/messages");
 
-add_task(async function() {
+add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
   const messageNumber = 100;
   await testSimpleBatchLogging(hud, messageNumber);
   await testBatchLoggingAndClear(hud, messageNumber);
 });
 
 async function testSimpleBatchLogging(hud, messageNumber) {
   await ContentTask.spawn(gBrowser.selectedBrowser, messageNumber,
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_block_mixedcontent_securityerrors.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_block_mixedcontent_securityerrors.js
@@ -1,41 +1,45 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // The test loads a web page with mixed active and display content
 // on it while the "block mixed content" settings are _on_.
 // It then checks that the blocked mixed content warning messages
 // are logged to the console and have the correct "Learn More"
 // url appended to them. After the first test finishes, it invokes
 // a second test that overrides the mixed content blocker settings
 // by clicking on the doorhanger shield and validates that the
 // appropriate messages are logged to console.
 // Bug 875456 - Log mixed content messages from the Mixed Content
 // Blocker to the Security Pane in the Web Console.
 
 "use strict";
 
 const TEST_URI = "https://example.com/browser/devtools/client/webconsole/" +
-  "new-console-output/test/mochitest/test-mixedcontent-securityerrors.html";
-const LEARN_MORE_URI =
-  "https://developer.mozilla.org/docs/Web/Security/Mixed_content" + DOCS_GA_PARAMS;
+                 "new-console-output/test/mochitest/" +
+                 "test-mixedcontent-securityerrors.html";
+const LEARN_MORE_URI = "https://developer.mozilla.org/docs/Web/Security/" +
+                       "Mixed_content" + DOCS_GA_PARAMS;
 
 const blockedActiveContentText = "Blocked loading mixed active content " +
   "\u201chttp://example.com/\u201d";
 const blockedDisplayContentText = "Blocked loading mixed display content " +
   "\u201chttp://example.com/tests/image/test/mochitest/blue.png\u201d";
 const activeContentText = "Loading mixed (insecure) active content " +
   "\u201chttp://example.com/\u201d on a secure page";
 const displayContentText = "Loading mixed (insecure) display content " +
-  "\u201chttp://example.com/tests/image/test/mochitest/blue.png\u201d on a secure page";
+  "\u201chttp://example.com/tests/image/test/mochitest/blue.png\u201d on a " +
+  "secure page";
 
-add_task(async function() {
+add_task(async function () {
   await pushPrefEnv();
 
   const hud = await openNewTabAndConsole(TEST_URI);
 
   const waitForErrorMessage = text =>
     waitFor(() => findMessage(hud, text, ".message.error"), undefined, 100);
 
   const onBlockedIframe = waitForErrorMessage(blockedActiveContentText);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_cached_messages.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_cached_messages.js
@@ -1,22 +1,25 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test to see if the cached messages are displayed when the console UI is
 // opened.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-                 "new-console-output/test/mochitest/test-webconsole-error-observer.html";
+                 "new-console-output/test/mochitest/" +
+                 "test-webconsole-error-observer.html";
 
-add_task(async function() {
+add_task(async function () {
   // On e10s, the exception is triggered in child process
   // and is ignored by test harness
   if (!Services.appinfo.browserTabsRemoteAutostart) {
     expectUncaughtException();
   }
   // Enable CSS filter for the test.
   await pushPref("devtools.webconsole.filter.css", true);
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_cd_iframe.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_cd_iframe.js
@@ -1,19 +1,21 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that the cd() jsterm helper function works as expected. See bug 609872.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-  "new-console-output/test/mochitest/test-cd-iframe-parent.html";
+                 "new-console-output/test/mochitest/test-cd-iframe-parent.html";
 
 add_task(async function () {
   const hud = await openNewTabAndConsole(TEST_URI);
 
   info("Test initial state");
   await executeWindowTest(hud, "parent");
 
   info("cd() into the iframe using a selector");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_certificate_messages.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_certificate_messages.js
@@ -1,28 +1,27 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the Web Console shows weak crypto warnings (SHA-1 Certificate)
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,Web Console weak crypto warnings test";
 const TEST_URI_PATH = "/browser/devtools/client/webconsole/new-console-output/test/" +
                       "mochitest/test-certificate-messages.html";
 
 const SHA1_URL = "https://sha1ee.example.com" + TEST_URI_PATH;
 const SHA256_URL = "https://sha256ee.example.com" + TEST_URI_PATH;
 const TRIGGER_MSG = "If you haven't seen ssl warnings yet, you won't";
 
-const cache = Cc["@mozilla.org/netwerk/cache-storage-service;1"]
-  .getService(Ci.nsICacheStorageService);
-
 add_task(async function () {
   const hud = await openNewTabAndConsole(TEST_URI);
 
   info("Test SHA1 warnings");
   let onContentLog = waitForMessage(hud, TRIGGER_MSG);
   let onSha1Warning = waitForMessage(hud, "SHA-1");
   await loadDocument(SHA1_URL);
   await Promise.all([onContentLog, onSha1Warning]);
@@ -36,10 +35,10 @@ add_task(async function () {
   await loadDocument(SHA256_URL);
   await onContentLog;
 
   textContent = hud.outputNode.textContent;
   ok(!textContent.includes("SHA-1"), "There is no warning message for SHA-1");
   ok(!textContent.includes("SSL 3.0"), "There is no warning message for SSL 3.0");
   ok(!textContent.includes("RC4"), "There is no warning message for RC4");
 
-  cache.clear();
+  Services.cache2.clear();
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_click_function_to_source.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_click_function_to_source.js
@@ -1,44 +1,48 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that clicking on a function displays its source in the debugger. See Bug 1050691.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-                 "new-console-output/test/mochitest/test-click-function-to-source.html";
+                 "new-console-output/test/mochitest/" +
+                 "test-click-function-to-source.html";
 
 // Force the old debugger UI since it's directly used (see Bug 1301705)
 pushPref("devtools.debugger.new-debugger-frontend", false);
 
 add_task(async function () {
   const hud = await openNewTabAndConsole(TEST_URI);
 
   info("Open the Debugger panel.");
   const {panel} = await openDebugger();
   let panelWin = panel.panelWin;
 
-  info("And right after come back to the Console panel.")
+  info("And right after come back to the Console panel.");
   await openConsole();
 
   info("Log a function");
-  const onLoggedFunction = waitForMessage(hud, "function foo")
+  const onLoggedFunction = waitForMessage(hud, "function foo");
   ContentTask.spawn(gBrowser.selectedBrowser, {}, function () {
     content.wrappedJSObject.foo();
   });
   const {node} = await onLoggedFunction;
-  const jumpIcon = node.querySelector(".jump-definition")
+  const jumpIcon = node.querySelector(".jump-definition");
   ok(jumpIcon, "A jump to definition button is rendered, as expected");
 
   info("Click on the jump to definition button.");
   let onEditorLocationSet = panelWin.once(panelWin.EVENTS.EDITOR_LOCATION_SET);
   jumpIcon.click();
   await onEditorLocationSet;
 
   const {editor} = panelWin.DebuggerView;
   const {line, ch} = editor.getCursor();
   // Source editor starts counting line and column numbers from 0.
-  ok(line === 6 && ch === 0, "Debugger is open at the expected position");
+  is(line, 8, "Debugger is open at the expected line");
+  is(ch, 0, "Debugger is open at the expected character");
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_clickable_urls.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_clickable_urls.js
@@ -1,11 +1,13 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // When strings containing URLs are entered into the webconsole,
 // ensure that the output can be clicked to open those URLs.
 // This test only check that clicking on a link works as expected,
 // as the output is already tested in Reps (in Github).
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,Clickable URLS";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_close_sidebar.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_close_sidebar.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that the sidebar is hidden for all methods of closing it.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,";
 
 add_task(async function () {
   // Should be removed when sidebar work is complete
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_closing_after_completion.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_closing_after_completion.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests to ensure that errors don't appear when the console is closed while a
 // completion is being performed. See Bug 580001.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-console.html";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_closure_inspection.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_closure_inspection.js
@@ -33,17 +33,18 @@ function test() {
   }
 
   loadTab(TEST_URI).then(() => {
     openConsole().then((hud) => {
       openDebugger().then(({ toolbox, panelWin }) => {
         let deferred = defer();
         fetchScopes(hud, toolbox, panelWin, deferred);
 
-        ContentTask.spawn(gBrowser.selectedBrowser, {}, function* () {
+        // eslint-disable-next-line
+        ContentTask.spawn(gBrowser.selectedBrowser, {}, () => {
           let button = content.document.querySelector("button");
           ok(button, "button element found");
           button.click();
         });
 
         return deferred.promise;
       });
     });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_api_iframe.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_api_iframe.js
@@ -12,13 +12,13 @@ const TEST_URI = "http://example.com/bro
 
 add_task(async function () {
   const hud = await openNewTabAndConsole(TEST_URI);
   const loggedString = "iframe added";
   // Wait for the initial message to be displayed.
   await waitFor(() => findMessage(hud, loggedString));
   ok(true, "The initial message is displayed in the console");
   // Create a promise for the message logged after the reload.
-  const onMessage = waitForMessage(hud, loggedString)
+  const onMessage = waitForMessage(hud, loggedString);
   BrowserReload();
   await onMessage;
   ok(true, "The message is also displayed after a page reload");
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_dir_uninspectable.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_dir_uninspectable.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Make sure that the Web Console output does not break after we try to call
 // console.dir() for objects that are not inspectable.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,test console.dir on uninspectable object";
 const FIRST_LOG_MESSAGE = "fooBug773466a";
 const SECOND_LOG_MESSAGE = "fooBug773466b";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_group.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_group.js
@@ -3,18 +3,20 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 // Check console.group, console.groupCollapsed and console.groupEnd calls
 // behave as expected.
 
-const TEST_URI = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/test-console-group.html";
-const { INDENT_WIDTH } = require("devtools/client/webconsole/new-console-output/components/MessageIndent");
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/test-console-group.html";
+const { INDENT_WIDTH } =
+  require("devtools/client/webconsole/new-console-output/components/MessageIndent");
 
 add_task(async function () {
   const hud = await openNewTabAndConsole(TEST_URI);
   const store = hud.ui.newConsoleOutput.getStore();
   logAllStoreChanges(hud);
 
   const onMessagesLogged = waitForMessage(hud, "log-6");
   ContentTask.spawn(gBrowser.selectedBrowser, null, function () {
@@ -25,35 +27,35 @@ add_task(async function () {
   info("Test a group at root level");
   let node = findMessage(hud, "group-1");
   testClass(node, "startGroup");
   testIndent(node, 0);
   await testGroupToggle({
     node,
     store,
     shouldBeOpen: true,
-    visibleMessageIdsAfterExpand: ["1","2","3","4","6","8","9","12"],
-    visibleMessageIdsAfterCollapse: ["1","8","9","12"],
+    visibleMessageIdsAfterExpand: ["1", "2", "3", "4", "6", "8", "9", "12"],
+    visibleMessageIdsAfterCollapse: ["1", "8", "9", "12"],
   });
 
   info("Test a message in a 1 level deep group");
   node = findMessage(hud, "log-1");
   testClass(node, "log");
   testIndent(node, 1);
 
   info("Test a group in a 1 level deep group");
   node = findMessage(hud, "group-2");
   testClass(node, "startGroup");
   testIndent(node, 1);
   await testGroupToggle({
     node,
     store,
     shouldBeOpen: true,
-    visibleMessageIdsAfterExpand: ["1","2","3","4","6","8","9","12"],
-    visibleMessageIdsAfterCollapse: ["1","2","3","6","8","9","12"],
+    visibleMessageIdsAfterExpand: ["1", "2", "3", "4", "6", "8", "9", "12"],
+    visibleMessageIdsAfterCollapse: ["1", "2", "3", "6", "8", "9", "12"],
   });
 
   info("Test a message in a 2 level deep group");
   node = findMessage(hud, "log-2");
   testClass(node, "log");
   testIndent(node, 2);
 
   info("Test a message in a 1 level deep group, after closing a 2 level deep group");
@@ -69,18 +71,18 @@ add_task(async function () {
   info("Test a collapsed group at root level");
   node = findMessage(hud, "group-3");
   testClass(node, "startGroupCollapsed");
   testIndent(node, 0);
   await testGroupToggle({
     node,
     store,
     shouldBeOpen: false,
-    visibleMessageIdsAfterExpand: ["1","2","3","4","6","8","9","10","12"],
-    visibleMessageIdsAfterCollapse: ["1","2","3","4","6","8","9","12"]
+    visibleMessageIdsAfterExpand: ["1", "2", "3", "4", "6", "8", "9", "10", "12"],
+    visibleMessageIdsAfterCollapse: ["1", "2", "3", "4", "6", "8", "9", "12"]
   });
 
   info("Test a message at root level, after closing a collapsed group");
   node = findMessage(hud, "log-6");
   testClass(node, "log");
   testIndent(node, 0);
   let nodes = hud.ui.outputNode.querySelectorAll(".message");
   is(nodes.length, 8, "expected number of messages are displayed");
@@ -99,28 +101,28 @@ function testIndent(node, indent) {
 async function testGroupToggle({
   node,
   store,
   shouldBeOpen,
   visibleMessageIdsAfterExpand,
   visibleMessageIdsAfterCollapse
 }) {
   let toggleArrow = node.querySelector(".theme-twisty");
-  const isOpen = node => node.classList.contains("open");
+  const isOpen = node2 => node2.classList.contains("open");
   const assertVisibleMessageIds = (expanded) => {
     let visibleMessageIds = store.getState().messages.visibleMessages;
     expanded ? is(visibleMessageIds.toString(), visibleMessageIdsAfterExpand.toString()) :
       is(visibleMessageIds.toString(), visibleMessageIdsAfterCollapse.toString());
-  }
+  };
 
-  await waitFor(() => isOpen(node) === shouldBeOpen)
+  await waitFor(() => isOpen(node) === shouldBeOpen);
   assertVisibleMessageIds(shouldBeOpen);
 
   toggleArrow.click();
   shouldBeOpen = !shouldBeOpen;
-  await waitFor(() => isOpen(node) === shouldBeOpen)
+  await waitFor(() => isOpen(node) === shouldBeOpen);
   assertVisibleMessageIds(shouldBeOpen);
 
   toggleArrow.click();
   shouldBeOpen = !shouldBeOpen;
-  await waitFor(() => isOpen(node) === shouldBeOpen)
+  await waitFor(() => isOpen(node) === shouldBeOpen);
   assertVisibleMessageIds(shouldBeOpen);
-}
\ No newline at end of file
+}
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_logging_workers_api.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_logging_workers_api.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the basic console.log()-style APIs and filtering work for
 // sharedWorkers
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-console-workers.html";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_table.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_table.js
@@ -3,17 +3,18 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 // Check console.table calls with all the test cases shown
 // in the MDN doc (https://developer.mozilla.org/en-US/docs/Web/API/Console/table)
 
-const TEST_URI = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/test-console-table.html";
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/test-console-table.html";
 
 add_task(function* () {
   let toolbox = yield openNewTabAndToolbox(TEST_URI, "webconsole");
   let hud = toolbox.getCurrentPanel().hud;
 
   function Person(firstName, lastName) {
     this.firstName = firstName;
     this.lastName = lastName;
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_trace_duplicates.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_console_trace_duplicates.js
@@ -20,37 +20,37 @@ add_task(async function testTraceMessage
   //     will generate two distinct trace entries.
   let message = await waitFor(() => findMessage(hud, "foo1"));
   let stackInfo = getStackInfo(message);
 
   checkStackInfo(stackInfo, {
     variable: "console.trace()",
     repeats: 3,
     filename: "test-console-trace-duplicates.html",
-    line: 23,
+    line: 24,
     column: 3,
     stack: [{
       functionName: "foo3",
       filename: TEST_URI,
-      line: 23,
+      line: 24,
       column: 3
     }, {
       functionName: "foo2",
       filename: TEST_URI,
-      line: 19,
+      line: 20,
       column: 3
     }, {
       functionName: "foo1",
       filename: TEST_URI,
-      line: 11,
+      line: 12,
       column: 3
     }, {
       functionName: "<anonymous>",
       filename: TEST_URI,
-      line: 26,
+      line: 27,
       column: 1
     }]
   });
 });
 
 /**
  * Get stack info from a message node. This is a companion to checkStackInfo().
  *
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_copy_entire_message.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_copy_entire_message.js
@@ -23,17 +23,17 @@ const TEST_URI = `data:text/html;charset
     }
     wrapper();
   };
 </script>`;
 
 // Test the Copy menu item of the webconsole copies the expected clipboard text for
 // different log messages.
 
-add_task(async function() {
+add_task(async function () {
   let observer = new PrefObserver("");
   let onPrefUpdated = observer.once(PREF_MESSAGE_TIMESTAMP, () => {});
   Services.prefs.setBoolPref(PREF_MESSAGE_TIMESTAMP, true);
   await onPrefUpdated;
 
   let hud = await openNewTabAndConsole(TEST_URI);
   hud.jsterm.clearOutput();
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_copy_link_location.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_copy_link_location.js
@@ -1,23 +1,26 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test the Copy Link Location menu item of the webconsole is displayed for network
 // messages and copies the expected URL.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-  "new-console-output/test/mochitest/test-console.html?_date=" + Date.now();
+                 "new-console-output/test/mochitest/test-console.html?_date=" +
+                 Date.now();
 const CONTEXT_MENU_ID = "#console-menu-copy-url";
 
-add_task(async function() {
+add_task(async function () {
   // Enable net messages in the console for this test.
   await pushPref("devtools.webconsole.filter.net", true);
 
   let hud = await openNewTabAndConsole(TEST_URI);
   hud.jsterm.clearOutput();
 
   info("Test Copy URL menu item for text log");
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_copy_object.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_copy_object.js
@@ -1,11 +1,13 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test the "Copy object" menu item of the webconsole is enabled only when
 // clicking on messages that are associated with an object actor.
 
 "use strict";
 
 const TEST_URI = `data:text/html;charset=utf-8,<script>
   window.bar = { baz: 1 };
   console.log("foo");
@@ -17,17 +19,17 @@ const TEST_URI = `data:text/html;charset
   console.log(532);
   console.log(true);
   console.log(false);
   console.log(undefined);
   console.log(null);
 </script>`;
 const copyObjectMenuItemId = "#console-menu-copy-object";
 
-add_task(async function() {
+add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
 
   let [msgWithText, msgWithObj, msgNested] =
     await waitFor(() => findMessages(hud, "foo"));
   ok(msgWithText && msgWithObj && msgNested, "Three messages should have appeared");
 
   let [groupMsgObj] = await waitFor(() => findMessages(hud, "group", ".message-body"));
   let [collapsedGroupMsgObj] = await waitFor(() =>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_object_in_sidebar.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_object_in_sidebar.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that the "Open in sidebar" context menu entry is active for
 // the correct objects and opens the sidebar when clicked.
 
 "use strict";
 
 const TEST_URI =
   "data:text/html;charset=utf8," +
   "<script>console.log({a:1},100,{b:1},'foo',false,null,undefined);</script>";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_open_url.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_open_url.js
@@ -1,22 +1,24 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that the Open URL in new Tab menu item is displayed for network logs and works as
 // expected.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-  "new-console-output/test/mochitest/test-console.html";
+                 "new-console-output/test/mochitest/test-console.html";
 
-add_task(async function() {
+add_task(async function () {
   // Enable net messages in the console for this test.
   await pushPref("devtools.webconsole.filter.net", true);
 
   let hud = await openNewTabAndConsole(TEST_URI);
   hud.jsterm.clearOutput();
 
   info("Test Open URL menu item for text log");
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_store_as_global.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_context_menu_store_as_global.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test the "Store as global variable" menu item of the webconsole is enabled only when
 // clicking on messages that are associated with an object actor.
 
 "use strict";
 
 const TEST_URI = `data:text/html;charset=utf-8,<script>
   window.bar = { baz: 1 };
   console.log("foo");
@@ -15,17 +17,17 @@ const TEST_URI = `data:text/html;charset
   window.array = ["foo", window.bar, 2];
   console.log(window.array);
   window.longString = "foo" + "a".repeat(1e4);
   console.log(window.longString);
   window.symbol = Symbol();
   console.log("foo", window.symbol);
 </script>`;
 
-add_task(async function() {
+add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
 
   let messages = await waitFor(() => findMessages(hud, "foo"));
   is(messages.length, 5, "Five messages should have appeared");
   let [msgWithText, msgWithObj, msgNested, msgLongStr, msgSymbol] = messages;
   let varIdx = 0;
 
   info("Check store as global variable is disabled for text only messages");
@@ -52,17 +54,18 @@ add_task(async function() {
   info("Check store as global variable is enabled for invisible-to-debugger objects");
   let onMessageInvisible = waitForMessage(hud, "foo");
   ContentTask.spawn(gBrowser.selectedBrowser, null, () => {
     let obj = Cu.Sandbox(Cu.getObjectPrincipal(content), {invisibleToDebugger: true});
     content.wrappedJSObject.invisibleToDebugger = obj;
     content.console.log("foo", obj);
   });
   let msgInvisible = (await onMessageInvisible).node;
-  await storeAsVariable(hud, msgInvisible, "object", varIdx++, "window.invisibleToDebugger");
+  await storeAsVariable(hud, msgInvisible, "object", varIdx++,
+                        "window.invisibleToDebugger");
 });
 
 async function storeAsVariable(hud, msg, type, varIdx, equalTo) {
   let element = msg.querySelector(".objectBox-" + type);
   let menuPopup = await openContextMenu(hud, element);
   let storeMenuItem = menuPopup.querySelector("#console-menu-store");
 
   if (varIdx == null) {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_csp_ignore_reflected_xss_message.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_csp_ignore_reflected_xss_message.js
@@ -1,31 +1,30 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that a file with an unsupported CSP directive ('reflected-xss filter')
 // displays the appropriate message to the console. See Bug 1045902.
 
 "use strict";
 
 const EXPECTED_RESULT = "Not supporting directive \u2018reflected-xss\u2019. " +
                         "Directive and values will be ignored.";
-const TEST_FILE =
-  "http://example.com/browser/devtools/client/webconsole/new-console-output/test/" +
-  "mochitest/test_console_csp_ignore_reflected_xss_message.html";
+const TEST_FILE = "http://example.com/browser/devtools/client/webconsole/" +
+                  "new-console-output/test/mochitest/" +
+                  "test_console_csp_ignore_reflected_xss_message.html";
 
 const TEST_URI =
   "data:text/html;charset=utf8,Web Console CSP ignoring reflected XSS (bug 1045902)";
 
-const cache = Cc["@mozilla.org/netwerk/cache-storage-service;1"]
-  .getService(Ci.nsICacheStorageService);
-
 add_task(async function () {
   const hud = await openNewTabAndConsole(TEST_URI);
   await loadDocument(TEST_FILE);
 
   await waitFor(() => findMessage(hud, EXPECTED_RESULT, ".message.warn"));
   ok(true, `CSP logs displayed in console when using "reflected-xss" directive`);
 
-  cache.clear();
+  Services.cache2.clear();
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_csp_violation.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_csp_violation.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the Web Console CSP messages for two META policies
 // are correctly displayed. See Bug 1247459.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,Web Console CSP violation test";
 const TEST_VIOLATION = "https://example.com/browser/devtools/client/webconsole/" +
                        "new-console-output/test/mochitest/test-csp-violation.html";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_document_focus.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_document_focus.js
@@ -11,14 +11,12 @@ add_task(async function () {
 
   let inputNode = hud.jsterm.inputNode;
   info("Focus after console is opened");
   ok(hasFocus(inputNode), "input node is focused after console is opened");
 
   info("Closing console");
   await closeConsole();
   const isFocused = await ContentTask.spawn(gBrowser.selectedBrowser, { }, function () {
-    const cmp = "@mozilla.org/focus-manager;1";
-    const fm = Cc[cmp].getService(Ci.nsIFocusManager);
-    return fm.focusedWindow == content;
+    return Services.focus.focusedWindow == content;
   });
   ok(isFocused, "content document has focus after closing the console");
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_duplicate_errors.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_duplicate_errors.js
@@ -1,27 +1,28 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that exceptions thrown by content don't show up twice in the Web
 // Console. See Bug 582201.
 
 "use strict";
 
-const INIT_URI = "data:text/html;charset=utf8,hello world";
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-  "new-console-output/test/mochitest/test-duplicate-error.html";
+                 "new-console-output/test/mochitest/test-duplicate-error.html";
 
 add_task(async function () {
   // On e10s, the exception is triggered in child process
   // and is ignored by test harness
   if (!Services.appinfo.browserTabsRemoteAutostart) {
     expectUncaughtException();
   }
   let hud = await openNewTabAndConsole(TEST_URI);
 
   await waitFor(() => findMessage(hud, "fooDuplicateError1", ".message.error"));
 
   const errorMessages = hud.outputNode.querySelectorAll(".message.error");
   is(errorMessages.length, 1, "There's only one error message for fooDuplicateError1");
   is(errorMessages[0].querySelector(".message-repeats"), null,
-    "There is no repeat bubble on the error message")
+    "There is no repeat bubble on the error message");
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_errors_after_page_reload.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_errors_after_page_reload.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that errors still show up in the Web Console after a page reload.
 // See bug 580030: the error handler fails silently after page reload.
 // https://bugzilla.mozilla.org/show_bug.cgi?id=580030
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-error.html";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_eval_in_debugger_stackframe.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_eval_in_debugger_stackframe.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that makes sure web console eval happens in the user-selected stackframe
 // from the js debugger.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-eval-in-stackframe.html";
 
@@ -71,14 +73,14 @@ add_task(async function () {
   await onResultMessage;
   ok(true, "`foo + foo2 + foo3` from `firstCall()`");
 
   onResultMessage = waitForMessage(hud, "abbabug783499");
   jsterm.execute("foo = 'abba'; foo3 = 'bug783499'; foo + foo3");
   await onResultMessage;
   ok(true, "`foo + foo3` updated in `firstCall()`");
 
-  await ContentTask.spawn(gBrowser.selectedBrowser, null, function() {
+  await ContentTask.spawn(gBrowser.selectedBrowser, null, function () {
     is(content.wrappedJSObject.foo, "globalFooBug783499", "`foo` in content window");
     is(content.wrappedJSObject.foo2, "newFoo", "`foo2` in content window");
     ok(!content.wrappedJSObject.foo3, "`foo3` was not added to the content window");
   });
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_eval_in_debugger_stackframe2.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_eval_in_debugger_stackframe2.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test to make sure that web console commands can fire while paused at a
 // breakpoint that was triggered from a JS call.  Relies on asynchronous js
 // evaluation over the protocol - see Bug 1088861.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-eval-in-stackframe.html";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_execution_scope.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_execution_scope.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that commands run by the user are executed in content space.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-console.html";
 
 add_task(async function () {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_external_script_errors.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_external_script_errors.js
@@ -3,17 +3,18 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 // See Bug 597136.
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-                 "new-console-output/test/mochitest/test-external-script-errors.html";
+                 "new-console-output/test/mochitest/" +
+                 "test-external-script-errors.html";
 
 add_task(async function () {
   // On e10s, the exception is triggered in child process
   // and is ignored by test harness
   if (!Services.appinfo.browserTabsRemoteAutostart) {
     expectUncaughtException();
   }
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_filter_scroll.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_filter_scroll.js
@@ -56,17 +56,16 @@ add_task(async function () {
 
   info("Clear the text filter and check that the scroll position is not impacted");
   onMessagesUnFiltered = waitFor(() => findMessage(hud, "init-1"), null, 200);
   filterInput.select();
   EventUtils.synthesizeKey("KEY_Delete");
   await onMessagesUnFiltered;
   is(outputContainer.scrollTop, 0,
     "The console is still scrolled to the top after clearing the filter");
-
 });
 
 function hasVerticalOverflow(container) {
   return container.scrollHeight > container.clientHeight;
 }
 
 function isScrolledToBottom(container) {
   if (!container.lastChild) {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_filters.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_filters.js
@@ -4,17 +4,18 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
  /* import-globals-from head.js */
 
 // Tests filters.
 
 "use strict";
 
-const TEST_URI = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/test-console-filters.html";
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/test-console-filters.html";
 
 add_task(async function () {
   const hud = await openNewTabAndConsole(TEST_URI);
   await setFilterBarVisible(hud, true);
 
   let filterState = await getFilterState(hud);
 
   // Check defaults.
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_filters_persist.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_filters_persist.js
@@ -1,20 +1,23 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests all filters persist.
 
 "use strict";
 
-const TEST_URI = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/test-console-filters.html";
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/test-console-filters.html";
 
-add_task(async function() {
+add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
 
   let filterButtons = await getFilterButtons(hud);
   info("Disable all filters");
   filterButtons.forEach(filterButton => {
     if (filterIsEnabled(filterButton)) {
       filterButton.click();
     }
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_highlighter_console_helper.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_highlighter_console_helper.js
@@ -1,11 +1,13 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the $0 console helper works as intended. See Bug 653531.
 
 "use strict";
 
 const TEST_URI = `data:text/html;charset=utf-8,
 <head>
   <title>Inspector Tree Selection Test</title>
 </head>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_hpkp_invalid-headers.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_hpkp_invalid-headers.js
@@ -1,20 +1,22 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that errors about invalid HPKP security headers are logged to the web console.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,Web Console HPKP invalid header test";
 const SJS_URL = "https://example.com/browser/devtools/client/webconsole/" +
                 "new-console-output/test/mochitest/test_hpkp-invalid-headers.sjs";
-const LEARN_MORE_URI =
-  "https://developer.mozilla.org/docs/Web/HTTP/Public_Key_Pinning" + DOCS_GA_PARAMS;
+const LEARN_MORE_URI = "https://developer.mozilla.org/docs/Web/HTTP/" +
+                       "Public_Key_Pinning" + DOCS_GA_PARAMS;
 const NON_BUILTIN_ROOT_PREF =
   "security.cert_pinning.process_headers_from_non_builtin_roots";
 
 add_task(async function () {
   registerCleanupFunction(() => {
     Services.prefs.clearUserPref(NON_BUILTIN_ROOT_PREF);
   });
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_hsts_invalid-headers.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_hsts_invalid-headers.js
@@ -1,11 +1,13 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that errors about invalid HSTS security headers are logged to the web console.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,Web Console HSTS invalid header test";
 const SJS_URL = "https://example.com/browser/devtools/client/webconsole/" +
                 "/new-console-output/test/mochitest/test_hsts-invalid-headers.sjs";
 const LEARN_MORE_URI = "https://developer.mozilla.org/docs/Web/HTTP/Headers/" +
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_ineffective_iframe_sandbox_warning.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_ineffective_iframe_sandbox_warning.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that warnings about ineffective iframe sandboxing are logged to the
 // web console when necessary (and not otherwise). See Bug 752559.
 
 "use strict";
 
 requestLongerTimeout(2);
 
 const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/" +
@@ -42,10 +44,10 @@ async function testWarningMessageVisibil
 
   ContentTask.spawn(gBrowser.selectedBrowser, sentinel, function (msg) {
     content.console.log(msg);
   });
   await onSentinelMessage;
 
   const warning = findMessage(hud, INEFFECTIVE_IFRAME_SANDBOXING_MSG, ".message.warn");
   is(!!warning, visible,
-    `The warning message is${visible ? "": " not"} visible on ${uri}`);
+    `The warning message is${visible ? "" : " not"} visible on ${uri}`);
 }
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_init.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_init.js
@@ -1,16 +1,17 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
-const TEST_URI = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/test-console.html";
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/test-console.html";
 
 add_task(function* () {
   let toolbox = yield openNewTabAndToolbox(TEST_URI, "webconsole");
   let hud = toolbox.getCurrentPanel().hud;
   let {ui} = hud;
 
   ok(ui.jsterm, "jsterm exists");
   ok(ui.newConsoleOutput, "newConsoleOutput exists");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_input_field_focus_on_panel_select.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_input_field_focus_on_panel_select.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that the JS input field is focused when the user switches back to the
 // web console from other tools, see bug 891581.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,<p>hello";
 
 add_task(function* () {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_input_focus.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_input_focus.js
@@ -1,35 +1,37 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the input field is focused when the console is opened.
 
 "use strict";
 
 const TEST_URI =
   `data:text/html;charset=utf-8,Test input focused
   <script>
     console.log("console message 1");
   </script>`;
 
-add_task(async function() {
+add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
 
   let inputNode = hud.jsterm.inputNode;
   info("Focus after console is opened");
   ok(hasFocus(inputNode), "input node is focused after console is opened");
 
   hud.jsterm.clearOutput();
   ok(hasFocus(inputNode), "input node is focused after output is cleared");
 
   info("Focus during message logging");
-  ContentTask.spawn(gBrowser.selectedBrowser, {}, function() {
+  ContentTask.spawn(gBrowser.selectedBrowser, {}, function () {
     content.wrappedJSObject.console.log("console message 2");
   });
   let msg = await waitFor(() => findMessage(hud, "console message 2"));
   ok(hasFocus(inputNode, "input node is focused, first time"));
 
   info("Focus after clicking in the output area");
   await waitForBlurredInput(hud);
   EventUtils.sendMouseEvent({type: "click"}, msg);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_insecure_passwords_about_blank_web_console_warning.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_insecure_passwords_about_blank_web_console_warning.js
@@ -1,21 +1,23 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that errors about insecure passwords are logged to the web console.
 // See Bug 762593.
 
 "use strict";
 
-const TEST_URI =
-  "http://example.com/browser/devtools/client/webconsole/new-console-output/test/" +
-  "mochitest/test-insecure-passwords-about-blank-web-console-warning.html";
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/" +
+                 "test-insecure-passwords-about-blank-web-console-warning.html";
 const INSECURE_PASSWORD_MSG = "Password fields present on an insecure (http://) iframe." +
   " This is a security risk that allows user login credentials to be stolen.";
 
 add_task(async function () {
   const hud = await openNewTabAndConsole(TEST_URI);
   await waitFor(()=> findMessage(hud, INSECURE_PASSWORD_MSG, ".message.warn"), "", 100);
   ok(true, "Insecure password error displayed successfully");
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_inspect_cross_domain_object.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_inspect_cross_domain_object.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Check that users can inspect objects logged from cross-domain iframes -
 // bug 869003.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/" +
                  "test-inspect-cross-domain-objects-top.html";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_keyboard_accessibility.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_keyboard_accessibility.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Check that basic keyboard shortcuts work in the web console.
 
 "use strict";
 
 const TEST_URI =
   `data:text/html;charset=utf-8,<p>Test keyboard accessibility</p>
   <script>
     for (let i = 1; i <= 100; i++) {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_location_debugger_link.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_location_debugger_link.js
@@ -1,23 +1,25 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that message source links for js errors and console API calls open in
 // the jsdebugger when clicked.
 
 "use strict";
 requestLongerTimeout(2);
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-  "new-console-output/test/mochitest/test-location-debugger-link.html";
+                 "new-console-output/test/mochitest/test-location-debugger-link.html";
 
-add_task(async function() {
+add_task(async function () {
   // Force the new debugger UI, in case this gets uplifted with the old
   // debugger still turned on
   await pushPref("devtools.debugger.new-debugger-frontend", true);
   await pushPref("devtools.webconsole.filter.error", true);
   await pushPref("devtools.webconsole.filter.log", true);
 
   // On e10s, the exception thrown in test-location-debugger-link-errors.js
   // is triggered in child process and is ignored by test harness
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_location_styleeditor_link.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_location_styleeditor_link.js
@@ -1,16 +1,18 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
-const TEST_URI = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/test-location-styleeditor-link.html";
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/" +
+                 "test-location-styleeditor-link.html";
 
 add_task(async function () {
   await pushPref("devtools.webconsole.filter.css", true);
   let hud = await openNewTabAndConsole(TEST_URI);
   let target = TargetFactory.forTab(gBrowser.selectedTab);
   let toolbox = gDevTools.getToolbox(target);
 
   await testViewSource(hud, toolbox, "\u2018font-weight\u2019");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_longstring_expand.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_longstring_expand.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that long strings can be expanded in the console output.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,test for bug 787981 - check " +
                  "that long strings can be expanded in the output.";
 
 add_task(function* () {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_multiple_windows_and_tabs.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_multiple_windows_and_tabs.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the Web Console doesn't leak when multiple tabs and windows are
 // opened and then closed. See Bug 595350.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,Web Console test for bug 595350";
 
 add_task(async function () {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_attach.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_attach.js
@@ -1,15 +1,16 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 const TEST_FILE = "test-network-request.html";
-const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/";
+const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/" +
+                  "new-console-output/test/mochitest/";
 const TEST_URI = TEST_PATH + TEST_FILE;
 
 add_task(async function task() {
   await pushPref("devtools.webconsole.filter.net", false);
   await pushPref("devtools.webconsole.filter.netxhr", true);
   await openNewTabAndToolbox(TEST_URI, "netmonitor");
 
   const currentTab = gBrowser.selectedTab;
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_exceptions.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_exceptions.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that we report JS exceptions in event handlers coming from
 // network requests, like onreadystate for XHR. See bug 618078.
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,Web Console test for bug 618078";
 const TEST_URI2 = "http://example.com/browser/devtools/client/webconsole/" +
                   "new-console-output/test/mochitest/test-network-exceptions.html";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_messages_expand.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_messages_expand.js
@@ -1,15 +1,16 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 const TEST_FILE = "test-network-request.html";
-const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/";
+const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/" +
+                  "new-console-output/test/mochitest/";
 const TEST_URI = TEST_PATH + TEST_FILE;
 
 const NET_PREF = "devtools.webconsole.filter.net";
 const XHR_PREF = "devtools.webconsole.filter.netxhr";
 
 requestLongerTimeout(2);
 
 Services.prefs.setBoolPref(NET_PREF, false);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_messages_openinnet.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_messages_openinnet.js
@@ -3,17 +3,18 @@
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf8,Test that 'Open in Network Panel' " +
                  "context menu item opens the selected request in netmonitor panel.";
 
 const TEST_FILE = "test-network-request.html";
 const JSON_TEST_URL = "test-network-request.html";
-const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/";
+const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/" +
+                  "new-console-output/test/mochitest/";
 
 const NET_PREF = "devtools.webconsole.filter.net";
 const XHR_PREF = "devtools.webconsole.filter.netxhr";
 
 Services.prefs.setBoolPref(NET_PREF, true);
 Services.prefs.setBoolPref(XHR_PREF, true);
 registerCleanupFunction(() => {
   Services.prefs.clearUserPref(NET_PREF);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_messages_status_code.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_messages_status_code.js
@@ -1,15 +1,16 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 const TEST_FILE = "test-network-request.html";
-const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/";
+const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/" +
+                  "new-console-output/test/mochitest/";
 const TEST_URI = TEST_PATH + TEST_FILE;
 
 const NET_PREF = "devtools.webconsole.filter.net";
 const XHR_PREF = "devtools.webconsole.filter.netxhr";
 let { l10n } = require("devtools/client/webconsole/new-console-output/utils/messages");
 const LEARN_MORE_URI = "https://developer.mozilla.org/docs/Web/HTTP/Status/200" + STATUS_CODES_GA_PARAMS;
 
 pushPref(NET_PREF, true);
@@ -29,17 +30,16 @@ add_task(async function task() {
     content.wrappedJSObject.testXhrPost();
   });
 
   info("XHR executed");
   await onNetworkMessageUpdate;
 
   let xhrUrl = TEST_PATH + "test-data.json";
   let messageNode = await waitFor(() => findMessage(hud, xhrUrl));
-  let urlNode = messageNode.querySelector(".url");
   let statusCodeNode = messageNode.querySelector(".status-code");
   info("Network message found.");
 
   ok(statusCodeNode.title, l10n.getStr("webConsoleMoreInfoLabel"));
   let {
     middleMouseEvent,
     ctrlOrCmdKeyMouseEvent,
     rightClickMouseEvent,
@@ -51,18 +51,20 @@ add_task(async function task() {
     { clickEvent: null, link: LEARN_MORE_URI, where: "tab" },
     { clickEvent: ctrlOrCmdKeyMouseEvent, link: LEARN_MORE_URI, where: "tabshifted" },
     { clickEvent: rightClickMouseEvent, link: null, where: null },
     { clickEvent: rightClickCtrlOrCmdKeyMouseEvent, link: null, where: null }
   ];
 
   for (let testCase of testCases) {
     const { clickEvent } = testCase;
-    let onConsoleMenuOpened = [rightClickMouseEvent, rightClickCtrlOrCmdKeyMouseEvent].includes(clickEvent) ?
-      hud.ui.newConsoleOutput.once("menu-open") : null;
+    let onConsoleMenuOpened = [
+      rightClickMouseEvent,
+      rightClickCtrlOrCmdKeyMouseEvent
+    ].includes(clickEvent) ? hud.ui.newConsoleOutput.once("menu-open") : null;
 
     let { link, where } = await simulateLinkClick(statusCodeNode, testCase.clickEvent);
     is(link, testCase.link, `Clicking the provided link opens ${link}`);
     is(where, testCase.where, `Link opened in correct tab`);
 
     if (onConsoleMenuOpened) {
       info("Check if context menu is opened on right clicking the status-code");
       await onConsoleMenuOpened;
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_requests_from_chrome.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_requests_from_chrome.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that network requests from chrome don't cause the Web Console to
 // throw exceptions. See Bug 597136.
 
 "use strict";
 
 const TEST_URI = "http://example.com/";
 
 add_task(async function () {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_reset_filter.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_network_reset_filter.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that network log messages bring up the network panel and select the
 // right request even if it was previously filtered off.
 
 "use strict";
 
 const TEST_PATH = "http://example.com/browser/devtools/client/webconsole/" +
                   "new-console-output/test/mochitest/";
 const TEST_URI = "data:text/html;charset=utf8,<p>test file URI";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_nodes_highlight.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_nodes_highlight.js
@@ -16,17 +16,17 @@ const HTML = `
       function logNode(selector) {
         console.log(document.querySelector(selector));
       }
     </script>
   </html>
 `;
 const TEST_URI = "data:text/html;charset=utf-8," + encodeURI(HTML);
 
-add_task(async function() {
+add_task(async function () {
   const hud = await openNewTabAndConsole(TEST_URI);
   const toolbox = gDevTools.getToolbox(hud.target);
 
   await ContentTask.spawn(gBrowser.selectedBrowser, null, () => {
     content.wrappedJSObject.logNode("h1");
   });
 
   let msg = await waitFor(() => findMessage(hud, "<h1>"));
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_object_in_sidebar.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_object_in_sidebar.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that the ObjectInspector is rendered correctly in the sidebar.
 
 "use strict";
 
 const TEST_URI =
   "data:text/html;charset=utf8," +
   "<script>console.log({a:1,b:2,c:3});</script>";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_object_inspector_while_debugging_and_inspecting.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_object_inspector_while_debugging_and_inspecting.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that makes sure web console eval works while the js debugger paused the
 // page, and while the inspector is active. See bug 886137.
 
 "use strict";
 
 const TEST_URI = "https://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-eval-in-stackframe.html";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_optimized_out_vars.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_optimized_out_vars.js
@@ -1,20 +1,23 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Check that inspecting an optimized out variable works when execution is
 // paused.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-                 "new-console-output/test/mochitest/test-closure-optimized-out.html";
+                 "new-console-output/test/mochitest/" +
+                 "test-closure-optimized-out.html";
 
 add_task(async function () {
   // Force the old debugger UI since it's directly used (see Bug 1301705)
   await pushPref("devtools.debugger.new-debugger-frontend", false);
 
   let hud = await openNewTabAndConsole(TEST_URI);
   let { toolbox, panel: debuggerPanel } = await openDebugger();
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_output_copy_newlines.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_output_copy_newlines.js
@@ -5,17 +5,17 @@
 
 /* import-globals-from head.js */
 
 "use strict";
 
 // Test that multiple messages are copied into the clipboard and that they are
 // separated by new lines. See bug 916997.
 const TEST_URI = "data:text/html,<meta charset=utf8>" +
-  "Test copy multiple messages to clipboard";
+                 "Test copy multiple messages to clipboard";
 
 add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
 
   const messages = Array.from({length: 10}, (_, i) => `Message number ${i + 1}`);
   const lastMessage = [...messages].pop();
   let onMessage = waitForMessage(hud, lastMessage);
   ContentTask.spawn(gBrowser.selectedBrowser, messages, msgs => {
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_output_order.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_output_order.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that any output created from calls to the console API comes before the
 // echoed JavaScript.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-console.html";
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_persist.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_persist.js
@@ -1,18 +1,21 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Check that message persistence works - bug 705921 / bug 1307881
 
 "use strict";
 
-const TEST_URI = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/test-console.html";
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/test-console.html";
 
 registerCleanupFunction(() => {
   Services.prefs.clearUserPref("devtools.webconsole.persistlog");
 });
 
 add_task(async function () {
   info("Testing that messages disappear on a refresh if logs aren't persisted");
   let hud = await openNewTabAndConsole(TEST_URI);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_reopen_closed_tab.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_reopen_closed_tab.js
@@ -1,24 +1,24 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
-// See Bug 597756. Check that errors are still displayed in the console after reloading a
-// page.
+// See Bug 597756. Check that errors are still displayed in the console after
+// reloading a page.
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-reopen-closed-tab.html";
 
 add_task(async function () {
-  // If we persist log, the test might be successful even if only the first error log is
-  // shown
+  // If we persist log, the test might be successful even if only the first
+  // error log is shown.
   pushPref("devtools.webconsole.persistlog", false);
 
   info("Open console and refresh tab.");
 
   expectUncaughtExceptionNoE10s();
   let hud = await openNewTabAndConsole(TEST_URI);
   hud.jsterm.clearOutput();
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_repeat_different_objects.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_repeat_different_objects.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that makes sure messages are not considered repeated when console.log()
 // is invoked with different objects, see bug 865288.
 
 "use strict";
 
 const TEST_URI = "data:text/html,Test repeated objects";
 
 add_task(async function () {
@@ -18,17 +20,17 @@ add_task(async function () {
     messages: [
       { text: "abba" },
       { text: "abba" },
       { text: "abba" },
     ],
   });
 
   ContentTask.spawn(gBrowser.selectedBrowser, null, () => {
-    for (var i = 0; i < 3; i++) {
+    for (let i = 0; i < 3; i++) {
       const o = { id: "abba" };
       content.console.log("abba", o);
     }
   });
 
   info("waiting for 3 console.log objects, with the exact same text content");
   let messages = await onMessages;
   is(messages.length, 3, "There are 3 messages, as expected.");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sandbox_update_after_navigation.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sandbox_update_after_navigation.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests if the JSTerm sandbox is updated when the user navigates from one
 // domain to another, in order to avoid permission denied errors with a sandbox
 // created for a different origin. See Bug 664688.
 
 "use strict";
 
 const BASE_URI = "browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-console.html";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_show_subresource_security_errors.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_show_subresource_security_errors.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Ensure non-toplevel security errors are displayed
 
 "use strict";
 
 const TEST_URI = "data:text/html;charset=utf-8,Web Console subresource STS " +
                  "warning test";
 const TEST_DOC = "https://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-subresource-security-error.html";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_css.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_css.js
@@ -22,17 +22,17 @@ const PAGE_URL = `data:text/html,
   <body>
     <div>
     There should be a source-mapped CSS warning in the console.
     </div>
   </body>
 
 </html>`;
 
-add_task(async function() {
+add_task(async function () {
   await pushPref("devtools.source-map.client-service.enabled", true);
   await pushPref("devtools.webconsole.filter.css", true);
 
   const hud = await openNewTabAndConsole(PAGE_URL);
 
   info("Waiting for css warning");
   let node = await waitFor(() => findMessage(hud, "octopus"));
   ok(!!node, "css warning seen");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_error.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_error.js
@@ -2,17 +2,18 @@
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 // Test that a missing source map is reported.
 
-const BASE = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/";
+const BASE = "http://example.com/browser/devtools/client/webconsole/" +
+             "new-console-output/test/mochitest/";
 
 add_task(async function () {
   for (let test of ["test-sourcemap-error-01.html", "test-sourcemap-error-02.html"]) {
     const hud = await openNewTabAndConsole(BASE + test);
 
     const node = await waitFor(() => findMessage(hud, "here"));
     ok(node, "logged text is displayed in web console");
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_invalid.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_invalid.js
@@ -19,16 +19,16 @@ const PAGE_URL = `data:text/html,
   </head>
 
   <body>
     <script src="${JS_URL}"></script>
   </body>
 
 </html>`;
 
-add_task(async function() {
+add_task(async function () {
   await pushPref("devtools.source-map.client-service.enabled", true);
 
   const hud = await openNewTabAndConsole(PAGE_URL);
 
   const node = await waitFor(() => findMessage(hud, "Source map error"));
   ok(node, "source map error is displayed in web console");
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_nosource.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_sourcemap_nosource.js
@@ -19,17 +19,17 @@ const PAGE_URL = `data:text/html,
   </head>
 
   <body>
     <script src="${JS_URL}"></script>
   </body>
 
 </html>`;
 
-add_task(async function() {
+add_task(async function () {
   // Force the new debugger UI, in case this gets uplifted with the old
   // debugger still turned on
   await pushPref("devtools.debugger.new-debugger-frontend", true);
   await pushPref("devtools.source-map.client-service.enabled", true);
 
   const hud = await openNewTabAndConsole(PAGE_URL);
   const toolbox = hud.ui.newConsoleOutput.toolbox;
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_stacktrace_location_debugger_link.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_stacktrace_location_debugger_link.js
@@ -1,22 +1,25 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test that message source links for js errors and console API calls open in
 // the jsdebugger when clicked.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
-  "new-console-output/test/mochitest/test-stacktrace-location-debugger-link.html";
+                 "new-console-output/test/mochitest/" +
+                 "test-stacktrace-location-debugger-link.html";
 
-add_task(async function() {
+add_task(async function () {
   // Force the new debugger UI, in case this gets uplifted with the old
   // debugger still turned on
   Services.prefs.setBoolPref("devtools.debugger.new-debugger-frontend", true);
   Services.prefs.setBoolPref("devtools.webconsole.filter.log", true);
   registerCleanupFunction(function* () {
     Services.prefs.clearUserPref("devtools.debugger.new-debugger-frontend");
     Services.prefs.clearUserPref("devtools.webconsole.filter.log");
   });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_strict_mode_errors.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_strict_mode_errors.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Check that "use strict" JS errors generate errors, not warnings.
 
 "use strict";
 
 add_task(async function () {
   let hud = await openNewTabAndConsole("data:text/html;charset=utf8,empty page");
 
   loadScriptURI("'use strict';var arguments;");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_string.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_string.js
@@ -1,18 +1,19 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
-const TEST_URI = "http://example.com/browser/devtools/client/webconsole/new-console-output/test/mochitest/test-console.html";
+const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
+                 "new-console-output/test/mochitest/test-console.html";
 
-add_task(async function() {
+add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
 
   info("console.log with a string argument");
   let receivedMessages = waitForMessages({
     hud,
     messages: [{
       // Test that the output does not include quotes.
       text: "stringLog",
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_time_methods.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_time_methods.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that the Console API implements the time() and timeEnd() methods.
 
 "use strict";
 
 const TEST_URI = "http://example.com/browser/devtools/client/webconsole/" +
                  "new-console-output/test/mochitest/test-time-methods.html";
 
 const TEST_URI2 = "data:text/html;charset=utf-8,<script>" +
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_timestamps.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_timestamps.js
@@ -1,30 +1,32 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Test for the message timestamps option: check if the preference toggles the
 // display of messages in the console output. See bug 722267.
 
 "use strict";
 
 const {PrefObserver} = require("devtools/client/shared/prefs");
 
 const TEST_URI = `data:text/html;charset=utf-8,
   Web Console test for bug 1307871 - preference for toggling timestamps in messages
   <script>
     window.logMessage = function () {
       console.log("simple text message");
     };
   </script>`;
 const PREF_MESSAGE_TIMESTAMP = "devtools.webconsole.timestampMessages";
 
-add_task(async function() {
+add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
 
   info("Call the log function defined in the test page");
   await ContentTask.spawn(gBrowser.selectedBrowser, null, () => {
     content.wrappedJSObject.logMessage();
   });
 
   await testPrefDefaults(hud);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_trackingprotection_errors.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_trackingprotection_errors.js
@@ -1,13 +1,15 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Load a page with tracking elements that get blocked and make sure that a
 // 'learn more' link shows up in the webconsole.
 
 "use strict";
 
 const TEST_URI = "http://tracking.example.org/browser/devtools/client/" +
                  "webconsole/new-console-output/test/mochitest/" +
                  "test-trackingprotection-securityerrors.html";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_view_source.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_view_source.js
@@ -1,30 +1,33 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* import-globals-from head.js */
+
 // Tests that source URLs in the Web Console can be clicked to display the
 // standard View Source window. As JS exceptions and console.log() messages always
 // have their locations opened in Debugger, we need to test a security message in
 // order to have it opened in the standard View Source window.
 
 "use strict";
 
 const TEST_URI = "https://example.com/browser/devtools/client/webconsole/" +
-                 "new-console-output/test/mochitest/test-mixedcontent-securityerrors.html";
+                 "new-console-output/test/mochitest/" +
+                 "test-mixedcontent-securityerrors.html";
 
 add_task(async function () {
   let hud = await openNewTabAndConsole(TEST_URI);
   info("console opened");
 
   let msg = await waitFor(() => findMessage(hud, "Blocked loading mixed active content"));
   ok(msg, "error message");
   let locationNode = msg.querySelector(".message-location .frame-link-filename");
   ok(locationNode, "location node");
 
   let onTabOpen = BrowserTestUtils.waitForNewTab(gBrowser, null, true);
 
   locationNode.click();
-  let tab = await onTabOpen;
+  await onTabOpen;
   ok(true, "the view source tab was opened in response to clicking the location node");
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_visibility_messages.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_visibility_messages.js
@@ -40,17 +40,17 @@ add_task(async function () {
   const { document } = hud.iframeWindow;
   await waitFor(() => (document.visibilityState == "hidden"));
 
   const onAllMessagesInStore = new Promise(done => {
     const store = hud.ui.newConsoleOutput.getStore();
     store.subscribe(() => {
       const messages = store.getState().messages.messagesById.size;
       // Also consider the "in-console log" message
-      if (messages == MESSAGES_COUNT+1) {
+      if (messages == MESSAGES_COUNT + 1) {
         done();
       }
     });
   });
 
   await ContentTask.spawn(gBrowser.selectedBrowser, [MESSAGES_COUNT], (count) => {
     for (let i = 1; i <= count; i++) {
       content.wrappedJSObject.log("in-inspector log " + i);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-autocomplete-in-stackframe.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-autocomplete-in-stackframe.html
@@ -3,16 +3,17 @@
   <head>
     <meta charset="utf8">
     <!--
     - Any copyright is dedicated to the Public Domain.
     - http://creativecommons.org/publicdomain/zero/1.0/
     -->
     <title>Test for bug 842682 - use the debugger API for web console autocomplete</title>
     <script>
+      /* eslint-disable */
       var foo1 = "globalFoo";
 
       var foo1Obj = Object.assign(Object.create(null), {
         prop1: "111",
         prop2: {
           prop21: "212121"
         }
       });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-585956-console-trace.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-585956-console-trace.html
@@ -1,27 +1,28 @@
 <!DOCTYPE html>
 <html lang="en">
   <head><meta charset="utf-8">
     <title>Web Console test for bug 585956 - console.trace()</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
-<script type="application/javascript">
-window.foobar585956c = function(a) {
-  console.trace();
-  return a+"c";
-};
+    <script type="application/javascript">
+      /* eslint-disable */
+      window.foobar585956c = function(a) {
+        console.trace();
+        return a + "c";
+      };
 
-function foobar585956b(a) {
-  return foobar585956c(a+"b");
-}
+      function foobar585956b(a) {
+        return foobar585956c(a + "b");
+      }
 
-function foobar585956a(omg) {
-  return foobar585956b(omg + "a");
-}
+      function foobar585956a(omg) {
+        return foobar585956b(omg + "a");
+      }
 
-foobar585956a("omg");
-</script>
+      foobar585956a("omg");
+    </script>
   </head>
   <body>
     <p>Web Console test for bug 585956 - console.trace().</p>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-601177-log-levels.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-601177-log-levels.html
@@ -1,17 +1,18 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US">
   <head>
     <meta charset="utf-8">
     <title>Web Console test for bug 601177: log levels</title>
     <script src="test-bug-601177-log-levels.js" type="text/javascript"></script>
-    <script type="text/javascript"><!--
+    <script type="text/javascript">
+      "use strict";
       window.undefinedPropertyBug601177;
-    // --></script>
+    </script>
     <!--
        - Any copyright is dedicated to the Public Domain.
        - http://creativecommons.org/publicdomain/zero/1.0/
        -->
   </head>
   <body>
     <h1>Web Console test for bug 601177: log levels</h1>
     <img src="test-image.png?bug601177">
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-601177-log-levels.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-601177-log-levels.js
@@ -1,8 +1,10 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* eslint-disable */
+
 foobarBug601177strictError = "strict error";
 
 window.foobarBug601177exception();
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-632275-getters.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-632275-getters.html
@@ -2,16 +2,17 @@
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <title>Web Console test for bug 632275 - getters</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
 
 <script type="application/javascript">
+  /* eslint-disable */
   document.foobar = {
     _val: 5,
     get val() { return ++this._val; }
   };
 </script>
 
   </head>
   <body>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-766001-console-log.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-766001-console-log.js
@@ -1,10 +1,12 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+"use strict";
+
 function onLoad123() {
   console.log("Blah Blah");
 }
 
 window.addEventListener("load", onLoad123);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-766001-js-errors.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-766001-js-errors.js
@@ -1,8 +1,10 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+"use strict";
+
 window.addEventListener("load", function () {
   document.bar();
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-859170-longstring-hang.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-bug-859170-longstring-hang.html
@@ -1,23 +1,25 @@
 <!DOCTYPE html>
 <html lang="en">
   <head><meta charset="utf-8">
     <title>Web Console test for bug 859170 - very long strings hang the browser</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
 <script type="application/javascript">
-(function() {
-var longString = "abbababazomglolztest";
-for (var i = 0; i < 10; i++) {
-  longString += longString + longString;
-}
+/* eslint-disable */
 
-longString = "foobar" + (new Array(9000)).join("a") + "foobaz" +
-             longString + "boom!";
-console.log(longString);
+(function () {
+  let longString = "abbababazomglolztest";
+  for (let i = 0; i < 10; i++) {
+    longString += longString + longString;
+  }
+
+  longString = "foobar" + (new Array(9000)).join("a") + "foobaz" +
+              longString + "boom!";
+  console.log(longString);
 })();
 </script>
   </head>
   <body>
     <p>Web Console test for bug 859170 - very long strings hang the browser.</p>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-bug_923281_test1.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-bug_923281_test1.js
@@ -1,7 +1,9 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+"use strict";
+
 console.log("Sample log.");
 console.log("This log should be filtered when filtered for test2.js.");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-cd-iframe-child.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-cd-iframe-child.html
@@ -3,11 +3,14 @@
 <!DOCTYPE html>
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <title>Test for the cd() command (bug 609872) - iframe child</title>
   </head>
   <body>
     <p>Test for the cd() command (bug 609872) - iframe child</p>
-    <script>window.foobar = "child!";</script>
+    <script>
+      "use strict";
+      window.foobar = "child!";
+    </script>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-cd-iframe-parent.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-cd-iframe-parent.html
@@ -3,12 +3,15 @@
 <!DOCTYPE html>
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <title>Test for the cd() command (bug 609872) - iframe parent</title>
   </head>
   <body>
     <p>Test for the cd() command (bug 609872) - iframe parent</p>
-    <script>window.foobar = "parent!";</script>
+    <script>
+      "use strict";
+      window.foobar = "parent!";
+    </script>
     <iframe src="test-cd-iframe-child.html"></iframe>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-certificate-messages.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-certificate-messages.html
@@ -5,16 +5,17 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US">
   <head>
     <meta charset="utf8">
     <title>Security warning test - no violations</title>
     <!-- ensure no subresource errors so window re-use doesn't cause failures -->
     <link rel="icon" href="data:;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQI12P4//8/AAX+Av7czFnnAAAAAElFTkSuQmCC">
     <script>
+      "use strict";
       console.log("If you haven't seen ssl warnings yet, you won't");
     </script>
     <!--
       Any copyright is dedicated to the Public Domain.
       http://creativecommons.org/publicdomain/zero/1.0/
     -->
   </head>
   <body>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-click-function-to-source.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-click-function-to-source.js
@@ -1,8 +1,10 @@
+/* eslint-disable */
+
 /**
  * this
  * is
  * a
  * function
  */
 function foo() {
   console.log(foo);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-closure-optimized-out.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-closure-optimized-out.html
@@ -1,32 +1,33 @@
 <!DOCTYPE HTML>
 <html>
   <head>
     <meta charset='utf-8'/>
     <title>Debugger Test for Inspecting Optimized-Out Variables</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
     <script type="text/javascript">
-      window.addEventListener("load", function () {
+        /* eslint-disable */
+        window.addEventListener("load", function () {
         function clickHandler(event) {
           button.removeEventListener("click", clickHandler);
           function outer(arg) {
-            var upvar = arg * 2;
+            let upvar = arg * 2;
             // The inner lambda only aliases arg, so the frontend alias analysis decides
             // that upvar is not aliased and is not in the CallObject.
             return function () {
               arg += 2;
             };
           }
 
-          var f = outer(42);
+          let f = outer(42);
           f();
         }
-        var button = document.querySelector("button");
+        let button = document.querySelector("button");
         button.addEventListener("click", clickHandler);
       }, {once: true});
     </script>
 
   </head>
   <body>
     <button>Click me!</button>
   </body>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-closures.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-closures.html
@@ -1,16 +1,18 @@
 <!DOCTYPE HTML>
 <html>
   <head>
     <meta charset='utf-8'/>
     <title>Console Test for Closure Inspection</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
     <script type="text/javascript">
+      /* eslint-disable */
+
       function injectPerson() {
         var PersonFactory = function _pfactory(name) {
             var foo = 10;
             return {
               getName: function() { return name; },
               getFoo: function() { foo = Date.now(); return foo; }
             };
         };
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-api-iframe.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-api-iframe.html
@@ -4,16 +4,17 @@
     <meta charset="utf-8">
     <title>Testing the console API after adding an iframe</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
   </head>
   <body>
     <p>test for bug 613013</p>
     <script type="text/javascript">
+      /* eslint-disable */
       (function () {
         var iframe = document.createElement('iframe');
         iframe.src = 'data:text/html;charset=utf-8,little iframe';
         document.body.appendChild(iframe);
 
         console.log("iframe added");
       })();
     </script>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-api-stackframe.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-api-stackframe.html
@@ -3,16 +3,17 @@
   <head>
     <meta charset="utf8">
     <!--
     - Any copyright is dedicated to the Public Domain.
     - http://creativecommons.org/publicdomain/zero/1.0/
     -->
     <title>Test for bug 920116 - stacktraces for console API messages</title>
     <script>
+      /* eslint-disable */
       function firstCall() {
         secondCall();
       }
 
       function secondCall() {
         thirdCall();
       }
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-clear.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-clear.html
@@ -1,13 +1,14 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US"><head>
     <meta charset="utf-8">
     <title>Console.clear() tests</title>
     <script type="text/javascript">
+      /* eslint-disable */
       console.log("log1");
       console.log("log2");
       console.clear();
 
       window.objFromPage = { a: 1 };
     </script>
   </head>
   <body>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-column.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-column.html
@@ -2,16 +2,17 @@
 <html dir="ltr" xml:lang="en-US" lang="en-US">
   <head>
     <!-- Any copyright is dedicated to the Public Domain.
      http://creativecommons.org/publicdomain/zero/1.0/ -->
     <meta charset="utf-8">
     <title>Console test</title>
 
     <script type="text/javascript">
+      /* eslint-disable */
       console.info("INLINE SCRIPT:"); console.log('Further');
         console.warn("I'm warning you, he will eat up all yr bacon.");
           console.error("Error Message");
         console.log('Rainbooooww');
       console.log('NYAN CATZ');
     </script>
   </head>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-count.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-count.html
@@ -4,21 +4,23 @@
     <!--
       Any copyright is dedicated to the Public Domain.
       http://creativecommons.org/publicdomain/zero/1.0/
     -->
     <meta charset="utf-8">
     <title>console.count() test</title>
     <script src="test-console-count-external-file.js"></script>
     <script tyoe="text/javascript">
+      /* eslint-disable */
       function counterSeperateScriptTag() {
         console.count("console.count() testcounter");
       }
     </script>
     <script type="text/javascript">
+      /* eslint-disable */
       function counterNoLabel() {
         console.count();
       }
       function counterWithLabel() {
         console.count("console.count() testcounter");
       }
       function testLocal() {
         console.log("start");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-extras.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-extras.html
@@ -1,13 +1,14 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US"><head>
     <meta charset="utf-8">
     <title>Console extended API test</title>
     <script type="text/javascript">
+      /* eslint-disable */
       function test() {
         console.log("start");
         console.clear();
         console.log("end");
       }
     </script>
   </head>
   <body>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-iframes.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-iframes.html
@@ -1,14 +1,15 @@
 <!DOCTYPE html>
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <script>
-    console.log("main file");
+      /* eslint-disable */
+      console.log("main file");
     </script>
   </head>
   <body>
     <h1>iframe console test</h1>
     <iframe src="test-iframe1.html"></iframe>
     <iframe src="test-iframe2.html"></iframe>
     <iframe src="test-iframe3.html"></iframe>
   </body>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-02.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-02.html
@@ -6,16 +6,17 @@
   <!--
   - Any copyright is dedicated to the Public Domain.
   - http://creativecommons.org/publicdomain/zero/1.0/
   -->
 </head>
 <body>
   <p>hello world!</p>
   <script type="text/javascript">
+  /* eslint-disable */
 function testfn1() { return 42; }
 
 var testobj1 = {
   testfn2: function() { return 42; },
 };
 
 function testfn3() { return 42; }
 testfn3.displayName = "testfn3DisplayName";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-03.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-03.html
@@ -6,16 +6,17 @@
   <!--
   - Any copyright is dedicated to the Public Domain.
   - http://creativecommons.org/publicdomain/zero/1.0/
   -->
 </head>
 <body>
   <p>hello world!</p>
   <script type="text/javascript">
+  /* eslint-disable */
 function testBodyClassName() {
   document.body.className = "test1 tezt2";
   return document.body;
 }
 
 function testBodyID() {
   document.body.id = 'foobarid';
   return document.body;
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-04.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-04.html
@@ -6,16 +6,17 @@
   <!--
   - Any copyright is dedicated to the Public Domain.
   - http://creativecommons.org/publicdomain/zero/1.0/
   -->
 </head>
 <body>
   <p>hello world!</p>
   <script type="text/javascript">
+  /* eslint-disable */
 function testTextNode() {
   return document.querySelector("p").childNodes[0];
 }
 
 function testCommentNode() {
   return document.head.childNodes[5];
 }
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-dom-elements.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-dom-elements.html
@@ -22,16 +22,17 @@
   <iframe srcdoc="<p>hello from iframe</p>"></iframe>
   <div class="some       classname      here      with       more classnames here"></div>
   <svg>
     <clipPath>
       <rect x="0" y="0" width="10" height="5"></rect>
     </clipPath>
   </svg>
   <script type="text/javascript">
+  /* eslint-disable */
 function testBodyNode() {
   return document.body;
 }
 
 function testDocumentElement() {
   return document.documentElement;
 }
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-events.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-output-events.html
@@ -7,16 +7,17 @@
   - Any copyright is dedicated to the Public Domain.
   - http://creativecommons.org/publicdomain/zero/1.0/
   -->
 </head>
 <body>
   <p>hello world!</p>
 
   <script type="text/javascript">
+  /* eslint-disable */
 function testDOMEvents() {
   function eventLogger(ev) {
     console.log("eventLogger", ev);
   }
   document.addEventListener("mousemove", eventLogger);
   document.addEventListener("keypress", eventLogger);
 
   synthesizeMouseMove();
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-replaced-api.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-replaced-api.html
@@ -1,12 +1,13 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US"><head>
     <meta charset="utf-8">
     <title>Console test replaced API</title>
   </head>
   <body>
     <h1 id="header">Web Console Replace API Test</h1>
     <script type="text/javascript">
+      /* eslint-disable */
       window.console = {log: function (msg){}, info: function (msg){}, warn: function (msg){}, error: function (msg){}};
     </script>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-trace-async.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-trace-async.html
@@ -1,15 +1,16 @@
 <!DOCTYPE html>
 <html lang="en">
   <head><meta charset="utf-8">
     <title>Web Console test for bug 1200832 - console.trace() async stacks</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
 <script type="application/javascript">
+/* eslint-disable */
 function inner() {
   console.trace();
 }
 
 function time1() {
   new Promise(function(resolve, reject) {
     setTimeout(resolve, 10);
   }).then(inner);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-trace-duplicates.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-trace-duplicates.html
@@ -2,16 +2,17 @@
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <title>Web Console test for checking that different console.trace() calls
       are not wrongly filtered as duplicates</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
 <script type="application/javascript">
+/* eslint-disable */
 function foo1() {
   foo2();
 }
 
 function foo1b() {
   foo2();
 }
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-console-workers.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-console-workers.html
@@ -2,15 +2,16 @@
      http://creativecommons.org/publicdomain/zero/1.0/ -->
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US"><head>
     <meta charset="utf-8">
     <title>Console test</title>
   </head>
   <body>
     <script type="text/javascript">
+      /* eslint-disable */
       new SharedWorker(`data:application/javascript,
         console.log("foo-bar-shared-worker", {foo: "bar"});
         self.close();
       `);
     </script>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-cu-reporterror.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-cu-reporterror.js
@@ -1,4 +1,5 @@
+"use strict";
 function a() {
   Cu.reportError("error thrown from test-cu-reporterror.js via Cu.reportError()");
 }
 a();
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-duplicate-error.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-duplicate-error.html
@@ -8,14 +8,15 @@
      http://creativecommons.org/publicdomain/zero/1.0/
 
      See https://bugzilla.mozilla.org/show_bug.cgi?id=582201
    -->
   </head>
   <body>
     <h1>Heads Up Display - duplicate error test</h1>
 
-    <script type="text/javascript"><!--
+    <script type="text/javascript">
+      /* eslint-disable */
       fooDuplicateError1.bar();
-    // --></script>
+    </script>
   </body>
 </html>
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-error.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-error.html
@@ -3,18 +3,19 @@
   <head>
     <meta charset="utf-8">
     <title>Console error test</title>
   </head>
   <body>
     <h1>Heads Up Display - error test</h1>
     <p><button>generate error</button></p>
 
-    <script type="text/javascript"><!--
+    <script type="text/javascript">
+      /* eslint-disable */
       var button = document.getElementsByTagName("button")[0];
 
       button.addEventListener("click", function  () {
         fooBazBaz.bar();
       }, {once: true});
-    // --></script>
+    </script>
   </body>
 </html>
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-eval-in-stackframe.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-eval-in-stackframe.html
@@ -3,16 +3,17 @@
   <head>
     <meta charset="utf8">
     <!--
     - Any copyright is dedicated to the Public Domain.
     - http://creativecommons.org/publicdomain/zero/1.0/
     -->
     <title>Test for bug 783499 - use the debugger API in the web console</title>
     <script>
+      /* eslint-disable */
       var foo = "globalFooBug783499";
       var fooObj = {
         testProp: "testValue",
       };
 
       function firstCall()
       {
         var foo = "fooFirstCall";
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-exception-stackframe.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-exception-stackframe.html
@@ -3,16 +3,17 @@
   <head>
     <meta charset="utf8">
     <!--
     - Any copyright is dedicated to the Public Domain.
     - http://creativecommons.org/publicdomain/zero/1.0/
     -->
     <title>Test for bug 1184172 - stacktraces for exceptions</title>
     <script>
+      /* eslint-disable */
       function firstCall() {
         secondCall();
       }
 
       // Check anonymous functions
       var secondCall = function () {
         thirdCall();
       }
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-external-script-errors.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-external-script-errors.js
@@ -1,9 +1,11 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* eslint-disable */
+
 function f() {
   bogus.g();
 }
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-iframe1.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-iframe1.html
@@ -1,12 +1,13 @@
 <!DOCTYPE html>
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <script>
-    console.log("iframe 1");
+      /* eslint-disable */
+      console.log("iframe 1");
     </script>
   </head>
   <body>
     <h1>iframe 1</h1>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-iframe2.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-iframe2.html
@@ -1,13 +1,14 @@
 <!DOCTYPE html>
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <script>
+      /* eslint-disable */
       console.log("iframe 2");
       blah;
     </script>
   </head>
   <body>
     <h1>iframe 2</h1>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-iframe3.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-iframe3.html
@@ -1,13 +1,14 @@
 <!DOCTYPE html>
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <script>
+      /* eslint-disable */
       console.log("iframe 3");
     </script>
   </head>
   <body>
     <h1>iframe 3</h1>
     <iframe src="test-iframe1.html"></iframe>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-insecure-passwords-about-blank-web-console-warning.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-insecure-passwords-about-blank-web-console-warning.html
@@ -13,16 +13,17 @@
      the web console. -->
   </head>
   <body>
     <p>This insecure page is served with an about:blank iframe. A script then adds a
     password field to it.</p>
     <iframe id = "myiframe" width = "300" height="300" >
     </iframe>
     <script>
+      /* eslint-disable */
       var doc = window.document;
       var myIframe = doc.getElementById("myiframe");
       myIframe.contentDocument.open();
       myIframe.contentDocument.write("<form><input type = 'password' name='pwd' value='test'> </form>");
       myIframe.contentDocument.close();
     </script>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-inspect-cross-domain-objects-frame.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-inspect-cross-domain-objects-frame.html
@@ -1,21 +1,22 @@
 <!DOCTYPE HTML>
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <title>Web Console test for bug 869003</title>
     <!-- Any copyright is dedicated to the Public Domain.
        - http://creativecommons.org/publicdomain/zero/1.0/ -->
-    <script type="text/javascript"><!--
+    <script type="text/javascript">
+      /* eslint-disable */
       window.onload = function testConsoleLogging()
       {
         var obj1 = { hello: "world!", bug: 869003 };
         var obj2 = Object.assign(function func(arg){}, obj1);
         console.log("foobar", obj1, obj2);
       };
-    // --></script>
+    </script>
   </head>
   <body>
     <p>Make sure users can inspect objects from cross-domain iframes.</p>
     <p>Iframe window.</p>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-jsterm-dollar.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-jsterm-dollar.html
@@ -1,14 +1,15 @@
 <!DOCTYPE html>
 <html dir="ltr" xml:lang="en-US" lang="en-US">
   <head>
     <meta charset="utf-8">
     <title>Web Console test for bug 621644</title>
     <script>
+      /* eslint-disable */
       function $(elem) {
         return elem.innerHTML;
       }
       function $$(doc) {
         return doc.title;
       }
     </script>
     <!--
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-canvas-css.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-canvas-css.js
@@ -1,10 +1,12 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* eslint-disable */
+
 window.addEventListener("DOMContentLoaded", function () {
   var canvas = document.querySelector("canvas");
   var context = canvas.getContext("2d");
   context.strokeStyle = "foobarCanvasCssParser";
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-empty-getelementbyid.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-empty-getelementbyid.js
@@ -1,8 +1,10 @@
 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
+/* eslint-disable */
+
 window.addEventListener("load", function () {
   document.getElementById("");
 });
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-malformedxml-external.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-malformedxml-external.html
@@ -1,19 +1,20 @@
 <!DOCTYPE html>
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <title>Web Console test for bug 595934 - category: malformed-xml.
       (external file)</title>
 <!-- Any copyright is dedicated to the Public Domain.
      http://creativecommons.org/publicdomain/zero/1.0/ -->
-     <script type="text/javascript"><!--
+     <script type="text/javascript">
+       /* eslint-disable */
        var req = new XMLHttpRequest();
        req.open("GET", "test-message-categories-malformedxml-external.xml", true);
        req.send(null);
-     // --></script>
+     </script>
   </head>
   <body>
     <p>Web Console test for bug 595934 - category "malformed-xml"
     (external file).</p>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-workers.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-message-categories-workers.html
@@ -5,14 +5,15 @@
       javascript</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
   </head>
   <body>
     <p id="foobar">Web Console test for bug 595934 - category "DOM Worker
     javascript".</p>
     <script type="text/javascript">
+      /* eslint-disable */
       var myWorker = new Worker("test-message-categories-workers.js");
       myWorker.postMessage("hello world");
     </script>
   </body>
 </html>
 
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-mutation.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-mutation.html
@@ -1,14 +1,15 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US">
   <head>
     <meta charset="utf-8">
     <title>Console mutation test</title>
     <script>
+      /* eslint-disable */
       window.onload = function (){
         var node = document.createElement("div");
         document.body.appendChild(node);
       };
   </script>
   </head>
   <body>
     <h1>Heads Up Display DOM Mutation Test Page</h1>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-network-exceptions.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-network-exceptions.html
@@ -2,16 +2,17 @@
 <html lang="en">
   <head>
     <meta charset="utf-8">
     <title>Web Console test for bug 618078 - exception in async network request
       callback</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
     <script type="text/javascript">
+      /* eslint-disable */
       var req = new XMLHttpRequest();
       req.open('GET', 'http://example.com', true);
       req.onreadystatechange = function() {
         if (req.readyState == 4) {
           bug618078exception();
         }
       };
       req.send(null);
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-observe-http-ajax.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-observe-http-ajax.html
@@ -1,13 +1,14 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US"><head>
     <meta charset="utf-8">
     <title>Console HTTP test page</title>
     <script type="text/javascript">
+      /* eslint-disable */
       function test() {
         var xmlhttp = new XMLHttpRequest();
         xmlhttp.open('get', 'test-data.json', false);
         xmlhttp.send(null);
       }
     </script>
   </head>
   <body onload="test();">
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-own-console.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-own-console.html
@@ -1,13 +1,14 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US">
 <head>
 <meta charset="utf-8">
 <script>
+  /* eslint-disable */
   var _console = {
     foo: "bar"
   }
 
   window.console = _console;
 
   function loadIFrame() {
     var iframe = document.body.querySelector("iframe");
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-property-provider.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-property-provider.html
@@ -1,14 +1,15 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US"><head>
     <meta charset="utf-8">
     <title>Property provider test</title>
     <script>
-        var testObj = {
-            testProp: 'testValue'
-        };
+      /* eslint-disable */
+      var testObj = {
+        testProp: 'testValue'
+      };
     </script>
   </head>
   <body>
     <h1>Heads Up Property Provider  Test Page</h1>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-reopen-closed-tab.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-reopen-closed-tab.html
@@ -6,13 +6,14 @@
     <!--
      Any copyright is dedicated to the Public Domain.
      http://creativecommons.org/publicdomain/zero/1.0/
    -->
   </head>
   <body>
     <h1>Bug 597756: test error logging after tab close and reopen.</h1>
 
-    <script type="text/javascript"><!--
+    <script type="text/javascript">
+      /* eslint-disable */
       fooBug597756_error.bar();
-    // --></script>
+    </script>
   </body>
 </html>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-result-format-as-string.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-result-format-as-string.html
@@ -4,16 +4,17 @@
     <meta charset="utf-8">
     <title>Web Console test: jsterm eval format as a string</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
   </head>
   <body>
     <p>Make sure js eval results are formatted as strings.</p>
     <script>
+      /* eslint-disable */
       document.querySelector("p").toSource = function() {
         var element = document.createElement("div");
         element.id = "foobar";
         element.textContent = "bug772506_content";
         element.setAttribute("onmousemove",
           "(function () {" +
           "  gBrowser._bug772506 = 'foobar';" +
           "})();"
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-time-methods.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-time-methods.html
@@ -7,16 +7,17 @@
     <title>Test for bug 658368: Expand console object with time and timeEnd
       methods</title>
   </head>
   <body>
     <h1>Test for bug 658368: Expand console object with time and timeEnd
       methods</h1>
 
     <script type="text/javascript">
+      /* eslint-disable */
       function foo() {
         console.timeEnd("aTimer");
       }
       console.time("aTimer");
       foo();
       console.time("bTimer");
     </script>
   </body>
--- a/devtools/client/webconsole/new-console-output/test/mochitest/test-webconsole-error-observer.html
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/test-webconsole-error-observer.html
@@ -1,16 +1,17 @@
 <!DOCTYPE HTML>
 <html dir="ltr" xml:lang="en-US" lang="en-US">
   <head>
     <meta charset="utf-8">
     <title>WebConsoleErrorObserver test - bug 611032</title>
     <!-- Any copyright is dedicated to the Public Domain.
          http://creativecommons.org/publicdomain/zero/1.0/ -->
     <script type="text/javascript">
+      /* eslint-disable */
       console.log("log Bazzle");
       console.info("info Bazzle");
       console.warn("warn Bazzle");
       console.error("error Bazzle");
 
       var foo = {};
       foo.bazBug611032();
     </script>
--- a/devtools/client/webconsole/test/browser_webconsole_column_numbers.js
+++ b/devtools/client/webconsole/test/browser_webconsole_column_numbers.js
@@ -28,17 +28,17 @@ function consoleOpened(aHud) {
       category: CATEGORY_WEBDEV,
       severity: SEVERITY_ERROR
     }]
   }).then(testLocationColumn);
 }
 
 function testLocationColumn() {
   let messages = hud.outputNode.children;
-  let expected = ["10:7", "10:39", "11:9", "12:11", "13:9", "14:7"];
+  let expected = ["11:7", "11:39", "12:9", "13:11", "14:9", "15:7"];
 
   for (let i = 0, len = messages.length; i < len; i++) {
     let msg = messages[i].textContent;
 
     is(msg.includes(expected[i]), true, "Found expected line:column of " +
                     expected[i]);
   }
 
--- a/devtools/client/webconsole/test/test-console-column.html
+++ b/devtools/client/webconsole/test/test-console-column.html
@@ -2,16 +2,17 @@
 <html dir="ltr" xml:lang="en-US" lang="en-US">
   <head>
     <!-- Any copyright is dedicated to the Public Domain.
      http://creativecommons.org/publicdomain/zero/1.0/ -->
     <meta charset="utf-8">
     <title>Console test</title>
 
     <script type="text/javascript">
+      /* eslint-disable */
       console.info("INLINE SCRIPT:"); console.log('Further');
         console.warn("I'm warning you, he will eat up all yr bacon.");
           console.error("Error Message");
         console.log('Rainbooooww');
       console.log('NYAN CATZ');
     </script>
   </head>
 </html>