diff options
Diffstat (limited to 'toolkit/components/mozintl/test/test_mozintlhelper.js')
-rw-r--r-- | toolkit/components/mozintl/test/test_mozintlhelper.js | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/toolkit/components/mozintl/test/test_mozintlhelper.js b/toolkit/components/mozintl/test/test_mozintlhelper.js new file mode 100644 index 0000000000..b233ab611d --- /dev/null +++ b/toolkit/components/mozintl/test/test_mozintlhelper.js @@ -0,0 +1,57 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +function run_test() { + const miHelper = Cc["@mozilla.org/mozintlhelper;1"].getService( + Ci.mozIMozIntlHelper + ); + + test_this_global(miHelper); + test_cross_global(miHelper); + test_methods_presence(miHelper); + + ok(true); +} + +function test_this_global(miHelper) { + let x = {}; + + miHelper.addGetCalendarInfo(x); + equal(x.getCalendarInfo instanceof Function, true); + equal(x.getCalendarInfo() instanceof Object, true); +} + +function test_cross_global(miHelper) { + var global = new Cu.Sandbox("https://example.com/"); + var x = global.Object(); + + miHelper.addGetCalendarInfo(x); + var waivedX = Cu.waiveXrays(x); + equal(waivedX.getCalendarInfo instanceof Function, false); + equal( + waivedX.getCalendarInfo instanceof Cu.waiveXrays(global.Function), + true + ); + equal(waivedX.getCalendarInfo() instanceof Object, false); + equal( + waivedX.getCalendarInfo() instanceof Cu.waiveXrays(global.Object), + true + ); +} + +function test_methods_presence(miHelper) { + equal(miHelper.addGetCalendarInfo instanceof Function, true); + equal(miHelper.addDateTimeFormatConstructor instanceof Function, true); + equal(miHelper.addDisplayNamesConstructor instanceof Function, true); + + let x = {}; + + miHelper.addGetCalendarInfo(x); + equal(x.getCalendarInfo instanceof Function, true); + + miHelper.addDateTimeFormatConstructor(x); + equal(x.DateTimeFormat instanceof Function, true); + + miHelper.addDisplayNamesConstructor(x); + equal(x.DisplayNames instanceof Function, true); +} |