addon-sdk/source/test/test-module.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 /** Disabled because of Bug 672199
     8 exports["test module exports are frozen"] = function(assert) {
     9   assert.ok(Object.isFrozen(require("sdk/hotkeys")),
    10             "module exports are frozen");
    11 };
    13 exports["test redefine exported property"] = function(assert) {
    14   let hotkeys = require("sdk/hotkeys");
    15   let { Hotkey } = hotkeys;
    16   try { Object.defineProperty(hotkeys, 'Hotkey', { value: {} }); } catch(e) {}
    17   assert.equal(hotkeys.Hotkey, Hotkey, "exports can't be redefined");
    18 };
    19 */
    21 exports["test can't delete exported property"] = function(assert) {
    22   let hotkeys = require("sdk/hotkeys");
    23   let { Hotkey } = hotkeys;
    25   try { delete hotkeys.Hotkey; } catch(e) {}
    26   assert.equal(hotkeys.Hotkey, Hotkey, "exports can't be deleted");
    27 };
    29 exports["test can't override exported property"] = function(assert) {
    30   let hotkeys = require("sdk/hotkeys");
    31   let { Hotkey } = hotkeys;
    33   try { hotkeys.Hotkey = Object } catch(e) {}
    34   assert.equal(hotkeys.Hotkey, Hotkey, "exports can't be overriden");
    35 };
    37 require("test").run(exports);

mercurial