tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_sss_readstate_empty.js (1614B)


      1 /* This Source Code Form is subject to the terms of the Mozilla Public
      2 * License, v. 2.0. If a copy of the MPL was not distributed with this
      3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      4 "use strict";
      5 
      6 // The purpose of this test is to create an empty site security service state
      7 // file and see that the site security service doesn't fail when reading it.
      8 
      9 function run_test() {
     10  let profileDir = do_get_profile();
     11  let stateFile = profileDir.clone();
     12  stateFile.append(SSS_STATE_FILE_NAME);
     13  // Assuming we're working with a clean slate, the file shouldn't exist
     14  // until we create it.
     15  ok(!stateFile.exists());
     16  stateFile.create(Ci.nsIFile.NORMAL_FILE_TYPE, 0x1a4); // 0x1a4 == 0o644
     17  ok(stateFile.exists());
     18  // Initialize nsISiteSecurityService after do_get_profile() so it
     19  // can read the state file.
     20  let siteSecurityService = Cc["@mozilla.org/ssservice;1"].getService(
     21    Ci.nsISiteSecurityService
     22  );
     23  notEqual(siteSecurityService, null);
     24  // nsISiteSecurityService.isSecureURI blocks until the backing file has been read.
     25  // nonexistent.example.com should never be an HSTS host
     26  ok(
     27    !siteSecurityService.isSecureURI(
     28      Services.io.newURI("https://nonexistent.example.com")
     29    )
     30  );
     31  ok(
     32    siteSecurityService.isSecureURI(
     33      Services.io.newURI("https://includesubdomains.preloaded.test")
     34    )
     35  );
     36  // notexpired.example.com is an HSTS host in a different test - we
     37  // want to make sure that test hasn't interfered with this one.
     38  ok(
     39    !siteSecurityService.isSecureURI(
     40      Services.io.newURI("https://notexpired.example.com")
     41    )
     42  );
     43 }