summaryrefslogtreecommitdiffstats
path: root/toolkit/components/mozintl/test
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/mozintl/test')
-rw-r--r--toolkit/components/mozintl/test/test_mozintl.js32
-rw-r--r--toolkit/components/mozintl/test/xpcshell.ini5
2 files changed, 37 insertions, 0 deletions
diff --git a/toolkit/components/mozintl/test/test_mozintl.js b/toolkit/components/mozintl/test/test_mozintl.js
new file mode 100644
index 000000000..0eca2c67e
--- /dev/null
+++ b/toolkit/components/mozintl/test/test_mozintl.js
@@ -0,0 +1,32 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+function run_test() {
+ const mozIntl = Components.classes["@mozilla.org/mozintl;1"]
+ .getService(Components.interfaces.mozIMozIntl);
+
+ test_this_global(mozIntl);
+ test_cross_global(mozIntl);
+
+ ok(true);
+}
+
+function test_this_global(mozIntl) {
+ let x = {};
+
+ mozIntl.addGetCalendarInfo(x);
+ equal(x.getCalendarInfo instanceof Function, true);
+ equal(x.getCalendarInfo() instanceof Object, true);
+}
+
+function test_cross_global(mozIntl) {
+ var global = new Components.utils.Sandbox("https://example.com/");
+ var x = global.Object();
+
+ mozIntl.addGetCalendarInfo(x);
+ var waivedX = Components.utils.waiveXrays(x);
+ equal(waivedX.getCalendarInfo instanceof Function, false);
+ equal(waivedX.getCalendarInfo instanceof global.Function, true);
+ equal(waivedX.getCalendarInfo() instanceof Object, false);
+ equal(waivedX.getCalendarInfo() instanceof global.Object, true);
+}
diff --git a/toolkit/components/mozintl/test/xpcshell.ini b/toolkit/components/mozintl/test/xpcshell.ini
new file mode 100644
index 000000000..8fecd3933
--- /dev/null
+++ b/toolkit/components/mozintl/test/xpcshell.ini
@@ -0,0 +1,5 @@
+[DEFAULT]
+head =
+tail =
+
+[test_mozintl.js]