package v2_test import ( "testing" "time" sdkmath "cosmossdk.io/math" "github.com/stretchr/testify/require" "github.com/cosmos/cosmos-sdk/testutil" sdk "github.com/cosmos/cosmos-sdk/types" "github.com/kava-labs/kava/app" v2 "github.com/kava-labs/kava/x/community/migrations/v2" "github.com/kava-labs/kava/x/community/types" ) func TestMigrateStore(t *testing.T) { tApp := app.NewTestApp() cdc := tApp.AppCodec() storeKey := sdk.NewKVStoreKey("community") ctx := testutil.DefaultContext(storeKey, sdk.NewTransientStoreKey("transient_test")) store := ctx.KVStore(storeKey) require.Nil( t, store.Get(types.ParamsKey), "params shouldn't exist in store before migration", ) require.NoError(t, v2.Migrate(ctx, store, cdc)) paramsBytes := store.Get(types.ParamsKey) require.NotNil(t, paramsBytes, "params should be in store after migration") var params types.Params cdc.MustUnmarshal(paramsBytes, ¶ms) t.Logf("params: %+v", params) require.Equal( t, types.NewParams( time.Time{}, sdkmath.LegacyNewDec(0), ), params, "params should be correct after migration", ) }