Bug 1354850 - Use updater to run general app update service tests and remove gonk test code. r=mhowell, a=tests
authorRobert Strong <robert.bugzilla@gmail.com>
Wed, 03 May 2017 16:30:46 -0700
changeset 393799 40a36afd6f60931900d12226b4c4bd7a60e5a343
parent 393798 23228e9d57e3889086be72b6de5d50061abeb073
child 393800 b29bc19a99d5c4bfcab795e0b00437f2abeabcb5
push id7262
push userrstrong@mozilla.com
push dateWed, 03 May 2017 23:33:19 +0000
treeherdermozilla-beta@4969ec22e2b5 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmhowell, tests
bugs1354850
milestone54.0
Bug 1354850 - Use updater to run general app update service tests and remove gonk test code. r=mhowell, a=tests
toolkit/mozapps/update/tests/data/complete_log_success_gonk
toolkit/mozapps/update/tests/data/complete_log_success_gonk_stage
toolkit/mozapps/update/tests/data/partial_log_failure_gonk
toolkit/mozapps/update/tests/data/partial_log_success_gonk
toolkit/mozapps/update/tests/data/partial_log_success_gonk_stage
toolkit/mozapps/update/tests/data/xpcshellConstantsPP.js
toolkit/mozapps/update/tests/data/xpcshellUtilsAUS.js
toolkit/mozapps/update/tests/moz.build
toolkit/mozapps/update/tests/unit_aus_update/cleanupDownloadingForOlderAppVersion.js
toolkit/mozapps/update/tests/unit_aus_update/cleanupDownloadingForSameVersionAndBuildID.js
toolkit/mozapps/update/tests/unit_aus_update/downloadAndHashCheckMar.js
toolkit/mozapps/update/tests/unit_aus_update/downloadInterruptedRecovery.js
toolkit/mozapps/update/tests/unit_aus_update/downloadResumeForSameAppVersion.js
toolkit/mozapps/update/tests/unit_base_updater/marAppApplyDirLockedStageFailure_win.js
toolkit/mozapps/update/tests/unit_base_updater/marAppApplyUpdateAppBinInUseStageSuccess_win.js
toolkit/mozapps/update/tests/unit_base_updater/marAppApplyUpdateStageSuccess.js
toolkit/mozapps/update/tests/unit_base_updater/marAppInUseStageFailureComplete_win.js
toolkit/mozapps/update/tests/unit_base_updater/marAppInUseStageSuccessComplete_unix.js
toolkit/mozapps/update/tests/unit_base_updater/marCallbackAppStageSuccessComplete_win.js
toolkit/mozapps/update/tests/unit_base_updater/marCallbackAppStageSuccessPartial_win.js
toolkit/mozapps/update/tests/unit_base_updater/marFailurePartial.js
toolkit/mozapps/update/tests/unit_base_updater/marFileInUseStageFailureComplete_win.js
toolkit/mozapps/update/tests/unit_base_updater/marFileInUseStageFailurePartial_win.js
toolkit/mozapps/update/tests/unit_base_updater/marFileLockedStageFailureComplete_win.js
toolkit/mozapps/update/tests/unit_base_updater/marFileLockedStageFailurePartial_win.js
toolkit/mozapps/update/tests/unit_base_updater/marRMRFDirFileInUseStageFailureComplete_win.js
toolkit/mozapps/update/tests/unit_base_updater/marRMRFDirFileInUseStageFailurePartial_win.js
toolkit/mozapps/update/tests/unit_base_updater/marStageFailurePartial.js
toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessComplete.js
toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessPartial.js
toolkit/mozapps/update/tests/unit_base_updater/marVersionDowngrade.js
toolkit/mozapps/update/tests/unit_base_updater/marWrongApplyToDirFailure_win.js
toolkit/mozapps/update/tests/unit_base_updater/marWrongChannel.js
toolkit/mozapps/update/tests/unit_service_updater/bootstrapSvc.js
toolkit/mozapps/update/tests/unit_service_updater/marAppApplyDirLockedStageFailureSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marAppApplyUpdateAppBinInUseStageSuccessSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marAppApplyUpdateStageSuccessSvc.js
toolkit/mozapps/update/tests/unit_service_updater/marAppInUseStageFailureCompleteSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marCallbackAppStageSuccessCompleteSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marCallbackAppStageSuccessPartialSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marFailurePartialSvc.js
toolkit/mozapps/update/tests/unit_service_updater/marFileInUseStageFailureCompleteSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marFileInUseStageFailurePartialSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marFileLockedStageFailureCompleteSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marFileLockedStageFailurePartialSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marRMRFDirFileInUseStageFailureCompleteSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marRMRFDirFileInUseStageFailurePartialSvc_win.js
toolkit/mozapps/update/tests/unit_service_updater/marStageFailurePartialSvc.js
toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessCompleteSvc.js
toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessPartialSvc.js
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/data/complete_log_success_gonk
+++ /dev/null
@@ -1,320 +0,0 @@
-UPDATE TYPE complete
-PREPARE REMOVEFILE searchplugins/searchpluginstext0
-PREPARE REMOVEFILE searchplugins/searchpluginspng0.png
-PREPARE REMOVEFILE removed-files
-PREPARE REMOVEFILE precomplete
-PREPARE REMOVEFILE exe0.exe
-PREPARE REMOVEFILE 2/20/20text0
-PREPARE REMOVEFILE 2/20/20png0.png
-PREPARE REMOVEFILE 0/0exe0.exe
-PREPARE REMOVEFILE 0/00/00text0
-PREPARE REMOVEDIR searchplugins/
-PREPARE REMOVEDIR defaults/pref/
-PREPARE REMOVEDIR defaults/
-PREPARE REMOVEDIR 2/20/
-PREPARE REMOVEDIR 2/
-PREPARE REMOVEDIR 0/00/
-PREPARE REMOVEDIR 0/
-PREPARE ADD searchplugins/searchpluginstext0
-PREPARE ADD searchplugins/searchpluginspng1.png
-PREPARE ADD searchplugins/searchpluginspng0.png
-PREPARE ADD removed-files
-PREPARE ADD precomplete
-PREPARE ADD exe0.exe
-PREPARE ADD distribution/extensions/extensions1/extensions1text0
-PREPARE ADD distribution/extensions/extensions1/extensions1png1.png
-PREPARE ADD distribution/extensions/extensions1/extensions1png0.png
-PREPARE ADD distribution/extensions/extensions0/extensions0text0
-PREPARE ADD distribution/extensions/extensions0/extensions0png1.png
-PREPARE ADD distribution/extensions/extensions0/extensions0png0.png
-PREPARE ADD 1/10/10text0
-PREPARE ADD 0/0exe0.exe
-PREPARE ADD 0/00/00text1
-PREPARE ADD 0/00/00text0
-PREPARE ADD 0/00/00png0.png
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/98/
-PREPARE REMOVEFILE 9/97/971/97xtext1
-PREPARE REMOVEFILE 9/97/971/97xtext0
-PREPARE REMOVEDIR 9/97/971/
-PREPARE REMOVEFILE 9/97/970/97xtext1
-PREPARE REMOVEFILE 9/97/970/97xtext0
-PREPARE REMOVEDIR 9/97/970/
-PREPARE REMOVEDIR 9/97/
-PREPARE REMOVEFILE 9/96/96text1
-PREPARE REMOVEFILE 9/96/96text0
-PREPARE REMOVEDIR 9/96/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/93/
-PREPARE REMOVEDIR 9/92/
-PREPARE REMOVEDIR 9/91/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/88/
-PREPARE REMOVEFILE 8/87/871/87xtext1
-PREPARE REMOVEFILE 8/87/871/87xtext0
-PREPARE REMOVEDIR 8/87/871/
-PREPARE REMOVEFILE 8/87/870/87xtext1
-PREPARE REMOVEFILE 8/87/870/87xtext0
-PREPARE REMOVEDIR 8/87/870/
-PREPARE REMOVEDIR 8/87/
-PREPARE REMOVEFILE 8/86/86text1
-PREPARE REMOVEFILE 8/86/86text0
-PREPARE REMOVEDIR 8/86/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/83/
-PREPARE REMOVEDIR 8/82/
-PREPARE REMOVEDIR 8/81/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEFILE 7/71/7xtext1
-PREPARE REMOVEFILE 7/71/7xtext0
-PREPARE REMOVEFILE 7/71/7xtest.exe
-PREPARE REMOVEDIR 7/71/
-PREPARE REMOVEFILE 7/70/7xtext1
-PREPARE REMOVEFILE 7/70/7xtext0
-PREPARE REMOVEFILE 7/70/7xtest.exe
-PREPARE REMOVEDIR 7/70/
-PREPARE REMOVEFILE 7/7text1
-PREPARE REMOVEFILE 7/7text0
-PREPARE REMOVEDIR 7/
-PREPARE REMOVEDIR 6/
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5test.exe
-PREPARE REMOVEDIR 5/
-PREPARE REMOVEFILE 4/4text1
-PREPARE REMOVEFILE 4/4text0
-PREPARE REMOVEDIR 4/
-PREPARE REMOVEFILE 3/3text1
-PREPARE REMOVEFILE 3/3text0
-EXECUTE REMOVEFILE searchplugins/searchpluginstext0
-EXECUTE REMOVEFILE searchplugins/searchpluginspng0.png
-EXECUTE REMOVEFILE removed-files
-EXECUTE REMOVEFILE precomplete
-EXECUTE REMOVEFILE exe0.exe
-EXECUTE REMOVEFILE 2/20/20text0
-EXECUTE REMOVEFILE 2/20/20png0.png
-EXECUTE REMOVEFILE 0/0exe0.exe
-EXECUTE REMOVEFILE 0/00/00text0
-EXECUTE REMOVEDIR searchplugins/
-EXECUTE REMOVEDIR defaults/pref/
-EXECUTE REMOVEDIR defaults/
-EXECUTE REMOVEDIR 2/20/
-EXECUTE REMOVEDIR 2/
-EXECUTE REMOVEDIR 0/00/
-EXECUTE REMOVEDIR 0/
-EXECUTE ADD searchplugins/searchpluginstext0
-EXECUTE ADD searchplugins/searchpluginspng1.png
-EXECUTE ADD searchplugins/searchpluginspng0.png
-EXECUTE ADD removed-files
-EXECUTE ADD precomplete
-EXECUTE ADD exe0.exe
-EXECUTE ADD distribution/extensions/extensions1/extensions1text0
-EXECUTE ADD distribution/extensions/extensions1/extensions1png1.png
-EXECUTE ADD distribution/extensions/extensions1/extensions1png0.png
-EXECUTE ADD distribution/extensions/extensions0/extensions0text0
-EXECUTE ADD distribution/extensions/extensions0/extensions0png1.png
-EXECUTE ADD distribution/extensions/extensions0/extensions0png0.png
-EXECUTE ADD 1/10/10text0
-EXECUTE ADD 0/0exe0.exe
-EXECUTE ADD 0/00/00text1
-EXECUTE ADD 0/00/00text0
-EXECUTE ADD 0/00/00png0.png
-EXECUTE REMOVEDIR 9/99/
-EXECUTE REMOVEDIR 9/99/
-EXECUTE REMOVEDIR 9/98/
-EXECUTE REMOVEFILE 9/97/971/97xtext1
-EXECUTE REMOVEFILE 9/97/971/97xtext0
-EXECUTE REMOVEDIR 9/97/971/
-EXECUTE REMOVEFILE 9/97/970/97xtext1
-EXECUTE REMOVEFILE 9/97/970/97xtext0
-EXECUTE REMOVEDIR 9/97/970/
-EXECUTE REMOVEDIR 9/97/
-EXECUTE REMOVEFILE 9/96/96text1
-EXECUTE REMOVEFILE 9/96/96text0
-EXECUTE REMOVEDIR 9/96/
-EXECUTE REMOVEDIR 9/95/
-EXECUTE REMOVEDIR 9/95/
-EXECUTE REMOVEDIR 9/94/
-EXECUTE REMOVEDIR 9/94/
-EXECUTE REMOVEDIR 9/93/
-EXECUTE REMOVEDIR 9/92/
-EXECUTE REMOVEDIR 9/91/
-EXECUTE REMOVEDIR 9/90/
-EXECUTE REMOVEDIR 9/90/
-EXECUTE REMOVEDIR 8/89/
-EXECUTE REMOVEDIR 8/89/
-EXECUTE REMOVEDIR 8/88/
-EXECUTE REMOVEFILE 8/87/871/87xtext1
-EXECUTE REMOVEFILE 8/87/871/87xtext0
-EXECUTE REMOVEDIR 8/87/871/
-EXECUTE REMOVEFILE 8/87/870/87xtext1
-EXECUTE REMOVEFILE 8/87/870/87xtext0
-EXECUTE REMOVEDIR 8/87/870/
-EXECUTE REMOVEDIR 8/87/
-EXECUTE REMOVEFILE 8/86/86text1
-EXECUTE REMOVEFILE 8/86/86text0
-EXECUTE REMOVEDIR 8/86/
-EXECUTE REMOVEDIR 8/85/
-EXECUTE REMOVEDIR 8/85/
-EXECUTE REMOVEDIR 8/84/
-EXECUTE REMOVEDIR 8/84/
-EXECUTE REMOVEDIR 8/83/
-EXECUTE REMOVEDIR 8/82/
-EXECUTE REMOVEDIR 8/81/
-EXECUTE REMOVEDIR 8/80/
-EXECUTE REMOVEDIR 8/80/
-EXECUTE REMOVEFILE 7/71/7xtext1
-EXECUTE REMOVEFILE 7/71/7xtext0
-EXECUTE REMOVEFILE 7/71/7xtest.exe
-EXECUTE REMOVEDIR 7/71/
-EXECUTE REMOVEFILE 7/70/7xtext1
-EXECUTE REMOVEFILE 7/70/7xtext0
-EXECUTE REMOVEFILE 7/70/7xtest.exe
-EXECUTE REMOVEDIR 7/70/
-EXECUTE REMOVEFILE 7/7text1
-EXECUTE REMOVEFILE 7/7text0
-EXECUTE REMOVEDIR 7/
-EXECUTE REMOVEDIR 6/
-EXECUTE REMOVEFILE 5/5text1
-EXECUTE REMOVEFILE 5/5text0
-EXECUTE REMOVEFILE 5/5text1
-file cannot be removed because it does not exist; skipping
-EXECUTE REMOVEFILE 5/5text0
-file cannot be removed because it does not exist; skipping
-EXECUTE REMOVEFILE 5/5test.exe
-EXECUTE REMOVEDIR 5/
-EXECUTE REMOVEFILE 4/4text1
-EXECUTE REMOVEFILE 4/4text0
-EXECUTE REMOVEDIR 4/
-EXECUTE REMOVEFILE 3/3text1
-EXECUTE REMOVEFILE 3/3text0
-FINISH REMOVEFILE searchplugins/searchpluginstext0
-FINISH REMOVEFILE searchplugins/searchpluginspng0.png
-FINISH REMOVEFILE removed-files
-FINISH REMOVEFILE precomplete
-FINISH REMOVEFILE exe0.exe
-FINISH REMOVEFILE 2/20/20text0
-FINISH REMOVEFILE 2/20/20png0.png
-FINISH REMOVEFILE 0/0exe0.exe
-FINISH REMOVEFILE 0/00/00text0
-FINISH REMOVEDIR searchplugins/
-removing directory: searchplugins/, rv: 0
-FINISH REMOVEDIR defaults/pref/
-removing directory: defaults/pref/, rv: 0
-FINISH REMOVEDIR defaults/
-removing directory: defaults/, rv: 0
-FINISH REMOVEDIR 2/20/
-FINISH REMOVEDIR 2/
-FINISH REMOVEDIR 0/00/
-removing directory: 0/00/, rv: 0
-FINISH REMOVEDIR 0/
-removing directory: 0/, rv: 0
-FINISH ADD searchplugins/searchpluginstext0
-FINISH ADD searchplugins/searchpluginspng1.png
-FINISH ADD searchplugins/searchpluginspng0.png
-FINISH ADD removed-files
-FINISH ADD precomplete
-FINISH ADD exe0.exe
-FINISH ADD distribution/extensions/extensions1/extensions1text0
-FINISH ADD distribution/extensions/extensions1/extensions1png1.png
-FINISH ADD distribution/extensions/extensions1/extensions1png0.png
-FINISH ADD distribution/extensions/extensions0/extensions0text0
-FINISH ADD distribution/extensions/extensions0/extensions0png1.png
-FINISH ADD distribution/extensions/extensions0/extensions0png0.png
-FINISH ADD 1/10/10text0
-FINISH ADD 0/0exe0.exe
-FINISH ADD 0/00/00text1
-FINISH ADD 0/00/00text0
-FINISH ADD 0/00/00png0.png
-FINISH REMOVEDIR 9/99/
-FINISH REMOVEDIR 9/99/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/98/
-FINISH REMOVEFILE 9/97/971/97xtext1
-FINISH REMOVEFILE 9/97/971/97xtext0
-FINISH REMOVEDIR 9/97/971/
-FINISH REMOVEFILE 9/97/970/97xtext1
-FINISH REMOVEFILE 9/97/970/97xtext0
-FINISH REMOVEDIR 9/97/970/
-FINISH REMOVEDIR 9/97/
-FINISH REMOVEFILE 9/96/96text1
-FINISH REMOVEFILE 9/96/96text0
-FINISH REMOVEDIR 9/96/
-FINISH REMOVEDIR 9/95/
-FINISH REMOVEDIR 9/95/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/94/
-FINISH REMOVEDIR 9/94/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/93/
-FINISH REMOVEDIR 9/92/
-removing directory: 9/92/, rv: 0
-FINISH REMOVEDIR 9/91/
-removing directory: 9/91/, rv: 0
-FINISH REMOVEDIR 9/90/
-FINISH REMOVEDIR 9/90/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/89/
-FINISH REMOVEDIR 8/89/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/88/
-FINISH REMOVEFILE 8/87/871/87xtext1
-FINISH REMOVEFILE 8/87/871/87xtext0
-FINISH REMOVEDIR 8/87/871/
-FINISH REMOVEFILE 8/87/870/87xtext1
-FINISH REMOVEFILE 8/87/870/87xtext0
-FINISH REMOVEDIR 8/87/870/
-FINISH REMOVEDIR 8/87/
-FINISH REMOVEFILE 8/86/86text1
-FINISH REMOVEFILE 8/86/86text0
-FINISH REMOVEDIR 8/86/
-FINISH REMOVEDIR 8/85/
-FINISH REMOVEDIR 8/85/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/84/
-FINISH REMOVEDIR 8/84/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/83/
-FINISH REMOVEDIR 8/82/
-removing directory: 8/82/, rv: 0
-FINISH REMOVEDIR 8/81/
-removing directory: 8/81/, rv: 0
-FINISH REMOVEDIR 8/80/
-FINISH REMOVEDIR 8/80/
-directory no longer exists; skipping
-FINISH REMOVEFILE 7/71/7xtext1
-FINISH REMOVEFILE 7/71/7xtext0
-FINISH REMOVEFILE 7/71/7xtest.exe
-FINISH REMOVEDIR 7/71/
-FINISH REMOVEFILE 7/70/7xtext1
-FINISH REMOVEFILE 7/70/7xtext0
-FINISH REMOVEFILE 7/70/7xtest.exe
-FINISH REMOVEDIR 7/70/
-FINISH REMOVEFILE 7/7text1
-FINISH REMOVEFILE 7/7text0
-FINISH REMOVEDIR 7/
-FINISH REMOVEDIR 6/
-FINISH REMOVEFILE 5/5text1
-FINISH REMOVEFILE 5/5text0
-FINISH REMOVEFILE 5/5test.exe
-FINISH REMOVEDIR 5/
-FINISH REMOVEFILE 4/4text1
-FINISH REMOVEFILE 4/4text0
-FINISH REMOVEDIR 4/
-FINISH REMOVEFILE 3/3text1
-FINISH REMOVEFILE 3/3text0
-succeeded
-calling QuitProgressUI
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/data/complete_log_success_gonk_stage
+++ /dev/null
@@ -1,320 +0,0 @@
-UPDATE TYPE complete
-PREPARE REMOVEFILE searchplugins/searchpluginstext0
-PREPARE REMOVEFILE searchplugins/searchpluginspng0.png
-PREPARE REMOVEFILE removed-files
-PREPARE REMOVEFILE precomplete
-PREPARE REMOVEFILE exe0.exe
-PREPARE REMOVEFILE 2/20/20text0
-PREPARE REMOVEFILE 2/20/20png0.png
-PREPARE REMOVEFILE 0/0exe0.exe
-PREPARE REMOVEFILE 0/00/00text0
-PREPARE REMOVEDIR searchplugins/
-PREPARE REMOVEDIR defaults/pref/
-PREPARE REMOVEDIR defaults/
-PREPARE REMOVEDIR 2/20/
-PREPARE REMOVEDIR 2/
-PREPARE REMOVEDIR 0/00/
-PREPARE REMOVEDIR 0/
-PREPARE ADD searchplugins/searchpluginstext0
-PREPARE ADD searchplugins/searchpluginspng1.png
-PREPARE ADD searchplugins/searchpluginspng0.png
-PREPARE ADD removed-files
-PREPARE ADD precomplete
-PREPARE ADD exe0.exe
-PREPARE ADD distribution/extensions/extensions1/extensions1text0
-PREPARE ADD distribution/extensions/extensions1/extensions1png1.png
-PREPARE ADD distribution/extensions/extensions1/extensions1png0.png
-PREPARE ADD distribution/extensions/extensions0/extensions0text0
-PREPARE ADD distribution/extensions/extensions0/extensions0png1.png
-PREPARE ADD distribution/extensions/extensions0/extensions0png0.png
-PREPARE ADD 1/10/10text0
-PREPARE ADD 0/0exe0.exe
-PREPARE ADD 0/00/00text1
-PREPARE ADD 0/00/00text0
-PREPARE ADD 0/00/00png0.png
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/98/
-PREPARE REMOVEFILE 9/97/970/97xtext0
-PREPARE REMOVEFILE 9/97/970/97xtext1
-PREPARE REMOVEDIR 9/97/970/
-PREPARE REMOVEFILE 9/97/971/97xtext0
-PREPARE REMOVEFILE 9/97/971/97xtext1
-PREPARE REMOVEDIR 9/97/971/
-PREPARE REMOVEDIR 9/97/
-PREPARE REMOVEFILE 9/96/96text0
-PREPARE REMOVEFILE 9/96/96text1
-PREPARE REMOVEDIR 9/96/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/93/
-PREPARE REMOVEDIR 9/92/
-PREPARE REMOVEDIR 9/91/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/88/
-PREPARE REMOVEFILE 8/87/870/87xtext0
-PREPARE REMOVEFILE 8/87/870/87xtext1
-PREPARE REMOVEDIR 8/87/870/
-PREPARE REMOVEFILE 8/87/871/87xtext0
-PREPARE REMOVEFILE 8/87/871/87xtext1
-PREPARE REMOVEDIR 8/87/871/
-PREPARE REMOVEDIR 8/87/
-PREPARE REMOVEFILE 8/86/86text0
-PREPARE REMOVEFILE 8/86/86text1
-PREPARE REMOVEDIR 8/86/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/83/
-PREPARE REMOVEDIR 8/82/
-PREPARE REMOVEDIR 8/81/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEFILE 7/7text0
-PREPARE REMOVEFILE 7/7text1
-PREPARE REMOVEFILE 7/70/7xtest.exe
-PREPARE REMOVEFILE 7/70/7xtext0
-PREPARE REMOVEFILE 7/70/7xtext1
-PREPARE REMOVEDIR 7/70/
-PREPARE REMOVEFILE 7/71/7xtest.exe
-PREPARE REMOVEFILE 7/71/7xtext0
-PREPARE REMOVEFILE 7/71/7xtext1
-PREPARE REMOVEDIR 7/71/
-PREPARE REMOVEDIR 7/
-PREPARE REMOVEDIR 6/
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5test.exe
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEDIR 5/
-PREPARE REMOVEFILE 4/4text1
-PREPARE REMOVEFILE 4/4text0
-PREPARE REMOVEDIR 4/
-PREPARE REMOVEFILE 3/3text1
-PREPARE REMOVEFILE 3/3text0
-EXECUTE REMOVEFILE searchplugins/searchpluginstext0
-EXECUTE REMOVEFILE searchplugins/searchpluginspng0.png
-EXECUTE REMOVEFILE removed-files
-EXECUTE REMOVEFILE precomplete
-EXECUTE REMOVEFILE exe0.exe
-EXECUTE REMOVEFILE 2/20/20text0
-EXECUTE REMOVEFILE 2/20/20png0.png
-EXECUTE REMOVEFILE 0/0exe0.exe
-EXECUTE REMOVEFILE 0/00/00text0
-EXECUTE REMOVEDIR searchplugins/
-EXECUTE REMOVEDIR defaults/pref/
-EXECUTE REMOVEDIR defaults/
-EXECUTE REMOVEDIR 2/20/
-EXECUTE REMOVEDIR 2/
-EXECUTE REMOVEDIR 0/00/
-EXECUTE REMOVEDIR 0/
-EXECUTE ADD searchplugins/searchpluginstext0
-EXECUTE ADD searchplugins/searchpluginspng1.png
-EXECUTE ADD searchplugins/searchpluginspng0.png
-EXECUTE ADD removed-files
-EXECUTE ADD precomplete
-EXECUTE ADD exe0.exe
-EXECUTE ADD distribution/extensions/extensions1/extensions1text0
-EXECUTE ADD distribution/extensions/extensions1/extensions1png1.png
-EXECUTE ADD distribution/extensions/extensions1/extensions1png0.png
-EXECUTE ADD distribution/extensions/extensions0/extensions0text0
-EXECUTE ADD distribution/extensions/extensions0/extensions0png1.png
-EXECUTE ADD distribution/extensions/extensions0/extensions0png0.png
-EXECUTE ADD 1/10/10text0
-EXECUTE ADD 0/0exe0.exe
-EXECUTE ADD 0/00/00text1
-EXECUTE ADD 0/00/00text0
-EXECUTE ADD 0/00/00png0.png
-EXECUTE REMOVEDIR 9/99/
-EXECUTE REMOVEDIR 9/99/
-EXECUTE REMOVEDIR 9/98/
-EXECUTE REMOVEFILE 9/97/970/97xtext0
-EXECUTE REMOVEFILE 9/97/970/97xtext1
-EXECUTE REMOVEDIR 9/97/970/
-EXECUTE REMOVEFILE 9/97/971/97xtext0
-EXECUTE REMOVEFILE 9/97/971/97xtext1
-EXECUTE REMOVEDIR 9/97/971/
-EXECUTE REMOVEDIR 9/97/
-EXECUTE REMOVEFILE 9/96/96text0
-EXECUTE REMOVEFILE 9/96/96text1
-EXECUTE REMOVEDIR 9/96/
-EXECUTE REMOVEDIR 9/95/
-EXECUTE REMOVEDIR 9/95/
-EXECUTE REMOVEDIR 9/94/
-EXECUTE REMOVEDIR 9/94/
-EXECUTE REMOVEDIR 9/93/
-EXECUTE REMOVEDIR 9/92/
-EXECUTE REMOVEDIR 9/91/
-EXECUTE REMOVEDIR 9/90/
-EXECUTE REMOVEDIR 9/90/
-EXECUTE REMOVEDIR 8/89/
-EXECUTE REMOVEDIR 8/89/
-EXECUTE REMOVEDIR 8/88/
-EXECUTE REMOVEFILE 8/87/870/87xtext0
-EXECUTE REMOVEFILE 8/87/870/87xtext1
-EXECUTE REMOVEDIR 8/87/870/
-EXECUTE REMOVEFILE 8/87/871/87xtext0
-EXECUTE REMOVEFILE 8/87/871/87xtext1
-EXECUTE REMOVEDIR 8/87/871/
-EXECUTE REMOVEDIR 8/87/
-EXECUTE REMOVEFILE 8/86/86text0
-EXECUTE REMOVEFILE 8/86/86text1
-EXECUTE REMOVEDIR 8/86/
-EXECUTE REMOVEDIR 8/85/
-EXECUTE REMOVEDIR 8/85/
-EXECUTE REMOVEDIR 8/84/
-EXECUTE REMOVEDIR 8/84/
-EXECUTE REMOVEDIR 8/83/
-EXECUTE REMOVEDIR 8/82/
-EXECUTE REMOVEDIR 8/81/
-EXECUTE REMOVEDIR 8/80/
-EXECUTE REMOVEDIR 8/80/
-EXECUTE REMOVEFILE 7/7text0
-EXECUTE REMOVEFILE 7/7text1
-EXECUTE REMOVEFILE 7/70/7xtest.exe
-EXECUTE REMOVEFILE 7/70/7xtext0
-EXECUTE REMOVEFILE 7/70/7xtext1
-EXECUTE REMOVEDIR 7/70/
-EXECUTE REMOVEFILE 7/71/7xtest.exe
-EXECUTE REMOVEFILE 7/71/7xtext0
-EXECUTE REMOVEFILE 7/71/7xtext1
-EXECUTE REMOVEDIR 7/71/
-EXECUTE REMOVEDIR 7/
-EXECUTE REMOVEDIR 6/
-EXECUTE REMOVEFILE 5/5text1
-EXECUTE REMOVEFILE 5/5text0
-EXECUTE REMOVEFILE 5/5test.exe
-EXECUTE REMOVEFILE 5/5text0
-file cannot be removed because it does not exist; skipping
-EXECUTE REMOVEFILE 5/5text1
-file cannot be removed because it does not exist; skipping
-EXECUTE REMOVEDIR 5/
-EXECUTE REMOVEFILE 4/4text1
-EXECUTE REMOVEFILE 4/4text0
-EXECUTE REMOVEDIR 4/
-EXECUTE REMOVEFILE 3/3text1
-EXECUTE REMOVEFILE 3/3text0
-FINISH REMOVEFILE searchplugins/searchpluginstext0
-FINISH REMOVEFILE searchplugins/searchpluginspng0.png
-FINISH REMOVEFILE removed-files
-FINISH REMOVEFILE precomplete
-FINISH REMOVEFILE exe0.exe
-FINISH REMOVEFILE 2/20/20text0
-FINISH REMOVEFILE 2/20/20png0.png
-FINISH REMOVEFILE 0/0exe0.exe
-FINISH REMOVEFILE 0/00/00text0
-FINISH REMOVEDIR searchplugins/
-removing directory: searchplugins/, rv: 0
-FINISH REMOVEDIR defaults/pref/
-removing directory: defaults/pref/, rv: 0
-FINISH REMOVEDIR defaults/
-removing directory: defaults/, rv: 0
-FINISH REMOVEDIR 2/20/
-FINISH REMOVEDIR 2/
-FINISH REMOVEDIR 0/00/
-removing directory: 0/00/, rv: 0
-FINISH REMOVEDIR 0/
-removing directory: 0/, rv: 0
-FINISH ADD searchplugins/searchpluginstext0
-FINISH ADD searchplugins/searchpluginspng1.png
-FINISH ADD searchplugins/searchpluginspng0.png
-FINISH ADD removed-files
-FINISH ADD precomplete
-FINISH ADD exe0.exe
-FINISH ADD distribution/extensions/extensions1/extensions1text0
-FINISH ADD distribution/extensions/extensions1/extensions1png1.png
-FINISH ADD distribution/extensions/extensions1/extensions1png0.png
-FINISH ADD distribution/extensions/extensions0/extensions0text0
-FINISH ADD distribution/extensions/extensions0/extensions0png1.png
-FINISH ADD distribution/extensions/extensions0/extensions0png0.png
-FINISH ADD 1/10/10text0
-FINISH ADD 0/0exe0.exe
-FINISH ADD 0/00/00text1
-FINISH ADD 0/00/00text0
-FINISH ADD 0/00/00png0.png
-FINISH REMOVEDIR 9/99/
-FINISH REMOVEDIR 9/99/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/98/
-FINISH REMOVEFILE 9/97/970/97xtext0
-FINISH REMOVEFILE 9/97/970/97xtext1
-FINISH REMOVEDIR 9/97/970/
-FINISH REMOVEFILE 9/97/971/97xtext0
-FINISH REMOVEFILE 9/97/971/97xtext1
-FINISH REMOVEDIR 9/97/971/
-FINISH REMOVEDIR 9/97/
-FINISH REMOVEFILE 9/96/96text0
-FINISH REMOVEFILE 9/96/96text1
-FINISH REMOVEDIR 9/96/
-FINISH REMOVEDIR 9/95/
-FINISH REMOVEDIR 9/95/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/94/
-FINISH REMOVEDIR 9/94/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/93/
-FINISH REMOVEDIR 9/92/
-removing directory: 9/92/, rv: 0
-FINISH REMOVEDIR 9/91/
-removing directory: 9/91/, rv: 0
-FINISH REMOVEDIR 9/90/
-FINISH REMOVEDIR 9/90/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/89/
-FINISH REMOVEDIR 8/89/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/88/
-FINISH REMOVEFILE 8/87/870/87xtext0
-FINISH REMOVEFILE 8/87/870/87xtext1
-FINISH REMOVEDIR 8/87/870/
-FINISH REMOVEFILE 8/87/871/87xtext0
-FINISH REMOVEFILE 8/87/871/87xtext1
-FINISH REMOVEDIR 8/87/871/
-FINISH REMOVEDIR 8/87/
-FINISH REMOVEFILE 8/86/86text0
-FINISH REMOVEFILE 8/86/86text1
-FINISH REMOVEDIR 8/86/
-FINISH REMOVEDIR 8/85/
-FINISH REMOVEDIR 8/85/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/84/
-FINISH REMOVEDIR 8/84/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/83/
-FINISH REMOVEDIR 8/82/
-removing directory: 8/82/, rv: 0
-FINISH REMOVEDIR 8/81/
-removing directory: 8/81/, rv: 0
-FINISH REMOVEDIR 8/80/
-FINISH REMOVEDIR 8/80/
-directory no longer exists; skipping
-FINISH REMOVEFILE 7/7text0
-FINISH REMOVEFILE 7/7text1
-FINISH REMOVEFILE 7/70/7xtest.exe
-FINISH REMOVEFILE 7/70/7xtext0
-FINISH REMOVEFILE 7/70/7xtext1
-FINISH REMOVEDIR 7/70/
-FINISH REMOVEFILE 7/71/7xtest.exe
-FINISH REMOVEFILE 7/71/7xtext0
-FINISH REMOVEFILE 7/71/7xtext1
-FINISH REMOVEDIR 7/71/
-FINISH REMOVEDIR 7/
-FINISH REMOVEDIR 6/
-FINISH REMOVEFILE 5/5text1
-FINISH REMOVEFILE 5/5text0
-FINISH REMOVEFILE 5/5test.exe
-FINISH REMOVEDIR 5/
-FINISH REMOVEFILE 4/4text1
-FINISH REMOVEFILE 4/4text0
-FINISH REMOVEDIR 4/
-FINISH REMOVEFILE 3/3text1
-FINISH REMOVEFILE 3/3text0
-succeeded
-calling QuitProgressUI
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/data/partial_log_failure_gonk
+++ /dev/null
@@ -1,192 +0,0 @@
-UPDATE TYPE partial
-PREPARE ADD searchplugins/searchpluginstext0
-PREPARE PATCH searchplugins/searchpluginspng1.png
-PREPARE PATCH searchplugins/searchpluginspng0.png
-PREPARE ADD precomplete
-PREPARE PATCH exe0.exe
-PREPARE ADD distribution/extensions/extensions1/extensions1text0
-PREPARE PATCH distribution/extensions/extensions1/extensions1png1.png
-PREPARE PATCH distribution/extensions/extensions1/extensions1png0.png
-PREPARE ADD distribution/extensions/extensions0/extensions0text0
-PREPARE PATCH distribution/extensions/extensions0/extensions0png1.png
-PREPARE PATCH distribution/extensions/extensions0/extensions0png0.png
-PREPARE PATCH 0/0exe0.exe
-PREPARE ADD 0/00/00text0
-PREPARE PATCH 0/00/00png0.png
-PREPARE ADD 2/20/20text0
-PREPARE ADD 2/20/20png0.png
-PREPARE ADD 0/00/00text2
-PREPARE REMOVEFILE 1/10/10text0
-PREPARE REMOVEFILE 0/00/00text1
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/98/
-PREPARE REMOVEFILE 9/97/971/97xtext1
-PREPARE REMOVEFILE 9/97/971/97xtext0
-PREPARE REMOVEDIR 9/97/971/
-PREPARE REMOVEFILE 9/97/970/97xtext1
-PREPARE REMOVEFILE 9/97/970/97xtext0
-PREPARE REMOVEDIR 9/97/970/
-PREPARE REMOVEDIR 9/97/
-PREPARE REMOVEFILE 9/96/96text1
-PREPARE REMOVEFILE 9/96/96text0
-PREPARE REMOVEDIR 9/96/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/93/
-PREPARE REMOVEDIR 9/92/
-PREPARE REMOVEDIR 9/91/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/88/
-PREPARE REMOVEFILE 8/87/871/87xtext1
-PREPARE REMOVEFILE 8/87/871/87xtext0
-PREPARE REMOVEDIR 8/87/871/
-PREPARE REMOVEFILE 8/87/870/87xtext1
-PREPARE REMOVEFILE 8/87/870/87xtext0
-PREPARE REMOVEDIR 8/87/870/
-PREPARE REMOVEDIR 8/87/
-PREPARE REMOVEFILE 8/86/86text1
-PREPARE REMOVEFILE 8/86/86text0
-PREPARE REMOVEDIR 8/86/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/83/
-PREPARE REMOVEDIR 8/82/
-PREPARE REMOVEDIR 8/81/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEFILE 7/71/7xtext1
-PREPARE REMOVEFILE 7/71/7xtext0
-PREPARE REMOVEFILE 7/71/7xtest.exe
-PREPARE REMOVEDIR 7/71/
-PREPARE REMOVEFILE 7/70/7xtext1
-PREPARE REMOVEFILE 7/70/7xtext0
-PREPARE REMOVEFILE 7/70/7xtest.exe
-PREPARE REMOVEDIR 7/70/
-PREPARE REMOVEFILE 7/7text1
-PREPARE REMOVEFILE 7/7text0
-PREPARE REMOVEDIR 7/
-PREPARE REMOVEDIR 6/
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5test.exe
-PREPARE REMOVEDIR 5/
-PREPARE REMOVEFILE 4/4text1
-PREPARE REMOVEFILE 4/4text0
-PREPARE REMOVEDIR 4/
-PREPARE REMOVEFILE 3/3text1
-PREPARE REMOVEFILE 3/3text0
-PREPARE REMOVEDIR 1/10/
-PREPARE REMOVEDIR 1/
-EXECUTE ADD searchplugins/searchpluginstext0
-EXECUTE PATCH searchplugins/searchpluginspng1.png
-EXECUTE PATCH searchplugins/searchpluginspng0.png
-EXECUTE ADD precomplete
-EXECUTE PATCH exe0.exe
-EXECUTE ADD distribution/extensions/extensions1/extensions1text0
-EXECUTE PATCH distribution/extensions/extensions1/extensions1png1.png
-EXECUTE PATCH distribution/extensions/extensions1/extensions1png0.png
-EXECUTE ADD distribution/extensions/extensions0/extensions0text0
-EXECUTE PATCH distribution/extensions/extensions0/extensions0png1.png
-EXECUTE PATCH distribution/extensions/extensions0/extensions0png0.png
-EXECUTE PATCH 0/0exe0.exe
-LoadSourceFile: destination file size 776 does not match expected size 79872
-LoadSourceFile failed
-### execution failed
-FINISH ADD searchplugins/searchpluginstext0
-FINISH PATCH searchplugins/searchpluginspng1.png
-FINISH PATCH searchplugins/searchpluginspng0.png
-FINISH ADD precomplete
-FINISH PATCH exe0.exe
-FINISH ADD distribution/extensions/extensions1/extensions1text0
-backup_restore: backup file doesn't exist: distribution/extensions/extensions1/extensions1text0.moz-backup
-FINISH PATCH distribution/extensions/extensions1/extensions1png1.png
-FINISH PATCH distribution/extensions/extensions1/extensions1png0.png
-FINISH ADD distribution/extensions/extensions0/extensions0text0
-FINISH PATCH distribution/extensions/extensions0/extensions0png1.png
-FINISH PATCH distribution/extensions/extensions0/extensions0png0.png
-FINISH PATCH 0/0exe0.exe
-backup_restore: backup file doesn't exist: 0/0exe0.exe.moz-backup
-FINISH ADD 0/00/00text0
-backup_restore: backup file doesn't exist: 0/00/00text0.moz-backup
-FINISH PATCH 0/00/00png0.png
-backup_restore: backup file doesn't exist: 0/00/00png0.png.moz-backup
-FINISH ADD 2/20/20text0
-backup_restore: backup file doesn't exist: 2/20/20text0.moz-backup
-FINISH ADD 2/20/20png0.png
-backup_restore: backup file doesn't exist: 2/20/20png0.png.moz-backup
-FINISH ADD 0/00/00text2
-backup_restore: backup file doesn't exist: 0/00/00text2.moz-backup
-FINISH REMOVEFILE 1/10/10text0
-backup_restore: backup file doesn't exist: 1/10/10text0.moz-backup
-FINISH REMOVEFILE 0/00/00text1
-backup_restore: backup file doesn't exist: 0/00/00text1.moz-backup
-FINISH REMOVEFILE 9/97/971/97xtext1
-backup_restore: backup file doesn't exist: 9/97/971/97xtext1.moz-backup
-FINISH REMOVEFILE 9/97/971/97xtext0
-backup_restore: backup file doesn't exist: 9/97/971/97xtext0.moz-backup
-FINISH REMOVEFILE 9/97/970/97xtext1
-backup_restore: backup file doesn't exist: 9/97/970/97xtext1.moz-backup
-FINISH REMOVEFILE 9/97/970/97xtext0
-backup_restore: backup file doesn't exist: 9/97/970/97xtext0.moz-backup
-FINISH REMOVEFILE 9/96/96text1
-backup_restore: backup file doesn't exist: 9/96/96text1.moz-backup
-FINISH REMOVEFILE 9/96/96text0
-backup_restore: backup file doesn't exist: 9/96/96text0.moz-backup
-FINISH REMOVEFILE 8/87/871/87xtext1
-backup_restore: backup file doesn't exist: 8/87/871/87xtext1.moz-backup
-FINISH REMOVEFILE 8/87/871/87xtext0
-backup_restore: backup file doesn't exist: 8/87/871/87xtext0.moz-backup
-FINISH REMOVEFILE 8/87/870/87xtext1
-backup_restore: backup file doesn't exist: 8/87/870/87xtext1.moz-backup
-FINISH REMOVEFILE 8/87/870/87xtext0
-backup_restore: backup file doesn't exist: 8/87/870/87xtext0.moz-backup
-FINISH REMOVEFILE 8/86/86text1
-backup_restore: backup file doesn't exist: 8/86/86text1.moz-backup
-FINISH REMOVEFILE 8/86/86text0
-backup_restore: backup file doesn't exist: 8/86/86text0.moz-backup
-FINISH REMOVEFILE 7/71/7xtext1
-backup_restore: backup file doesn't exist: 7/71/7xtext1.moz-backup
-FINISH REMOVEFILE 7/71/7xtext0
-backup_restore: backup file doesn't exist: 7/71/7xtext0.moz-backup
-FINISH REMOVEFILE 7/71/7xtest.exe
-backup_restore: backup file doesn't exist: 7/71/7xtest.exe.moz-backup
-FINISH REMOVEFILE 7/70/7xtext1
-backup_restore: backup file doesn't exist: 7/70/7xtext1.moz-backup
-FINISH REMOVEFILE 7/70/7xtext0
-backup_restore: backup file doesn't exist: 7/70/7xtext0.moz-backup
-FINISH REMOVEFILE 7/70/7xtest.exe
-backup_restore: backup file doesn't exist: 7/70/7xtest.exe.moz-backup
-FINISH REMOVEFILE 7/7text1
-backup_restore: backup file doesn't exist: 7/7text1.moz-backup
-FINISH REMOVEFILE 7/7text0
-backup_restore: backup file doesn't exist: 7/7text0.moz-backup
-FINISH REMOVEFILE 5/5text1
-backup_restore: backup file doesn't exist: 5/5text1.moz-backup
-FINISH REMOVEFILE 5/5text0
-backup_restore: backup file doesn't exist: 5/5text0.moz-backup
-FINISH REMOVEFILE 5/5text1
-backup_restore: backup file doesn't exist: 5/5text1.moz-backup
-FINISH REMOVEFILE 5/5text0
-backup_restore: backup file doesn't exist: 5/5text0.moz-backup
-FINISH REMOVEFILE 5/5test.exe
-backup_restore: backup file doesn't exist: 5/5test.exe.moz-backup
-FINISH REMOVEFILE 4/4text1
-backup_restore: backup file doesn't exist: 4/4text1.moz-backup
-FINISH REMOVEFILE 4/4text0
-backup_restore: backup file doesn't exist: 4/4text0.moz-backup
-FINISH REMOVEFILE 3/3text1
-backup_restore: backup file doesn't exist: 3/3text1.moz-backup
-FINISH REMOVEFILE 3/3text0
-backup_restore: backup file doesn't exist: 3/3text0.moz-backup
-failed: 2
-calling QuitProgressUI
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/data/partial_log_success_gonk
+++ /dev/null
@@ -1,279 +0,0 @@
-UPDATE TYPE partial
-PREPARE ADD searchplugins/searchpluginstext0
-PREPARE PATCH searchplugins/searchpluginspng1.png
-PREPARE PATCH searchplugins/searchpluginspng0.png
-PREPARE ADD precomplete
-PREPARE PATCH exe0.exe
-PREPARE ADD distribution/extensions/extensions1/extensions1text0
-PREPARE PATCH distribution/extensions/extensions1/extensions1png1.png
-PREPARE PATCH distribution/extensions/extensions1/extensions1png0.png
-PREPARE ADD distribution/extensions/extensions0/extensions0text0
-PREPARE PATCH distribution/extensions/extensions0/extensions0png1.png
-PREPARE PATCH distribution/extensions/extensions0/extensions0png0.png
-PREPARE PATCH 0/0exe0.exe
-PREPARE ADD 0/00/00text0
-PREPARE PATCH 0/00/00png0.png
-PREPARE ADD 2/20/20text0
-PREPARE ADD 2/20/20png0.png
-PREPARE ADD 0/00/00text2
-PREPARE REMOVEFILE 1/10/10text0
-PREPARE REMOVEFILE 0/00/00text1
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/98/
-PREPARE REMOVEFILE 9/97/971/97xtext1
-PREPARE REMOVEFILE 9/97/971/97xtext0
-PREPARE REMOVEDIR 9/97/971/
-PREPARE REMOVEFILE 9/97/970/97xtext1
-PREPARE REMOVEFILE 9/97/970/97xtext0
-PREPARE REMOVEDIR 9/97/970/
-PREPARE REMOVEDIR 9/97/
-PREPARE REMOVEFILE 9/96/96text1
-PREPARE REMOVEFILE 9/96/96text0
-PREPARE REMOVEDIR 9/96/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/93/
-PREPARE REMOVEDIR 9/92/
-PREPARE REMOVEDIR 9/91/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/88/
-PREPARE REMOVEFILE 8/87/871/87xtext1
-PREPARE REMOVEFILE 8/87/871/87xtext0
-PREPARE REMOVEDIR 8/87/871/
-PREPARE REMOVEFILE 8/87/870/87xtext1
-PREPARE REMOVEFILE 8/87/870/87xtext0
-PREPARE REMOVEDIR 8/87/870/
-PREPARE REMOVEDIR 8/87/
-PREPARE REMOVEFILE 8/86/86text1
-PREPARE REMOVEFILE 8/86/86text0
-PREPARE REMOVEDIR 8/86/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/83/
-PREPARE REMOVEDIR 8/82/
-PREPARE REMOVEDIR 8/81/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEFILE 7/71/7xtext1
-PREPARE REMOVEFILE 7/71/7xtext0
-PREPARE REMOVEFILE 7/71/7xtest.exe
-PREPARE REMOVEDIR 7/71/
-PREPARE REMOVEFILE 7/70/7xtext1
-PREPARE REMOVEFILE 7/70/7xtext0
-PREPARE REMOVEFILE 7/70/7xtest.exe
-PREPARE REMOVEDIR 7/70/
-PREPARE REMOVEFILE 7/7text1
-PREPARE REMOVEFILE 7/7text0
-PREPARE REMOVEDIR 7/
-PREPARE REMOVEDIR 6/
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5test.exe
-PREPARE REMOVEDIR 5/
-PREPARE REMOVEFILE 4/4text1
-PREPARE REMOVEFILE 4/4text0
-PREPARE REMOVEDIR 4/
-PREPARE REMOVEFILE 3/3text1
-PREPARE REMOVEFILE 3/3text0
-PREPARE REMOVEDIR 1/10/
-PREPARE REMOVEDIR 1/
-EXECUTE ADD searchplugins/searchpluginstext0
-EXECUTE PATCH searchplugins/searchpluginspng1.png
-EXECUTE PATCH searchplugins/searchpluginspng0.png
-EXECUTE ADD precomplete
-EXECUTE PATCH exe0.exe
-EXECUTE ADD distribution/extensions/extensions1/extensions1text0
-EXECUTE PATCH distribution/extensions/extensions1/extensions1png1.png
-EXECUTE PATCH distribution/extensions/extensions1/extensions1png0.png
-EXECUTE ADD distribution/extensions/extensions0/extensions0text0
-EXECUTE PATCH distribution/extensions/extensions0/extensions0png1.png
-EXECUTE PATCH distribution/extensions/extensions0/extensions0png0.png
-EXECUTE PATCH 0/0exe0.exe
-EXECUTE ADD 0/00/00text0
-EXECUTE PATCH 0/00/00png0.png
-EXECUTE ADD 2/20/20text0
-EXECUTE ADD 2/20/20png0.png
-EXECUTE ADD 0/00/00text2
-EXECUTE REMOVEFILE 1/10/10text0
-EXECUTE REMOVEFILE 0/00/00text1
-EXECUTE REMOVEDIR 9/99/
-EXECUTE REMOVEDIR 9/99/
-EXECUTE REMOVEDIR 9/98/
-EXECUTE REMOVEFILE 9/97/971/97xtext1
-EXECUTE REMOVEFILE 9/97/971/97xtext0
-EXECUTE REMOVEDIR 9/97/971/
-EXECUTE REMOVEFILE 9/97/970/97xtext1
-EXECUTE REMOVEFILE 9/97/970/97xtext0
-EXECUTE REMOVEDIR 9/97/970/
-EXECUTE REMOVEDIR 9/97/
-EXECUTE REMOVEFILE 9/96/96text1
-EXECUTE REMOVEFILE 9/96/96text0
-EXECUTE REMOVEDIR 9/96/
-EXECUTE REMOVEDIR 9/95/
-EXECUTE REMOVEDIR 9/95/
-EXECUTE REMOVEDIR 9/94/
-EXECUTE REMOVEDIR 9/94/
-EXECUTE REMOVEDIR 9/93/
-EXECUTE REMOVEDIR 9/92/
-EXECUTE REMOVEDIR 9/91/
-EXECUTE REMOVEDIR 9/90/
-EXECUTE REMOVEDIR 9/90/
-EXECUTE REMOVEDIR 8/89/
-EXECUTE REMOVEDIR 8/89/
-EXECUTE REMOVEDIR 8/88/
-EXECUTE REMOVEFILE 8/87/871/87xtext1
-EXECUTE REMOVEFILE 8/87/871/87xtext0
-EXECUTE REMOVEDIR 8/87/871/
-EXECUTE REMOVEFILE 8/87/870/87xtext1
-EXECUTE REMOVEFILE 8/87/870/87xtext0
-EXECUTE REMOVEDIR 8/87/870/
-EXECUTE REMOVEDIR 8/87/
-EXECUTE REMOVEFILE 8/86/86text1
-EXECUTE REMOVEFILE 8/86/86text0
-EXECUTE REMOVEDIR 8/86/
-EXECUTE REMOVEDIR 8/85/
-EXECUTE REMOVEDIR 8/85/
-EXECUTE REMOVEDIR 8/84/
-EXECUTE REMOVEDIR 8/84/
-EXECUTE REMOVEDIR 8/83/
-EXECUTE REMOVEDIR 8/82/
-EXECUTE REMOVEDIR 8/81/
-EXECUTE REMOVEDIR 8/80/
-EXECUTE REMOVEDIR 8/80/
-EXECUTE REMOVEFILE 7/71/7xtext1
-EXECUTE REMOVEFILE 7/71/7xtext0
-EXECUTE REMOVEFILE 7/71/7xtest.exe
-EXECUTE REMOVEDIR 7/71/
-EXECUTE REMOVEFILE 7/70/7xtext1
-EXECUTE REMOVEFILE 7/70/7xtext0
-EXECUTE REMOVEFILE 7/70/7xtest.exe
-EXECUTE REMOVEDIR 7/70/
-EXECUTE REMOVEFILE 7/7text1
-EXECUTE REMOVEFILE 7/7text0
-EXECUTE REMOVEDIR 7/
-EXECUTE REMOVEDIR 6/
-EXECUTE REMOVEFILE 5/5text1
-EXECUTE REMOVEFILE 5/5text0
-EXECUTE REMOVEFILE 5/5text1
-file cannot be removed because it does not exist; skipping
-EXECUTE REMOVEFILE 5/5text0
-file cannot be removed because it does not exist; skipping
-EXECUTE REMOVEFILE 5/5test.exe
-EXECUTE REMOVEDIR 5/
-EXECUTE REMOVEFILE 4/4text1
-EXECUTE REMOVEFILE 4/4text0
-EXECUTE REMOVEDIR 4/
-EXECUTE REMOVEFILE 3/3text1
-EXECUTE REMOVEFILE 3/3text0
-EXECUTE REMOVEDIR 1/10/
-EXECUTE REMOVEDIR 1/
-FINISH ADD searchplugins/searchpluginstext0
-FINISH PATCH searchplugins/searchpluginspng1.png
-FINISH PATCH searchplugins/searchpluginspng0.png
-FINISH ADD precomplete
-FINISH PATCH exe0.exe
-FINISH ADD distribution/extensions/extensions1/extensions1text0
-FINISH PATCH distribution/extensions/extensions1/extensions1png1.png
-FINISH PATCH distribution/extensions/extensions1/extensions1png0.png
-FINISH ADD distribution/extensions/extensions0/extensions0text0
-FINISH PATCH distribution/extensions/extensions0/extensions0png1.png
-FINISH PATCH distribution/extensions/extensions0/extensions0png0.png
-FINISH PATCH 0/0exe0.exe
-FINISH ADD 0/00/00text0
-FINISH PATCH 0/00/00png0.png
-FINISH ADD 2/20/20text0
-FINISH ADD 2/20/20png0.png
-FINISH ADD 0/00/00text2
-FINISH REMOVEFILE 1/10/10text0
-FINISH REMOVEFILE 0/00/00text1
-FINISH REMOVEDIR 9/99/
-FINISH REMOVEDIR 9/99/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/98/
-FINISH REMOVEFILE 9/97/971/97xtext1
-FINISH REMOVEFILE 9/97/971/97xtext0
-FINISH REMOVEDIR 9/97/971/
-FINISH REMOVEFILE 9/97/970/97xtext1
-FINISH REMOVEFILE 9/97/970/97xtext0
-FINISH REMOVEDIR 9/97/970/
-FINISH REMOVEDIR 9/97/
-FINISH REMOVEFILE 9/96/96text1
-FINISH REMOVEFILE 9/96/96text0
-FINISH REMOVEDIR 9/96/
-FINISH REMOVEDIR 9/95/
-FINISH REMOVEDIR 9/95/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/94/
-FINISH REMOVEDIR 9/94/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/93/
-FINISH REMOVEDIR 9/92/
-removing directory: 9/92/, rv: 0
-FINISH REMOVEDIR 9/91/
-removing directory: 9/91/, rv: 0
-FINISH REMOVEDIR 9/90/
-FINISH REMOVEDIR 9/90/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/89/
-FINISH REMOVEDIR 8/89/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/88/
-FINISH REMOVEFILE 8/87/871/87xtext1
-FINISH REMOVEFILE 8/87/871/87xtext0
-FINISH REMOVEDIR 8/87/871/
-FINISH REMOVEFILE 8/87/870/87xtext1
-FINISH REMOVEFILE 8/87/870/87xtext0
-FINISH REMOVEDIR 8/87/870/
-FINISH REMOVEDIR 8/87/
-FINISH REMOVEFILE 8/86/86text1
-FINISH REMOVEFILE 8/86/86text0
-FINISH REMOVEDIR 8/86/
-FINISH REMOVEDIR 8/85/
-FINISH REMOVEDIR 8/85/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/84/
-FINISH REMOVEDIR 8/84/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/83/
-FINISH REMOVEDIR 8/82/
-removing directory: 8/82/, rv: 0
-FINISH REMOVEDIR 8/81/
-removing directory: 8/81/, rv: 0
-FINISH REMOVEDIR 8/80/
-FINISH REMOVEDIR 8/80/
-directory no longer exists; skipping
-FINISH REMOVEFILE 7/71/7xtext1
-FINISH REMOVEFILE 7/71/7xtext0
-FINISH REMOVEFILE 7/71/7xtest.exe
-FINISH REMOVEDIR 7/71/
-FINISH REMOVEFILE 7/70/7xtext1
-FINISH REMOVEFILE 7/70/7xtext0
-FINISH REMOVEFILE 7/70/7xtest.exe
-FINISH REMOVEDIR 7/70/
-FINISH REMOVEFILE 7/7text1
-FINISH REMOVEFILE 7/7text0
-FINISH REMOVEDIR 7/
-FINISH REMOVEDIR 6/
-FINISH REMOVEFILE 5/5text1
-FINISH REMOVEFILE 5/5text0
-FINISH REMOVEFILE 5/5test.exe
-FINISH REMOVEDIR 5/
-FINISH REMOVEFILE 4/4text1
-FINISH REMOVEFILE 4/4text0
-FINISH REMOVEDIR 4/
-FINISH REMOVEFILE 3/3text1
-FINISH REMOVEFILE 3/3text0
-FINISH REMOVEDIR 1/10/
-FINISH REMOVEDIR 1/
-succeeded
-calling QuitProgressUI
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/data/partial_log_success_gonk_stage
+++ /dev/null
@@ -1,279 +0,0 @@
-UPDATE TYPE partial
-PREPARE ADD searchplugins/searchpluginstext0
-PREPARE PATCH searchplugins/searchpluginspng1.png
-PREPARE PATCH searchplugins/searchpluginspng0.png
-PREPARE ADD precomplete
-PREPARE PATCH exe0.exe
-PREPARE ADD distribution/extensions/extensions1/extensions1text0
-PREPARE PATCH distribution/extensions/extensions1/extensions1png1.png
-PREPARE PATCH distribution/extensions/extensions1/extensions1png0.png
-PREPARE ADD distribution/extensions/extensions0/extensions0text0
-PREPARE PATCH distribution/extensions/extensions0/extensions0png1.png
-PREPARE PATCH distribution/extensions/extensions0/extensions0png0.png
-PREPARE PATCH 0/0exe0.exe
-PREPARE ADD 0/00/00text0
-PREPARE PATCH 0/00/00png0.png
-PREPARE ADD 2/20/20text0
-PREPARE ADD 2/20/20png0.png
-PREPARE ADD 0/00/00text2
-PREPARE REMOVEFILE 1/10/10text0
-PREPARE REMOVEFILE 0/00/00text1
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/99/
-PREPARE REMOVEDIR 9/98/
-PREPARE REMOVEFILE 9/97/970/97xtext0
-PREPARE REMOVEFILE 9/97/970/97xtext1
-PREPARE REMOVEDIR 9/97/970/
-PREPARE REMOVEFILE 9/97/971/97xtext0
-PREPARE REMOVEFILE 9/97/971/97xtext1
-PREPARE REMOVEDIR 9/97/971/
-PREPARE REMOVEDIR 9/97/
-PREPARE REMOVEFILE 9/96/96text0
-PREPARE REMOVEFILE 9/96/96text1
-PREPARE REMOVEDIR 9/96/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/95/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/94/
-PREPARE REMOVEDIR 9/93/
-PREPARE REMOVEDIR 9/92/
-PREPARE REMOVEDIR 9/91/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 9/90/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/89/
-PREPARE REMOVEDIR 8/88/
-PREPARE REMOVEFILE 8/87/870/87xtext0
-PREPARE REMOVEFILE 8/87/870/87xtext1
-PREPARE REMOVEDIR 8/87/870/
-PREPARE REMOVEFILE 8/87/871/87xtext0
-PREPARE REMOVEFILE 8/87/871/87xtext1
-PREPARE REMOVEDIR 8/87/871/
-PREPARE REMOVEDIR 8/87/
-PREPARE REMOVEFILE 8/86/86text0
-PREPARE REMOVEFILE 8/86/86text1
-PREPARE REMOVEDIR 8/86/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/85/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/84/
-PREPARE REMOVEDIR 8/83/
-PREPARE REMOVEDIR 8/82/
-PREPARE REMOVEDIR 8/81/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEDIR 8/80/
-PREPARE REMOVEFILE 7/7text0
-PREPARE REMOVEFILE 7/7text1
-PREPARE REMOVEFILE 7/70/7xtest.exe
-PREPARE REMOVEFILE 7/70/7xtext0
-PREPARE REMOVEFILE 7/70/7xtext1
-PREPARE REMOVEDIR 7/70/
-PREPARE REMOVEFILE 7/71/7xtest.exe
-PREPARE REMOVEFILE 7/71/7xtext0
-PREPARE REMOVEFILE 7/71/7xtext1
-PREPARE REMOVEDIR 7/71/
-PREPARE REMOVEDIR 7/
-PREPARE REMOVEDIR 6/
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5test.exe
-PREPARE REMOVEFILE 5/5text0
-PREPARE REMOVEFILE 5/5text1
-PREPARE REMOVEDIR 5/
-PREPARE REMOVEFILE 4/4text1
-PREPARE REMOVEFILE 4/4text0
-PREPARE REMOVEDIR 4/
-PREPARE REMOVEFILE 3/3text1
-PREPARE REMOVEFILE 3/3text0
-PREPARE REMOVEDIR 1/10/
-PREPARE REMOVEDIR 1/
-EXECUTE ADD searchplugins/searchpluginstext0
-EXECUTE PATCH searchplugins/searchpluginspng1.png
-EXECUTE PATCH searchplugins/searchpluginspng0.png
-EXECUTE ADD precomplete
-EXECUTE PATCH exe0.exe
-EXECUTE ADD distribution/extensions/extensions1/extensions1text0
-EXECUTE PATCH distribution/extensions/extensions1/extensions1png1.png
-EXECUTE PATCH distribution/extensions/extensions1/extensions1png0.png
-EXECUTE ADD distribution/extensions/extensions0/extensions0text0
-EXECUTE PATCH distribution/extensions/extensions0/extensions0png1.png
-EXECUTE PATCH distribution/extensions/extensions0/extensions0png0.png
-EXECUTE PATCH 0/0exe0.exe
-EXECUTE ADD 0/00/00text0
-EXECUTE PATCH 0/00/00png0.png
-EXECUTE ADD 2/20/20text0
-EXECUTE ADD 2/20/20png0.png
-EXECUTE ADD 0/00/00text2
-EXECUTE REMOVEFILE 1/10/10text0
-EXECUTE REMOVEFILE 0/00/00text1
-EXECUTE REMOVEDIR 9/99/
-EXECUTE REMOVEDIR 9/99/
-EXECUTE REMOVEDIR 9/98/
-EXECUTE REMOVEFILE 9/97/970/97xtext0
-EXECUTE REMOVEFILE 9/97/970/97xtext1
-EXECUTE REMOVEDIR 9/97/970/
-EXECUTE REMOVEFILE 9/97/971/97xtext0
-EXECUTE REMOVEFILE 9/97/971/97xtext1
-EXECUTE REMOVEDIR 9/97/971/
-EXECUTE REMOVEDIR 9/97/
-EXECUTE REMOVEFILE 9/96/96text0
-EXECUTE REMOVEFILE 9/96/96text1
-EXECUTE REMOVEDIR 9/96/
-EXECUTE REMOVEDIR 9/95/
-EXECUTE REMOVEDIR 9/95/
-EXECUTE REMOVEDIR 9/94/
-EXECUTE REMOVEDIR 9/94/
-EXECUTE REMOVEDIR 9/93/
-EXECUTE REMOVEDIR 9/92/
-EXECUTE REMOVEDIR 9/91/
-EXECUTE REMOVEDIR 9/90/
-EXECUTE REMOVEDIR 9/90/
-EXECUTE REMOVEDIR 8/89/
-EXECUTE REMOVEDIR 8/89/
-EXECUTE REMOVEDIR 8/88/
-EXECUTE REMOVEFILE 8/87/870/87xtext0
-EXECUTE REMOVEFILE 8/87/870/87xtext1
-EXECUTE REMOVEDIR 8/87/870/
-EXECUTE REMOVEFILE 8/87/871/87xtext0
-EXECUTE REMOVEFILE 8/87/871/87xtext1
-EXECUTE REMOVEDIR 8/87/871/
-EXECUTE REMOVEDIR 8/87/
-EXECUTE REMOVEFILE 8/86/86text0
-EXECUTE REMOVEFILE 8/86/86text1
-EXECUTE REMOVEDIR 8/86/
-EXECUTE REMOVEDIR 8/85/
-EXECUTE REMOVEDIR 8/85/
-EXECUTE REMOVEDIR 8/84/
-EXECUTE REMOVEDIR 8/84/
-EXECUTE REMOVEDIR 8/83/
-EXECUTE REMOVEDIR 8/82/
-EXECUTE REMOVEDIR 8/81/
-EXECUTE REMOVEDIR 8/80/
-EXECUTE REMOVEDIR 8/80/
-EXECUTE REMOVEFILE 7/7text0
-EXECUTE REMOVEFILE 7/7text1
-EXECUTE REMOVEFILE 7/70/7xtest.exe
-EXECUTE REMOVEFILE 7/70/7xtext0
-EXECUTE REMOVEFILE 7/70/7xtext1
-EXECUTE REMOVEDIR 7/70/
-EXECUTE REMOVEFILE 7/71/7xtest.exe
-EXECUTE REMOVEFILE 7/71/7xtext0
-EXECUTE REMOVEFILE 7/71/7xtext1
-EXECUTE REMOVEDIR 7/71/
-EXECUTE REMOVEDIR 7/
-EXECUTE REMOVEDIR 6/
-EXECUTE REMOVEFILE 5/5text1
-EXECUTE REMOVEFILE 5/5text0
-EXECUTE REMOVEFILE 5/5test.exe
-EXECUTE REMOVEFILE 5/5text0
-file cannot be removed because it does not exist; skipping
-EXECUTE REMOVEFILE 5/5text1
-file cannot be removed because it does not exist; skipping
-EXECUTE REMOVEDIR 5/
-EXECUTE REMOVEFILE 4/4text1
-EXECUTE REMOVEFILE 4/4text0
-EXECUTE REMOVEDIR 4/
-EXECUTE REMOVEFILE 3/3text1
-EXECUTE REMOVEFILE 3/3text0
-EXECUTE REMOVEDIR 1/10/
-EXECUTE REMOVEDIR 1/
-FINISH ADD searchplugins/searchpluginstext0
-FINISH PATCH searchplugins/searchpluginspng1.png
-FINISH PATCH searchplugins/searchpluginspng0.png
-FINISH ADD precomplete
-FINISH PATCH exe0.exe
-FINISH ADD distribution/extensions/extensions1/extensions1text0
-FINISH PATCH distribution/extensions/extensions1/extensions1png1.png
-FINISH PATCH distribution/extensions/extensions1/extensions1png0.png
-FINISH ADD distribution/extensions/extensions0/extensions0text0
-FINISH PATCH distribution/extensions/extensions0/extensions0png1.png
-FINISH PATCH distribution/extensions/extensions0/extensions0png0.png
-FINISH PATCH 0/0exe0.exe
-FINISH ADD 0/00/00text0
-FINISH PATCH 0/00/00png0.png
-FINISH ADD 2/20/20text0
-FINISH ADD 2/20/20png0.png
-FINISH ADD 0/00/00text2
-FINISH REMOVEFILE 1/10/10text0
-FINISH REMOVEFILE 0/00/00text1
-FINISH REMOVEDIR 9/99/
-FINISH REMOVEDIR 9/99/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/98/
-FINISH REMOVEFILE 9/97/970/97xtext0
-FINISH REMOVEFILE 9/97/970/97xtext1
-FINISH REMOVEDIR 9/97/970/
-FINISH REMOVEFILE 9/97/971/97xtext0
-FINISH REMOVEFILE 9/97/971/97xtext1
-FINISH REMOVEDIR 9/97/971/
-FINISH REMOVEDIR 9/97/
-FINISH REMOVEFILE 9/96/96text0
-FINISH REMOVEFILE 9/96/96text1
-FINISH REMOVEDIR 9/96/
-FINISH REMOVEDIR 9/95/
-FINISH REMOVEDIR 9/95/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/94/
-FINISH REMOVEDIR 9/94/
-directory no longer exists; skipping
-FINISH REMOVEDIR 9/93/
-FINISH REMOVEDIR 9/92/
-removing directory: 9/92/, rv: 0
-FINISH REMOVEDIR 9/91/
-removing directory: 9/91/, rv: 0
-FINISH REMOVEDIR 9/90/
-FINISH REMOVEDIR 9/90/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/89/
-FINISH REMOVEDIR 8/89/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/88/
-FINISH REMOVEFILE 8/87/870/87xtext0
-FINISH REMOVEFILE 8/87/870/87xtext1
-FINISH REMOVEDIR 8/87/870/
-FINISH REMOVEFILE 8/87/871/87xtext0
-FINISH REMOVEFILE 8/87/871/87xtext1
-FINISH REMOVEDIR 8/87/871/
-FINISH REMOVEDIR 8/87/
-FINISH REMOVEFILE 8/86/86text0
-FINISH REMOVEFILE 8/86/86text1
-FINISH REMOVEDIR 8/86/
-FINISH REMOVEDIR 8/85/
-FINISH REMOVEDIR 8/85/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/84/
-FINISH REMOVEDIR 8/84/
-directory no longer exists; skipping
-FINISH REMOVEDIR 8/83/
-FINISH REMOVEDIR 8/82/
-removing directory: 8/82/, rv: 0
-FINISH REMOVEDIR 8/81/
-removing directory: 8/81/, rv: 0
-FINISH REMOVEDIR 8/80/
-FINISH REMOVEDIR 8/80/
-directory no longer exists; skipping
-FINISH REMOVEFILE 7/7text0
-FINISH REMOVEFILE 7/7text1
-FINISH REMOVEFILE 7/70/7xtest.exe
-FINISH REMOVEFILE 7/70/7xtext0
-FINISH REMOVEFILE 7/70/7xtext1
-FINISH REMOVEDIR 7/70/
-FINISH REMOVEFILE 7/71/7xtest.exe
-FINISH REMOVEFILE 7/71/7xtext0
-FINISH REMOVEFILE 7/71/7xtext1
-FINISH REMOVEDIR 7/71/
-FINISH REMOVEDIR 7/
-FINISH REMOVEDIR 6/
-FINISH REMOVEFILE 5/5text1
-FINISH REMOVEFILE 5/5text0
-FINISH REMOVEFILE 5/5test.exe
-FINISH REMOVEDIR 5/
-FINISH REMOVEFILE 4/4text1
-FINISH REMOVEFILE 4/4text0
-FINISH REMOVEDIR 4/
-FINISH REMOVEFILE 3/3text1
-FINISH REMOVEFILE 3/3text0
-FINISH REMOVEDIR 1/10/
-FINISH REMOVEDIR 1/
-succeeded
-calling QuitProgressUI
--- a/toolkit/mozapps/update/tests/data/xpcshellConstantsPP.js
+++ b/toolkit/mozapps/update/tests/data/xpcshellConstantsPP.js
@@ -35,28 +35,16 @@ const IS_MACOSX = false;
 #endif
 
 #ifdef XP_UNIX
 const IS_UNIX = true;
 #else
 const IS_UNIX = false;
 #endif
 
