fune/toolkit/components/backgroundtasks/tests/BackgroundTask_shouldprocessupdates.jsm
Nick Alexander d21d507036 Bug 1737117 - Only process updates only for --backgroundtask backgroundupdate. r=bytesized
The aim is to avoid background tasks causing unexpected updates, as
happened when we tried to migrate `pingsender` to a Gecko background
task in Bug 1734262.  This commit makes it so that we only process
updates for the `backgroundupdate` task (and the test-only
`shouldprocessupdates` task).

Differential Revision: https://phabricator.services.mozilla.com/D133557
2021-12-14 07:00:59 +00:00

33 lines
1 KiB
JavaScript

/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*-
* 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/. */
var EXPORTED_SYMBOLS = ["runBackgroundTask"];
async function runBackgroundTask(commandLine) {
var env = Cc["@mozilla.org/process/environment;1"].getService(
Ci.nsIEnvironment
);
const get = env.get("MOZ_TEST_PROCESS_UPDATES");
let exitCode = 81;
if (get == "ShouldNotProcessUpdates(): OtherInstanceRunning") {
exitCode = 80;
}
if (get == "ShouldNotProcessUpdates(): DevToolsLaunching") {
exitCode = 79;
}
if (get == "ShouldNotProcessUpdates(): NotAnUpdatingTask") {
exitCode = 78;
}
console.debug(`runBackgroundTask: shouldprocessupdates`, {
exists: env.exists("MOZ_TEST_PROCESS_UPDATES"),
get,
});
console.error(
`runBackgroundTask: shouldprocessupdates exiting with exitCode ${exitCode}`
);
return exitCode;
}