netwerk/test/unit/test_auth_jar.js

Wed, 31 Dec 2014 13:27:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 13:27:57 +0100
branch
TOR_BUG_3246
changeset 6
8bccb770b82d
permissions
-rw-r--r--

Ignore runtime configuration files generated during quality assurance.

     1 Components.utils.import("resource://gre/modules/Services.jsm");
     2 Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
     4 function createURI(s) {
     5   let service = Components.classes["@mozilla.org/network/io-service;1"]
     6                 .getService(Components.interfaces.nsIIOService);
     7   return service.newURI(s, null, null);
     8 }
    10 function run_test() {
    11   // Set up a profile.
    12   do_get_profile();
    14   var secMan = Cc["@mozilla.org/scriptsecuritymanager;1"].getService(Ci.nsIScriptSecurityManager);
    15   const kURI1 = "http://example.com";
    16   var app1 = secMan.getAppCodebasePrincipal(createURI(kURI1), 1, false);
    17   var app10 = secMan.getAppCodebasePrincipal(createURI(kURI1), 10, false);
    18   var app1browser = secMan.getAppCodebasePrincipal(createURI(kURI1), 1, true);
    20   var am = Cc["@mozilla.org/network/http-auth-manager;1"].
    21            getService(Ci.nsIHttpAuthManager);
    22   am.setAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", "example.com", "user", "pass", false, app1);
    23   am.setAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", "example.com", "user3", "pass3", false, app1browser);
    24   am.setAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", "example.com", "user2", "pass2", false, app10);
    26   let subject = {
    27     appId: 1,
    28     browserOnly: true,
    29     QueryInterface: XPCOMUtils.generateQI([Ci.mozIApplicationClearPrivateDataParams])
    30   };
    31   Services.obs.notifyObservers(subject, "webapps-clear-data", null);
    33   var domain = {value: ""}, user = {value: ""}, pass = {value: ""};
    34   try {
    35     am.getAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", domain, user, pass, false, app1browser);
    36     do_check_false(true); // no identity should be present
    37   } catch (x) {
    38     do_check_eq(domain.value, "");
    39     do_check_eq(user.value, "");
    40     do_check_eq(pass.value, "");
    41   }
    43   am.getAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", domain, user, pass, false, app1);
    44   do_check_eq(domain.value, "example.com");
    45   do_check_eq(user.value, "user");
    46   do_check_eq(pass.value, "pass");
    49   am.getAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", domain, user, pass, false, app10);
    50   do_check_eq(domain.value, "example.com");
    51   do_check_eq(user.value, "user2");
    52   do_check_eq(pass.value, "pass2");
    53 }

mercurial