blob: 657601e45e68682a6c3f0de005c764a7ffc5ba04 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
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();
});
|