summaryrefslogtreecommitdiff
path: root/xpcom/tests/unit/test_process_directives.js
diff options
context:
space:
mode:
Diffstat (limited to 'xpcom/tests/unit/test_process_directives.js')
-rw-r--r--xpcom/tests/unit/test_process_directives.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/xpcom/tests/unit/test_process_directives.js b/xpcom/tests/unit/test_process_directives.js
new file mode 100644
index 0000000000..807246f464
--- /dev/null
+++ b/xpcom/tests/unit/test_process_directives.js
@@ -0,0 +1,25 @@
+var Ci = Components.interfaces;
+var Cc = Components.classes;
+
+Components.utils.import("resource:///modules/Services.jsm");
+
+function run_test()
+{
+ Components.manager.autoRegister(do_get_file("data/process_directive.manifest"));
+
+ let isChild = Services.appinfo.processType == Services.appinfo.PROCESS_TYPE_CONTENT;
+
+ if (isChild) {
+ do_check_false("@mozilla.org/xpcom/tests/MainProcessDirectiveTest;1" in Cc);
+ } else {
+ let svc = Cc["@mozilla.org/xpcom/tests/MainProcessDirectiveTest;1"].createInstance(Ci.nsISupportsString);
+ do_check_eq(svc.data, "main process");
+ }
+
+ if (!isChild) {
+ do_check_false("@mozilla.org/xpcom/tests/ChildProcessDirectiveTest;1" in Cc);
+ } else {
+ let svc = Cc["@mozilla.org/xpcom/tests/ChildProcessDirectiveTest;1"].createInstance(Ci.nsISupportsString);
+ do_check_eq(svc.data, "child process");
+ }
+}