browser/devtools/webconsole/test/browser_webconsole_dont_navigate_on_doubleclick.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /* vim:set ts=2 sw=2 sts=2 et: */
     2 /* Any copyright is dedicated to the Public Domain.
     3  * http://creativecommons.org/publicdomain/zero/1.0/ */
     5 // Tests that if a link in console is double clicked, the console frame doesn't
     6 // navigate to that destination (bug 975707).
     8 function test() {
     9   let originalNetPref = Services.prefs.getBoolPref("devtools.webconsole.filter.networkinfo");
    10   registerCleanupFunction(() => {
    11     Services.prefs.setBoolPref("devtools.webconsole.filter.networkinfo", originalNetPref);
    12   });
    13   Services.prefs.setBoolPref("devtools.webconsole.filter.networkinfo", true);
    14   Task.spawn(runner).then(finishTest);
    16   function* runner() {
    17     const TEST_PAGE_URI = "http://example.com/browser/browser/devtools/webconsole/test/test-console.html" + "?_uniq=" + Date.now();
    19     const {tab} = yield loadTab("data:text/html;charset=utf8,<p>hello</p>");
    20     const hud = yield openConsole(tab);
    22     content.location = TEST_PAGE_URI;
    24     let messages = yield waitForMessages({
    25       webconsole: hud,
    26       messages: [{
    27         name: "Network request message",
    28         url: TEST_PAGE_URI,
    29         category: CATEGORY_NETWORK
    30       }]
    31     });
    33     let networkEventMessage = messages[0].matched.values().next().value;
    34     let urlNode = networkEventMessage.querySelector(".url");
    36     let deferred = promise.defer();
    37     urlNode.addEventListener("click", function onClick(aEvent) {
    38       urlNode.removeEventListener("click", onClick);
    39       ok(aEvent.defaultPrevented, "The default action was prevented.");
    41       deferred.resolve();
    42     });
    44     EventUtils.synthesizeMouseAtCenter(urlNode, {clickCount: 2}, hud.iframeWindow);
    46     yield deferred.promise;
    47   }
    48 }

mercurial