blob: a3259b599f0fabee9845fe62ed215147d4ee1168 (
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
44
45
46
47
|
createAppInfo("xpcshell@tessts.mozilla.org", "XPCShell", "1", "1");
BootstrapMonitor.init();
// Test that enabling an extension during startup generates the
// proper reason for startup().
add_task(async function test_startup_enable() {
const ID = "compat@tests.mozilla.org";
await promiseStartupManager();
await promiseInstallWebExtension({
manifest: {
browser_specific_settings: {
gecko: {
id: ID,
strict_min_version: "1",
strict_max_version: "1",
},
},
},
});
BootstrapMonitor.checkInstalled(ID);
BootstrapMonitor.checkStarted(ID);
let { reason } = BootstrapMonitor.started.get(ID);
equal(
reason,
BOOTSTRAP_REASONS.ADDON_INSTALL,
"Startup reason is ADDON_INSTALL at install"
);
gAppInfo.platformVersion = "2";
await promiseRestartManager("2");
BootstrapMonitor.checkInstalled(ID);
BootstrapMonitor.checkNotStarted(ID);
gAppInfo.platformVersion = "1";
await promiseRestartManager("1");
BootstrapMonitor.checkInstalled(ID);
BootstrapMonitor.checkStarted(ID);
({ reason } = BootstrapMonitor.started.get(ID));
equal(
reason,
BOOTSTRAP_REASONS.ADDON_ENABLE,
"Startup reason is ADDON_ENABLE when re-enabled at startup"
);
});
|