blob: 9c0b810d310623f9c9e9f83cfce176917a4f730d (
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
|
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
// Here we are testing the "migration" from the isUS pref being false but when
// no country-code exists.
function run_test() {
installTestEngine();
// Set the pref we care about.
Services.prefs.setBoolPref("browser.search.isUS", false);
// And the geoip request that will return US.
Services.prefs.setCharPref("browser.search.geoip.url", 'data:application/json,{"country_code": "US"}');
Services.search.init(() => {
// "region" and countryCode should reflect US.
equal(Services.prefs.getCharPref("browser.search.region"), "US", "got the correct region.");
equal(Services.prefs.getCharPref("browser.search.countryCode"), "US", "got the correct country code.");
// check we have "success" recorded in telemetry
checkCountryResultTelemetry(TELEMETRY_RESULT_ENUM.SUCCESS);
// a false value for each of SEARCH_SERVICE_COUNTRY_TIMEOUT and SEARCH_SERVICE_COUNTRY_FETCH_CAUSED_SYNC_INIT
for (let hid of ["SEARCH_SERVICE_COUNTRY_TIMEOUT",
"SEARCH_SERVICE_COUNTRY_FETCH_CAUSED_SYNC_INIT"]) {
let histogram = Services.telemetry.getHistogramById(hid);
let snapshot = histogram.snapshot();
deepEqual(snapshot.counts, [1, 0, 0]); // boolean probe so 3 buckets, expect 1 result for |0|.
}
do_test_finished();
run_next_test();
});
do_test_pending();
}
|