1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/netwerk/test/unit/test_auth_jar.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,53 @@ 1.4 +Components.utils.import("resource://gre/modules/Services.jsm"); 1.5 +Components.utils.import("resource://gre/modules/XPCOMUtils.jsm"); 1.6 + 1.7 +function createURI(s) { 1.8 + let service = Components.classes["@mozilla.org/network/io-service;1"] 1.9 + .getService(Components.interfaces.nsIIOService); 1.10 + return service.newURI(s, null, null); 1.11 +} 1.12 + 1.13 +function run_test() { 1.14 + // Set up a profile. 1.15 + do_get_profile(); 1.16 + 1.17 + var secMan = Cc["@mozilla.org/scriptsecuritymanager;1"].getService(Ci.nsIScriptSecurityManager); 1.18 + const kURI1 = "http://example.com"; 1.19 + var app1 = secMan.getAppCodebasePrincipal(createURI(kURI1), 1, false); 1.20 + var app10 = secMan.getAppCodebasePrincipal(createURI(kURI1), 10, false); 1.21 + var app1browser = secMan.getAppCodebasePrincipal(createURI(kURI1), 1, true); 1.22 + 1.23 + var am = Cc["@mozilla.org/network/http-auth-manager;1"]. 1.24 + getService(Ci.nsIHttpAuthManager); 1.25 + am.setAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", "example.com", "user", "pass", false, app1); 1.26 + am.setAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", "example.com", "user3", "pass3", false, app1browser); 1.27 + am.setAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", "example.com", "user2", "pass2", false, app10); 1.28 + 1.29 + let subject = { 1.30 + appId: 1, 1.31 + browserOnly: true, 1.32 + QueryInterface: XPCOMUtils.generateQI([Ci.mozIApplicationClearPrivateDataParams]) 1.33 + }; 1.34 + Services.obs.notifyObservers(subject, "webapps-clear-data", null); 1.35 + 1.36 + var domain = {value: ""}, user = {value: ""}, pass = {value: ""}; 1.37 + try { 1.38 + am.getAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", domain, user, pass, false, app1browser); 1.39 + do_check_false(true); // no identity should be present 1.40 + } catch (x) { 1.41 + do_check_eq(domain.value, ""); 1.42 + do_check_eq(user.value, ""); 1.43 + do_check_eq(pass.value, ""); 1.44 + } 1.45 + 1.46 + am.getAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", domain, user, pass, false, app1); 1.47 + do_check_eq(domain.value, "example.com"); 1.48 + do_check_eq(user.value, "user"); 1.49 + do_check_eq(pass.value, "pass"); 1.50 + 1.51 + 1.52 + am.getAuthIdentity("http", "a.example.com", -1, "basic", "realm", "", domain, user, pass, false, app10); 1.53 + do_check_eq(domain.value, "example.com"); 1.54 + do_check_eq(user.value, "user2"); 1.55 + do_check_eq(pass.value, "pass2"); 1.56 +}