Commit 85a6ad31 authored by Steven Bennetts's avatar Steven Bennetts Committed by Commit Bot

BrowserLifetimeHandler: Require true/false update arg

Previously tpm_firmware_update_requested might be undefined.
This makes the argument required and ensures that it is passed.

Bug: 800103
Cq-Include-Trybots: master.tryserver.chromium.linux:closure_compilation
Change-Id: Ia5263d011a58f5f444b64df2e7109083c70b3daf
Reviewed-on: https://chromium-review.googlesource.com/887631
Commit-Queue: Steven Bennetts <stevenjb@chromium.org>
Reviewed-by: default avatarDemetrios Papadopoulos <dpapad@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532997}
parent cdaee0bb
......@@ -417,7 +417,7 @@ Polymer({
/** @private */
onRelaunchAndPowerwashTap_: function() {
this.lifetimeBrowserProxy_.factoryReset();
this.lifetimeBrowserProxy_.factoryReset(false);
},
/**
......
......@@ -19,7 +19,7 @@ cr.define('settings', function() {
* Triggers a factory reset. The parameter indicates whether to install a
* TPM firmware update (if available) after the reset.
*
* @param {boolean=} requestTpmFirmwareUpdate
* @param {boolean} requestTpmFirmwareUpdate
*/
factoryReset(requestTpmFirmwareUpdate) {}
// </if>
......
......@@ -3,6 +3,14 @@
# found in the LICENSE file.
{
'targets': [
{
'target_name': 'powerwash_dialog',
'dependencies': [
'../compiled_resources2.gyp:lifetime_browser_proxy',
'reset_browser_proxy',
],
'includes': ['../../../../../third_party/closure_compiler/compile_js2.gypi'],
},
{
'target_name': 'reset_page',
'dependencies': [
......
......@@ -12,7 +12,10 @@ Polymer({
properties: {
/** @public */
requestTpmFirmwareUpdate: Boolean,
requestTpmFirmwareUpdate: {
type: Boolean,
value: false,
}
},
/** @override */
......
......@@ -59,8 +59,10 @@ void BrowserLifetimeHandler::HandleSignOutAndRestart(
void BrowserLifetimeHandler::HandleFactoryReset(
const base::ListValue* args) {
bool tpm_firmware_update_requested;
args->GetBoolean(0, &tpm_firmware_update_requested);
const base::Value::ListStorage& args_list = args->GetList();
CHECK_EQ(1U, args_list.size());
bool tpm_firmware_update_requested = args_list[0].GetBool();
if (tpm_firmware_update_requested) {
chromeos::tpm_firmware_update::ShouldOfferUpdateViaPowerwash(
base::BindOnce([](bool offer_update) {
......
......@@ -491,7 +491,10 @@ cr.define('settings_about_page', function() {
assertFalse(page.$.relaunchAndPowerwash.hidden);
MockInteractions.tap(page.$.relaunchAndPowerwash);
return lifetimeBrowserProxy.whenCalled('factoryReset');
return lifetimeBrowserProxy.whenCalled('factoryReset')
.then((requestTpmFirmwareUpdate) => {
assertFalse(requestTpmFirmwareUpdate);
});
});
});
......@@ -590,7 +593,7 @@ cr.define('settings_about_page', function() {
assertTrue(dialog.$.dialog.open);
MockInteractions.tap(dialog.$$('#powerwash'));
return lifetimeBrowserProxy.whenCalled('factoryReset')
.then(function(requestTpmFirmwareUpdate) {
.then((requestTpmFirmwareUpdate) => {
assertTrue(requestTpmFirmwareUpdate);
});
});
......
......@@ -196,7 +196,10 @@ cr.define('settings_reset_page', function() {
const dialog = resetPage.$$('settings-powerwash-dialog');
assertTrue(!!dialog);
MockInteractions.tap(dialog.$.powerwash);
return lifetimeBrowserProxy.whenCalled('factoryReset');
return lifetimeBrowserProxy.whenCalled('factoryReset')
.then((requestTpmFirmwareUpdate) => {
assertFalse(requestTpmFirmwareUpdate);
});
});
}
});
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment