1
0
Fork 0
firefox/toolkit/components/doh/test/browser/browser_dirtyEnable.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

55 lines
1.7 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/
*/
"use strict";
add_task(setup);
add_task(async function testDirtyEnable() {
// Set up a failing environment, pre-set DoH to enabled, and verify that
// when the add-on is enabled, it doesn't do anything - DoH remains turned on.
setFailingHeuristics();
let prefPromise = TestUtils.waitForPrefChange(prefs.DISABLED_PREF);
Preferences.set(prefs.NETWORK_TRR_MODE_PREF, 2);
Preferences.set(prefs.ENABLED_PREF, true);
await prefPromise;
is(
Preferences.get(prefs.DISABLED_PREF, false),
true,
"Disabled state recorded."
);
is(
Preferences.get(prefs.BREADCRUMB_PREF),
undefined,
"Breadcrumb not saved."
);
is(
Preferences.get(prefs.TRR_SELECT_URI_PREF),
undefined,
"TRR selection not performed."
);
is(Preferences.get(prefs.NETWORK_TRR_MODE_PREF), 2, "TRR mode preserved.");
ensureNoTRRSelectionTelemetry();
await ensureNoTRRModeChange(undefined);
ensureNoHeuristicsTelemetry();
// Simulate a network change.
simulateNetworkChange();
await ensureNoTRRModeChange(undefined);
ensureNoHeuristicsTelemetry();
is(Preferences.get(prefs.NETWORK_TRR_MODE_PREF), 2, "TRR mode preserved.");
// Restart the controller for good measure.
await restartDoHController();
await ensureNoTRRModeChange(undefined);
ensureNoTRRSelectionTelemetry();
ensureNoHeuristicsTelemetry();
is(Preferences.get(prefs.NETWORK_TRR_MODE_PREF), 2, "TRR mode preserved.");
// Simulate a network change.
simulateNetworkChange();
await ensureNoTRRModeChange(undefined);
is(Preferences.get(prefs.NETWORK_TRR_MODE_PREF), 2, "TRR mode preserved.");
ensureNoHeuristicsTelemetry();
});