summaryrefslogtreecommitdiffstats
path: root/devtools/server/tests/unit/registertestactors-03.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/server/tests/unit/registertestactors-03.js')
-rw-r--r--devtools/server/tests/unit/registertestactors-03.js40
1 files changed, 40 insertions, 0 deletions
diff --git a/devtools/server/tests/unit/registertestactors-03.js b/devtools/server/tests/unit/registertestactors-03.js
new file mode 100644
index 000000000..8d42fdbd8
--- /dev/null
+++ b/devtools/server/tests/unit/registertestactors-03.js
@@ -0,0 +1,40 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+var {method, RetVal, Actor, ActorClassWithSpec, Front, FrontClassWithSpec,
+ generateActorSpec} = require("devtools/shared/protocol");
+var Services = require("Services");
+
+const lazySpec = generateActorSpec({
+ typeName: "lazy",
+
+ methods: {
+ hello: {
+ response: { str: RetVal("string") }
+ }
+ }
+});
+
+exports.LazyActor = ActorClassWithSpec(lazySpec, {
+ initialize: function (conn, id) {
+ Actor.prototype.initialize.call(this, conn);
+
+ Services.obs.notifyObservers(null, "actor", "instantiated");
+ },
+
+ hello: function (str) {
+ return "world";
+ }
+});
+
+Services.obs.notifyObservers(null, "actor", "loaded");
+
+exports.LazyFront = FrontClassWithSpec(lazySpec, {
+ initialize: function (client, form) {
+ Front.prototype.initialize.call(this, client);
+ this.actorID = form.lazyActor;
+
+ client.addActorPool(this);
+ this.manage(this);
+ }
+});