Name Description Size
ausReadStrings.js Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ 914
backgroundUpdateTaskInternalUpdater.js This test ensures that we don't resume an update download with the internal downloader when we are running background updates. Normally, the background update task won't even run if we can't use BITS. But it is possible for us to fall back from BITS to the internal downloader. Background update should prevent this fallback and just abort. But interactive Firefox allows that fallback. And once the internal download has started, the background update task must leave that download untouched and allow it to finish. 3011
canCheckForAndCanApplyUpdates.js 2719
cleanupDownloading.js 5128
cleanupPendingVersionFileIncorrectStatus.js Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ 1798
cleanupSuccessLogMove.js 3441
cleanupSuccessLogsFIFO.js Creates the specified log files and makes sure that they are rotated properly when we successfully update and cleanup the old update files. We test various starting combinations of logs because we want to make sure that, for example, when "update.log" exists but "update-elevated.log" does not, that we still move "last-update-elevated.log" to "backup-update-elevated.log". Allowing the files to be mismatched makes them much less useful. When running this, either `createUpdateLog` or `createUpdateElevatedLog` should be `true` because otherwise it doesn't make sense that an update just ran successfully. @param createUpdateLog If `true`, "update.log" will be created at the start of the test. @param createLastUpdateLog If `true`, "last-update.log" will be created at the start of the test. @param createBackupUpdateLog If `true`, "backup-update.log" will be created at the start of the test. @param createUpdateElevatedLog If `true`, "update-elevated.log" will be created at the start of the test. @param createLastUpdateElevatedLog If `true`, "last-update-elevated.log" will be created at the start of the test. @param createBackupUpdateElevatedLog If `true`, "backup-update-elevated.log" will be created at the start of the test. 7610
disableBackgroundUpdatesBackgroundTask.js This test verifies that when Balrog advertises that an update should not be downloaded in the background, it is not. 1438
disableBackgroundUpdatesNonBackgroundTask.js This test verifies that when Balrog advertises that an update should not be downloaded in the background, but we are not running in the background, the advertisement does not have any effect. 810
downloadExtrasFirefox.js This tests that MAR update network requests include extras -- headers and query parameters -- identifying whether the request comes from a browsing Firefox or from a background task (the background update task). This test does some unusual things, compared to the other files in this directory. We want to start the updates with aus.checkForBackgroundUpdates() to ensure that we witness update XML requests (which should not have the additional headers). Other tests start update with things like aus.downloadUpdate(). Just like `multiUpdate.js`, in order to accomplish all this, we will be using app_update.sjs to serve updates XMLs and MARs. Outside of this test, this is really only done by browser-chrome mochitests (in ../browser). So we have to do some weird things to make it work properly in an xpcshell test. Things like defining URL_HTTP_UPDATE_SJS in testConstants.js so that it can be read by app_update.sjs in order to provide the correct download URL for MARs, but not reading that file here, because URL_HTTP_UPDATE_SJS is already defined (as something else) in xpcshellUtilsAUS.js. 4712
downloadExtrasNotFirefox.js This tests that MAR update network requests from a non-Firefox application DO NOT include extras -- headers and query parameters -- identifying whether the request comes from a browsing profile or a background task. 2303
downloadInterruptedNoRecovery.js 800
downloadInterruptedOffline.js 593
downloadInterruptedRecovery.js 853
downloadResumeForSameAppVersion.js 1234
ensureExperimentToRolloutTransitionPerformed.js 3813
head_update.js Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ 225
initWithPendingUpdate.js This test checks that when we start up with a pending update, we handle that situation correctly. This means cleaning it up only if it is invalid in some way and otherwise leaving it intact to be installed at the next startup. 2015
languagePackUpdates.js Returns a promise that will resolve when the add-ons manager attempts to stage langpack updates. The returned object contains the appVersion and platformVersion parameters as well as resolve and reject functions to complete the mocked langpack update. 7980
mixedUnsupported.js This tests that an older update is chosen over a more recent but unsupported update. 1544
multiSessionInstallLockout.js Test the Multi Session Install Lockout feature. This feature is meant to prevent an update from being installed at application startup if other instances are already running and a certain time window has not elapsed. Once the timer expires, updates will be installed as usual. 3830
multiUpdate.js This tests the multiple update downloads per Firefox session feature. This test does some unusual things, compared to the other files in this directory. We want to start the updates with aus.checkForBackgroundUpdates() to ensure that we test the whole flow. Other tests start update with things like aus.downloadUpdate(), but that bypasses some of the exact checks that we are trying to test as part of the multiupdate flow. In order to accomplish all this, we will be using app_update.sjs to serve updates XMLs and MARs. Outside of this test, this is really only done by browser-chrome mochitests (in ../browser). So we have to do some weird things to make it work properly in an xpcshell test. Things like defining URL_HTTP_UPDATE_SJS in testConstants.js so that it can be read by app_update.sjs in order to provide the correct download URL for MARs, but not reading that file here, because URL_HTTP_UPDATE_SJS is already defined (as something else) in xpcshellUtilsAUS.js. 10186
onlyDownloadUpdatesThisSession.js 1054
perInstallationPrefs.js 8886
remoteUpdateXML.js 10137
testConstants.js eslint-disable no-unused-vars 446
updateAutoPrefMigrate.js 2531
updateCheckCombine.js This test checks that multiple foreground update checks are combined into a single web request. 1253
updateDirectoryMigrate.js Gets the root directory for the old (unmigrated) updates directory. @return nsIFile for the updates root directory. 7911
updateEnabledTelemetry.js This test ensures that packaged installations don't send an `update.enabled` value of `true` in the telemetry environment. 1216
updateFailureFallBack.js 3279
updateManagerXML.js 16401
updateSyncManager.js Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ 2102
urlConstruction.js Application Update URL Construction Tests 918
xpcshell.toml 2530