tor-browser

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

browser_experimental_features.js (2039B)


      1 /* Any copyright is dedicated to the Public Domain.
      2 * http://creativecommons.org/publicdomain/zero/1.0/ */
      3 
      4 "use strict";
      5 
      6 add_setup(async function setup() {
      7  const cleanup = await setupLabsTest();
      8  registerCleanupFunction(cleanup);
      9 });
     10 
     11 add_task(async function testCanOpenWithPref() {
     12  await SpecialPowers.pushPrefEnv({
     13    set: [["browser.preferences.experimental", true]],
     14  });
     15 
     16  await openPreferencesViaOpenPreferencesAPI("paneHome", { leaveOpen: true });
     17  let doc = gBrowser.contentDocument;
     18 
     19  let experimentalCategory = doc.getElementById("category-experimental");
     20  ok(experimentalCategory, "The category exists");
     21  ok(!experimentalCategory.hidden, "The category is not hidden");
     22 
     23  let categoryHeader = await TestUtils.waitForCondition(
     24    () => doc.getElementById("firefoxExperimentalCategory"),
     25    "Waiting for experimental features category to get initialized"
     26  );
     27  ok(
     28    categoryHeader.hidden,
     29    "The category header should be hidden when Home is selected"
     30  );
     31 
     32  EventUtils.synthesizeMouseAtCenter(experimentalCategory, {}, doc.ownerGlobal);
     33  await TestUtils.waitForCondition(
     34    () => !categoryHeader.hidden,
     35    "Waiting until category is visible"
     36  );
     37 
     38  BrowserTestUtils.removeTab(gBrowser.selectedTab);
     39 
     40  await SpecialPowers.popPrefEnv();
     41 });
     42 
     43 add_task(async function testSearchFindsExperiments() {
     44  await openPreferencesViaOpenPreferencesAPI("paneHome", { leaveOpen: true });
     45  let doc = gBrowser.contentDocument;
     46 
     47  let experimentalCategory = doc.getElementById("category-experimental");
     48  ok(experimentalCategory, "The category exists");
     49  ok(!experimentalCategory.hidden, "The category is not hidden");
     50 
     51  await TestUtils.waitForCondition(
     52    () => doc.querySelector("#pane-experimental-featureGates > .featureGate"),
     53    "Waiting for experimental features category to get initialized"
     54  );
     55  await evaluateSearchResults(
     56    "in development and evolving",
     57    ["pane-experimental-featureGates"],
     58    /* include experiments */ true
     59  );
     60 
     61  BrowserTestUtils.removeTab(gBrowser.selectedTab);
     62 });