-#ifdef ANDROID
-const IS_ANDROID = true;
-#else
-const IS_ANDROID = false;
-#endif
-
-#ifdef MOZ_WIDGET_GONK
-const IS_TOOLKIT_GONK = true;
-#else
-const IS_TOOLKIT_GONK = false;
-#endif
-
 #ifdef MOZ_VERIFY_MAR_SIGNATURE
 const MOZ_VERIFY_MAR_SIGNATURE = true;
 #else
 const MOZ_VERIFY_MAR_SIGNATURE = false;
 #endif
 
 #ifdef DISABLE_UPDATER_AUTHENTICODE_CHECK
  const IS_AUTHENTICODE_CHECK_ENABLED = false;
--- a/toolkit/mozapps/update/tests/data/xpcshellUtilsAUS.js
+++ b/toolkit/mozapps/update/tests/data/xpcshellUtilsAUS.js
@@ -31,30 +31,27 @@
 "use strict";
 /* eslint-disable no-undef */
 
 const { classes: Cc, interfaces: Ci, manager: Cm, results: Cr,
         utils: Cu } = Components;
 
 /* global INSTALL_LOCALE, MOZ_APP_NAME, BIN_SUFFIX, MOZ_APP_VENDOR */
 /* global MOZ_APP_BASENAME, APP_BIN_SUFFIX, APP_INFO_NAME, APP_INFO_VENDOR */
