summaryrefslogtreecommitdiff
path: root/browser/devtools/debugger/test/browser_dbg_tabactor-01.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/devtools/debugger/test/browser_dbg_tabactor-01.js')
-rw-r--r--browser/devtools/debugger/test/browser_dbg_tabactor-01.js47
1 files changed, 47 insertions, 0 deletions
diff --git a/browser/devtools/debugger/test/browser_dbg_tabactor-01.js b/browser/devtools/debugger/test/browser_dbg_tabactor-01.js
new file mode 100644
index 000000000..8175d364c
--- /dev/null
+++ b/browser/devtools/debugger/test/browser_dbg_tabactor-01.js
@@ -0,0 +1,47 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+/**
+ * Check extension-added tab actor lifetimes.
+ */
+
+var gTab1 = null;
+var gTab1Actor = null;
+
+var gClient = null;
+
+function test()
+{
+ DebuggerServer.addActors("chrome://mochitests/content/browser/browser/devtools/debugger/test/testactors.js");
+
+ let transport = DebuggerServer.connectPipe();
+ gClient = new DebuggerClient(transport);
+ gClient.connect(function (aType, aTraits) {
+ is(aType, "browser", "Root actor should identify itself as a browser.");
+ get_tab();
+ });
+}
+
+function get_tab()
+{
+ gTab1 = addTab(TAB1_URL, function() {
+ attach_tab_actor_for_url(gClient, TAB1_URL, function(aGrip) {
+ gTab1Actor = aGrip.actor;
+ ok(aGrip.testTabActor1, "Found the test tab actor.")
+ ok(aGrip.testTabActor1.indexOf("testone") >= 0,
+ "testTabActor's actorPrefix should be used.");
+ gClient.request({ to: aGrip.testTabActor1, type: "ping" }, function(aResponse) {
+ is(aResponse.pong, "pong", "Actor should respond to requests.");
+ finish_test();
+ });
+ });
+ });
+}
+
+function finish_test()
+{
+ gClient.close(function() {
+ removeTab(gTab1);
+ finish();
+ });
+}