summaryrefslogtreecommitdiffstats
path: root/browser/components/preferences/tests/browser_search_no_results_change_category.js
blob: 131492632e0d5eed6127cb80a03bbdb4b6477af6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
"use strict";

add_task(async function () {
  await SpecialPowers.pushPrefEnv({
    set: [["browser.preferences.search", true]],
  });
});

add_task(async function () {
  await openPreferencesViaOpenPreferencesAPI("paneGeneral", {
    leaveOpen: true,
  });

  let searchInput = gBrowser.contentDocument.getElementById("searchInput");
  is(
    searchInput,
    gBrowser.contentDocument.activeElement.closest("#searchInput"),
    "Search input should be focused when visiting preferences"
  );
  let query = "ffff____noresults____ffff";
  let searchCompletedPromise = BrowserTestUtils.waitForEvent(
    gBrowser.contentWindow,
    "PreferencesSearchCompleted",
    evt => evt.detail == query
  );
  EventUtils.sendString(query);
  await searchCompletedPromise;

  let noResultsEl = gBrowser.contentDocument.querySelector(
    "#no-results-message"
  );
  is_element_visible(
    noResultsEl,
    "Should be reporting no results for this query"
  );

  await gBrowser.contentWindow.gotoPref("panePrivacy");
  is_element_hidden(
    noResultsEl,
    "Should not be showing the 'no results' message after selecting a category"
  );

  BrowserTestUtils.removeTab(gBrowser.selectedTab);
});