-/* global IS_WIN, IS_MACOSX, IS_UNIX, IS_ANDROID, IS_TOOLKIT_GONK */
-/* global MOZ_VERIFY_MAR_SIGNATURE, MOZ_VERIFY_MAR_SIGNATURE, IS_AUTHENTICODE_CHECK_ENABLED */
+/* global IS_WIN, IS_MACOSX, IS_UNIX, MOZ_VERIFY_MAR_SIGNATURE */
+/* global IS_AUTHENTICODE_CHECK_ENABLED */
 load("../data/xpcshellConstantsPP.js");
 
 function getLogSuffix() {
   if (IS_WIN) {
     return "_win";
   }
   if (IS_MACOSX) {
     return "_mac";
   }
-  if (IS_TOOLKIT_GONK) {
-    return "_gonk";
-  }
   return "_linux";
 }
 
 Cu.import("resource://gre/modules/Services.jsm", this);
 Cu.import("resource://gre/modules/ctypes.jsm", this);
 
 const DIR_MACOS = IS_MACOSX ? "Contents/MacOS/" : "";
 const DIR_RESOURCES = IS_MACOSX ? "Contents/Resources/" : "";
@@ -65,21 +62,16 @@ const FILE_COMPLETE_PRECOMPLETE = "compl
 const FILE_PARTIAL_PRECOMPLETE = "partial_precomplete" + TEST_FILE_SUFFIX;
 const FILE_COMPLETE_REMOVEDFILES = "complete_removed-files" + TEST_FILE_SUFFIX;
 const FILE_PARTIAL_REMOVEDFILES = "partial_removed-files" + TEST_FILE_SUFFIX;
 const FILE_UPDATE_IN_PROGRESS_LOCK = "updated.update_in_progress.lock";
 const COMPARE_LOG_SUFFIX = getLogSuffix();
 const LOG_COMPLETE_SUCCESS = "complete_log_success" + COMPARE_LOG_SUFFIX;
 const LOG_PARTIAL_SUCCESS = "partial_log_success" + COMPARE_LOG_SUFFIX;
 const LOG_PARTIAL_FAILURE = "partial_log_failure" + COMPARE_LOG_SUFFIX;
