mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-02 15:15:23 +00:00
89 lines
2.4 KiB
JavaScript
89 lines
2.4 KiB
JavaScript
/*
|
|
* Any copyright is dedicated to the Public Domain.
|
|
* http://creativecommons.org/publicdomain/zero/1.0/
|
|
*/
|
|
|
|
// Test the basic features of the Browser Console, bug 587757.
|
|
|
|
const TEST_URI = "http://example.com/browser/browser/devtools/webconsole/test/test-console.html?" + Date.now();
|
|
|
|
function test()
|
|
{
|
|
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(() => consoleOpened(hud));
|
|
}, "web-console-created", false);
|
|
|
|
let hud = HUDService.getBrowserConsole();
|
|
ok(!hud, "browser console is not open");
|
|
info("wait for the browser console to open with ctrl-shift-j");
|
|
EventUtils.synthesizeKey("j", { accelKey: true, shiftKey: true }, window);
|
|
}
|
|
|
|
function consoleOpened(hud)
|
|
{
|
|
hud.jsterm.clearOutput(true);
|
|
|
|
expectUncaughtException();
|
|
executeSoon(() => {
|
|
foobarExceptionBug587757();
|
|
});
|
|
|
|
// Add a message from a chrome window.
|
|
hud.iframeWindow.console.log("bug587757a");
|
|
|
|
// Add a message from a content window.
|
|
content.console.log("bug587757b");
|
|
|
|
// Test eval.
|
|
hud.jsterm.execute("document.location.href");
|
|
|
|
// Check for network requests.
|
|
let xhr = new XMLHttpRequest();
|
|
xhr.onload = () => console.log("xhr loaded, status is: " + xhr.status);
|
|
xhr.open("get", TEST_URI, true);
|
|
xhr.send();
|
|
|
|
waitForMessages({
|
|
webconsole: hud,
|
|
messages: [
|
|
{
|
|
name: "chrome window console.log() is displayed",
|
|
text: "bug587757a",
|
|
category: CATEGORY_WEBDEV,
|
|
severity: SEVERITY_LOG,
|
|
},
|
|
{
|
|
name: "content window console.log() is displayed",
|
|
text: "bug587757b",
|
|
category: CATEGORY_WEBDEV,
|
|
severity: SEVERITY_LOG,
|
|
},
|
|
{
|
|
name: "jsterm eval result",
|
|
text: "browser.xul",
|
|
category: CATEGORY_OUTPUT,
|
|
severity: SEVERITY_LOG,
|
|
},
|
|
{
|
|
name: "exception message",
|
|
text: "foobarExceptionBug587757",
|
|
category: CATEGORY_JS,
|
|
severity: SEVERITY_ERROR,
|
|
},
|
|
{
|
|
name: "network message",
|
|
text: "test-console.html",
|
|
category: CATEGORY_NETWORK,
|
|
severity: SEVERITY_LOG,
|
|
},
|
|
],
|
|
}).then(finishTest);
|
|
}
|