Skip to content

Commit

Permalink
catch nil RewardCurrentBlockEmission and nan TotalSumPreviousTopicWei…
Browse files Browse the repository at this point in the history
…ghts at genesis
  • Loading branch information
kpeluso committed Nov 2, 2024
1 parent 38bec6c commit 6e211de
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
6 changes: 6 additions & 0 deletions x/emissions/keeper/genesis.go
Original file line number Diff line number Diff line change
Expand Up @@ -882,6 +882,9 @@ func (k *Keeper) InitGenesis(ctx context.Context, data *types.GenesisState) erro
}

// TotalSumPreviousTopicWeights
if data.TotalSumPreviousTopicWeights.IsNaN() {
return errors.Wrap(nil, "error TotalSumPreviousTopicWeights is NaN")
}
if data.TotalSumPreviousTopicWeights.Gt(alloraMath.ZeroDec()) {
if err := k.SetTotalSumPreviousTopicWeights(ctx, data.TotalSumPreviousTopicWeights); err != nil {
return errors.Wrap(err, "error setting TotalSumPreviousTopicWeights")
Expand All @@ -893,6 +896,9 @@ func (k *Keeper) InitGenesis(ctx context.Context, data *types.GenesisState) erro
}

// RewardsCurrentBlockEmission cosmossdk_io_math.Int
if data.RewardCurrentBlockEmission.IsNil() {
return errors.Wrap(nil, "error RewardCurrentBlockEmission is nil")
}
if data.RewardCurrentBlockEmission.GT(cosmosMath.ZeroInt()) {
if err := k.SetRewardCurrentBlockEmission(ctx, data.RewardCurrentBlockEmission); err != nil {
return errors.Wrap(err, "error setting RewardCurrentBlockEmission")
Expand Down
6 changes: 6 additions & 0 deletions x/emissions/keeper/genesis_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,15 @@ import (
func (s *KeeperTestSuite) TestImportExportGenesisNoError() {
err := s.emissionsKeeper.SetTopicStake(s.ctx, 2, cosmossdk_io_math.OneInt())
s.Require().NoError(err)
intVal := int64(1234567890)
err = s.emissionsKeeper.SetRewardCurrentBlockEmission(s.ctx, cosmossdk_io_math.NewInt(intVal))
s.Require().NoError(err)
genesisState, err := s.emissionsKeeper.ExportGenesis(s.ctx)
s.Require().NoError(err)

err = s.emissionsKeeper.InitGenesis(s.ctx, genesisState)
s.Require().NoError(err)
rewardCurrentBlockEmission, err := s.emissionsKeeper.GetRewardCurrentBlockEmission(s.ctx)
s.Require().NoError(err)
s.Require().Equal(rewardCurrentBlockEmission.String(), cosmossdk_io_math.NewInt(intVal).String())
}

0 comments on commit 6e211de

Please sign in to comment.