summaryrefslogtreecommitdiff
path: root/browser/devtools/netmonitor/test/browser_net_simple-init.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/devtools/netmonitor/test/browser_net_simple-init.js')
-rw-r--r--browser/devtools/netmonitor/test/browser_net_simple-init.js84
1 files changed, 84 insertions, 0 deletions
diff --git a/browser/devtools/netmonitor/test/browser_net_simple-init.js b/browser/devtools/netmonitor/test/browser_net_simple-init.js
new file mode 100644
index 000000000..9f444bb49
--- /dev/null
+++ b/browser/devtools/netmonitor/test/browser_net_simple-init.js
@@ -0,0 +1,84 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+/**
+ * Simple check if the network monitor starts up and shuts down properly.
+ */
+
+function test() {
+ initNetMonitor(SIMPLE_URL).then(([aTab, aDebuggee, aMonitor]) => {
+ info("Starting test... ");
+
+ is(aTab.linkedBrowser.contentWindow.wrappedJSObject.location, SIMPLE_URL,
+ "The current tab's location is the correct one.");
+ is(aDebuggee.location, SIMPLE_URL,
+ "The current debuggee's location is the correct one.");
+
+ function checkIfInitialized(aTag) {
+ info("Checking if initialization is ok (" + aTag + ").");
+
+ ok(aMonitor._view,
+ "The network monitor view object exists (" + aTag + ").");
+ ok(aMonitor._view._isInitialized,
+ "The network monitor view object exists and is initialized (" + aTag + ").");
+
+ ok(aMonitor._controller,
+ "The network monitor controller object exists (" + aTag + ").");
+ ok(aMonitor._controller._isInitialized,
+ "The network monitor controller object exists and is initialized (" + aTag + ").");
+
+ ok(aMonitor.isReady,
+ "The network monitor panel appears to be ready (" + aTag + ").");
+
+ ok(aMonitor._controller.client,
+ "There should be a client available at this point (" + aTag + ").");
+ ok(aMonitor._controller.tabClient,
+ "There should be a tabClient available at this point (" + aTag + ").");
+ ok(aMonitor._controller.webConsoleClient,
+ "There should be a webConsoleClient available at this point (" + aTag + ").");
+ }
+
+ function checkIfDestroyed(aTag) {
+ info("Checking if destruction is ok.");
+
+ ok(!aMonitor._controller.client,
+ "There shouldn't be a client available after destruction (" + aTag + ").");
+ ok(!aMonitor._controller.tabClient,
+ "There shouldn't be a tabClient available after destruction (" + aTag + ").");
+ ok(!aMonitor._controller.webConsoleClient,
+ "There shouldn't be a webConsoleClient available after destruction (" + aTag + ").");
+ }
+
+ executeSoon(() => {
+ checkIfInitialized(1);
+
+ aMonitor._controller.startupNetMonitor()
+ .then(() => {
+ info("Starting up again shouldn't do anything special.");
+ checkIfInitialized(2);
+ return aMonitor._controller.connect();
+ })
+ .then(() => {
+ info("Connecting again shouldn't do anything special.");
+ checkIfInitialized(3);
+ return teardown(aMonitor);
+ })
+ .then(finish);
+ });
+
+ registerCleanupFunction(() => {
+ checkIfDestroyed(1);
+
+ aMonitor._controller.shutdownNetMonitor()
+ .then(() => {
+ info("Shutting down again shouldn't do anything special.");
+ checkIfDestroyed(2);
+ return aMonitor._controller.disconnect();
+ })
+ .then(() => {
+ info("Disconnecting again shouldn't do anything special.");
+ checkIfDestroyed(3);
+ });
+ });
+ });
+}