diff options
Diffstat (limited to 'devtools/shared/webconsole/test/test_nsiconsolemessage.html')
-rw-r--r-- | devtools/shared/webconsole/test/test_nsiconsolemessage.html | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/devtools/shared/webconsole/test/test_nsiconsolemessage.html b/devtools/shared/webconsole/test/test_nsiconsolemessage.html new file mode 100644 index 000000000..ef8b8067e --- /dev/null +++ b/devtools/shared/webconsole/test/test_nsiconsolemessage.html @@ -0,0 +1,74 @@ +<!DOCTYPE HTML> +<html lang="en"> +<head> + <meta charset="utf8"> + <title>Test for nsIConsoleMessages</title> + <script type="text/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script> + <script type="text/javascript;version=1.8" src="common.js"></script> + <!-- Any copyright is dedicated to the Public Domain. + - http://creativecommons.org/publicdomain/zero/1.0/ --> +</head> +<body> +<p>Make sure that nsIConsoleMessages are logged. See bug 859756.</p> + +<script class="testbody" type="text/javascript;version=1.8"> +"use strict"; +SimpleTest.waitForExplicitFinish(); + +let expectedMessages = []; + +function startTest() +{ + removeEventListener("load", startTest); + attachConsole(["PageError"], onAttach); +} + +function onAttach(aState, aResponse) +{ + onLogMessage = onLogMessage.bind(null, aState); + aState.dbgClient.addListener("logMessage", onLogMessage); + + expectedMessages = [{ + message: "hello world! bug859756", + timeStamp: /^\d+$/, + }]; + + Services.console.logStringMessage("hello world! bug859756"); + + info("waiting for messages"); +} + +let receivedMessages = []; + +function onLogMessage(aState, aType, aPacket) +{ + is(aPacket.from, aState.actor, "packet actor"); + info("received message: " + aPacket.message); + + let found = false; + for (let expected of expectedMessages) { + if (expected.message == aPacket.message) { + found = true; + break; + } + } + if (!found) { + return; + } + + receivedMessages.push(aPacket); + if (receivedMessages.length != expectedMessages.length) { + return; + } + + aState.dbgClient.removeListener("logMessage", onLogMessage); + + checkObject(receivedMessages, expectedMessages); + + closeDebugger(aState, () => SimpleTest.finish()); +} + +addEventListener("load", startTest); +</script> +</body> +</html> |