forked from mirrors/gecko-dev
Differential Revision: https://phabricator.services.mozilla.com/D65577 --HG-- rename : browser/components/urlbar/tests/browser/tips/browser.ini => browser/components/urlbar/tests/browser-tips/browser.ini rename : browser/components/urlbar/tests/browser/tips/browser_interventions.js => browser/components/urlbar/tests/browser-tips/browser_interventions.js rename : browser/components/urlbar/tests/browser/tips/browser_picks.js => browser/components/urlbar/tests/browser-tips/browser_picks.js rename : browser/components/urlbar/tests/browser/tips/browser_searchTips.js => browser/components/urlbar/tests/browser-tips/browser_searchTips.js rename : browser/components/urlbar/tests/browser/tips/browser_searchTips_interaction.js => browser/components/urlbar/tests/browser-tips/browser_searchTips_interaction.js rename : browser/components/urlbar/tests/browser/tips/browser_selection.js => browser/components/urlbar/tests/browser-tips/browser_selection.js rename : browser/components/urlbar/tests/browser/tips/browser_updateAsk.js => browser/components/urlbar/tests/browser-tips/browser_updateAsk.js rename : browser/components/urlbar/tests/browser/tips/browser_updateRefresh.js => browser/components/urlbar/tests/browser-tips/browser_updateRefresh.js rename : browser/components/urlbar/tests/browser/tips/browser_updateRestart.js => browser/components/urlbar/tests/browser-tips/browser_updateRestart.js rename : browser/components/urlbar/tests/browser/tips/browser_updateWeb.js => browser/components/urlbar/tests/browser-tips/browser_updateWeb.js rename : browser/components/urlbar/tests/browser/tips/head.js => browser/components/urlbar/tests/browser-tips/head.js extra : moz-landing-system : lando
70 lines
1.9 KiB
JavaScript
70 lines
1.9 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
* http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
// Checks the UPDATE_ASK tip.
|
|
//
|
|
// The update parts of this test are adapted from:
|
|
// https://searchfox.org/mozilla-central/source/toolkit/mozapps/update/tests/browser/browser_aboutDialog_fc_downloadOptIn.js
|
|
|
|
"use strict";
|
|
|
|
let params = { queryString: "&invalidCompleteSize=1" };
|
|
|
|
let downloadInfo = [];
|
|
if (Services.prefs.getBoolPref(PREF_APP_UPDATE_BITS_ENABLED, false)) {
|
|
downloadInfo[0] = { patchType: "partial", bitsResult: "0" };
|
|
} else {
|
|
downloadInfo[0] = { patchType: "partial", internalResult: "0" };
|
|
}
|
|
|
|
let preSteps = [
|
|
{
|
|
panelId: "checkingForUpdates",
|
|
checkActiveUpdate: null,
|
|
continueFile: CONTINUE_CHECK,
|
|
},
|
|
{
|
|
panelId: "downloadAndInstall",
|
|
checkActiveUpdate: null,
|
|
continueFile: null,
|
|
},
|
|
];
|
|
|
|
let postSteps = [
|
|
{
|
|
panelId: "downloading",
|
|
checkActiveUpdate: { state: STATE_DOWNLOADING },
|
|
continueFile: CONTINUE_DOWNLOAD,
|
|
downloadInfo,
|
|
},
|
|
{
|
|
panelId: "apply",
|
|
checkActiveUpdate: { state: STATE_PENDING },
|
|
continueFile: null,
|
|
},
|
|
];
|
|
|
|
add_task(async function test() {
|
|
// Disable the pref that automatically downloads and installs updates.
|
|
await UpdateUtils.setAppUpdateAutoEnabled(false);
|
|
|
|
// Set up the "download and install" update state.
|
|
await initUpdate(params);
|
|
UrlbarProviderInterventions.checkForBrowserUpdate(true);
|
|
await processUpdateSteps(preSteps);
|
|
|
|
// Pick the tip and continue with the mock update, which should attempt to
|
|
// restart the browser.
|
|
await doUpdateTest({
|
|
searchString: SEARCH_STRINGS.UPDATE,
|
|
tip: UrlbarProviderInterventions.TIP_TYPE.UPDATE_ASK,
|
|
title: /^A new version of .+ is available\.$/,
|
|
button: "Install and Restart to Update",
|
|
awaitCallback() {
|
|
return Promise.all([
|
|
processUpdateSteps(postSteps),
|
|
awaitAppRestartRequest(),
|
|
]);
|
|
},
|
|
});
|
|
});
|