test_isSet.js (1074B)
1 /* Any copyright is dedicated to the Public Domain. 2 http://creativecommons.org/publicdomain/zero/1.0/ */ 3 4 "use strict"; 5 6 // Test ThreadSafeDevToolsUtils.isSet 7 8 function run_test() { 9 Services.prefs.setBoolPref( 10 "security.allow_parent_unrestricted_js_loads", 11 true 12 ); 13 registerCleanupFunction(() => { 14 Services.prefs.clearUserPref("security.allow_parent_unrestricted_js_loads"); 15 }); 16 17 const { isSet } = DevToolsUtils; 18 19 equal(isSet(new Set()), true); 20 equal(isSet(new Map()), false); 21 equal(isSet({}), false); 22 equal(isSet("I swear I'm a Set"), false); 23 equal(isSet(5), false); 24 25 const systemPrincipal = Cc["@mozilla.org/systemprincipal;1"].createInstance( 26 Ci.nsIPrincipal 27 ); 28 const sandbox = new Cu.Sandbox(systemPrincipal); 29 30 equal(isSet(Cu.evalInSandbox("new Set()", sandbox)), true); 31 equal(isSet(Cu.evalInSandbox("new Map()", sandbox)), false); 32 equal(isSet(Cu.evalInSandbox("({})", sandbox)), false); 33 equal(isSet(Cu.evalInSandbox("'I swear I\\'m a Set'", sandbox)), false); 34 equal(isSet(Cu.evalInSandbox("5", sandbox)), false); 35 }