-// Gonk sorts differently when applying and staging an update.
-const LOG_COMPLETE_SUCCESS_STAGE = LOG_COMPLETE_SUCCESS +
-                                   (IS_TOOLKIT_GONK ? "_stage" : "");
-const LOG_PARTIAL_SUCCESS_STAGE = LOG_PARTIAL_SUCCESS +
-                                  (IS_TOOLKIT_GONK ? "_stage" : "");
 const LOG_REPLACE_SUCCESS = "replace_log_success";
 
 const USE_EXECV = IS_UNIX && !IS_MACOSX;
 
 const URL_HOST = "http://localhost";
 
 const FILE_APP_BIN = MOZ_APP_NAME + APP_BIN_SUFFIX;
 const FILE_COMPLETE_EXE = "complete.exe";
@@ -170,32 +162,34 @@ var gApplyToDirOverride;
 var gServiceLaunchedCallbackLog = null;
 var gServiceLaunchedCallbackArgs = null;
 
 // Variables are used instead of contants so tests can override these values if
 // necessary.
 var gCallbackBinFile = "callback_app" + BIN_SUFFIX;
 var gCallbackArgs = ["./", "callback.log", "Test Arg 2", "Test Arg 3"];
 var gPostUpdateBinFile = "postup_app" + BIN_SUFFIX;
