53 lines
1.3 KiB
JavaScript
53 lines
1.3 KiB
JavaScript
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
|
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
"use strict";
|
|
|
|
const { AppConstants } = ChromeUtils.importESModule(
|
|
"resource://gre/modules/AppConstants.sys.mjs"
|
|
);
|
|
|
|
const { AppInfo, getTimeoutMultiplier } = ChromeUtils.importESModule(
|
|
"chrome://remote/content/shared/AppInfo.sys.mjs"
|
|
);
|
|
|
|
// Minimal xpcshell tests for AppInfo; Services.appinfo.* is not available
|
|
|
|
add_task(function test_custom_properties() {
|
|
const properties = [
|
|
// platforms
|
|
"isAndroid",
|
|
"isLinux",
|
|
"isMac",
|
|
"isWindows",
|
|
// applications
|
|
"isFirefox",
|
|
"isThunderbird",
|
|
];
|
|
|
|
for (const prop of properties) {
|
|
equal(
|
|
typeof AppInfo[prop],
|
|
"boolean",
|
|
`Custom property ${prop} has expected type`
|
|
);
|
|
}
|
|
});
|
|
|
|
add_task(function test_getTimeoutMultiplier() {
|
|
const message = "Timeout multiplier has expected value";
|
|
const timeoutMultiplier = getTimeoutMultiplier();
|
|
|
|
if (
|
|
AppConstants.DEBUG ||
|
|
AppConstants.MOZ_CODE_COVERAGE ||
|
|
AppConstants.ASAN
|
|
) {
|
|
equal(timeoutMultiplier, 4, message);
|
|
} else if (AppConstants.TSAN) {
|
|
equal(timeoutMultiplier, 8, message);
|
|
} else {
|
|
equal(timeoutMultiplier, 1, message);
|
|
}
|
|
});
|