forked from mirrors/gecko-dev
55 lines
1.5 KiB
JavaScript
55 lines
1.5 KiB
JavaScript
"use strict";
|
|
|
|
const { AppConstants } = ChromeUtils.import(
|
|
"resource://gre/modules/AppConstants.jsm"
|
|
);
|
|
const { FirstStartup } = ChromeUtils.import(
|
|
"resource://gre/modules/FirstStartup.jsm"
|
|
);
|
|
const { updateAppInfo } = ChromeUtils.import(
|
|
"resource://testing-common/AppInfo.jsm"
|
|
);
|
|
|
|
const PREF_TIMEOUT = "first-startup.timeout";
|
|
const PROBE_NAME = "firstStartup.statusCode";
|
|
|
|
add_task(async function test_success() {
|
|
updateAppInfo();
|
|
FirstStartup.init();
|
|
if (AppConstants.MOZ_NORMANDY) {
|
|
equal(FirstStartup.state, FirstStartup.SUCCESS);
|
|
} else {
|
|
equal(FirstStartup.state, FirstStartup.UNSUPPORTED);
|
|
}
|
|
|
|
const scalars = Services.telemetry.getSnapshotForScalars("main", false)
|
|
.parent;
|
|
ok(PROBE_NAME in scalars);
|
|
|
|
if (AppConstants.MOZ_NORMANDY) {
|
|
equal(scalars[PROBE_NAME], FirstStartup.SUCCESS);
|
|
} else {
|
|
equal(scalars[PROBE_NAME], FirstStartup.UNSUPPORTED);
|
|
}
|
|
});
|
|
|
|
add_task(async function test_timeout() {
|
|
updateAppInfo();
|
|
Services.prefs.setIntPref(PREF_TIMEOUT, 0);
|
|
FirstStartup.init();
|
|
|
|
if (AppConstants.MOZ_NORMANDY) {
|
|
equal(FirstStartup.state, FirstStartup.TIMED_OUT);
|
|
} else {
|
|
equal(FirstStartup.state, FirstStartup.UNSUPPORTED);
|
|
}
|
|
|
|
const scalars = Services.telemetry.getSnapshotForScalars("main", false)
|
|
.parent;
|
|
ok(PROBE_NAME in scalars);
|
|
if (AppConstants.MOZ_NORMANDY) {
|
|
equal(scalars[PROBE_NAME], FirstStartup.TIMED_OUT);
|
|
} else {
|
|
equal(scalars[PROBE_NAME], FirstStartup.UNSUPPORTED);
|
|
}
|
|
});
|