Skip to content

Commit

Permalink
feat: keeper state api (#24)
Browse files Browse the repository at this point in the history
* yait

* lint

* adding helpers for updating util

* more helpers

* end blocker init (#23)

Co-authored-by: Alex Johnson <alex@skip.money>

* get and set

* test

* rm

---------

Co-authored-by: David Terpay <david.terpay@gmail.com>
Co-authored-by: David Terpay <35130517+davidterpay@users.noreply.github.com>
  • Loading branch information
3 people committed Nov 15, 2023
1 parent 06bf905 commit dd7c517
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 2 deletions.
23 changes: 21 additions & 2 deletions x/feemarket/keeper/keeper.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,12 +45,31 @@ func (k *Keeper) GetAuthority() string {

// GetState returns the feemarket module's state.
func (k *Keeper) GetState(ctx sdk.Context) (types.State, error) {
panic("TODO")
store := ctx.KVStore(k.storeKey)

key := types.KeyState
bz := store.Get(key)

state := types.State{}
if err := state.Unmarshal(bz); err != nil {
return types.State{}, err
}

return state, nil
}

// SetState sets the feemarket module's state.
func (k *Keeper) SetState(ctx sdk.Context, state types.State) error {
panic("TODO")
store := ctx.KVStore(k.storeKey)

bz, err := state.Marshal()
if err != nil {
return err
}

store.Set(types.KeyState, bz)

return nil
}

// GetParams returns the feemarket module's parameters.
Expand Down
33 changes: 33 additions & 0 deletions x/feemarket/keeper/keeper_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,3 +53,36 @@ func (s *KeeperTestSuite) SetupTest() {
s.msgServer = keeper.NewMsgServer(*s.feemarketKeeper)
s.queryServer = keeper.NewQueryServer(*s.feemarketKeeper)
}

func (s *KeeperTestSuite) TestState() {
s.Run("get state with no state set", func() {
gotState, err := s.feemarketKeeper.GetState(s.ctx)
s.Require().NoError(err)

s.Require().Equal(types.State{}, gotState)
})

s.Run("set and get default eip1559 state", func() {
state := types.DefaultState()

err := s.feemarketKeeper.SetState(s.ctx, state)
s.Require().NoError(err)

gotState, err := s.feemarketKeeper.GetState(s.ctx)
s.Require().NoError(err)

s.Require().EqualValues(state, gotState)
})

s.Run("set and get aimd eip1559 state", func() {
state := types.DefaultAIMDState()

err := s.feemarketKeeper.SetState(s.ctx, state)
s.Require().NoError(err)

gotState, err := s.feemarketKeeper.GetState(s.ctx)
s.Require().NoError(err)

s.Require().Equal(state, gotState)
})
}

0 comments on commit dd7c517

Please sign in to comment.