browser/devtools/webconsole/test/browser_webconsole_dont_navigate_on_doubleclick.js

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

     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