+var gSvcOriginalLogContents;
 var gUseTestAppDir = true;
 // Some update staging failures can remove the update. This allows tests to
 // specify that the status file and the active update should not be checked
 // after an update is staged.
 var gStagingRemovedUpdate = false;
 
 var gTimeoutRuns = 0;
 var gFileInUseTimeoutRuns = 0;
 
 // Environment related globals
 var gShouldResetEnv = undefined;
 var gAddedEnvXRENoWindowsCrashDialog = false;
 var gEnvXPCOMDebugBreak;
 var gEnvXPCOMMemLeakLog;
 var gEnvDyldLibraryPath;
 var gEnvLdLibraryPath;
+var gASanOptions;
 
 // Set to true to log additional information for debugging. To log additional
 // information for an individual test set DEBUG_AUS_TEST to true in the test's
 // run_test function.
 var DEBUG_AUS_TEST = true;
 
 const DATA_URI_SPEC = Services.io.newFileURI(do_get_file("../data", false)).spec;
 /* import-globals-from ../data/shared.js */
@@ -922,19 +916,19 @@ function cleanupTestCommon() {
                Ci.nsIWindowsRegKey.ACCESS_ALL);
       if (key.hasValue(appDir.path)) {
         key.removeValue(appDir.path);
       }
     } catch (e) {
     }
   }
 
