Skip to content

Commit

Permalink
test(oracle): verify that params before are not equal
Browse files Browse the repository at this point in the history
  • Loading branch information
Unique-Divine committed Dec 28, 2023
1 parent 1164d6e commit dfc1798
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 12 deletions.
6 changes: 3 additions & 3 deletions x/oracle/keeper/sudo.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,15 +38,15 @@ func (k admin) EditOracleParams(
return fmt.Errorf("get oracle params error: %s", err.Error())
}

mergedParams := newParams.mergeOracleParams(params)
mergedParams := newParams.MergeOracleParams(params)
k.UpdateParams(ctx, mergedParams)
return nil
}

// mergeOracleParams: Takes the given oracle params and merges them into the
// MergeOracleParams: Takes the given oracle params and merges them into the
// existing partial params, keeping any existing values that are not set in the
// partial.
func (partial PartialOracleParams) mergeOracleParams(
func (partial PartialOracleParams) MergeOracleParams(
oracleParams oracletypes.Params,
) oracletypes.Params {
if partial.PbMsg.VotePeriod != nil {
Expand Down
24 changes: 15 additions & 9 deletions x/oracle/keeper/sudo_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ func (s *SuiteOracleSudo) TestEditOracleParams() {
twapLookbackWindow := sdk.NewInt(int64(time.Second * 30))
minVoters := sdk.NewInt(2)
validatorFeeRatio := sdk.MustNewDecFromStr("0.7")
partialParams := oracletypes.MsgEditOracleParams{
msgEditParams := oracletypes.MsgEditOracleParams{
VotePeriod: &votePeriod,
VoteThreshold: &voteThreshold,
RewardBand: &rewardBand,
Expand All @@ -47,23 +47,29 @@ func (s *SuiteOracleSudo) TestEditOracleParams() {
MinVoters: &minVoters,
ValidatorFeeRatio: &validatorFeeRatio,
}
// TODO: Verify that params before were not equal

// Verify that params after are not equal
partialParams := oraclekeeper.PartialOracleParams{PbMsg: msgEditParams}
defaultParams := oracletypes.DefaultParams()
currParams, err := nibiru.OracleKeeper.Params.Get(ctx)
s.NoError(err)
s.Equal(currParams, defaultParams)
fullParams := partialParams.MergeOracleParams(defaultParams)
s.NotEqual(defaultParams, fullParams)

invalidSender := testutil.AccAddress()
oracleMsgServer := oraclekeeper.NewMsgServerImpl(nibiru.OracleKeeper)
goCtx := sdk.WrapSDKContext(ctx)
partialParams.Sender = invalidSender.String()
_, err := oracleMsgServer.EditOracleParams(
goCtx, &partialParams,
msgEditParams.Sender = invalidSender.String()
_, err = oracleMsgServer.EditOracleParams(
goCtx, &msgEditParams,
)
s.Error(err)

okSender := testapp.DefaultSudoRoot()
partialParams.Sender = okSender.String()
msgEditParams.Sender = okSender.String()
_, err = oracleMsgServer.EditOracleParams(
goCtx, &partialParams,
goCtx, &msgEditParams,
)
s.NoError(err)

// call admin method without err
}

0 comments on commit dfc1798

Please sign in to comment.