tor-browser

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

browser_search_bookmarks.js (1871B)


      1 /* Any copyright is dedicated to the Public Domain.
      2   http://creativecommons.org/publicdomain/zero/1.0/ */
      3 
      4 /**
      5 * Tests the Search Bookmarks option from the menubar starts Address Bar search
      6 * mode for bookmarks.
      7 */
      8 ChromeUtils.defineLazyGetter(this, "UrlbarTestUtils", () => {
      9  const { UrlbarTestUtils: module } = ChromeUtils.importESModule(
     10    "resource://testing-common/UrlbarTestUtils.sys.mjs"
     11  );
     12  module.init(this);
     13  return module;
     14 });
     15 
     16 add_task(async function test_menu_search_bookmarks_with_window_open() {
     17  info("Opening bookmarks menu");
     18  let searchBookmarksMenuEntry = document.getElementById(
     19    "menu_searchBookmarks"
     20  );
     21 
     22  searchBookmarksMenuEntry.doCommand();
     23 
     24  await isUrlbarInBookmarksSearchMode(window);
     25 });
     26 
     27 add_task(async function test_menu_search_bookmarks_opens_new_window() {
     28  let newWindowPromise = TestUtils.topicObserved(
     29    "browser-delayed-startup-finished"
     30  );
     31 
     32  info(
     33    "Executing command in untracked browser window (simulating non-browser window)."
     34  );
     35  BrowserWindowTracker.untrackForTestsOnly(window);
     36  let searchBookmarksMenuEntry = document.getElementById(
     37    "menu_searchBookmarks"
     38  );
     39  searchBookmarksMenuEntry.doCommand();
     40  BrowserWindowTracker.track(window);
     41 
     42  info("Waiting for new window to open.");
     43  let [newWindow] = await newWindowPromise;
     44  await isUrlbarInBookmarksSearchMode(newWindow);
     45  await BrowserTestUtils.closeWindow(newWindow);
     46 });
     47 
     48 async function isUrlbarInBookmarksSearchMode(targetWin) {
     49  is(
     50    targetWin,
     51    BrowserWindowTracker.getTopWindow(),
     52    "Target window is top window."
     53  );
     54  await UrlbarTestUtils.promisePopupOpen(targetWin, () => {});
     55 
     56  // Verify URLBar is in search mode with correct restriction
     57  let searchMode = targetWin.gURLBar.searchModeForToken("*");
     58  searchMode.entry = "bookmarkmenu";
     59  await UrlbarTestUtils.assertSearchMode(targetWin, searchMode);
     60 }