modules/libjar/test/unit/test_bug597702.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 /* 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/. */
     5 const Cc = Components.classes;
     6 const Ci = Components.interfaces;
     8 // Check that reading non existant inner jars results in the right error
    10 function run_test() {
    11   var file = do_get_file("data/test_bug597702.zip");
    12   var ios = Cc["@mozilla.org/network/io-service;1"].
    13             getService(Ci.nsIIOService);
    14   var outerJarBase = "jar:" + ios.newFileURI(file).spec + "!/";
    15   var goodSpec = "jar:" + outerJarBase + "inner.jar!/hello";
    16   var badSpec = "jar:" + outerJarBase + "jar_that_isnt_in_the.jar!/hello";
    17   var goodChannel = ios.newChannel(goodSpec, null, null);
    18   var badChannel = ios.newChannel(badSpec, null, null);
    20   try {
    21     instr = goodChannel.open();
    22   } catch (e) {
    23     do_throw("Failed to open file in inner jar");
    24   }
    26   try {
    27     instr = badChannel.open();
    28     do_throw("Failed to report that file doesn't exist");
    29   } catch (e) {
    30     do_check_true(e.name == "NS_ERROR_FILE_NOT_FOUND");
    31   }
    32 }

mercurial