diff options
author | Matt A. Tobin <email@mattatobin.com> | 2018-02-10 02:49:12 -0500 |
---|---|---|
committer | Matt A. Tobin <email@mattatobin.com> | 2018-02-10 02:49:12 -0500 |
commit | 4fb11cd5966461bccc3ed1599b808237be6b0de9 (patch) | |
tree | d7f0ccd49cebb3544d52635ff1bd6ed4d763823f /toolkit/mozapps/webextensions/test/xpcshell/test_pass_symbol.js | |
parent | f164d9124708b50789dbb6959e1de96cc5697c48 (diff) | |
download | UXP-4fb11cd5966461bccc3ed1599b808237be6b0de9.tar UXP-4fb11cd5966461bccc3ed1599b808237be6b0de9.tar.gz UXP-4fb11cd5966461bccc3ed1599b808237be6b0de9.tar.lz UXP-4fb11cd5966461bccc3ed1599b808237be6b0de9.tar.xz UXP-4fb11cd5966461bccc3ed1599b808237be6b0de9.zip |
Move WebExtensions enabled Add-ons Manager
Diffstat (limited to 'toolkit/mozapps/webextensions/test/xpcshell/test_pass_symbol.js')
-rw-r--r-- | toolkit/mozapps/webextensions/test/xpcshell/test_pass_symbol.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/toolkit/mozapps/webextensions/test/xpcshell/test_pass_symbol.js b/toolkit/mozapps/webextensions/test/xpcshell/test_pass_symbol.js new file mode 100644 index 000000000..657601e45 --- /dev/null +++ b/toolkit/mozapps/webextensions/test/xpcshell/test_pass_symbol.js @@ -0,0 +1,43 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ + */ + +const PASS_PREF = "symboltest.instanceid.pass"; +const FAIL_BOGUS_PREF = "symboltest.instanceid.fail_bogus"; +const FAIL_ID_PREF = "symboltest.instanceid.fail_bogus"; +const ADDON_ID = "test_symbol@tests.mozilla.org"; + +createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "1", "42"); +startupManager(); + +BootstrapMonitor.init(); + +// symbol is passed when add-on is installed +add_task(function*() { + for (let pref of [PASS_PREF, FAIL_BOGUS_PREF, FAIL_ID_PREF]) + Services.prefs.clearUserPref(pref); + + yield promiseInstallAllFiles([do_get_addon("test_symbol")], true); + + let addon = yield promiseAddonByID(ADDON_ID); + + do_check_neq(addon, null); + do_check_eq(addon.version, "1.0"); + do_check_eq(addon.name, "Test Symbol"); + do_check_true(addon.isCompatible); + do_check_false(addon.appDisabled); + do_check_true(addon.isActive); + do_check_eq(addon.type, "extension"); + + // most of the test is in bootstrap.js in the addon because BootstrapMonitor + // currently requires the objects in `data` to be serializable, and we + // need a real reference to the symbol to test this. + do_execute_soon(function() { + // give the startup time to run + do_check_true(Services.prefs.getBoolPref(PASS_PREF)); + do_check_true(Services.prefs.getBoolPref(FAIL_BOGUS_PREF)); + do_check_true(Services.prefs.getBoolPref(FAIL_ID_PREF)); + }); + + yield promiseRestartManager(); +}); |