-  // The updates directory is located outside of the application directory on
-  // Windows, Mac OS X, and GONK and needs to be removed.
-  if (IS_WIN || IS_MACOSX || IS_TOOLKIT_GONK) {
+  // The updates directory is located outside of the application directory and
+  // needs to be removed on Windows and Mac OS X.
+  if (IS_WIN || IS_MACOSX) {
     let updatesDir = getMockUpdRootD();
     // Try to remove the directory used to apply updates. Since the test has
     // already finished this is non-fatal for the test.
     if (updatesDir.exists()) {
       debugDump("attempting to remove directory. Path: " + updatesDir.path);
       try {
         removeDirRecursive(updatesDir);
       } catch (e) {
@@ -1006,17 +1000,17 @@ function doTestFinish() {
  * Sets the most commonly used preferences used by tests
  */
 function setDefaultPrefs() {
   Services.prefs.setBoolPref(PREF_APP_UPDATE_ENABLED, true);
   if (DEBUG_AUS_TEST) {
     // Enable Update logging
     Services.prefs.setBoolPref(PREF_APP_UPDATE_LOG, true);
   } else {
-    // Some apps (e.g. gonk) set this preference to true by default
+    // Some apps set this preference to true by default
     Services.prefs.setBoolPref(PREF_APP_UPDATE_LOG, false);
   }
   // In case telemetry is enabled for xpcshell tests.
   Services.prefs.setBoolPref(PREF_TOOLKIT_TELEMETRY_ENABLED, false);
 }
 
 /**
  * Helper function for updater binary tests that sets the appropriate values
@@ -1405,22 +1399,16 @@ function getMockUpdRootD() {
   if (IS_WIN) {
     return getMockUpdRootDWin();
   }
 
   if (IS_MACOSX) {
     return getMockUpdRootDMac();
   }
 
-  // The gonk updates directory is under /data/local but for the updater tests
-  // we use the following directory so the tests can run in parallel.
-  if (IS_TOOLKIT_GONK) {
-    return do_get_file(gTestID + "/", true);
-  }
-
   return getApplyDirFile(DIR_MACOS, true);
 }
 
 /**
  * Helper function for getting the update root directory used by the tests. This
  * returns the same directory as returned by nsXREDirProvider::GetUpdateRootDir
  * in nsXREDirProvider.cpp so an application will be able to find the update
  * when running a test that launches the application.
@@ -1654,19 +1642,27 @@ function logUpdateLog(aLogLeafName) {
     } else {
       logTestInfo("maintenance service log doesn't exist, path: " +
                   serviceLog.path);
     }
   }
 }
 
 /**
- * Launches the updater binary or the service to apply an update for updater
- * tests. For non-service tests runUpdateUsingUpdater will be called and for
- * service tests runUpdateUsingService will be called.
+ * Gets the maintenance service log contents.
+ */
+function readServiceLogFile() {
+  let file = getMaintSvcDir();
+  file.append("logs");
+  file.append("maintenanceservice.log");
+  return readFile(file);
+}
+
+/**
+ * Launches the updater binary to apply an update for updater tests.
  *
  * @param   aExpectedStatus
  *          The expected value of update.status when the test finishes. For
  *          service tests passing STATE_PENDING or STATE_APPLIED will change the
  *          value to STATE_PENDING_SVC and STATE_APPLIED_SVC respectively.
  * @param   aSwitchApp
  *          If true the update should switch the application with an updated
  *          staged application and if false the update should be applied to the
@@ -1674,63 +1670,33 @@ function logUpdateLog(aLogLeafName) {
  * @param   aExpectedExitValue
  *          The expected exit value from the updater binary for non-service
  *          tests.
  * @param   aCheckSvcLog
  *          Whether the service log should be checked for service tests.
  */
 function runUpdate(aExpectedStatus, aSwitchApp, aExpectedExitValue,
                    aCheckSvcLog) {
+  let svcOriginalLog;
   if (IS_SERVICE_TEST) {
-    let expectedStatus = aExpectedStatus;
-    if (aExpectedStatus == STATE_PENDING) {
-      expectedStatus = STATE_PENDING_SVC;
-    } else if (aExpectedStatus == STATE_APPLIED) {
-      expectedStatus = STATE_APPLIED_SVC;
+    copyFileToTestAppDir(FILE_MAINTENANCE_SERVICE_BIN, false);
+    copyFileToTestAppDir(FILE_MAINTENANCE_SERVICE_INSTALLER_BIN, false);
+    if (aCheckSvcLog) {
+      svcOriginalLog = readServiceLogFile();
     }
-    runUpdateUsingService(expectedStatus, aSwitchApp, aCheckSvcLog);
-  } else {
-    runUpdateUsingUpdater(aExpectedStatus, aSwitchApp, aExpectedExitValue);
   }
-}
-
-/**
- * Launches the updater binary or the service to apply an update for updater
- * tests. When completed runUpdateFinished will be called.
- *
- * @param   aExpectedStatus
- *          The expected value of update.status when the test finishes.
- * @param   aSwitchApp
- *          If true the update should switch the application with an updated
- *          staged application and if false the update should be applied to the
- *          installed application.
- * @param   aExpectedExitValue
- *          The expected exit value from the updater binary.
- */
-function runUpdateUsingUpdater(aExpectedStatus, aSwitchApp, aExpectedExitValue) {
+
   // Copy the updater binary to the directory where it will apply updates.
   let updateBin = copyTestUpdaterForRunUsingUpdater();
   Assert.ok(updateBin.exists(),
             MSG_SHOULD_EXIST + getMsgPath(updateBin.path));
 
-  let updatesDir = getUpdatesPatchDir();
-  let updatesDirPath = updatesDir.path;
-
-  let applyToDir = getApplyDirFile(null, true);
-  let applyToDirPath = applyToDir.path;
-
-  let stageDir = getStageDirFile(null, true);
-  let stageDirPath = stageDir.path;
-
-  if (IS_WIN) {
-    // Convert to native path
-    updatesDirPath = updatesDirPath.replace(/\//g, "\\");
-    applyToDirPath = applyToDirPath.replace(/\//g, "\\");
-    stageDirPath = stageDirPath.replace(/\//g, "\\");
-  }
+  let updatesDirPath = getUpdatesPatchDir().path;
+  let applyToDirPath = getApplyDirFile(null, true).path;
+  let stageDirPath = getStageDirFile(null, true).path;
 
   let callbackApp = getApplyDirFile(DIR_RESOURCES + gCallbackBinFile);
   callbackApp.permissions = PERMS_DIRECTORY;
 
   setAppBundleModTime();
 
   let args = [updatesDirPath, applyToDirPath];
   if (aSwitchApp) {
@@ -1739,53 +1705,61 @@ function runUpdateUsingUpdater(aExpected
   } else {
     args[2] = gApplyToDirOverride || applyToDirPath;
     args[3] = "0";
   }
   args = args.concat([callbackApp.parent.path, callbackApp.path]);
   args = args.concat(gCallbackArgs);
   debugDump("running the updater: " + updateBin.path + " " + args.join(" "));
 
-  // See bug 1279108.
-  // nsIProcess doesn't have an API to pass a separate environment to the
-  // subprocess, so we need to alter the environment of the current process
-  // before launching the updater binary.
-  let asan_options = null;
-  if (gEnv.exists("ASAN_OPTIONS")) {
-    asan_options = gEnv.get("ASAN_OPTIONS");
-    gEnv.set("ASAN_OPTIONS", asan_options + ":detect_leaks=0");
-  } else {
-    gEnv.set("ASAN_OPTIONS", "detect_leaks=0");
+  if (aSwitchApp) {
+    // We want to set the env vars again
+    gShouldResetEnv = undefined;
   }
 
+  setEnvironment();
+
   let process = Cc["@mozilla.org/process/util;1"].
                 createInstance(Ci.nsIProcess);
   process.init(updateBin);
   process.run(true, args, args.length);
 
-  // Restore previous ASAN_OPTIONS if there were any.
-  gEnv.set("ASAN_OPTIONS", asan_options ? asan_options : "");
+  resetEnvironment();
 
   let status = readStatusFile();
-  if (process.exitValue != aExpectedExitValue || status != aExpectedStatus) {
+  if ((!IS_SERVICE_TEST && process.exitValue != aExpectedExitValue) ||
+      status != aExpectedStatus) {
     if (process.exitValue != aExpectedExitValue) {
       logTestInfo("updater exited with unexpected value! Got: " +
                   process.exitValue + ", Expected: " + aExpectedExitValue);
     }
     if (status != aExpectedStatus) {
       logTestInfo("update status is not the expected status! Got: " + status +
                   ", Expected: " + aExpectedStatus);
     }
     logUpdateLog(FILE_LAST_UPDATE_LOG);
   }
-  Assert.equal(process.exitValue, aExpectedExitValue,
-               "the process exit value" + MSG_SHOULD_EQUAL);
+
+  if (!IS_SERVICE_TEST) {
+    Assert.equal(process.exitValue, aExpectedExitValue,
+                 "the process exit value" + MSG_SHOULD_EQUAL);
+  }
   Assert.equal(status, aExpectedStatus,
                "the update status" + MSG_SHOULD_EQUAL);
 
+  if (IS_SERVICE_TEST && aCheckSvcLog) {
+    let contents = readServiceLogFile();
+    Assert.notEqual(contents, svcOriginalLog,
+                    "the contents of the maintenanceservice.log should not " +
+                    "be the same as the original contents");
+    Assert.notEqual(contents.indexOf(LOG_SVC_SUCCESSFUL_LAUNCH), -1,
+                    "the contents of the maintenanceservice.log should " +
+                    "contain the successful launch string");
+  }
+
   do_execute_soon(runUpdateFinished);
 }
 
 /**
  * Launches the helper binary synchronously with the specified arguments for
  * updater tests.
  *
  * @param   aArgs
@@ -1898,22 +1872,25 @@ const gUpdateStagedObserver = {
       do_execute_soon(checkUpdateStagedState.bind(null, aData));
     }
   },
   QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver])
 };
 
 /**
  * Stages an update using nsIUpdateProcessor:processUpdate for updater tests.
+ *
+ * @param   aCheckSvcLog
+ *          Whether the service log should be checked for service tests.
  */
-function stageUpdate() {
+function stageUpdate(aCheckSvcLog) {
   debugDump("start - attempting to stage update");
 
-  if (IS_TOOLKIT_GONK) {
-    copyTestUpdaterToBinDir();
+  if (IS_SERVICE_TEST && aCheckSvcLog) {
+    gSvcOriginalLogContents = readServiceLogFile();
   }
 
   Services.obs.addObserver(gUpdateStagedObserver, "update-staged", false);
 
   setAppBundleModTime();
   setEnvironment();
   // Stage the update.
   Cc["@mozilla.org/updates/update-processor;1"].
@@ -1984,16 +1961,26 @@ function checkUpdateStagedState(aUpdateS
       STATE_AFTER_STAGE == STATE_APPLIED_SVC) {
     Assert.ok(stageDir.exists(),
               MSG_SHOULD_EXIST + getMsgPath(stageDir.path));
   } else {
     Assert.ok(!stageDir.exists(),
               MSG_SHOULD_NOT_EXIST + getMsgPath(stageDir.path));
   }
 
+  if (IS_SERVICE_TEST && gSvcOriginalLogContents !== undefined) {
+    let contents = readServiceLogFile();
+    Assert.notEqual(contents, gSvcOriginalLogContents,
+                    "the contents of the maintenanceservice.log should not " +
+                    "be the same as the original contents");
+    Assert.notEqual(contents.indexOf(LOG_SVC_SUCCESSFUL_LAUNCH), -1,
+                    "the contents of the maintenanceservice.log should " +
+                    "contain the successful launch string");
+  }
+
   do_execute_soon(stageUpdateFinished);
 }
 
 /**
  * Helper function to check whether the maintenance service updater tests should
  * run. See bug 711660 for more details.
  *
  * @return true if the test should run and false if it shouldn't.
@@ -2127,17 +2114,17 @@ function setupAppFiles() {
   let appFiles = [{relPath: FILE_APP_BIN,
                    inGreDir: false},
                   {relPath: FILE_APPLICATION_INI,
                    inGreDir: true},
                   {relPath: "dependentlibs.list",
                    inGreDir: true}];
 
   // On Linux the updater.png must also be copied
-  if (IS_UNIX && !IS_MACOSX && !IS_TOOLKIT_GONK) {
+  if (IS_UNIX && !IS_MACOSX) {
     appFiles.push({relPath: "icons/updater.png",
                    inGreDir: true});
   }
 
   // Read the dependent libs file leafnames from the dependentlibs.list file
   // into the array.
   let deplibsFile = gGREDirOrig.clone();
   deplibsFile.append("dependentlibs.list");
@@ -2212,18 +2199,17 @@ function copyFileToTestAppDir(aFileRelPa
   Assert.ok(srcFile.exists(),
             MSG_SHOULD_EXIST + ", leafName: " + srcFile.leafName);
 
   // Symlink libraries. Note that the XUL library on Mac OS X doesn't have a
   // file extension and shouldSymlink will always be false on Windows.
   let shouldSymlink = (pathParts[pathParts.length - 1] == "XUL" ||
                        fileRelPath.substr(fileRelPath.length - 3) == ".so" ||
                        fileRelPath.substr(fileRelPath.length - 6) == ".dylib");
-  // The tests don't support symlinks on gonk.
-  if (!shouldSymlink || IS_TOOLKIT_GONK) {
+  if (!shouldSymlink) {
     if (!destFile.exists()) {
       try {
         srcFile.copyToFollowingLinks(destFile.parent, destFile.leafName);
       } catch (e) {
         // Just in case it is partially copied
         if (destFile.exists()) {
           try {
             destFile.remove(true);
@@ -2373,167 +2359,16 @@ function waitForApplicationStop(aApplica
   // then wait for it to stop (at most 120 seconds).
   let args = ["wait-for-application-exit", aApplication, "120"];
   let exitValue = runTestHelperSync(args);
   Assert.equal(exitValue, 0,
                "the process should have stopped, process name: " +
                aApplication);
 }
 
-/**
- * Helper function for updater tests for launching the updater using the
- * maintenance service to apply a mar file. When complete runUpdateFinished
- * will be called.
- *
- * @param   aExpectedStatus
- *          The expected value of update.status when the test finishes.
- * @param   aSwitchApp
- *          If true the update should switch the application with an updated
- *          staged application and if false the update should be applied to the
- *          installed application.
- * @param   aCheckSvcLog
- *          Whether the service log should be checked.
- */
-function runUpdateUsingService(aExpectedStatus, aSwitchApp, aCheckSvcLog) {
-  if (!IS_WIN) {
-    do_throw("Windows only function called by a different platform!");
-  }
-
-  let svcOriginalLog;
-
-  // Check the service logs for a successful update
-  function checkServiceLogs(aOriginalContents) {
-    let contents = readServiceLogFile();
-    Assert.notEqual(contents, aOriginalContents,
-                    "the contents of the maintenanceservice.log should not " +
-                    "be the same as the original contents");
-    Assert.notEqual(contents.indexOf(LOG_SVC_SUCCESSFUL_LAUNCH), -1,
-                    "the contents of the maintenanceservice.log should " +
-                    "contain the successful launch string");
-  }
-
-  function readServiceLogFile() {
-    let file = getMaintSvcDir();
-    file.append("logs");
-    file.append("maintenanceservice.log");
-    return readFile(file);
-  }
-
-  function checkServiceUpdateFinished() {
-    waitForApplicationStop(FILE_MAINTENANCE_SERVICE_BIN);
-    waitForApplicationStop(FILE_UPDATER_BIN);
-
-    // Wait for the expected status
-    let status;
-    try {
-      status = readStatusFile();
-    } catch (e) {
-      do_execute_soon(checkServiceUpdateFinished);
-      return;
-    }
-    // The status will probably always be equal to STATE_APPLYING but there is a
-    // race condition where it would be possible on slower machines where status
-    // could be equal to STATE_PENDING_SVC.
-    if (status == STATE_APPLYING) {
-      debugDump("still waiting to see the " + aExpectedStatus +
-                " status, got " + status + " for now...");
-      do_execute_soon(checkServiceUpdateFinished);
-      return;
-    }
-
-    // Make sure all of the logs are written out.
-    waitForServiceStop(false);
-    resetEnvironment();
-
-    if (status != aExpectedStatus) {
-      logTestInfo("update status is not the expected status! Got: " + status +
-                  ", Expected: " + aExpectedStatus);
-      logTestInfo("update.status contents: " + readStatusFile());
-      logUpdateLog(FILE_UPDATE_LOG);
-    }
-    Assert.equal(status, aExpectedStatus,
-                 "the update status" + MSG_SHOULD_EQUAL);
-
-    if (aCheckSvcLog) {
-      checkServiceLogs(svcOriginalLog);
-    }
-
-    do_execute_soon(runUpdateFinished);
-  }
-
-  // Make sure the service from the previous test is already stopped.
-  waitForServiceStop(true);
-
-  // Prevent the cleanup function from begin run more than once
-  if (gRegisteredServiceCleanup === undefined) {
-    gRegisteredServiceCleanup = true;
-
-    do_register_cleanup(function RUUS_cleanup() {
-      resetEnvironment();
-
-      // This will delete the app arguments log file if it exists.
-      try {
-        getAppArgsLogPath();
-      } catch (e) {
-        logTestInfo("unable to remove file during cleanup. Exception: " + e);
-      }
-    });
-  }
-
-  if (aCheckSvcLog) {
-    svcOriginalLog = readServiceLogFile();
-  }
-
-  let appArgsLogPath = getAppArgsLogPath();
-  gServiceLaunchedCallbackLog = appArgsLogPath.replace(/^"|"$/g, "");
-
-  gServiceLaunchedCallbackArgs = [
-    "-no-remote",
-    "-test-process-updates",
-    "-dump-args",
-    appArgsLogPath
-  ];
-
-  if (aSwitchApp) {
-    // We want to set the env vars again
-    gShouldResetEnv = undefined;
-  }
-
-  setEnvironment();
-
-  let updater = getTestDirFile(FILE_UPDATER_BIN);
-  if (!updater.exists()) {
-    do_throw("Unable to find the updater binary!");
-  }
-  let testBinDir = getGREBinDir();
-  updater.copyToFollowingLinks(testBinDir, updater.leafName);
-
-  // The service will execute maintenanceservice_installer.exe and
-  // will copy maintenanceservice.exe out of the same directory from
-  // the installation directory.  So we need to make sure both of those
-  // bins always exist in the installation directory.
-  copyFileToTestAppDir(FILE_MAINTENANCE_SERVICE_BIN, false);
-  copyFileToTestAppDir(FILE_MAINTENANCE_SERVICE_INSTALLER_BIN, false);
-
-  let launchBin = getLaunchBin();
-  let args = getProcessArgs(["-dump-args", appArgsLogPath]);
-
-  let process = Cc["@mozilla.org/process/util;1"].
-                createInstance(Ci.nsIProcess);
-  process.init(launchBin);
-  debugDump("launching " + launchBin.path + " " + args.join(" "));
-  // Firefox does not wait for the service command to finish, but
-  // we still launch the process sync to avoid intermittent failures with
-  // the log file not being written out yet.
-  // We will rely on watching the update.status file and waiting for the service
-  // to stop to know the service command is done.
-  process.run(true, args, args.length);
-
-  do_execute_soon(checkServiceUpdateFinished);
-}
 
 /**
  * Gets the platform specific shell binary that is launched using nsIProcess and
  * in turn launches a binary used for the test (e.g. application, updater,
  * etc.). A shell is used so debug console output can be redirected to a file so
  * it doesn't end up in the test log.
  *
  * @return nsIFile for the shell binary to launch using nsIProcess.
@@ -2656,44 +2491,47 @@ function waitForHelperSleep() {
   // Give the lock file process time to lock the file before updating otherwise
   // this test can fail intermittently on Windows debug builds.
   let output = getApplyDirFile(DIR_RESOURCES + "output", true);
   if (readFile(output) != "sleeping\n") {
     if (gTimeoutRuns > MAX_TIMEOUT_RUNS) {
       do_throw("Exceeded MAX_TIMEOUT_RUNS while waiting for the helper to " +
                "finish its operation. Path: " + output.path);
     }
-    do_execute_soon(waitForHelperSleep);
+    // Uses do_timeout instead of do_execute_soon to lessen log spew.
+    do_timeout(FILE_IN_USE_TIMEOUT_MS, waitForHelperSleep);
     return;
   }
   try {
     output.remove(false);
   } catch (e) {
     if (gTimeoutRuns > MAX_TIMEOUT_RUNS) {
       do_throw("Exceeded MAX_TIMEOUT_RUNS while waiting for the helper " +
                "message file to no longer be in use. Path: " + output.path);
     }
     debugDump("failed to remove file. Path: " + output.path);
-    do_execute_soon(waitForHelperSleep);
+    // Uses do_timeout instead of do_execute_soon to lessen log spew.
+    do_timeout(FILE_IN_USE_TIMEOUT_MS, waitForHelperSleep);
     return;
   }
   waitForHelperSleepFinished();
 }
 
 /**
  * Helper function that waits until the helper has finished its operations
  * before calling waitForHelperFinishFileUnlock to verify that the helper's
  * input and output directories are no longer in use.
  */
 function waitForHelperFinished() {
   // Give the lock file process time to lock the file before updating otherwise
   // this test can fail intermittently on Windows debug builds.
   let output = getApplyDirFile(DIR_RESOURCES + "output", true);
   if (readFile(output) != "finished\n") {
-    do_execute_soon(waitForHelperFinished);
+    // Uses do_timeout instead of do_execute_soon to lessen log spew.
+    do_timeout(FILE_IN_USE_TIMEOUT_MS, waitForHelperFinished);
     return;
   }
   // Give the lock file process time to unlock the file before deleting the
   // input and output files.
   waitForHelperFinishFileUnlock();
 }
 
 /**
@@ -2821,22 +2659,17 @@ function setupUpdaterTest(aMarFile, aPos
   });
 
   setupActiveUpdate();
 
   if (aPostUpdateAsync !== null) {
     createUpdaterINI(aPostUpdateAsync);
   }
 
-  if (IS_TOOLKIT_GONK) {
-    // Gonk doesn't use the app files in any of the tests.
-    do_execute_soon(setupUpdaterTestFinished);
-  } else {
-    setupAppFilesAsync();
-  }
+  setupAppFilesAsync();
 }
 
 /**
  * Helper function for updater binary tests that creates the update-settings.ini
  * file.
  */
 function createUpdateSettingsINI() {
   let ini = getApplyDirFile(DIR_RESOURCES + FILE_UPDATE_SETTINGS_INI, true);
@@ -3340,39 +3173,25 @@ function checkFilesAfterUpdateCommon(aGe
     let entry = entries.getNext().QueryInterface(Ci.nsIFile);
     Assert.notEqual(getFileExtension(entry), "patch",
                     "the file's extension should not equal patch" +
                     getMsgPath(entry.path));
   }
 }
 
 /**
- * Calls the appropriate callback log check for service and non-service tests.
- */
-function checkCallbackLog() {
-  if (IS_SERVICE_TEST) {
-    // Prevent this check from being repeatedly logged in the xpcshell log by
-    // checking it here instead of in checkCallbackServiceLog.
-    Assert.ok(!!gServiceLaunchedCallbackLog,
-              "gServiceLaunchedCallbackLog should be defined");
-    checkCallbackServiceLog();
-  } else {
-    checkCallbackAppLog();
-  }
-}
-
-/**
  * Helper function for updater binary tests for verifying the contents of the
  * updater callback application log which should contain the arguments passed to
  * the callback application.
  */
-function checkCallbackAppLog() {
+function checkCallbackLog() {
   let appLaunchLog = getApplyDirFile(DIR_RESOURCES + gCallbackArgs[1], true);
   if (!appLaunchLog.exists()) {
-    do_execute_soon(checkCallbackAppLog);
+    // Uses do_timeout instead of do_execute_soon to lessen log spew.
+    do_timeout(FILE_IN_USE_TIMEOUT_MS, checkCallbackLog);
     return;
   }
 
   let expectedLogContents = gCallbackArgs.join("\n") + "\n";
   let logContents = readFile(appLaunchLog);
   // It is possible for the log file contents check to occur before the log file
   // contents are completely written so wait until the contents are the expected
   // value. If the contents are never the expected value then the test will
@@ -3398,17 +3217,18 @@ function checkCallbackAppLog() {
                       aryLog[i]);
           Assert.equal(aryLog[i], aryCompare[i],
                        "the callback log contents" + MSG_SHOULD_EQUAL);
         }
       }
       // This should never happen!
       do_throw("Unable to find incorrect callback log contents!");
     }
-    do_execute_soon(checkCallbackAppLog);
+    // Uses do_timeout instead of do_execute_soon to lessen log spew.
+    do_timeout(FILE_IN_USE_TIMEOUT_MS, checkCallbackLog);
     return;
   }
   Assert.ok(true, "the callback log contents" + MSG_SHOULD_EQUAL);
 
   waitForFilesInUse();
 }
 
 /**
@@ -4101,16 +3921,24 @@ function runUpdateUsingApp(aExpectedStat
 function setEnvironment() {
   // Prevent setting the environment more than once.
   if (gShouldResetEnv !== undefined) {
     return;
   }
 
   gShouldResetEnv = true;
 
+  // See bug 1279108.
+  if (gEnv.exists("ASAN_OPTIONS")) {
+    gASanOptions = gEnv.get("ASAN_OPTIONS");
+    gEnv.set("ASAN_OPTIONS", gASanOptions + ":detect_leaks=0");
+  } else {
+    gEnv.set("ASAN_OPTIONS", "detect_leaks=0");
+  }
+
   if (IS_WIN && !gEnv.exists("XRE_NO_WINDOWS_CRASH_DIALOG")) {
     gAddedEnvXRENoWindowsCrashDialog = true;
     debugDump("setting the XRE_NO_WINDOWS_CRASH_DIALOG environment " +
               "variable to 1... previously it didn't exist");
     gEnv.set("XRE_NO_WINDOWS_CRASH_DIALOG", "1");
   }
 
   if (IS_UNIX) {
@@ -4164,32 +3992,37 @@ function setEnvironment() {
               "warn... previous value " + gEnvXPCOMDebugBreak);
   } else {
     debugDump("setting the XPCOM_DEBUG_BREAK environment variable to " +
               "warn... previously it didn't exist");
   }
 
   gEnv.set("XPCOM_DEBUG_BREAK", "warn");
 
-  debugDump("setting MOZ_NO_SERVICE_FALLBACK environment variable to 1");
-  gEnv.set("MOZ_NO_SERVICE_FALLBACK", "1");
+  if (IS_SERVICE_TEST) {
+    debugDump("setting MOZ_NO_SERVICE_FALLBACK environment variable to 1");
+    gEnv.set("MOZ_NO_SERVICE_FALLBACK", "1");
+  }
 }
 
 /**
  * Sets the environment back to the original values after launching the
  * application.
  */
 function resetEnvironment() {
   // Prevent resetting the environment more than once.
   if (gShouldResetEnv !== true) {
     return;
   }
 
   gShouldResetEnv = false;
 
+  // Restore previous ASAN_OPTIONS if there were any.
+  gEnv.set("ASAN_OPTIONS", gASanOptions ? gASanOptions : "");
+
   if (gEnvXPCOMMemLeakLog) {
     debugDump("setting the XPCOM_MEM_LEAK_LOG environment variable back to " +
               gEnvXPCOMMemLeakLog);
     gEnv.set("XPCOM_MEM_LEAK_LOG", gEnvXPCOMMemLeakLog);
   }
 
   if (gEnvXPCOMDebugBreak) {
     debugDump("setting the XPCOM_DEBUG_BREAK environment variable back to " +
@@ -4221,11 +4054,13 @@ function resetEnvironment() {
   }
 
   if (IS_WIN && gAddedEnvXRENoWindowsCrashDialog) {
     debugDump("removing the XRE_NO_WINDOWS_CRASH_DIALOG environment " +
               "variable");
     gEnv.set("XRE_NO_WINDOWS_CRASH_DIALOG", "");
   }
 
-  debugDump("removing MOZ_NO_SERVICE_FALLBACK environment variable");
-  gEnv.set("MOZ_NO_SERVICE_FALLBACK", "");
+  if (IS_SERVICE_TEST) {
+    debugDump("removing MOZ_NO_SERVICE_FALLBACK environment variable");
+    gEnv.set("MOZ_NO_SERVICE_FALLBACK", "");
+  }
 }
--- a/toolkit/mozapps/update/tests/moz.build
+++ b/toolkit/mozapps/update/tests/moz.build
@@ -65,35 +65,30 @@ TEST_HARNESS_FILES.testing.mochitest.chr
     'data/sharedUpdateXML.js',
     'data/simple.mar',
 ]
 
 FINAL_TARGET_FILES += [
     'data/complete.exe',
     'data/complete.mar',
     'data/complete.png',
-    'data/complete_log_success_gonk',
-    'data/complete_log_success_gonk_stage',
     'data/complete_log_success_mac',
     'data/complete_log_success_win',
     'data/complete_mac.mar',
     'data/complete_precomplete',
     'data/complete_precomplete_mac',
     'data/complete_removed-files',
     'data/complete_removed-files_mac',
     'data/complete_update_manifest',
     'data/old_version.mar',
     'data/partial.exe',
     'data/partial.mar',
     'data/partial.png',
-    'data/partial_log_failure_gonk',
     'data/partial_log_failure_mac',
     'data/partial_log_failure_win',
-    'data/partial_log_success_gonk',
-    'data/partial_log_success_gonk_stage',
     'data/partial_log_success_mac',
     'data/partial_log_success_win',
     'data/partial_mac.mar',
     'data/partial_precomplete',
     'data/partial_precomplete_mac',
     'data/partial_removed-files',
     'data/partial_removed-files_mac',
     'data/partial_update_manifest',
--- a/toolkit/mozapps/update/tests/unit_aus_update/cleanupDownloadingForOlderAppVersion.js
+++ b/toolkit/mozapps/update/tests/unit_aus_update/cleanupDownloadingForOlderAppVersion.js
@@ -15,23 +15,15 @@ function run_test() {
   let updates = getLocalUpdateString(patches, null, null, "version 0.9", "0.9");
   writeUpdatesToXMLFile(getLocalUpdatesXMLString(updates), true);
   writeStatusFile(STATE_DOWNLOADING);
 
   writeUpdatesToXMLFile(getLocalUpdatesXMLString(""), false);
 
   standardInit();
 
-  if (IS_TOOLKIT_GONK) {
-    // Gonk doesn't resume downloads at boot time, so the update
-    // will remain active until the user chooses a new one, at
-    // which point, the old update will be removed.
-    Assert.ok(!!gUpdateManager.activeUpdate,
-              "there should be an active update");
-  } else {
-    Assert.ok(!gUpdateManager.activeUpdate,
-              "there should not be an active update");
-  }
+  Assert.ok(!gUpdateManager.activeUpdate,
+            "there should not be an active update");
   Assert.equal(gUpdateManager.updateCount, 0,
                "the update manager update count" + MSG_SHOULD_EQUAL);
 
   doTestFinish();
 }
--- a/toolkit/mozapps/update/tests/unit_aus_update/cleanupDownloadingForSameVersionAndBuildID.js
+++ b/toolkit/mozapps/update/tests/unit_aus_update/cleanupDownloadingForSameVersionAndBuildID.js
@@ -16,23 +16,15 @@ function run_test() {
                                      "2007010101");
   writeUpdatesToXMLFile(getLocalUpdatesXMLString(updates), true);
   writeStatusFile(STATE_DOWNLOADING);
 
   writeUpdatesToXMLFile(getLocalUpdatesXMLString(""), false);
 
   standardInit();
 
-  if (IS_TOOLKIT_GONK) {
-    // Gonk doesn't resume downloads at boot time, so the update
-    // will remain active until the user chooses a new one, at
-    // which point, the old update will be removed.
-    Assert.ok(!!gUpdateManager.activeUpdate,
-              "there should be an active update");
-  } else {
-    Assert.ok(!gUpdateManager.activeUpdate,
-              "there should not be an active update");
-  }
+  Assert.ok(!gUpdateManager.activeUpdate,
+            "there should not be an active update");
   Assert.equal(gUpdateManager.updateCount, 0,
                "the update manager update count" + MSG_SHOULD_EQUAL);
 
   doTestFinish();
 }
--- a/toolkit/mozapps/update/tests/unit_aus_update/downloadAndHashCheckMar.js
+++ b/toolkit/mozapps/update/tests/unit_aus_update/downloadAndHashCheckMar.js
@@ -61,54 +61,16 @@ function check_test_helper_pt1_1() {
 
 function check_test_helper_pt1_2() {
   Assert.equal(gStatusResult, gExpectedStatusResult,
                "the download status result" + MSG_SHOULD_EQUAL);
   gAUS.removeDownloadListener(downloadListener);
   gNextRunFunc();
 }
 
-// The following 3 functions are a workaround for GONK due to Bug 828858 and
-// can be removed after it is fixed and the callers are changed to use the
-// regular helper functions.
-function run_test_helper_bug828858_pt1(aMsg, aExpectedStatusResult, aNextRunFunc) {
-  gUpdates = null;
-  gUpdateCount = null;
-  gStatusResult = null;
-  gCheckFunc = check_test_helper_bug828858_pt1_1;
-  gNextRunFunc = aNextRunFunc;
-  gExpectedStatusResult = aExpectedStatusResult;
-  debugDump(aMsg, Components.stack.caller);
-  gUpdateChecker.checkForUpdates(updateCheckListener, true);
-}
-
-function check_test_helper_bug828858_pt1_1() {
-  Assert.equal(gUpdateCount, 1,
-               "the update count" + MSG_SHOULD_EQUAL);
-  gCheckFunc = check_test_helper_bug828858_pt1_2;
-  let bestUpdate = gAUS.selectUpdate(gUpdates, gUpdateCount);
-  let state = gAUS.downloadUpdate(bestUpdate, false);
-  if (state == STATE_NONE || state == STATE_FAILED) {
-    do_throw("nsIApplicationUpdateService:downloadUpdate returned " + state);
-  }
-  gAUS.addDownloadListener(downloadListener);
-}
-
-function check_test_helper_bug828858_pt1_2() {
-  if (gStatusResult == Cr.NS_ERROR_CONTENT_CORRUPTED) {
-    Assert.ok(true,
-              "the status result should equal NS_ERROR_CONTENT_CORRUPTED");
-  } else {
-    Assert.equal(gStatusResult, gExpectedStatusResult,
-                 "the download status result" + MSG_SHOULD_EQUAL);
-  }
-  gAUS.removeDownloadListener(downloadListener);
-  gNextRunFunc();
-}
-
 function setResponseBody(aHashFunction, aHashValue, aSize) {
   let patches = getRemotePatchString(null, null,
                                      aHashFunction, aHashValue, aSize);
   let updates = getRemoteUpdateString(patches);
   gResponseBody = getRemoteUpdatesXMLString(updates);
 }
 
 // mar download with a valid MD5 hash
@@ -189,22 +151,11 @@ function run_test_pt11() {
   run_test_helper_pt1("mar download with the mar not found",
                       Cr.NS_ERROR_UNEXPECTED, run_test_pt12);
 }
 
 // mar download with a valid MD5 hash but invalid file size
 function run_test_pt12() {
   const arbitraryFileSize = 1024000;
   setResponseBody("MD5", MD5_HASH_SIMPLE_MAR, arbitraryFileSize);
-  if (IS_TOOLKIT_GONK) {
-    // There seems to be a race on the web server side when the patchFile is
-    // stored on the SDCard. Sometimes, the webserver will serve up an error
-    // 416 and the contents of the file, and sometimes it will serve up an error
-    // 200 and no contents. This can cause either NS_ERROR_UNEXPECTED or
-    // NS_ERROR_CONTENT_CORRUPTED.
-    // Bug 828858 was filed to follow up on this issue.
-    run_test_helper_bug828858_pt1("mar download with a valid MD5 hash but invalid file size",
-                                  Cr.NS_ERROR_UNEXPECTED, finish_test);
-  } else {
-    run_test_helper_pt1("mar download with a valid MD5 hash but invalid file size",
-                        Cr.NS_ERROR_UNEXPECTED, finish_test);
-  }
+  run_test_helper_pt1("mar download with a valid MD5 hash but invalid file size",
+                      Cr.NS_ERROR_UNEXPECTED, finish_test);
 }
--- a/toolkit/mozapps/update/tests/unit_aus_update/downloadInterruptedRecovery.js
+++ b/toolkit/mozapps/update/tests/unit_aus_update/downloadInterruptedRecovery.js
@@ -207,29 +207,18 @@ function run_test_pt1() {
 }
 
 // Test disconnecting during an update
 function run_test_pt2() {
   gIncrementalDownloadErrorType = 0;
   Services.prefs.setIntPref(PREF_APP_UPDATE_SOCKET_MAXERRORS, 2);
   Services.prefs.setIntPref(PREF_APP_UPDATE_RETRYTIMEOUT, 0);
   setResponseBody("MD5", MD5_HASH_SIMPLE_MAR);
-
-  let expectedResult;
-  if (IS_TOOLKIT_GONK) {
-    // Gonk treats interrupted downloads differently. For gonk, if the state
-    // is pending, this means that the download has completed and only the
-    // staging needs to occur. So gonk will skip the download portion which
-    // results in an NS_OK return.
-    expectedResult = Cr.NS_OK;
-  } else {
-    expectedResult = Cr.NS_ERROR_NET_RESET;
-  }
   run_test_helper_pt1("mar download with connection interruption without recovery",
-                      expectedResult, run_test_pt3);
+                      Cr.NS_ERROR_NET_RESET, run_test_pt3);
 }
 
 // Test entering offline mode while downloading
 function run_test_pt3() {
   gIncrementalDownloadErrorType = 4;
   setResponseBody("MD5", MD5_HASH_SIMPLE_MAR);
   run_test_helper_pt1("mar download with offline mode",
                       Cr.NS_OK, finish_test);
--- a/toolkit/mozapps/update/tests/unit_aus_update/downloadResumeForSameAppVersion.js
+++ b/toolkit/mozapps/update/tests/unit_aus_update/downloadResumeForSameAppVersion.js
@@ -14,25 +14,18 @@ function run_test() {
   let updates = getLocalUpdateString(patches, null, null, "1.0", "1.0");
   writeUpdatesToXMLFile(getLocalUpdatesXMLString(updates), true);
   writeStatusFile(STATE_DOWNLOADING);
 
   writeUpdatesToXMLFile(getLocalUpdatesXMLString(""), false);
 
   standardInit();
 
-  if (IS_TOOLKIT_GONK) {
-    // GONK doesn't resume downloads at boot time, so the updateCount will
-    // always be zero.
-    Assert.equal(gUpdateManager.updateCount, 0,
-                 "the update manager updateCount attribute" + MSG_SHOULD_EQUAL);
-  } else {
-    Assert.equal(gUpdateManager.updateCount, 1,
-                 "the update manager updateCount attribute" + MSG_SHOULD_EQUAL);
-  }
+  Assert.equal(gUpdateManager.updateCount, 1,
+               "the update manager updateCount attribute" + MSG_SHOULD_EQUAL);
   Assert.equal(gUpdateManager.activeUpdate.state, STATE_DOWNLOADING,
                "the update manager activeUpdate state attribute" +
                MSG_SHOULD_EQUAL);
 
   // Pause the download and reload the Update Manager with an empty update so
   // the Application Update Service doesn't write the update xml files during
   // xpcom-shutdown which will leave behind the test directory.
   gAUS.pauseDownload();
--- a/toolkit/mozapps/update/tests/unit_base_updater/marAppApplyDirLockedStageFailure_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marAppApplyDirLockedStageFailure_win.js
@@ -20,17 +20,17 @@ function run_test() {
   createUpdateInProgressLockFile(getAppBaseDir());
   setupUpdaterTest(FILE_COMPLETE_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(false);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   removeUpdateInProgressLockFile(getAppBaseDir());
   checkPostUpdateRunningFile(false);
--- a/toolkit/mozapps/update/tests/unit_base_updater/marAppApplyUpdateAppBinInUseStageSuccess_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marAppApplyUpdateAppBinInUseStageSuccess_win.js
@@ -18,26 +18,26 @@ function run_test() {
   gTestDirs = gTestDirsCompleteSuccess;
   setupUpdaterTest(FILE_COMPLETE_MAR, undefined);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true, false);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   lockDirectory(getAppBaseDir().path);
   // Switch the application to the staged application that was updated.
   runUpdateUsingApp(STATE_SUCCEEDED);
 }
 
 /**
  * Called after the call to runUpdateUsingApp finishes.
  */
--- a/toolkit/mozapps/update/tests/unit_base_updater/marAppApplyUpdateStageSuccess.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marAppApplyUpdateStageSuccess.js
@@ -18,26 +18,26 @@ function run_test() {
   gTestDirs = gTestDirsCompleteSuccess;
   setupUpdaterTest(FILE_COMPLETE_MAR, true);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
   runUpdateUsingApp(STATE_SUCCEEDED);
 }
 
 /**
  * Called after the call to runUpdateUsingApp finishes.
  */
 function runUpdateFinished() {
--- a/toolkit/mozapps/update/tests/unit_base_updater/marAppInUseStageFailureComplete_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marAppInUseStageFailureComplete_win.js
@@ -23,28 +23,28 @@ function run_test() {
 function setupUpdaterTestFinished() {
   runHelperFileInUse(DIR_RESOURCES + gCallbackBinFile, false);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marAppInUseStageSuccessComplete_unix.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marAppInUseStageSuccessComplete_unix.js
@@ -26,26 +26,26 @@ function setupUpdaterTestFinished() {
   setupSymLinks();
   runHelperFileInUse(DIR_RESOURCES + gCallbackBinFile, false);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
   runUpdate(STATE_SUCCEEDED, true, 0, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
@@ -79,18 +79,17 @@ function checkPostUpdateAppLogFinished()
   checkUpdateLogContents(LOG_REPLACE_SUCCESS, false, true);
   checkCallbackLog();
 }
 
 /**
  * Setup symlinks for the test.
  */
 function setupSymLinks() {
-  // The tests don't support symlinks on gonk.
-  if (IS_UNIX && !IS_TOOLKIT_GONK) {
+  if (IS_UNIX) {
     removeSymlink();
     createSymlink();
     do_register_cleanup(removeSymlink);
     gTestFiles.splice(gTestFiles.length - 3, 0,
       {
         description: "Readable symlink",
         fileName: "link",
         relPathDir: DIR_RESOURCES,
@@ -103,13 +102,12 @@ function setupSymLinks() {
       });
   }
 }
 
 /**
  * Checks the state of the symlinks for the test.
  */
 function checkSymLinks() {
-  // The tests don't support symlinks on gonk.
-  if (IS_UNIX && !IS_TOOLKIT_GONK) {
+  if (IS_UNIX) {
     checkSymlink();
   }
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marCallbackAppStageSuccessComplete_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marCallbackAppStageSuccessComplete_win.js
@@ -15,28 +15,28 @@ function run_test() {
   gCallbackBinFile = "exe0.exe";
   setupUpdaterTest(FILE_COMPLETE_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_SUCCEEDED, true, 0, false);
+  runUpdate(STATE_SUCCEEDED, true, 0, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   checkPostUpdateAppLog();
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marCallbackAppStageSuccessPartial_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marCallbackAppStageSuccessPartial_win.js
@@ -15,28 +15,28 @@ function run_test() {
   gCallbackBinFile = "exe0.exe";
   setupUpdaterTest(FILE_PARTIAL_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_PARTIAL_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_PARTIAL_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_SUCCEEDED, true, 0, false);
+  runUpdate(STATE_SUCCEEDED, true, 0, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   checkPostUpdateAppLog();
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marFailurePartial.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marFailurePartial.js
@@ -17,18 +17,18 @@ function run_test() {
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
   // If execv is used the updater process will turn into the callback process
   // and the updater's return code will be that of the callback process.
-  runUpdate(STATE_FAILED_LOADSOURCE_ERROR_WRONG_SIZE, false,
-            (USE_EXECV ? 0 : 1), true);
+  runUpdate(STATE_FAILED_LOADSOURCE_ERROR_WRONG_SIZE, false, (USE_EXECV ? 0 : 1),
+            true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   checkAppBundleModTime();
   standardInit();
--- a/toolkit/mozapps/update/tests/unit_base_updater/marFileInUseStageFailureComplete_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marFileInUseStageFailureComplete_win.js
@@ -23,28 +23,28 @@ function setupUpdaterTestFinished() {
   runHelperFileInUse(gTestFiles[13].relPathDir + gTestFiles[13].fileName,
                      false);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marFileInUseStageFailurePartial_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marFileInUseStageFailurePartial_win.js
@@ -23,28 +23,28 @@ function setupUpdaterTestFinished() {
   runHelperFileInUse(gTestFiles[11].relPathDir + gTestFiles[11].fileName,
                      false);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_PARTIAL_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_PARTIAL_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marFileLockedStageFailureComplete_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marFileLockedStageFailureComplete_win.js
@@ -22,17 +22,17 @@ function run_test() {
 function setupUpdaterTestFinished() {
   runHelperLockFile(gTestFiles[3]);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   // Files aren't checked after staging since this test locks a file which
--- a/toolkit/mozapps/update/tests/unit_base_updater/marFileLockedStageFailurePartial_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marFileLockedStageFailurePartial_win.js
@@ -22,17 +22,17 @@ function run_test() {
 function setupUpdaterTestFinished() {
   runHelperLockFile(gTestFiles[2]);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   // Files aren't checked after staging since this test locks a file which
--- a/toolkit/mozapps/update/tests/unit_base_updater/marRMRFDirFileInUseStageFailureComplete_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marRMRFDirFileInUseStageFailureComplete_win.js
@@ -24,28 +24,28 @@ function setupUpdaterTestFinished() {
   runHelperFileInUse(gTestDirs[4].relPathDir + gTestDirs[4].subDirs[0] +
                      gTestDirs[4].subDirFiles[0], true);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marRMRFDirFileInUseStageFailurePartial_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marRMRFDirFileInUseStageFailurePartial_win.js
@@ -23,28 +23,28 @@ function run_test() {
 function setupUpdaterTestFinished() {
   runHelperFileInUse(gTestDirs[2].relPathDir + gTestDirs[2].files[0], true);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_PARTIAL_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_PARTIAL_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marStageFailurePartial.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marStageFailurePartial.js
@@ -18,17 +18,17 @@ function run_test() {
   setTestFilesAndDirsForFailure();
   setupUpdaterTest(FILE_PARTIAL_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   Assert.equal(readStatusState(), STATE_NONE,
                "the status file state" + MSG_SHOULD_EQUAL);
--- a/toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessComplete.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessComplete.js
@@ -20,26 +20,26 @@ function run_test() {
   setupSymLinks();
   setupUpdaterTest(FILE_COMPLETE_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
   runUpdate(STATE_SUCCEEDED, true, 0, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
@@ -96,18 +96,17 @@ function checkDistributionDir() {
 }
 
 /**
  * Setup symlinks for the test.
  */
 function setupSymLinks() {
   // Don't test symlinks on Mac OS X in this test since it tends to timeout.
   // It is tested on Mac OS X in marAppInUseStageSuccessComplete_unix.js
-  // The tests don't support symlinks on gonk.
-  if (IS_UNIX && !IS_MACOSX && !IS_TOOLKIT_GONK) {
+  if (IS_UNIX && !IS_MACOSX) {
     removeSymlink();
     createSymlink();
     do_register_cleanup(removeSymlink);
     gTestFiles.splice(gTestFiles.length - 3, 0,
       {
         description: "Readable symlink",
         fileName: "link",
         relPathDir: DIR_RESOURCES,
@@ -120,13 +119,14 @@ function setupSymLinks() {
       });
   }
 }
 
 /**
  * Checks the state of the symlinks for the test.
  */
 function checkSymLinks() {
-  // The tests don't support symlinks on gonk.
-  if (IS_UNIX && !IS_MACOSX && !IS_TOOLKIT_GONK) {
+  // Don't test symlinks on Mac OS X in this test since it tends to timeout.
+  // It is tested on Mac OS X in marAppInUseStageSuccessComplete_unix.js
+  if (IS_UNIX && !IS_MACOSX) {
     checkSymlink();
   }
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessPartial.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessPartial.js
@@ -20,28 +20,28 @@ function run_test() {
   setupDistributionDir();
   setupUpdaterTest(FILE_PARTIAL_MAR, true);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_PARTIAL_SUCCESS_STAGE, true, false, true);
+  checkUpdateLogContents(LOG_PARTIAL_SUCCESS, true, false, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_SUCCEEDED, true, 0, false);
+  runUpdate(STATE_SUCCEEDED, true, 0, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   checkPostUpdateAppLog();
 }
--- a/toolkit/mozapps/update/tests/unit_base_updater/marVersionDowngrade.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marVersionDowngrade.js
@@ -20,18 +20,18 @@ function run_test() {
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
   // If execv is used the updater process will turn into the callback process
   // and the updater's return code will be that of the callback process.
-  runUpdateUsingUpdater(STATE_FAILED_VERSION_DOWNGRADE_ERROR, false,
-                        (USE_EXECV ? 0 : 1));
+  runUpdate(STATE_FAILED_VERSION_DOWNGRADE_ERROR, false, (USE_EXECV ? 0 : 1),
+            false);
 }
 
 /**
  * Called after the call to runUpdateUsingUpdater finishes.
  */
 function runUpdateFinished() {
   standardInit();
   Assert.equal(readStatusState(), STATE_NONE,
--- a/toolkit/mozapps/update/tests/unit_base_updater/marWrongApplyToDirFailure_win.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marWrongApplyToDirFailure_win.js
@@ -19,18 +19,18 @@ function run_test() {
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
   overrideApplyToDir(getApplyDirPath() + "/../NoSuchDir");
   // If execv is used the updater process will turn into the callback process
   // and the updater's return code will be that of the callback process.
-  runUpdateUsingUpdater(STATE_FAILED_INVALID_APPLYTO_DIR_ERROR, false,
-                        (USE_EXECV ? 0 : 1));
+  runUpdate(STATE_FAILED_INVALID_APPLYTO_DIR_ERROR, false, (USE_EXECV ? 0 : 1),
+            false);
 }
 
 /**
  * Called after the call to runUpdateUsingUpdater finishes.
  */
 function runUpdateFinished() {
   standardInit();
   checkPostUpdateRunningFile(false);
--- a/toolkit/mozapps/update/tests/unit_base_updater/marWrongChannel.js
+++ b/toolkit/mozapps/update/tests/unit_base_updater/marWrongChannel.js
@@ -20,18 +20,18 @@ function run_test() {
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
   // If execv is used the updater process will turn into the callback process
   // and the updater's return code will be that of the callback process.
-  runUpdateUsingUpdater(STATE_FAILED_MAR_CHANNEL_MISMATCH_ERROR, false,
-                        (USE_EXECV ? 0 : 1));
+  runUpdate(STATE_FAILED_MAR_CHANNEL_MISMATCH_ERROR, false, (USE_EXECV ? 0 : 1),
+            false);
 }
 
 /**
  * Called after the call to runUpdateUsingUpdater finishes.
  */
 function runUpdateFinished() {
   standardInit();
   Assert.equal(readStatusState(), STATE_NONE,
--- a/toolkit/mozapps/update/tests/unit_service_updater/bootstrapSvc.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/bootstrapSvc.js
@@ -14,17 +14,17 @@ function run_test() {
   gTestDirs = [];
   setupUpdaterTest(FILE_COMPLETE_MAR, null);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  runUpdateUsingService(STATE_SUCCEEDED, false, true);
+  runUpdate(STATE_SUCCEEDED, false, 0, true);
 }
 
 /**
  * Called after the call to runUpdateUsingService finishes.
  */
 function runUpdateFinished() {
   checkFilesAfterUpdateSuccess(getApplyDirFile, false, false);
 
--- a/toolkit/mozapps/update/tests/unit_service_updater/marAppApplyDirLockedStageFailureSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marAppApplyDirLockedStageFailureSvc_win.js
@@ -20,17 +20,17 @@ function run_test() {
   createUpdateInProgressLockFile(getAppBaseDir());
   setupUpdaterTest(FILE_COMPLETE_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(false);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   removeUpdateInProgressLockFile(getAppBaseDir());
   checkPostUpdateRunningFile(false);
--- a/toolkit/mozapps/update/tests/unit_service_updater/marAppApplyUpdateAppBinInUseStageSuccessSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marAppApplyUpdateAppBinInUseStageSuccessSvc_win.js
@@ -18,26 +18,26 @@ function run_test() {
   gTestDirs = gTestDirsCompleteSuccess;
   setupUpdaterTest(FILE_COMPLETE_MAR, undefined);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true, false);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   lockDirectory(getAppBaseDir().path);
   // Switch the application to the staged application that was updated.
   runUpdateUsingApp(STATE_SUCCEEDED);
 }
 
 /**
  * Called after the call to runUpdateUsingApp finishes.
  */
--- a/toolkit/mozapps/update/tests/unit_service_updater/marAppApplyUpdateStageSuccessSvc.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marAppApplyUpdateStageSuccessSvc.js
@@ -18,26 +18,26 @@ function run_test() {
   gTestDirs = gTestDirsCompleteSuccess;
   setupUpdaterTest(FILE_COMPLETE_MAR, true);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
   runUpdateUsingApp(STATE_SUCCEEDED);
 }
 
 /**
  * Called after the call to runUpdateUsingApp finishes.
  */
 function runUpdateFinished() {
--- a/toolkit/mozapps/update/tests/unit_service_updater/marAppInUseStageFailureCompleteSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marAppInUseStageFailureCompleteSvc_win.js
@@ -23,28 +23,28 @@ function run_test() {
 function setupUpdaterTestFinished() {
   runHelperFileInUse(DIR_RESOURCES + gCallbackBinFile, false);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_service_updater/marCallbackAppStageSuccessCompleteSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marCallbackAppStageSuccessCompleteSvc_win.js
@@ -15,28 +15,28 @@ function run_test() {
   gCallbackBinFile = "exe0.exe";
   setupUpdaterTest(FILE_COMPLETE_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_SUCCEEDED, true, 0, false);
+  runUpdate(STATE_SUCCEEDED, true, 0, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   checkPostUpdateAppLog();
 }
--- a/toolkit/mozapps/update/tests/unit_service_updater/marCallbackAppStageSuccessPartialSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marCallbackAppStageSuccessPartialSvc_win.js
@@ -15,28 +15,28 @@ function run_test() {
   gCallbackBinFile = "exe0.exe";
   setupUpdaterTest(FILE_PARTIAL_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_PARTIAL_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_PARTIAL_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_SUCCEEDED, true, 0, false);
+  runUpdate(STATE_SUCCEEDED, true, 0, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   checkPostUpdateAppLog();
 }
--- a/toolkit/mozapps/update/tests/unit_service_updater/marFailurePartialSvc.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marFailurePartialSvc.js
@@ -17,18 +17,18 @@ function run_test() {
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
   // If execv is used the updater process will turn into the callback process
   // and the updater's return code will be that of the callback process.
-  runUpdate(STATE_FAILED_LOADSOURCE_ERROR_WRONG_SIZE, false,
-            (USE_EXECV ? 0 : 1), true);
+  runUpdate(STATE_FAILED_LOADSOURCE_ERROR_WRONG_SIZE, false, (USE_EXECV ? 0 : 1),
+            true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   checkAppBundleModTime();
   standardInit();
--- a/toolkit/mozapps/update/tests/unit_service_updater/marFileInUseStageFailureCompleteSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marFileInUseStageFailureCompleteSvc_win.js
@@ -23,28 +23,28 @@ function setupUpdaterTestFinished() {
   runHelperFileInUse(gTestFiles[13].relPathDir + gTestFiles[13].fileName,
                      false);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_service_updater/marFileInUseStageFailurePartialSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marFileInUseStageFailurePartialSvc_win.js
@@ -23,28 +23,28 @@ function setupUpdaterTestFinished() {
   runHelperFileInUse(gTestFiles[11].relPathDir + gTestFiles[11].fileName,
                      false);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_PARTIAL_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_PARTIAL_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_service_updater/marFileLockedStageFailureCompleteSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marFileLockedStageFailureCompleteSvc_win.js
@@ -22,17 +22,17 @@ function run_test() {
 function setupUpdaterTestFinished() {
   runHelperLockFile(gTestFiles[3]);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   // Files aren't checked after staging since this test locks a file which
--- a/toolkit/mozapps/update/tests/unit_service_updater/marFileLockedStageFailurePartialSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marFileLockedStageFailurePartialSvc_win.js
@@ -22,17 +22,17 @@ function run_test() {
 function setupUpdaterTestFinished() {
   runHelperLockFile(gTestFiles[2]);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   // Files aren't checked after staging since this test locks a file which
--- a/toolkit/mozapps/update/tests/unit_service_updater/marRMRFDirFileInUseStageFailureCompleteSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marRMRFDirFileInUseStageFailureCompleteSvc_win.js
@@ -24,28 +24,28 @@ function setupUpdaterTestFinished() {
   runHelperFileInUse(gTestDirs[4].relPathDir + gTestDirs[4].subDirs[0] +
                      gTestDirs[4].subDirFiles[0], true);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_service_updater/marRMRFDirFileInUseStageFailurePartialSvc_win.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marRMRFDirFileInUseStageFailurePartialSvc_win.js
@@ -23,28 +23,28 @@ function run_test() {
 function setupUpdaterTestFinished() {
   runHelperFileInUse(gTestDirs[2].relPathDir + gTestDirs[2].files[0], true);
 }
 
 /**
  * Called after the call to waitForHelperSleep finishes.
  */
 function waitForHelperSleepFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_PARTIAL_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_PARTIAL_SUCCESS, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_PENDING, true, 1, false);
+  runUpdate(STATE_AFTER_RUNUPDATE, true, 1, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   waitForHelperExit();
 }
--- a/toolkit/mozapps/update/tests/unit_service_updater/marStageFailurePartialSvc.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marStageFailurePartialSvc.js
@@ -18,17 +18,17 @@ function run_test() {
   setTestFilesAndDirsForFailure();
   setupUpdaterTest(FILE_PARTIAL_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   Assert.equal(readStatusState(), STATE_NONE,
                "the status file state" + MSG_SHOULD_EQUAL);
--- a/toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessCompleteSvc.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessCompleteSvc.js
@@ -20,26 +20,26 @@ function run_test() {
   setupSymLinks();
   setupUpdaterTest(FILE_COMPLETE_MAR, false);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_COMPLETE_SUCCESS_STAGE, true);
+  checkUpdateLogContents(LOG_COMPLETE_SUCCESS, true);
   // Switch the application to the staged application that was updated.
   runUpdate(STATE_SUCCEEDED, true, 0, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
@@ -96,18 +96,17 @@ function checkDistributionDir() {
 }
 
 /**
  * Setup symlinks for the test.
  */
 function setupSymLinks() {
   // Don't test symlinks on Mac OS X in this test since it tends to timeout.
   // It is tested on Mac OS X in marAppInUseStageSuccessComplete_unix.js
-  // The tests don't support symlinks on gonk.
-  if (IS_UNIX && !IS_MACOSX && !IS_TOOLKIT_GONK) {
+  if (IS_UNIX && !IS_MACOSX) {
     removeSymlink();
     createSymlink();
     do_register_cleanup(removeSymlink);
     gTestFiles.splice(gTestFiles.length - 3, 0,
       {
         description: "Readable symlink",
         fileName: "link",
         relPathDir: DIR_RESOURCES,
@@ -120,13 +119,14 @@ function setupSymLinks() {
       });
   }
 }
 
 /**
  * Checks the state of the symlinks for the test.
  */
 function checkSymLinks() {
-  // The tests don't support symlinks on gonk.
-  if (IS_UNIX && !IS_MACOSX && !IS_TOOLKIT_GONK) {
+  // Don't test symlinks on Mac OS X in this test since it tends to timeout.
+  // It is tested on Mac OS X in marAppInUseStageSuccessComplete_unix.js
+  if (IS_UNIX && !IS_MACOSX) {
     checkSymlink();
   }
 }
--- a/toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessPartialSvc.js
+++ b/toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessPartialSvc.js
@@ -20,28 +20,28 @@ function run_test() {
   setupDistributionDir();
   setupUpdaterTest(FILE_PARTIAL_MAR, true);
 }
 
 /**
  * Called after the call to setupUpdaterTest finishes.
  */
 function setupUpdaterTestFinished() {
-  stageUpdate();
+  stageUpdate(true);
 }
 
 /**
  * Called after the call to stageUpdate finishes.
  */
 function stageUpdateFinished() {
   checkPostUpdateRunningFile(false);
   checkFilesAfterUpdateSuccess(getStageDirFile, true);
-  checkUpdateLogContents(LOG_PARTIAL_SUCCESS_STAGE, true, false, true);
+  checkUpdateLogContents(LOG_PARTIAL_SUCCESS, true, false, true);
   // Switch the application to the staged application that was updated.
-  runUpdate(STATE_SUCCEEDED, true, 0, false);
+  runUpdate(STATE_SUCCEEDED, true, 0, true);
 }
 
 /**
  * Called after the call to runUpdate finishes.
  */
 function runUpdateFinished() {
   checkPostUpdateAppLog();
 }