toolkit/devtools/webconsole/test/unit/test_network_helper.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/ */
     4 "use strict";
     5 const Cu = Components.utils;
     6 const { devtools } = Cu.import("resource://gre/modules/devtools/Loader.jsm", {});
     8 Object.defineProperty(this, "NetworkHelper", {
     9   get: function() {
    10     return devtools.require("devtools/toolkit/webconsole/network-helper");
    11   },
    12   configurable: true,
    13   writeable: false,
    14   enumerable: true
    15 });
    17 function run_test() {
    18   test_isTextMimeType();
    19 }
    21 function test_isTextMimeType () {
    22   do_check_eq(NetworkHelper.isTextMimeType("text/plain"), true);
    23   do_check_eq(NetworkHelper.isTextMimeType("application/javascript"), true);
    24   do_check_eq(NetworkHelper.isTextMimeType("application/json"), true);
    25   do_check_eq(NetworkHelper.isTextMimeType("text/css"), true);
    26   do_check_eq(NetworkHelper.isTextMimeType("text/html"), true);
    27   do_check_eq(NetworkHelper.isTextMimeType("image/svg+xml"), true);
    28   do_check_eq(NetworkHelper.isTextMimeType("application/xml"), true);
    30   // Test custom JSON subtype
    31   do_check_eq(NetworkHelper.isTextMimeType("application/vnd.tent.posts-feed.v0+json"), true);
    32   do_check_eq(NetworkHelper.isTextMimeType("application/vnd.tent.posts-feed.v0-json"), true);
    33   // Test custom XML subtype
    34   do_check_eq(NetworkHelper.isTextMimeType("application/vnd.tent.posts-feed.v0+xml"), true);
    35   do_check_eq(NetworkHelper.isTextMimeType("application/vnd.tent.posts-feed.v0-xml"), false);
    36   // Test case-insensitive
    37   do_check_eq(NetworkHelper.isTextMimeType("application/vnd.BIG-CORP+json"), true);
    38   // Test non-text type
    39   do_check_eq(NetworkHelper.isTextMimeType("image/png"), false);
    40   // Test invalid types
    41   do_check_eq(NetworkHelper.isTextMimeType("application/foo-+json"), false);
    42   do_check_eq(NetworkHelper.isTextMimeType("application/-foo+json"), false);
    43   do_check_eq(NetworkHelper.isTextMimeType("application/foo--bar+json"), false);
    45   // Test we do not cause internal errors with unoptimized regex. Bug 961097
    46   do_check_eq(NetworkHelper.isTextMimeType("application/vnd.google.safebrowsing-chunk"), false);
    47 }

mercurial