tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

browser_backfwd_enabled_post_customize.js (2202B)


      1 /* Any copyright is dedicated to the Public Domain.
      2 * http://creativecommons.org/publicdomain/zero/1.0/ */
      3 
      4 "use strict";
      5 
      6 const TEST_PATH = getRootDirectory(gTestPath).replace(
      7  "chrome://mochitests/content",
      8  "http://example.com"
      9 );
     10 
     11 /**
     12 * Back/fwd buttons should be re-enabled after customizing.
     13 */
     14 add_task(async function test_back_forward_buttons() {
     15  await SpecialPowers.pushPrefEnv({
     16    set: [["browser.navigation.requireUserInteraction", false]],
     17  });
     18  let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, TEST_PATH);
     19  let loaded = BrowserTestUtils.browserLoaded(tab.linkedBrowser);
     20  BrowserTestUtils.startLoadingURIString(
     21    tab.linkedBrowser,
     22    "data:text/html,A separate page"
     23  );
     24  await loaded;
     25  loaded = BrowserTestUtils.browserLoaded(tab.linkedBrowser);
     26  BrowserTestUtils.startLoadingURIString(
     27    tab.linkedBrowser,
     28    "data:text/html,Another separate page"
     29  );
     30  await loaded;
     31  gBrowser.goBack();
     32  await BrowserTestUtils.waitForCondition(() => gBrowser.canGoForward);
     33 
     34  let backButton = document.getElementById("back-button");
     35  let forwardButton = document.getElementById("forward-button");
     36 
     37  await BrowserTestUtils.waitForCondition(
     38    () =>
     39      !backButton.hasAttribute("disabled") &&
     40      !forwardButton.hasAttribute("disabled")
     41  );
     42 
     43  ok(!backButton.hasAttribute("disabled"), "Back button shouldn't be disabled");
     44  ok(
     45    !forwardButton.hasAttribute("disabled"),
     46    "Forward button shouldn't be disabled"
     47  );
     48  await startCustomizing();
     49 
     50  is(
     51    backButton.getAttribute("disabled"),
     52    "true",
     53    "Back button should be disabled in customize mode"
     54  );
     55  is(
     56    forwardButton.getAttribute("disabled"),
     57    "true",
     58    "Forward button should be disabled in customize mode"
     59  );
     60 
     61  await endCustomizing();
     62 
     63  await BrowserTestUtils.waitForCondition(
     64    () =>
     65      !backButton.hasAttribute("disabled") &&
     66      !forwardButton.hasAttribute("disabled")
     67  );
     68 
     69  ok(
     70    !backButton.hasAttribute("disabled"),
     71    "Back button shouldn't be disabled after customize mode"
     72  );
     73  ok(
     74    !forwardButton.hasAttribute("disabled"),
     75    "Forward button shouldn't be disabled after customize mode"
     76  );
     77 
     78  BrowserTestUtils.removeTab(tab);
     79 });