summaryrefslogtreecommitdiffstats
path: root/devtools/shared/webconsole/test/test_basics.html
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/shared/webconsole/test/test_basics.html')
-rw-r--r--devtools/shared/webconsole/test/test_basics.html80
1 files changed, 80 insertions, 0 deletions
diff --git a/devtools/shared/webconsole/test/test_basics.html b/devtools/shared/webconsole/test/test_basics.html
new file mode 100644
index 000000000..fa54557ae
--- /dev/null
+++ b/devtools/shared/webconsole/test/test_basics.html
@@ -0,0 +1,80 @@
+<!DOCTYPE HTML>
+<html lang="en">
+<head>
+ <meta charset="utf8">
+ <title>Basic Web Console Actor tests</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>Basic Web Console Actor tests</p>
+
+<script class="testbody" type="text/javascript;version=1.8">
+SimpleTest.waitForExplicitFinish();
+
+function startTest()
+{
+ removeEventListener("load", startTest);
+
+ attachConsoleToTab(["PageError"], onStartPageError);
+}
+
+function onStartPageError(aState, aResponse)
+{
+ is(aResponse.startedListeners.length, 1, "startedListeners.length");
+ is(aResponse.startedListeners[0], "PageError", "startedListeners: PageError");
+ ok(aResponse.nativeConsoleAPI, "nativeConsoleAPI");
+
+ closeDebugger(aState, function() {
+ top.console_ = top.console;
+ top.console = { lolz: "foo" };
+ attachConsoleToTab(["PageError", "ConsoleAPI", "foo"],
+ onStartPageErrorAndConsoleAPI);
+ });
+}
+
+function onStartPageErrorAndConsoleAPI(aState, aResponse)
+{
+ let startedListeners = aResponse.startedListeners;
+ is(startedListeners.length, 2, "startedListeners.length");
+ isnot(startedListeners.indexOf("PageError"), -1, "startedListeners: PageError");
+ isnot(startedListeners.indexOf("ConsoleAPI"), -1,
+ "startedListeners: ConsoleAPI");
+ is(startedListeners.indexOf("foo"), -1, "startedListeners: no foo");
+ ok(!aResponse.nativeConsoleAPI, "!nativeConsoleAPI");
+
+ top.console = top.console_;
+ aState.client.stopListeners(["ConsoleAPI", "foo"],
+ onStopConsoleAPI.bind(null, aState));
+}
+
+function onStopConsoleAPI(aState, aResponse)
+{
+ is(aResponse.stoppedListeners.length, 1, "stoppedListeners.length");
+ is(aResponse.stoppedListeners[0], "ConsoleAPI", "stoppedListeners: ConsoleAPI");
+
+ closeDebugger(aState, function() {
+ attachConsoleToTab(["ConsoleAPI"], onStartConsoleAPI);
+ });
+}
+
+function onStartConsoleAPI(aState, aResponse)
+{
+ is(aResponse.startedListeners.length, 1, "startedListeners.length");
+ is(aResponse.startedListeners[0], "ConsoleAPI", "startedListeners: ConsoleAPI");
+ ok(aResponse.nativeConsoleAPI, "nativeConsoleAPI");
+
+ top.console = top.console_;
+ delete top.console_;
+
+ closeDebugger(aState, function() {
+ SimpleTest.finish();
+ });
+}
+
+addEventListener("load", startTest);
+</script>
+</body>
+</html>