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

Sat, 03 Jan 2015 20:18:00 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 03 Jan 2015 20:18:00 +0100
branch
TOR_BUG_3246
changeset 7
129ffea94266
permissions
-rw-r--r--

Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.

     1 /* Any copyright is dedicated to the Public Domain.
     2  * http://creativecommons.org/publicdomain/zero/1.0/
     3  */
     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;
    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";
    15 function run_test() {
    16   do_test_pending();
    17   createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "1", "1.9.2");
    18   startupManager();
    20   test_1();
    21 }
    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 }
    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 }
    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 }
    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