Bug 1437852 - Enable browser_console_restore.js in new frontend r?bgrins
MozReview-Commit-ID: Fk7yT1gXKI9
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser.ini
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser.ini
@@ -180,17 +180,16 @@ skip-if = true # Bug 1437847
skip-if = true # Bug 1437848
[browser_console_hide_jsterm_when_devtools_chrome_enabled_false.js]
skip-if = true # Bug 1437849
[browser_console_nsiconsolemessage.js]
skip-if = true # Bug 1437850
[browser_console_open_or_focus.js]
skip-if = true # Bug 1437851
[browser_console_restore.js]
-skip-if = true # Bug 1437852
[browser_console_webconsole_ctrlw_close_tab.js]
skip-if = true # Bug 1437854
[browser_console_webconsole_iframe_messages.js]
skip-if = true # Bug 1437855
[browser_console_webconsole_private_browsing.js]
skip-if = true # Bug 1403188
# old console skip-if = e10s # Bug 1042253 - webconsole e10s tests
[browser_jsterm_accessibility.js]
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_restore.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_console_restore.js
@@ -1,32 +1,34 @@
/* -*- 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 browser console gets session state is set correctly, and that
// it re-opens when restore is requested.
"use strict";
-add_task(async function() {
+add_task(async function () {
is(HUDService.getBrowserConsoleSessionState(), false, "Session state false by default");
HUDService.storeBrowserConsoleSessionState();
is(HUDService.getBrowserConsoleSessionState(), false,
"Session state still not true even after setting (since Browser Console is closed)");
await HUDService.toggleBrowserConsole();
HUDService.storeBrowserConsoleSessionState();
is(HUDService.getBrowserConsoleSessionState(), true,
"Session state true (since Browser Console is opened)");
- info("Closing the browser console and waiting for the session restore to reopen it")
+ info("Closing the browser console and waiting for the session restore to reopen it");
await HUDService.toggleBrowserConsole();
let opened = waitForBrowserConsole();
gDevTools.restoreDevToolsSession({
browserConsole: true
});
- info("Waiting for the console to open after session restore")
+ info("Waiting for the console to open after session restore");
await opened;
});
--- a/devtools/client/webconsole/new-console-output/test/mochitest/head.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/head.js
@@ -586,8 +586,23 @@ function selectNode(hud, node) {
let selection = outputContainer.ownerDocument.getSelection();
let range = document.createRange();
range.selectNodeContents(node);
selection.removeAllRanges();
selection.addRange(range);
return selection;
}
+
+async function waitForBrowserConsole() {
+ return new Promise(resolve => {
+ Services.obs.addObserver(function observer(subject) {
+ Services.obs.removeObserver(observer, "web-console-created");
+ subject.QueryInterface(Ci.nsISupportsString);
+
+ let hud = HUDService.getBrowserConsole();
+ ok(hud, "browser console is open");
+ is(subject.data, hud.hudId, "notification hudId is correct");
+
+ executeSoon(() => resolve(hud));
+ }, "web-console-created");
+ });
+}