mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-06 07:48:38 +09:00
DevTools - Browser Console - restore sessions
https://github.com/MoonchildProductions/moebius/pull/112
This commit is contained in:
parent
173d356acd
commit
63ba51f58e
17 changed files with 135 additions and 46 deletions
|
|
@ -182,6 +182,7 @@ subsuite = clipboard
|
|||
[browser_console_optimized_out_vars.js]
|
||||
[browser_console_private_browsing.js]
|
||||
skip-if = e10s # Bug 1042253 - webconsole e10s tests
|
||||
[browser_console_restore.js]
|
||||
[browser_console_server_logging.js]
|
||||
[browser_console_variables_view.js]
|
||||
[browser_console_variables_view_filter.js]
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ const TEST_IMAGE = "http://example.com/browser/devtools/client/webconsole/" +
|
|||
add_task(function* () {
|
||||
yield loadTab(TEST_URI);
|
||||
|
||||
let opened = waitForConsole();
|
||||
let opened = waitForBrowserConsole();
|
||||
|
||||
let hud = HUDService.getBrowserConsole();
|
||||
ok(!hud, "browser console is not open");
|
||||
|
|
@ -141,20 +141,3 @@ function consoleOpened(hud) {
|
|||
],
|
||||
});
|
||||
}
|
||||
|
||||
function waitForConsole() {
|
||||
let deferred = promise.defer();
|
||||
|
||||
Services.obs.addObserver(function observer(aSubject) {
|
||||
Services.obs.removeObserver(observer, "web-console-created");
|
||||
aSubject.QueryInterface(Ci.nsISupportsString);
|
||||
|
||||
let hud = HUDService.getBrowserConsole();
|
||||
ok(hud, "browser console is open");
|
||||
is(aSubject.data, hud.hudId, "notification hudId is correct");
|
||||
|
||||
executeSoon(() => deferred.resolve(hud));
|
||||
}, "web-console-created", false);
|
||||
|
||||
return deferred.promise;
|
||||
}
|
||||
|
|
|
|||
30
devtools/client/webconsole/test/browser_console_restore.js
Normal file
30
devtools/client/webconsole/test/browser_console_restore.js
Normal file
|
|
@ -0,0 +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/ */
|
||||
|
||||
// Check that the browser console gets session state is set correctly, and that
|
||||
// it re-opens when restore is requested.
|
||||
|
||||
"use strict";
|
||||
|
||||
add_task(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)");
|
||||
|
||||
yield 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")
|
||||
yield HUDService.toggleBrowserConsole();
|
||||
|
||||
let opened = waitForBrowserConsole();
|
||||
HUDService.restoreBrowserConsoleSession();
|
||||
|
||||
info("Waiting for the console to open after session restore")
|
||||
yield opened;
|
||||
});
|
||||
|
|
@ -12,7 +12,7 @@ Services.scriptloader.loadSubScript("chrome://mochitests/content/browser/devtool
|
|||
var {Utils: WebConsoleUtils} = require("devtools/client/webconsole/utils");
|
||||
var {Messages} = require("devtools/client/webconsole/console-output");
|
||||
const asyncStorage = require("devtools/shared/async-storage");
|
||||
const HUDService = require("devtools/client/webconsole/hudservice");
|
||||
const {HUDService} = require("devtools/client/webconsole/hudservice");
|
||||
|
||||
// Services.prefs.setBoolPref("devtools.debugger.log", true);
|
||||
|
||||
|
|
@ -1842,3 +1842,18 @@ function getRenderedSource(root) {
|
|||
column: location.getAttribute("data-column"),
|
||||
} : null;
|
||||
}
|
||||
|
||||
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");
|
||||
});
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue