fune/dom/tests/browser/test-console-api.html
Nicolas Chevobbe ec8bdecd6f Bug 1691586 - [devtools] Enable browser_ConsoleStorageAPITests.js on fission. r=bomsy
The test was doing a navigation from about:blank to an example.com URL in a
ContentTask, which I guess was going bad with fission enabled since we were
creating a new content process.
I don't think there was a good reason to do that, so we start the test directly
with the "final" URL.
And since about:blank page can be special, we use a data url instead.
A few `info` calls are added to have better logs, and the test is slightly refactored
to be easier to follow.

Finally, the test was a bit loose, only checking the number of events we were
receiving. We take this opportunity to really check that we get the events that
are expected.

Differential Revision: https://phabricator.services.mozilla.com/D109278
2021-03-22 12:32:00 +00:00

78 lines
2.3 KiB
HTML

<!DOCTYPE HTML>
<html dir="ltr" xml:lang="en-US" lang="en-US">
<head>
<meta charset=utf8>
<title>Console API test page</title>
<script type="text/javascript">
window.foobar585956c = function(a) {
console.trace();
return a + "c";
};
/* global foobar585956c */
function foobar585956b(a) {
return foobar585956c(a + "b");
}
function foobar585956a(omg) {
return foobar585956b(omg + "a");
}
function foobar646025(omg) {
console.log(omg, "o", "d");
}
function startTimer(timer) {
console.time(timer);
}
function stopTimer(timer) {
console.timeEnd(timer);
}
function namelessTimer() {
console.time();
console.timeEnd();
}
function test() {
var str = "Test Message.";
console.foobar(str); // if this throws, we don't execute following funcs
console.log(str);
console.info(str);
console.warn(str);
console.error(str);
console.exception(str);
console.assert(false, str);
console.count(str);
}
function testGroups() {
console.groupCollapsed("a", "group");
console.group("b", "group");
console.groupEnd();
}
function nativeCallback() {
new Promise(function(resolve, reject) { resolve(42); }).then(console.log);
}
function timeStamp(val) {
console.timeStamp(val);
}
</script>
</head>
<body>
<h1>Console API Test Page</h1>
<button onclick="test();">Log stuff</button>
<button id="test-trace" onclick="foobar585956a('omg');">Test trace</button>
<button id="test-location" onclick="foobar646025('omg');">Test location</button>
<button id="test-nativeCallback" onclick="nativeCallback();">Test nativeCallback</button>
<button id="test-groups" onclick="testGroups();">Test groups</button>
<button id="test-time" onclick="startTimer('foo');">Test time</button>
<button id="test-timeEnd" onclick="stopTimer('foo');">Test timeEnd</button>
<button id="test-namelessTimer" onclick="namelessTimer();">Test namelessTimer</button>
<button id="test-timeStamp" onclick="timeStamp('!!!')">Test timeStamp</button>
<button id="test-emptyTimeStamp" onclick="timeStamp();">Test emptyTimeStamp</button>
</body>
</html>