chore(x/upgrade): Use ValidateBasic for Plan in ReadUpgradeInfoFromDisk (backport #18210) (#18229)

Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>
This commit is contained in:
mergify[bot] 2023-10-24 12:29:29 +02:00 committed by GitHub
parent 42dbfc4d70
commit cabde7b191
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 4 deletions

View File

@ -573,6 +573,10 @@ func (k Keeper) ReadUpgradeInfoFromDisk() (types.Plan, error) {
return upgradeInfo, err
}
if err := upgradeInfo.ValidateBasic(); err != nil {
return upgradeInfo, err
}
return upgradeInfo, nil
}

View File

@ -88,6 +88,12 @@ func (s *KeeperTestSuite) TestReadUpgradeInfoFromDisk() {
s.Require().NoError(err)
expected.Height = 101
s.Require().Equal(expected, ui)
// create invalid upgrade plan (with empty name)
expected.Name = ""
s.Require().NoError(s.upgradeKeeper.DumpUpgradeInfoToDisk(101, expected))
_, err = s.upgradeKeeper.ReadUpgradeInfoFromDisk()
s.Require().ErrorContains(err, "name cannot be empty: invalid request")
}
func (s *KeeperTestSuite) TestScheduleUpgrade() {

View File

@ -32,10 +32,6 @@ func (k msgServer) SoftwareUpgrade(goCtx context.Context, msg *types.MsgSoftware
return nil, errors.Wrapf(types.ErrInvalidSigner, "expected %s got %s", k.authority, msg.Authority)
}
if err := msg.Plan.ValidateBasic(); err != nil {
return nil, errors.Wrap(err, "plan")
}
ctx := sdk.UnwrapSDKContext(goCtx)
err := k.ScheduleUpgrade(ctx, msg.Plan)
if err != nil {