This commit is contained in:
mossid 2018-09-10 21:10:06 +09:00
parent 37ce8d51c6
commit f33e856950
4 changed files with 9 additions and 13 deletions

View File

@ -54,8 +54,7 @@ func TestKeeper(t *testing.T) {
space := NewKeeper(codec.NewCodec(), skey, tkey).Subspace("test")
for _, kv := range kvs {
err := space.Set(ctx, kv.key, kv.param)
require.Nil(t, err)
require.NotPanics(t, func() { space.Set(ctx, kv.key, kv.param) })
}
for _, kv := range kvs {
@ -79,8 +78,7 @@ func TestKeeper(t *testing.T) {
}
for _, kv := range kvs {
err := space.Set(ctx, kv.key, true)
require.NotNil(t, err)
require.Panics(t, func() { space.Set(ctx, kv.key, true) })
}
}

View File

@ -77,7 +77,7 @@ func (s Space) Modified(ctx sdk.Context, key Key) bool {
}
// Set parameter, return error if stored parameter has different type from input
func (s Space) Set(ctx sdk.Context, key Key, param interface{}) error {
func (s Space) Set(ctx sdk.Context, key Key, param interface{}) {
store := ctx.KVStore(s.key).Prefix(s.space)
keybz := key.Bytes()
@ -87,20 +87,18 @@ func (s Space) Set(ctx sdk.Context, key Key, param interface{}) error {
ptr := reflect.New(ptrty).Interface()
if s.cdc.UnmarshalJSON(bz, ptr) != nil {
return fmt.Errorf("Type mismatch with stored param and provided param")
panic(fmt.Errorf("Type mismatch with stored param and provided param"))
}
}
bz, err := s.cdc.MarshalJSON(param)
if err != nil {
return err
panic(err)
}
store.Set(keybz, bz)
tstore := ctx.KVStore(s.tkey).Prefix(s.space)
tstore.Set(keybz, []byte{})
return nil
}
// Set raw bytes of parameter

View File

@ -19,7 +19,7 @@ func DefaultGenesisState() GenesisState {
// InitGenesis initialize default parameters
// and the keeper's address to pubkey map
func InitGenesis(ctx sdk.Context, keeper Keeper, data GenesisState, sdata types.GenesisState) error {
func InitGenesis(ctx sdk.Context, keeper Keeper, data GenesisState, sdata types.GenesisState) {
for _, validator := range sdata.Validators {
keeper.addPubkey(ctx, validator.GetPubKey())
}
@ -32,5 +32,4 @@ func InitGenesis(ctx sdk.Context, keeper Keeper, data GenesisState, sdata types.
keeper.paramstore.Set(ctx, downtimeUnbondDurationKey, p.DowntimeUnbondDuration)
keeper.paramstore.Set(ctx, slashFractionDoubleSignKey, p.SlashFractionDoubleSign)
keeper.paramstore.Set(ctx, slashFractionDowntimeKey, p.SlashFractionDowntime)
return nil
}

View File

@ -88,8 +88,9 @@ func createTestInput(t *testing.T, defaults Params) (sdk.Context, bank.Keeper, s
require.Nil(t, err)
keeper := NewKeeper(cdc, keySlashing, sk, paramstore, DefaultCodespace)
err = InitGenesis(ctx, keeper, GenesisState{defaults}, genesis)
require.Nil(t, err)
require.NotPanics(t, func() {
InitGenesis(ctx, keeper, GenesisState{defaults}, genesis)
})
return ctx, ck, sk, paramstore, keeper
}