|
1 /* Any copyright is dedicated to the Public Domain. |
|
2 * http://creativecommons.org/publicdomain/zero/1.0/ |
|
3 */ |
|
4 |
|
5 function run_test() { |
|
6 do_test_pending(); |
|
7 createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "1", "1.9.2"); |
|
8 startupManager(); |
|
9 |
|
10 prepare_test({ }, [ |
|
11 "onNewInstall" |
|
12 ]); |
|
13 |
|
14 AddonManager.getInstallForFile(do_get_addon("test_bug675371"), function(install) { |
|
15 ensure_test_completed(); |
|
16 |
|
17 do_check_neq(install, null); |
|
18 |
|
19 prepare_test({ |
|
20 "bug675371@tests.mozilla.org": [ |
|
21 ["onInstalling", false], |
|
22 "onInstalled" |
|
23 ] |
|
24 }, [ |
|
25 "onInstallStarted", |
|
26 "onInstallEnded" |
|
27 ], callback_soon(check_test)); |
|
28 install.install(); |
|
29 }); |
|
30 } |
|
31 |
|
32 function check_test() { |
|
33 AddonManager.getAddonByID("bug675371@tests.mozilla.org", do_exception_wrap(function(addon) { |
|
34 do_check_neq(addon, null); |
|
35 do_check_true(addon.isActive); |
|
36 |
|
37 // Tests that chrome.manifest is registered when the addon is installed. |
|
38 var target = { active: false }; |
|
39 Services.scriptloader.loadSubScript("chrome://bug675371/content/test.js", target); |
|
40 do_check_true(target.active); |
|
41 |
|
42 shutdownManager(); |
|
43 |
|
44 // Tests that chrome.manifest remains registered at app shutdown. |
|
45 target.active = false; |
|
46 Services.scriptloader.loadSubScript("chrome://bug675371/content/test.js", target); |
|
47 do_check_true(target.active); |
|
48 |
|
49 do_execute_soon(do_test_finished); |
|
50 })); |
|
51 } |