toolkit/mozapps/extensions/test/xpcshell/test_install_icons.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:026214ad529e
1 /* Any copyright is dedicated to the Public Domain.
2 * http://creativecommons.org/publicdomain/zero/1.0/
3 */
4
5 // use httpserver to find an available port
6 Components.utils.import("resource://testing-common/httpd.js");
7 var gServer = new HttpServer();
8 gServer.start(-1);
9 gPort = gServer.identity.primaryPort;
10
11 var addon_url = "http://localhost:" + gPort + "/test.xpi";
12 var icon32_url = "http://localhost:" + gPort + "/icon.png";
13 var icon64_url = "http://localhost:" + gPort + "/icon64.png";
14
15 function run_test() {
16 do_test_pending();
17 createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "1", "1.9.2");
18 startupManager();
19
20 test_1();
21 }
22
23 function test_1() {
24 AddonManager.getInstallForURL(addon_url, function(aInstall) {
25 do_check_eq(aInstall.iconURL, null);
26 do_check_neq(aInstall.icons, null);
27 do_check_eq(aInstall.icons[32], undefined);
28 do_check_eq(aInstall.icons[64], undefined);
29 test_2();
30 }, "application/x-xpinstall", null, null, null, null, null);
31 }
32
33 function test_2() {
34 AddonManager.getInstallForURL(addon_url, function(aInstall) {
35 do_check_eq(aInstall.iconURL, icon32_url);
36 do_check_neq(aInstall.icons, null);
37 do_check_eq(aInstall.icons[32], icon32_url);
38 do_check_eq(aInstall.icons[64], undefined);
39 test_3();
40 }, "application/x-xpinstall", null, null, icon32_url, null, null);
41 }
42
43 function test_3() {
44 AddonManager.getInstallForURL(addon_url, function(aInstall) {
45 do_check_eq(aInstall.iconURL, icon32_url);
46 do_check_neq(aInstall.icons, null);
47 do_check_eq(aInstall.icons[32], icon32_url);
48 do_check_eq(aInstall.icons[64], undefined);
49 test_4();
50 }, "application/x-xpinstall", null, null, { "32": icon32_url }, null, null);
51 }
52
53 function test_4() {
54 AddonManager.getInstallForURL(addon_url, function(aInstall) {
55 do_check_eq(aInstall.iconURL, icon32_url);
56 do_check_neq(aInstall.icons, null);
57 do_check_eq(aInstall.icons[32], icon32_url);
58 do_check_eq(aInstall.icons[64], icon64_url);
59 do_execute_soon(do_test_finished);
60 }, "application/x-xpinstall", null, null, { "32": icon32_url, "64": icon64_url }, null, null);
61 }

mercurial