1
0
Fork 0
firefox/browser/components/preferences/tests/browser_sanitizeOnShutdown_prefLocked.js
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

47 lines
1.3 KiB
JavaScript

"use strict";
function switchToCustomHistoryMode(doc) {
// Select the last item in the menulist.
let menulist = doc.getElementById("historyMode");
menulist.focus();
EventUtils.sendKey("UP");
}
function testPrefStateMatchesLockedState() {
let win = gBrowser.contentWindow;
let doc = win.document;
switchToCustomHistoryMode(doc);
let checkbox = doc.getElementById("alwaysClear");
let preference = win.Preferences.get("privacy.sanitize.sanitizeOnShutdown");
is(
checkbox.disabled,
preference.locked,
"Always Clear checkbox should be enabled when preference is not locked."
);
Services.prefs.clearUserPref("privacy.history.custom");
gBrowser.removeCurrentTab();
}
add_setup(function () {
registerCleanupFunction(function resetPreferences() {
Services.prefs.unlockPref("privacy.sanitize.sanitizeOnShutdown");
Services.prefs.clearUserPref("privacy.history.custom");
});
});
add_task(async function test_preference_enabled_when_unlocked() {
await openPreferencesViaOpenPreferencesAPI("panePrivacy", {
leaveOpen: true,
});
testPrefStateMatchesLockedState();
});
add_task(async function test_preference_disabled_when_locked() {
Services.prefs.lockPref("privacy.sanitize.sanitizeOnShutdown");
await openPreferencesViaOpenPreferencesAPI("panePrivacy", {
leaveOpen: true,
});
testPrefStateMatchesLockedState();
});