tor-browser

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

browser_urlbarSearchMode.js (1704B)


      1 /* Any copyright is dedicated to the Public Domain.
      2 * http://creativecommons.org/publicdomain/zero/1.0/ */
      3 
      4 /**
      5 * This test makes sure that the urlbar's search mode is correctly preserved.
      6 */
      7 
      8 ChromeUtils.defineESModuleGetters(this, {
      9  UrlbarUtils: "moz-src:///browser/components/urlbar/UrlbarUtils.sys.mjs",
     10 });
     11 
     12 ChromeUtils.defineLazyGetter(this, "UrlbarTestUtils", () => {
     13  const { UrlbarTestUtils: module } = ChromeUtils.importESModule(
     14    "resource://testing-common/UrlbarTestUtils.sys.mjs"
     15  );
     16  module.init(this);
     17  return module;
     18 });
     19 
     20 add_task(async function test() {
     21  await SpecialPowers.pushPrefEnv({
     22    set: [["browser.urlbar.scotchBonnet.enableOverride", false]],
     23  });
     24  // Open the urlbar view and enter search mode.
     25  await UrlbarTestUtils.promiseAutocompleteResultPopup({
     26    window,
     27    value: "test",
     28  });
     29  await UrlbarTestUtils.enterSearchMode(window, {
     30    source: UrlbarUtils.RESULT_SOURCE.HISTORY,
     31  });
     32 
     33  // The search mode should be in the tab state.
     34  let state = JSON.parse(ss.getTabState(gBrowser.selectedTab));
     35  Assert.ok(
     36    "searchMode" in state,
     37    "state.searchMode is present after entering search mode"
     38  );
     39  Assert.deepEqual(
     40    state.searchMode,
     41    {
     42      source: UrlbarUtils.RESULT_SOURCE.HISTORY,
     43      entry: "oneoff",
     44      isPreview: false,
     45    },
     46    "state.searchMode is correct"
     47  );
     48 
     49  // Exit search mode.
     50  await UrlbarTestUtils.exitSearchMode(window);
     51 
     52  // The search mode should not be in the tab state.
     53  let newState = JSON.parse(ss.getTabState(gBrowser.selectedTab));
     54  Assert.ok(
     55    !newState.searchMode,
     56    "state.searchMode is not present after exiting search mode"
     57  );
     58 
     59  await UrlbarTestUtils.promisePopupClose(window);
     60 });