addon-sdk/source/test/test-dom.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 "use strict";
     7 const events = require("sdk/dom/events");
     8 const { activeBrowserWindow: { document } } = require("sdk/deprecated/window-utils");
     9 const window = document.window;
    10 /*
    11 exports["test on / emit"] = function (assert, done) {
    12   let element = document.createElement("div");
    13   events.on(element, "click", function listener(event) {
    14     assert.equal(event.target, element, "event has correct target");
    15     events.removeListener(element, "click", listener);
    16     done();
    17   });
    19   events.emit(element, "click", {
    20     category: "MouseEvents",
    21     settings: [
    22       true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null
    23     ]
    24   });
    25 };
    27 exports["test remove"] = function (assert, done) {
    28   let element = document.createElement("span");
    29   let l1 = 0;
    30   let l2 = 0;
    31   let options = {
    32     category: "MouseEvents",
    33     settings: [
    34       true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null
    35     ]
    36   };
    38   events.on(element, "click", function listener1(event) {
    39     l1 ++;
    40     assert.equal(event.target, element, "event has correct target");
    41     events.removeListener(element, "click", listener1);
    42   });
    44   events.on(element, "click", function listener2(event) {
    45     l2 ++;
    46     if (l1 < l2) {
    47       assert.equal(l1, 1, "firs listener was called and then romeved");
    48       events.removeListener(element, "click", listener2);
    49       done();
    50     }
    51     events.emit(element, "click", options);
    52   });
    54   events.emit(element, "click", options);
    55 };
    57 exports["test once"] = function (assert, done) {
    58   let element = document.createElement("h1");
    59   let l1 = 0;
    60   let l2 = 0;
    61   let options = {
    62     category: "MouseEvents",
    63     settings: [
    64       true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null
    65     ]
    66   };
    69   events.once(element, "click", function listener(event) {
    70     assert.equal(event.target, element, "event target is a correct element");
    71     l1 ++;
    72   });
    74   events.on(element, "click", function listener(event) {
    75     l2 ++;
    76     if (l2 > 3) {
    77       events.removeListener(element, "click", listener);
    78       assert.equal(event.target, element, "event has correct target");
    79       assert.equal(l1, 1, "once was called only once");
    80       done();
    81     }
    82     events.emit(element, "click", options);
    83   });
    85   events.emit(element, "click", options);
    86 }
    87 */
    88 require("test").run(exports);

mercurial