forked from mirrors/gecko-dev
129 lines
4 KiB
JavaScript
129 lines
4 KiB
JavaScript
const SUGGEST_PREF_NAME = "browser.search.suggest.enabled";
|
|
const URLBAR_SUGGEST_PREF_NAME = "browser.urlbar.suggest.searches";
|
|
const PRIVATE_PREF_NAME = "browser.search.suggest.enabled.private";
|
|
|
|
let initialUrlbarSuggestValue;
|
|
let initialSuggestionsInPrivateValue;
|
|
|
|
add_task(async function setup() {
|
|
const originalSuggest = Services.prefs.getBoolPref(SUGGEST_PREF_NAME);
|
|
initialUrlbarSuggestValue = Services.prefs.getBoolPref(
|
|
URLBAR_SUGGEST_PREF_NAME
|
|
);
|
|
initialSuggestionsInPrivateValue = Services.prefs.getBoolPref(
|
|
PRIVATE_PREF_NAME
|
|
);
|
|
|
|
registerCleanupFunction(() => {
|
|
Services.prefs.setBoolPref(SUGGEST_PREF_NAME, originalSuggest);
|
|
Services.prefs.setBoolPref(
|
|
PRIVATE_PREF_NAME,
|
|
initialSuggestionsInPrivateValue
|
|
);
|
|
});
|
|
});
|
|
|
|
// Open with suggestions enabled
|
|
add_task(async function test_suggestions_start_enabled() {
|
|
Services.prefs.setBoolPref(SUGGEST_PREF_NAME, true);
|
|
|
|
await openPreferencesViaOpenPreferencesAPI("search", { leaveOpen: true });
|
|
|
|
let doc = gBrowser.selectedBrowser.contentDocument;
|
|
let urlbarBox = doc.getElementById("urlBarSuggestion");
|
|
let privateBox = doc.getElementById("showSearchSuggestionsPrivateWindows");
|
|
ok(!urlbarBox.disabled, "Should have enabled the urlbar checkbox");
|
|
ok(
|
|
!privateBox.disabled,
|
|
"Should have enabled the private mode suggestions checkbox"
|
|
);
|
|
is(
|
|
urlbarBox.checked,
|
|
initialUrlbarSuggestValue,
|
|
"Should have the correct value for the urlbar checkbox"
|
|
);
|
|
is(
|
|
privateBox.checked,
|
|
initialSuggestionsInPrivateValue,
|
|
"Should have the correct value for the private mode suggestions checkbox"
|
|
);
|
|
|
|
async function toggleElement(id, prefName, element, initialValue, desc) {
|
|
await BrowserTestUtils.synthesizeMouseAtCenter(
|
|
`#${id}`,
|
|
{},
|
|
gBrowser.selectedBrowser
|
|
);
|
|
is(
|
|
element.checked,
|
|
!initialValue,
|
|
`Should have flipped the ${desc} checkbox`
|
|
);
|
|
let prefValue = Services.prefs.getBoolPref(prefName);
|
|
is(
|
|
prefValue,
|
|
!initialValue,
|
|
`Should have updated the ${desc} preference value`
|
|
);
|
|
|
|
await BrowserTestUtils.synthesizeMouseAtCenter(
|
|
`#${id}`,
|
|
{},
|
|
gBrowser.selectedBrowser
|
|
);
|
|
is(
|
|
element.checked,
|
|
initialValue,
|
|
`Should have flipped the ${desc} checkbox back to the original value`
|
|
);
|
|
prefValue = Services.prefs.getBoolPref(prefName);
|
|
is(
|
|
prefValue,
|
|
initialValue,
|
|
`Should have updated the ${desc} preference back to the original value`
|
|
);
|
|
}
|
|
|
|
await toggleElement(
|
|
"urlBarSuggestion",
|
|
URLBAR_SUGGEST_PREF_NAME,
|
|
urlbarBox,
|
|
initialUrlbarSuggestValue,
|
|
"urlbar"
|
|
);
|
|
await toggleElement(
|
|
"showSearchSuggestionsPrivateWindows",
|
|
PRIVATE_PREF_NAME,
|
|
privateBox,
|
|
initialSuggestionsInPrivateValue,
|
|
"private suggestion"
|
|
);
|
|
|
|
Services.prefs.setBoolPref(SUGGEST_PREF_NAME, false);
|
|
ok(!urlbarBox.checked, "Should have unchecked the urlbar box");
|
|
ok(urlbarBox.disabled, "Should have disabled the urlbar box");
|
|
ok(!privateBox.checked, "Should have unchecked the private suggestions box");
|
|
ok(privateBox.disabled, "Should have disabled the private suggestions box");
|
|
|
|
gBrowser.removeCurrentTab();
|
|
});
|
|
|
|
// Open with suggestions disabled
|
|
add_task(async function test_suggestions_start_disabled() {
|
|
Services.prefs.setBoolPref(SUGGEST_PREF_NAME, false);
|
|
|
|
await openPreferencesViaOpenPreferencesAPI("search", { leaveOpen: true });
|
|
|
|
let doc = gBrowser.selectedBrowser.contentDocument;
|
|
let urlbarBox = doc.getElementById("urlBarSuggestion");
|
|
ok(urlbarBox.disabled, "Should have the urlbar box disabled");
|
|
let privateBox = doc.getElementById("showSearchSuggestionsPrivateWindows");
|
|
ok(privateBox.disabled, "Should have the private suggestions box disabled");
|
|
|
|
Services.prefs.setBoolPref(SUGGEST_PREF_NAME, true);
|
|
|
|
ok(!urlbarBox.disabled, "Should have enabled the urlbar box");
|
|
ok(!privateBox.disabled, "Should have enabled the private suggestions box");
|
|
|
|
gBrowser.removeCurrentTab();
|
|
});
|