Files
sousa-gecko/devtools/shared/webconsole/test/test_console_timestamp.html
T
Nicolas Chevobbe e787d481ba Bug 1405243 - Extract consoleAPICall helper function in common.js; r=bgrins.
The function was used through multiple tests so it makes sense
to have it in common.js.
We take this as an opportunity to unify the style of the tests, and
to make closeDebugger return a Promise.

MozReview-Commit-ID: 7y8dMNErYZp
2018-03-19 18:09:41 +01:00

54 lines
1.6 KiB
HTML

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Test for console.group styling with %c</title>
<script type="text/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
<script type="text/javascript" src="common.js"></script>
<!-- Any copyright is dedicated to the Public Domain.
- http://creativecommons.org/publicdomain/zero/1.0/ -->
<script>
"use strict";
const TEST_URL = "data:text/html,<html>Test ConsoleAPI timestamp correctness";
window.onload = async function () {
SimpleTest.waitForExplicitFinish();
let state;
try {
const onAttachConsole = new Promise(resolve => attachConsole(
["ConsoleAPI"],
(consoleState, response) => resolve(consoleState)
));
state = await onAttachConsole;
const debuggerClient = state.dbgClient;
info("Testing console.log packet timestamp correctness");
const clientLogTimestamp = Date.now();
const packet = await consoleAPICall(debuggerClient,
() => top.console.log("test"));
const packetReceivedTimestamp = Date.now();
const {timeStamp} = packet.message;
ok(clientLogTimestamp <= timeStamp && timeStamp <= packetReceivedTimestamp,
"console.log message timestamp is between the expected time range " +
`(${clientLogTimestamp} <= ${timeStamp} <= ${packetReceivedTimestamp})`
);
} catch (e) {
ok(false, `Error thrown: ${e.message}`);
}
await closeDebugger(state);
SimpleTest.finish();
};
</script>
</head>
<body>
<p id="display"></p>
<div id="content" style="display: none">
</div>
<pre id="test">
</pre>
</body>
</html>