browser/components/safebrowsing/content/test/browser_bug415846.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 /* Check for the correct behaviour of the report web forgery/not a web forgery
     2 menu items.
     4 Mac makes this astonishingly painful to test since their help menu is special magic,
     5 but we can at least test it on the other platforms.*/
     6 var menu;
     8 function test() {
     9   waitForExplicitFinish();
    11   gBrowser.selectedTab = gBrowser.addTab();
    13   // Navigate to a normal site
    14   gBrowser.addEventListener("DOMContentLoaded", testNormal, false);
    15   content.location = "http://example.com/";
    16 }
    18 function testNormal() {
    19   gBrowser.removeEventListener("DOMContentLoaded", testNormal, false);
    21   // open the menu, to force it to update
    22   menu = document.getElementById("menu_HelpPopup");
    23   ok(menu, "Help menu should exist!");
    25   menu.addEventListener("popupshown", testNormal_PopupListener, false);
    26   menu.openPopup(null, "", 0, 0, false, null);
    27 }
    29 function testNormal_PopupListener() {
    30   menu.removeEventListener("popupshown", testNormal_PopupListener, false);
    32   var reportMenu = document.getElementById("menu_HelpPopup_reportPhishingtoolmenu");
    33   var errorMenu = document.getElementById("menu_HelpPopup_reportPhishingErrortoolmenu");
    34   is(reportMenu.hidden, false, "Report phishing menu should be visible on normal sites");
    35   is(errorMenu.hidden, true, "Report error menu item should be hidden on normal sites");
    36   menu.hidePopup();
    38   // Now launch the phishing test.  Can't use onload here because error pages don't
    39   // fire normal load events.
    40   window.addEventListener("DOMContentLoaded", testPhishing, true);
    41   content.location = "http://www.itisatrap.org/firefox/its-a-trap.html";
    42 }
    44 function testPhishing() {
    45   window.removeEventListener("DOMContentLoaded", testPhishing, true);
    47   menu.addEventListener("popupshown", testPhishing_PopupListener, false);
    48   menu.openPopup(null, "", 0, 0, false, null);
    49 }
    51 function testPhishing_PopupListener() {
    52   menu.removeEventListener("popupshown", testPhishing_PopupListener, false);
    54   var reportMenu = document.getElementById("menu_HelpPopup_reportPhishingtoolmenu");
    55   var errorMenu = document.getElementById("menu_HelpPopup_reportPhishingErrortoolmenu");
    56   is(reportMenu.hidden, true, "Report phishing menu should be hidden on phishing sites");
    57   is(errorMenu.hidden, false, "Report error menu item should be visible on phishing sites");
    58   menu.hidePopup();
    60   gBrowser.removeCurrentTab();
    61   finish();
    62 }

mercurial