addon-sdk/source/test/addons/layout-change/main.js

Thu, 15 Jan 2015 15:59:08 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 15:59:08 +0100
branch
TOR_BUG_9701
changeset 10
ac0c01689b40
permissions
-rw-r--r--

Implement a real Private Browsing Mode condition by changing the API/ABI;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     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 "use strict";
     7 const { LoaderWithHookedConsole } = require('sdk/test/loader');
     8 const { loader } = LoaderWithHookedConsole(module);
     9 const app = require("sdk/system/xul-app");
    11 // This test makes sure that require statements used by all AMO hosted
    12 // add-ons will be able to use old require statements.
    13 // Tests are based on following usage data:
    14 // https://docs.google.com/spreadsheet/ccc?key=0ApEBy-GRnGxzdHlRMHJ5RXN1aWJ4RGhINkxSd0FCQXc#gid=0
    16 exports["test compatibility"] = function(assert) {
    17   assert.equal(require("self"),
    18                require("sdk/self"), "sdk/self -> self");
    20   assert.equal(require("tabs"),
    21                require("sdk/tabs"), "sdk/tabs -> tabs");
    23   if (app.is("Firefox")) {
    24     assert.equal(require("widget"),
    25                  require("sdk/widget"), "sdk/widget -> widget");
    26   }
    28   assert.equal(require("page-mod"),
    29                require("sdk/page-mod"), "sdk/page-mod -> page-mod");
    31   if (app.is("Firefox")) {
    32     assert.equal(require("panel"),
    33                  require("sdk/panel"), "sdk/panel -> panel");
    34   }
    36   assert.equal(require("request"),
    37                require("sdk/request"), "sdk/request -> request");
    39   assert.equal(require("chrome"),
    40                require("chrome"), "chrome -> chrome");
    42   assert.equal(require("simple-storage"),
    43                require("sdk/simple-storage"), "sdk/simple-storage -> simple-storage");
    45   if (app.is("Firefox")) {
    46     assert.equal(require("context-menu"),
    47                  require("sdk/context-menu"), "sdk/context-menu -> context-menu");
    48   }
    50   assert.equal(require("notifications"),
    51                require("sdk/notifications"), "sdk/notifications -> notifications");
    53   assert.equal(require("preferences-service"),
    54                require("sdk/preferences/service"), "sdk/preferences/service -> preferences-service");
    56   assert.equal(require("window-utils"),
    57                require("sdk/deprecated/window-utils"), "sdk/deprecated/window-utils -> window-utils");
    59   assert.equal(require("url"),
    60                require("sdk/url"), "sdk/url -> url");
    62   if (app.is("Firefox")) {
    63     assert.equal(require("selection"),
    64                  require("sdk/selection"), "sdk/selection -> selection");
    65   }
    67   assert.equal(require("timers"),
    68                require("sdk/timers"), "sdk/timers -> timers");
    70   assert.equal(require("simple-prefs"),
    71                require("sdk/simple-prefs"), "sdk/simple-prefs -> simple-prefs");
    73   assert.equal(require("traceback"),
    74                require("sdk/console/traceback"), "sdk/console/traceback -> traceback");
    76   assert.equal(require("unload"),
    77                require("sdk/system/unload"), "sdk/system/unload -> unload");
    79   assert.equal(require("hotkeys"),
    80                require("sdk/hotkeys"), "sdk/hotkeys -> hotkeys");
    82   if (app.is("Firefox")) {
    83     assert.equal(require("clipboard"),
    84                  require("sdk/clipboard"), "sdk/clipboard -> clipboard");
    85   }
    87   assert.equal(require("windows"),
    88                require("sdk/windows"), "sdk/windows -> windows");
    90   assert.equal(require("page-worker"),
    91                require("sdk/page-worker"), "sdk/page-worker -> page-worker");
    93   assert.equal(require("timer"),
    94                require("sdk/timers"), "sdk/timers -> timer");
    96   assert.equal(require("xhr"),
    97                require("sdk/net/xhr"), "sdk/io/xhr -> xhr");
    99   assert.equal(require("private-browsing"),
   100                require("sdk/private-browsing"), "sdk/private-browsing -> private-browsing");
   102   assert.equal(require("passwords"),
   103                require("sdk/passwords"), "sdk/passwords -> passwords");
   105   assert.equal(require("events"),
   106                require("sdk/deprecated/events"), "sdk/deprecated/events -> events");
   108   assert.equal(require("match-pattern"),
   109                require("sdk/util/match-pattern"), "sdk/util/match-pattern -> match-pattern");
   111   assert.equal(require("file"),
   112                require("sdk/io/file"), "sdk/io/file -> file");
   114   assert.equal(require("xul-app"),
   115                require("sdk/system/xul-app"), "sdk/system/xul-app -> xul-app");
   117   assert.equal(require("api-utils"),
   118                require("sdk/deprecated/api-utils"), "sdk/deprecated/api-utils -> api-utils");
   120   assert.equal(require("runtime"),
   121                require("sdk/system/runtime"), "sdk/system/runtime -> runtime");
   123   assert.equal(require("base64"),
   124                require("sdk/base64"), "sdk/base64 -> base64");
   126   assert.equal(require("xpcom"),
   127                require("sdk/platform/xpcom"), "sdk/platform/xpcom -> xpcom");
   129   assert.equal(require("traits"),
   130                require("sdk/deprecated/traits"), "sdk/deprecated/traits -> traits");
   132   assert.equal(require("keyboard/utils"),
   133                require("sdk/keyboard/utils"), "sdk/keyboard/utils -> keyboard/utils");
   135   assert.equal(require("system"),
   136                require("sdk/system"), "sdk/system -> system");
   138   assert.equal(require("querystring"),
   139                require("sdk/querystring"), "sdk/querystring -> querystring");
   141   assert.equal(loader.require("addon-page"),
   142                loader.require("sdk/addon-page"), "sdk/addon-page -> addon-page");
   144   assert.equal(require("tabs/utils"),
   145                require("sdk/tabs/utils"), "sdk/tabs/utils -> tabs/utils");
   147   assert.equal(require("dom/events"),
   148                require("sdk/dom/events"), "sdk/dom/events -> dom/events");
   150   assert.equal(require("tabs/tab.js"),
   151                require("sdk/tabs/tab"), "sdk/tabs/tab -> tabs/tab.js");
   153   assert.equal(require("memory"),
   154                require("sdk/deprecated/memory"), "sdk/deprecated/memory -> memory");
   156   assert.equal(require("light-traits"),
   157                require("sdk/deprecated/light-traits"), "sdk/deprecated/light-traits -> light-traits");
   159   assert.equal(require("environment"),
   160                require("sdk/system/environment"), "sdk/system/environment -> environment");
   162   if (app.is("Firefox")) {
   163     // This module fails on fennec because of favicon xpcom component
   164     // being not implemented on it.
   165     assert.equal(require("utils/data"),
   166                  require("sdk/io/data"), "sdk/io/data -> utils/data");
   167   }
   169   assert.equal(require("test/assert"),
   170                require("sdk/test/assert"), "sdk/test/assert -> test/assert");
   172   assert.equal(require("hidden-frame"),
   173                require("sdk/frame/hidden-frame"), "sdk/frame/hidden-frame -> hidden-frame");
   175   assert.equal(require("collection"),
   176                require("sdk/util/collection"), "sdk/util/collection -> collection");
   178   assert.equal(require("array"),
   179                require("sdk/util/array"), "sdk/util/array -> array");
   181   assert.equal(require("api-utils/cortex"),
   182                require("sdk/deprecated/cortex"),
   183                "api-utils/cortex -> sdk/deprecated/cortex");
   184 };
   186 require("sdk/test/runner").runTestsFromModule(module);

mercurial