From 70b48e0c269825c6055be5ff7b07086d0aed725c Mon Sep 17 00:00:00 2001 From: Julien Robert Date: Fri, 22 Nov 2024 14:59:56 +0100 Subject: [PATCH] update genesis test paths and remove keeper test utility (2/n) --- ignite/cmd/scaffold_module.go | 2 - .../msg_server_{{packetName}}_test.go.plush | 9 ++-- .../keeper/genesis_test.go.plush | 2 +- ...e}}_test.go.plush => keeper_test.go.plush} | 0 .../keeper/keeper_test.go.plush} | 47 ++++++++++--------- ignite/templates/module/create/ibc.go | 2 +- .../keeper/query_{{typeName}}_test.go.plush | 23 +++++---- .../msg_server_{{typeName}}_test.go.plush | 33 +++++++------ ignite/templates/typed/list/genesis.go | 4 +- .../keeper/query_{{typeName}}_test.go.plush | 23 +++++---- .../msg_server_{{typeName}}_test.go.plush | 39 +++++++-------- ignite/templates/typed/map/map.go | 4 +- .../keeper/query_{{typeName}}_test.go.plush | 9 ++-- .../msg_server_{{typeName}}_test.go.plush | 42 +++++++++-------- ignite/templates/typed/singleton/singleton.go | 4 +- 15 files changed, 122 insertions(+), 121 deletions(-) rename ignite/templates/module/create/files/base/x/{{moduleName}}/keeper/{{{moduleName}}_test.go.plush => keeper_test.go.plush} (100%) rename ignite/templates/module/create/files/ibc/{testutil/keeper/{{moduleName}}.go.plush => x/{{moduleName}}/keeper/keeper_test.go.plush} (66%) diff --git a/ignite/cmd/scaffold_module.go b/ignite/cmd/scaffold_module.go index 731b209972..b0e866585f 100644 --- a/ignite/cmd/scaffold_module.go +++ b/ignite/cmd/scaffold_module.go @@ -44,8 +44,6 @@ This command does the following: * Creates a directory with module's protocol buffer files in "proto/" * Creates a directory with module's boilerplate Go code in "x/" * Imports the newly created module by modifying "app/app.go" -* Creates a file in "testutil/keeper/" that contains logic to create a keeper - for testing purposes This command will proceed with module scaffolding even if "app/app.go" doesn't have the required default placeholders. If the placeholders are missing, you diff --git a/ignite/templates/ibc/files/packet/messages/x/{{moduleName}}/keeper/msg_server_{{packetName}}_test.go.plush b/ignite/templates/ibc/files/packet/messages/x/{{moduleName}}/keeper/msg_server_{{packetName}}_test.go.plush index b42f57fc8a..b9e7b12729 100644 --- a/ignite/templates/ibc/files/packet/messages/x/{{moduleName}}/keeper/msg_server_{{packetName}}_test.go.plush +++ b/ignite/templates/ibc/files/packet/messages/x/{{moduleName}}/keeper/msg_server_{{packetName}}_test.go.plush @@ -8,16 +8,15 @@ import ( sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" channeltypes "github.com/cosmos/ibc-go/v8/modules/core/04-channel/types" - keepertest "<%= ModulePath %>/testutil/keeper" "<%= ModulePath %>/x/<%= moduleName %>/keeper" "<%= ModulePath %>/x/<%= moduleName %>/types" ) func TestMsgServerSend<%= packetName.UpperCamel %>(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(moduleName) %>Keeper(t) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) - srv := keeper.NewMsgServerImpl(k) tests := []struct { name string @@ -73,7 +72,7 @@ func TestMsgServerSend<%= packetName.UpperCamel %>(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - _, err = srv.Send<%= packetName.UpperCamel %>(ctx, &tt.msg) + _, err = srv.Send<%= packetName.UpperCamel %>(f.ctx, &tt.msg) if tt.err != nil { require.ErrorContains(t, err, tt.err.Error()) return diff --git a/ignite/templates/module/create/files/base/x/{{moduleName}}/keeper/genesis_test.go.plush b/ignite/templates/module/create/files/base/x/{{moduleName}}/keeper/genesis_test.go.plush index d8fdd14754..4bef36433a 100644 --- a/ignite/templates/module/create/files/base/x/{{moduleName}}/keeper/genesis_test.go.plush +++ b/ignite/templates/module/create/files/base/x/{{moduleName}}/keeper/genesis_test.go.plush @@ -1,4 +1,4 @@ -package <%= moduleName %>_test +package keeper_test import ( "testing" diff --git a/ignite/templates/module/create/files/base/x/{{moduleName}}/keeper/{{moduleName}}_test.go.plush b/ignite/templates/module/create/files/base/x/{{moduleName}}/keeper/keeper_test.go.plush similarity index 100% rename from ignite/templates/module/create/files/base/x/{{moduleName}}/keeper/{{moduleName}}_test.go.plush rename to ignite/templates/module/create/files/base/x/{{moduleName}}/keeper/keeper_test.go.plush diff --git a/ignite/templates/module/create/files/ibc/testutil/keeper/{{moduleName}}.go.plush b/ignite/templates/module/create/files/ibc/x/{{moduleName}}/keeper/keeper_test.go.plush similarity index 66% rename from ignite/templates/module/create/files/ibc/testutil/keeper/{{moduleName}}.go.plush rename to ignite/templates/module/create/files/ibc/x/{{moduleName}}/keeper/keeper_test.go.plush index 6ec777321d..a87e73fe45 100644 --- a/ignite/templates/module/create/files/ibc/testutil/keeper/{{moduleName}}.go.plush +++ b/ignite/templates/module/create/files/ibc/x/{{moduleName}}/keeper/keeper_test.go.plush @@ -1,15 +1,13 @@ -package keeper +package keeper_test import ( "testing" "cosmossdk.io/core/address" "cosmossdk.io/log" - "cosmossdk.io/store" - "cosmossdk.io/store/metrics" storetypes "cosmossdk.io/store/types" dbm "github.com/cosmos/cosmos-db" - "github.com/cosmos/cosmos-sdk/codec" + codectestutil "github.com/cosmos/cosmos-sdk/codec" codectypes "github.com/cosmos/cosmos-sdk/codec/types" "github.com/cosmos/cosmos-sdk/runtime" sdk "github.com/cosmos/cosmos-sdk/types" @@ -22,33 +20,38 @@ import ( "github.com/stretchr/testify/require" "<%= modulePath %>/x/<%= moduleName %>/keeper" + module "<%= modulePath %>/x/<%= moduleName %>/module" "<%= modulePath %>/x/<%= moduleName %>/types" ) -func <%= title(moduleName) %>Keeper(t testing.TB) (keeper.Keeper, sdk.Context, address.Codec) { +type fixture struct { + ctx context.Context + keeper keeper.Keeper + addressCodec address.Codec +} + +func initFixture(t *testing.T) *fixture { + t.Helper() + + encCfg := moduletestutil.MakeTestEncodingConfig(codectestutil.CodecOptions{}, module.AppModule{}) + addressCodec := addresscodec.NewBech32Codec(sdk.GetConfig().GetBech32AccountAddrPrefix()) storeKey := storetypes.NewKVStoreKey(types.StoreKey) - db := dbm.NewMemDB() - stateStore := store.NewCommitMultiStore(db, log.NewNopLogger(), metrics.NewNoOpMetrics()) - stateStore.MountStoreWithDB(storeKey, storetypes.StoreTypeIAVL, db) - require.NoError(t, stateStore.LoadLatestVersion()) + env := runtime.NewEnvironment(runtime.NewKVStoreService(storeKey), log.NewTestLogger(t)) + ctx := testutil.DefaultContextWithDB(t, storeKey, storetypes.NewTransientStoreKey("transient_test")).Ctx - registry := codectypes.NewInterfaceRegistry() - appCodec := codec.NewProtoCodec(registry) - capabilityKeeper := capabilitykeeper.NewKeeper(appCodec, storeKey, nil) authority := authtypes.NewModuleAddress(govtypes.ModuleName) - addressCodec := addresscodec.NewBech32Codec(sdk.GetConfig().GetBech32AccountAddrPrefix()) + capabilityKeeper := capabilitykeeper.NewKeeper(encCfg.Codec, storeKey, nil) scopedKeeper := capabilityKeeper.ScopeToModule(ibcexported.ModuleName) portKeeper := portkeeper.NewKeeper(scopedKeeper) scopeModule := capabilityKeeper.ScopeToModule(types.ModuleName) k := keeper.NewKeeper( - appCodec, + env, + encCfg.Codec, addressCodec, - runtime.NewKVStoreService(storeKey), - log.NewNopLogger(), - authority.String(), + authority, func() *ibckeeper.Keeper { return &ibckeeper.Keeper{ PortKeeper: &portKeeper, @@ -60,12 +63,14 @@ func <%= title(moduleName) %>Keeper(t testing.TB) (keeper.Keeper, sdk.Context, a nil,<% } %> ) - ctx := sdk.NewContext(stateStore, false, log.NewNopLogger()) - // Initialize params if err := k.Params.Set(ctx, types.DefaultParams()); err != nil { t.Fatalf("failed to set params: %v", err) } - - return k, ctx, addressCodec + + return &fixture{ + ctx: ctx, + keeper: k, + addressCodec: addressCodec, + } } diff --git a/ignite/templates/module/create/ibc.go b/ignite/templates/module/create/ibc.go index a7eefb2671..3e5ad04196 100644 --- a/ignite/templates/module/create/ibc.go +++ b/ignite/templates/module/create/ibc.go @@ -58,7 +58,7 @@ func NewIBC(replacer placeholder.Replacer, opts *CreateOptions) (*genny.Generato func genesisModify(replacer placeholder.Replacer, opts *CreateOptions) genny.RunFn { return func(r *genny.Runner) error { - path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "module/genesis.go") + path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "keeper/genesis.go") f, err := r.Disk.Find(path) if err != nil { return err diff --git a/ignite/templates/typed/list/files/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush b/ignite/templates/typed/list/files/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush index 7ad32d4fc0..e4829be925 100644 --- a/ignite/templates/typed/list/files/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush +++ b/ignite/templates/typed/list/files/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush @@ -13,7 +13,6 @@ import ( "<%= ModulePath %>/x/<%= ModuleName %>/keeper" "<%= ModulePath %>/testutil/nullify" "<%= ModulePath %>/x/<%= ModuleName %>/keeper" - keepertest "<%= ModulePath %>/testutil/keeper" ) func createN<%= TypeName.UpperCamel %>(keeper keeper.Keeper, ctx context.Context, n int) []types.<%= TypeName.UpperCamel %> { @@ -28,9 +27,9 @@ func createN<%= TypeName.UpperCamel %>(keeper keeper.Keeper, ctx context.Context } func Test<%= TypeName.UpperCamel %>QuerySingle(t *testing.T) { - k, ctx, _ := keepertest.<%= title(ModuleName) %>Keeper(t) - qs := keeper.NewQueryServerImpl(k) - msgs := createN<%= TypeName.UpperCamel %>(k, ctx, 2) + f := initFixture(t) + qs := keeper.NewQueryServerImpl(f.keeper) + msgs := createN<%= TypeName.UpperCamel %>(f.keeper, f.ctx, 2) tests := []struct { desc string request *types.QueryGet<%= TypeName.UpperCamel %>Request @@ -59,7 +58,7 @@ func Test<%= TypeName.UpperCamel %>QuerySingle(t *testing.T) { } for _, tc := range tests { t.Run(tc.desc, func(t *testing.T) { - response, err := qs.Get<%= TypeName.UpperCamel %>(ctx, tc.request) + response, err := qs.Get<%= TypeName.UpperCamel %>(f.ctx, tc.request) if tc.err != nil { require.ErrorIs(t, err, tc.err) } else { @@ -74,9 +73,9 @@ func Test<%= TypeName.UpperCamel %>QuerySingle(t *testing.T) { } func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { - k, ctx, _ := keepertest.<%= title(ModuleName) %>Keeper(t) - qs := keeper.NewQueryServerImpl(k) - msgs := createN<%= TypeName.UpperCamel %>(k, ctx, 5) + f := initFixture(t) + qs := keeper.NewQueryServerImpl(f.keeper) + msgs := createN<%= TypeName.UpperCamel %>(f.keeper, f.ctx, 5) request := func(next []byte, offset, limit uint64, total bool) *types.QueryAll<%= TypeName.UpperCamel %>Request { return &types.QueryAll<%= TypeName.UpperCamel %>Request{ @@ -91,7 +90,7 @@ func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { t.Run("ByOffset", func(t *testing.T) { step := 2 for i := 0; i < len(msgs); i += step { - resp, err := qs.List<%= TypeName.UpperCamel %>(ctx, request(nil, uint64(i), uint64(step), false)) + resp, err := qs.List<%= TypeName.UpperCamel %>(f.ctx, request(nil, uint64(i), uint64(step), false)) require.NoError(t, err) require.LessOrEqual(t, len(resp.<%= TypeName.UpperCamel %>), step) require.Subset(t, @@ -104,7 +103,7 @@ func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { step := 2 var next []byte for i := 0; i < len(msgs); i += step { - resp, err := qs.List<%= TypeName.UpperCamel %>(ctx, request(next, 0, uint64(step), false)) + resp, err := qs.List<%= TypeName.UpperCamel %>(f.ctx, request(next, 0, uint64(step), false)) require.NoError(t, err) require.LessOrEqual(t, len(resp.<%= TypeName.UpperCamel %>), step) require.Subset(t, @@ -115,7 +114,7 @@ func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { } }) t.Run("Total", func(t *testing.T) { - resp, err := qs.List<%= TypeName.UpperCamel %>(ctx, request(nil, 0, 0, true)) + resp, err := qs.List<%= TypeName.UpperCamel %>(f.ctx, request(nil, 0, 0, true)) require.NoError(t, err) require.Equal(t, len(msgs), int(resp.Pagination.Total)) require.ElementsMatch(t, @@ -124,7 +123,7 @@ func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { ) }) t.Run("InvalidRequest", func(t *testing.T) { - _, err := qs.List<%= TypeName.UpperCamel %>(ctx, nil) + _, err := qs.List<%= TypeName.UpperCamel %>(f.ctx, nil) require.ErrorIs(t, err, status.Error(codes.InvalidArgument, "invalid request")) }) } diff --git a/ignite/templates/typed/list/files/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush b/ignite/templates/typed/list/files/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush index 8297f5f246..6c0296fdf0 100644 --- a/ignite/templates/typed/list/files/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush +++ b/ignite/templates/typed/list/files/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush @@ -7,36 +7,35 @@ import ( sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" "github.com/stretchr/testify/require" - keepertest "<%= ModulePath %>/testutil/keeper" "<%= ModulePath %>/x/<%= ModuleName %>/keeper" "<%= ModulePath %>/x/<%= ModuleName %>/types" ) func Test<%= TypeName.UpperCamel %>MsgServerCreate(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(ModuleName) %>Keeper(t) - srv := keeper.NewMsgServerImpl(k) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) for i := 0; i < 5; i++ { - resp, err := srv.Create<%= TypeName.UpperCamel %>(ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>}) + resp, err := srv.Create<%= TypeName.UpperCamel %>(f.ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>}) require.NoError(t, err) require.Equal(t, i, int(resp.Id)) } } func Test<%= TypeName.UpperCamel %>MsgServerUpdate(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(ModuleName) %>Keeper(t) - srv := keeper.NewMsgServerImpl(k) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) - unauthorizedAddr, err := addressCodec.BytesToString([]byte("unauthorizedAddr___________")) + unauthorizedAddr, err := f.addressCodec.BytesToString([]byte("unauthorizedAddr___________")) require.NoError(t, err) - _, err = srv.Create<%= TypeName.UpperCamel %>(ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>}) + _, err = srv.Create<%= TypeName.UpperCamel %>(f.ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>}) require.NoError(t, err) tests := []struct { @@ -66,7 +65,7 @@ func Test<%= TypeName.UpperCamel %>MsgServerUpdate(t *testing.T) { } for _, tc := range tests { t.Run(tc.desc, func(t *testing.T) { - _, err = srv.Update<%= TypeName.UpperCamel %>(ctx, tc.request) + _, err = srv.Update<%= TypeName.UpperCamel %>(f.ctx, tc.request) if tc.err != nil { require.ErrorIs(t, err, tc.err) } else { @@ -77,16 +76,16 @@ func Test<%= TypeName.UpperCamel %>MsgServerUpdate(t *testing.T) { } func Test<%= TypeName.UpperCamel %>MsgServerDelete(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(ModuleName) %>Keeper(t) - srv := keeper.NewMsgServerImpl(k) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) - unauthorizedAddr, err := addressCodec.BytesToString([]byte("unauthorizedAddr___________")) + unauthorizedAddr, err := f.addressCodec.BytesToString([]byte("unauthorizedAddr___________")) require.NoError(t, err) - _, err = srv.Create<%= TypeName.UpperCamel %>(ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>}) + _, err = srv.Create<%= TypeName.UpperCamel %>(f.ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>}) require.NoError(t, err) tests := []struct { @@ -116,7 +115,7 @@ func Test<%= TypeName.UpperCamel %>MsgServerDelete(t *testing.T) { } for _, tc := range tests { t.Run(tc.desc, func(t *testing.T) { - _, err = srv.Delete<%= TypeName.UpperCamel %>(ctx, tc.request) + _, err = srv.Delete<%= TypeName.UpperCamel %>(f.ctx, tc.request) if tc.err != nil { require.ErrorIs(t, err, tc.err) } else { diff --git a/ignite/templates/typed/list/genesis.go b/ignite/templates/typed/list/genesis.go index 5999446885..bf60552b23 100644 --- a/ignite/templates/typed/list/genesis.go +++ b/ignite/templates/typed/list/genesis.go @@ -117,7 +117,7 @@ for _, elem := range gs.%[3]vList { func genesisModuleModify(replacer placeholder.Replacer, opts *typed.Options) genny.RunFn { return func(r *genny.Runner) error { - path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "module/genesis.go") + path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "keeper/genesis.go") f, err := r.Disk.Find(path) if err != nil { return err @@ -172,7 +172,7 @@ if err != nil { func genesisTestsModify(replacer placeholder.Replacer, opts *typed.Options) genny.RunFn { return func(r *genny.Runner) error { - path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "module/genesis_test.go") + path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "keeper/genesis_test.go") f, err := r.Disk.Find(path) if err != nil { return err diff --git a/ignite/templates/typed/map/files/tests/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush b/ignite/templates/typed/map/files/tests/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush index 6750c3c02c..2559260b0d 100644 --- a/ignite/templates/typed/map/files/tests/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush +++ b/ignite/templates/typed/map/files/tests/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush @@ -12,7 +12,6 @@ import ( "<%= ModulePath %>/x/<%= ModuleName %>/types" "<%= ModulePath %>/testutil/nullify" "<%= ModulePath %>/x/<%= ModuleName %>/keeper" - keepertest "<%= ModulePath %>/testutil/keeper" ) // Prevent strconv unused error @@ -29,9 +28,9 @@ func createN<%= TypeName.UpperCamel %>(keeper keeper.Keeper, ctx context.Context } func Test<%= TypeName.UpperCamel %>QuerySingle(t *testing.T) { - k, ctx, _ := keepertest.<%= title(ModuleName) %>Keeper(t) - qs := keeper.NewQueryServerImpl(k) - msgs := createN<%= TypeName.UpperCamel %>(k, ctx, 2) + f := initFixture(t) + qs := keeper.NewQueryServerImpl(f.keeper) + msgs := createN<%= TypeName.UpperCamel %>(f.keeper, f.ctx, 2) tests := []struct { desc string request *types.QueryGet<%= TypeName.UpperCamel %>Request @@ -66,7 +65,7 @@ func Test<%= TypeName.UpperCamel %>QuerySingle(t *testing.T) { } for _, tc := range tests { t.Run(tc.desc, func(t *testing.T) { - response, err := qs.Get<%= TypeName.UpperCamel %>(ctx, tc.request) + response, err := qs.Get<%= TypeName.UpperCamel %>(f.ctx, tc.request) if tc.err != nil { require.ErrorIs(t, err, tc.err) } else { @@ -81,9 +80,9 @@ func Test<%= TypeName.UpperCamel %>QuerySingle(t *testing.T) { } func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { - k, ctx, _ := keepertest.<%= title(ModuleName) %>Keeper(t) - qs := keeper.NewQueryServerImpl(k) - msgs := createN<%= TypeName.UpperCamel %>(k, ctx, 5) + f := initFixture(t) + qs := keeper.NewQueryServerImpl(f.keeper) + msgs := createN<%= TypeName.UpperCamel %>(f.keeper, f.ctx, 5) request := func(next []byte, offset, limit uint64, total bool) *types.QueryAll<%= TypeName.UpperCamel %>Request { return &types.QueryAll<%= TypeName.UpperCamel %>Request{ @@ -98,7 +97,7 @@ func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { t.Run("ByOffset", func(t *testing.T) { step := 2 for i := 0; i < len(msgs); i += step { - resp, err := qs.List<%= TypeName.UpperCamel %>(ctx, request(nil, uint64(i), uint64(step), false)) + resp, err := qs.List<%= TypeName.UpperCamel %>(f.ctx, request(nil, uint64(i), uint64(step), false)) require.NoError(t, err) require.LessOrEqual(t, len(resp.<%= TypeName.UpperCamel %>), step) require.Subset(t, @@ -111,7 +110,7 @@ func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { step := 2 var next []byte for i := 0; i < len(msgs); i += step { - resp, err := qs.List<%= TypeName.UpperCamel %>(ctx, request(next, 0, uint64(step), false)) + resp, err := qs.List<%= TypeName.UpperCamel %>(f.ctx, request(next, 0, uint64(step), false)) require.NoError(t, err) require.LessOrEqual(t, len(resp.<%= TypeName.UpperCamel %>), step) require.Subset(t, @@ -122,7 +121,7 @@ func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { } }) t.Run("Total", func(t *testing.T) { - resp, err := qs.List<%= TypeName.UpperCamel %>(ctx, request(nil, 0, 0, true)) + resp, err := qs.List<%= TypeName.UpperCamel %>(f.ctx, request(nil, 0, 0, true)) require.NoError(t, err) require.Equal(t, len(msgs), int(resp.Pagination.Total)) require.ElementsMatch(t, @@ -131,7 +130,7 @@ func Test<%= TypeName.UpperCamel %>QueryPaginated(t *testing.T) { ) }) t.Run("InvalidRequest", func(t *testing.T) { - _, err := qs.List<%= TypeName.UpperCamel %>(ctx, nil) + _, err := qs.List<%= TypeName.UpperCamel %>(f.ctx, nil) require.ErrorIs(t, err, status.Error(codes.InvalidArgument, "invalid request")) }) } diff --git a/ignite/templates/typed/map/files/tests/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush b/ignite/templates/typed/map/files/tests/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush index 4a2358211d..33b4b52ebc 100644 --- a/ignite/templates/typed/map/files/tests/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush +++ b/ignite/templates/typed/map/files/tests/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush @@ -7,7 +7,6 @@ import ( sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" "github.com/stretchr/testify/require" - keepertest "<%= ModulePath %>/testutil/keeper" "<%= ModulePath %>/x/<%= ModuleName %>/keeper" "<%= ModulePath %>/x/<%= ModuleName %>/types" ) @@ -16,9 +15,9 @@ import ( var _ = strconv.IntSize func Test<%= TypeName.UpperCamel %>MsgServerCreate(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(ModuleName) %>Keeper(t) - srv := keeper.NewMsgServerImpl(k) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) for i := 0; i < 5; i++ { @@ -27,25 +26,26 @@ func Test<%= TypeName.UpperCamel %>MsgServerCreate(t *testing.T) { } _, err := srv.Create<%= TypeName.UpperCamel %>(ctx, expected) require.NoError(t, err) - rst, err := k.<%= TypeName.UpperCamel %>.Get(ctx, expected.<%= Index.Name.UpperCamel %>) + rst, err := k.<%= TypeName.UpperCamel %>.Get(f.ctx, expected.<%= Index.Name.UpperCamel %>) require.NoError(t, err) require.Equal(t, expected.<%= MsgSigner.UpperCamel %>, rst.<%= MsgSigner.UpperCamel %>) } } func Test<%= TypeName.UpperCamel %>MsgServerUpdate(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(ModuleName) %>Keeper(t) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) + + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) - unauthorizedAddr, err := addressCodec.BytesToString([]byte("unauthorizedAddr___________")) + unauthorizedAddr, err := f.addressCodec.BytesToString([]byte("unauthorizedAddr___________")) require.NoError(t, err) - srv := keeper.NewMsgServerImpl(k) expected := &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>, <%= Index.Name.UpperCamel %>: <%= Index.ValueIndex() %>, } - _, err = srv.Create<%= TypeName.UpperCamel %>(ctx, expected) + _, err = srv.Create<%= TypeName.UpperCamel %>(f.ctx, expected) require.NoError(t, err) tests := []struct { @@ -83,12 +83,12 @@ func Test<%= TypeName.UpperCamel %>MsgServerUpdate(t *testing.T) { } for _, tc := range tests { t.Run(tc.desc, func(t *testing.T) { - _, err = srv.Update<%= TypeName.UpperCamel %>(ctx, tc.request) + _, err = srv.Update<%= TypeName.UpperCamel %>(f.ctx, tc.request) if tc.err != nil { require.ErrorIs(t, err, tc.err) } else { require.NoError(t, err) - rst, err := k.<%= TypeName.UpperCamel %>.Get(ctx, expected.<%= Index.Name.UpperCamel %>) + rst, err := f.keeper.<%= TypeName.UpperCamel %>.Get(f.ctx, expected.<%= Index.Name.UpperCamel %>) require.NoError(t, err) require.Equal(t, expected.<%= MsgSigner.UpperCamel %>, rst.<%= MsgSigner.UpperCamel %>) } @@ -97,15 +97,16 @@ func Test<%= TypeName.UpperCamel %>MsgServerUpdate(t *testing.T) { } func Test<%= TypeName.UpperCamel %>MsgServerDelete(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(ModuleName) %>Keeper(t) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) + + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) - unauthorizedAddr, err := addressCodec.BytesToString([]byte("unauthorizedAddr___________")) + unauthorizedAddr, err := f.addressCodec.BytesToString([]byte("unauthorizedAddr___________")) require.NoError(t, err) - srv := keeper.NewMsgServerImpl(k) - _, err = srv.Create<%= TypeName.UpperCamel %>(ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>, + _, err = srv.Create<%= TypeName.UpperCamel %>(f.ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>, <%= Index.Name.UpperCamel %>: <%= Index.ValueIndex() %>, }) require.NoError(t, err) @@ -145,12 +146,12 @@ func Test<%= TypeName.UpperCamel %>MsgServerDelete(t *testing.T) { } for _, tc := range tests { t.Run(tc.desc, func(t *testing.T) { - _, err = srv.Delete<%= TypeName.UpperCamel %>(ctx, tc.request) + _, err = srv.Delete<%= TypeName.UpperCamel %>(f.ctx, tc.request) if tc.err != nil { require.ErrorIs(t, err, tc.err) } else { require.NoError(t, err) - found, err := k.<%= TypeName.UpperCamel %>.Has(ctx, tc.request.<%= Index.Name.UpperCamel %>) + found, err := f.keeper.<%= TypeName.UpperCamel %>.Has(f.ctx, tc.request.<%= Index.Name.UpperCamel %>) require.NoError(t, err) require.False(t, found) } diff --git a/ignite/templates/typed/map/map.go b/ignite/templates/typed/map/map.go index c8aa92f3ed..2dd0408242 100644 --- a/ignite/templates/typed/map/map.go +++ b/ignite/templates/typed/map/map.go @@ -394,7 +394,7 @@ for _, elem := range gs.%[3]vList { func genesisModuleModify(replacer placeholder.Replacer, opts *typed.Options) genny.RunFn { return func(r *genny.Runner) error { - path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "module/genesis.go") + path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "keeper/genesis.go") f, err := r.Disk.Find(path) if err != nil { return err @@ -438,7 +438,7 @@ for _, elem := range genState.%[3]vList { func genesisTestsModify(replacer placeholder.Replacer, opts *typed.Options) genny.RunFn { return func(r *genny.Runner) error { - path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "module/genesis_test.go") + path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "keeper/genesis_test.go") f, err := r.Disk.Find(path) if err != nil { return err diff --git a/ignite/templates/typed/singleton/files/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush b/ignite/templates/typed/singleton/files/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush index 6115f12326..5f5ac251f2 100644 --- a/ignite/templates/typed/singleton/files/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush +++ b/ignite/templates/typed/singleton/files/component/x/{{moduleName}}/keeper/query_{{typeName}}_test.go.plush @@ -7,17 +7,16 @@ import ( "google.golang.org/grpc/codes" "google.golang.org/grpc/status" - keepertest "<%= ModulePath %>/testutil/keeper" "<%= ModulePath %>/testutil/nullify" "<%= ModulePath %>/x/<%= ModuleName %>/types" "<%= ModulePath %>/x/<%= ModuleName %>/keeper" ) func Test<%= TypeName.UpperCamel %>Query(t *testing.T) { - k, ctx, _ := keepertest.<%= title(ModuleName) %>Keeper(t) - qs := keeper.NewQueryServerImpl(k) + f := initFixture(t) + qs := keeper.NewQueryServerImpl(f.keeper) item := types.<%= TypeName.UpperCamel %>{} - err := k.<%= TypeName.UpperCamel %>.Set(ctx, item) + err := f.keeper.<%= TypeName.UpperCamel %>.Set(f.ctx, item) require.NoError(t, err) tests := []struct { @@ -38,7 +37,7 @@ func Test<%= TypeName.UpperCamel %>Query(t *testing.T) { } for _, tc := range tests { t.Run(tc.desc, func(t *testing.T) { - response, err := qs.Get<%= TypeName.UpperCamel %>(ctx, tc.request) + response, err := qs.Get<%= TypeName.UpperCamel %>(f.ctx, tc.request) if tc.err != nil { require.ErrorIs(t, err, tc.err) } else { diff --git a/ignite/templates/typed/singleton/files/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush b/ignite/templates/typed/singleton/files/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush index cdccb1842a..4ca273106b 100644 --- a/ignite/templates/typed/singleton/files/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush +++ b/ignite/templates/typed/singleton/files/messages/x/{{moduleName}}/keeper/msg_server_{{typeName}}_test.go.plush @@ -6,35 +6,36 @@ import ( sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" "github.com/stretchr/testify/require" - keepertest "<%= ModulePath %>/testutil/keeper" "<%= ModulePath %>/x/<%= ModuleName %>/keeper" "<%= ModulePath %>/x/<%= ModuleName %>/types" ) func Test<%= TypeName.UpperCamel %>MsgServerCreate(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(ModuleName) %>Keeper(t) - srv := keeper.NewMsgServerImpl(k) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) + + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) expected := &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>} - _, err = srv.Create<%= TypeName.UpperCamel %>(ctx, expected) + _, err = srv.Create<%= TypeName.UpperCamel %>(f.ctx, expected) require.NoError(t, err) - rst, err := k.<%= TypeName.UpperCamel %>.Get(ctx) + rst, err := k.<%= TypeName.UpperCamel %>.Get(f.ctx) require.Nil(t, err) require.Equal(t, expected.<%= MsgSigner.UpperCamel %>, rst.<%= MsgSigner.UpperCamel %>) } func Test<%= TypeName.UpperCamel %>MsgServerUpdate(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(ModuleName) %>Keeper(t) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) + + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) - unauthorizedAddr, err := addressCodec.BytesToString([]byte("unauthorizedAddr___________")) + unauthorizedAddr, err := f.addressCodec.BytesToString([]byte("unauthorizedAddr___________")) require.NoError(t, err) - srv := keeper.NewMsgServerImpl(k) expected := &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>} - _, err = srv.Create<%= TypeName.UpperCamel %>(ctx, expected) + _, err = srv.Create<%= TypeName.UpperCamel %>(f.ctx, expected) require.NoError(t, err) tests := []struct { @@ -59,12 +60,12 @@ func Test<%= TypeName.UpperCamel %>MsgServerUpdate(t *testing.T) { } for _, tc := range tests { t.Run(tc.desc, func(t *testing.T) { - _, err = srv.Update<%= TypeName.UpperCamel %>(ctx, tc.request) + _, err = srv.Update<%= TypeName.UpperCamel %>(f.ctx, tc.request) if tc.err != nil { require.ErrorIs(t, err, tc.err) } else { require.NoError(t, err) - rst, err := k.<%= TypeName.UpperCamel %>.Get(ctx) + rst, err := f.keeper.<%= TypeName.UpperCamel %>.Get(f.ctx) require.Nil(t, err) require.Equal(t, expected.<%= MsgSigner.UpperCamel %>, rst.<%= MsgSigner.UpperCamel %>) } @@ -73,15 +74,16 @@ func Test<%= TypeName.UpperCamel %>MsgServerUpdate(t *testing.T) { } func Test<%= TypeName.UpperCamel %>MsgServerDelete(t *testing.T) { - k, ctx, addressCodec := keepertest.<%= title(ModuleName) %>Keeper(t) - <%= MsgSigner.LowerCamel %>, err := addressCodec.BytesToString([]byte("signerAddr__________________")) + f := initFixture(t) + srv := keeper.NewMsgServerImpl(f.keeper) + + <%= MsgSigner.LowerCamel %>, err := f.addressCodec.BytesToString([]byte("signerAddr__________________")) require.NoError(t, err) - unauthorizedAddr, err := addressCodec.BytesToString([]byte("unauthorizedAddr___________")) + unauthorizedAddr, err := f.addressCodec.BytesToString([]byte("unauthorizedAddr___________")) require.NoError(t, err) - srv := keeper.NewMsgServerImpl(k) - _, err = srv.Create<%= TypeName.UpperCamel %>(ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>}) + _, err = srv.Create<%= TypeName.UpperCamel %>(f.ctx, &types.MsgCreate<%= TypeName.UpperCamel %>{<%= MsgSigner.UpperCamel %>: <%= MsgSigner.LowerCamel %>}) require.NoError(t, err) tests := []struct { @@ -106,12 +108,12 @@ func Test<%= TypeName.UpperCamel %>MsgServerDelete(t *testing.T) { } for _, tc := range tests { t.Run(tc.desc, func(t *testing.T) { - _, err = srv.Delete<%= TypeName.UpperCamel %>(ctx, tc.request) + _, err = srv.Delete<%= TypeName.UpperCamel %>(f.ctx, tc.request) if tc.err != nil { require.ErrorIs(t, err, tc.err) } else { require.NoError(t, err) - found, err := k.<%= TypeName.UpperCamel %>.Has(ctx) + found, err := f.keeper.<%= TypeName.UpperCamel %>.Has(f.ctx) require.NoError(t, err) require.False(t, found) } diff --git a/ignite/templates/typed/singleton/singleton.go b/ignite/templates/typed/singleton/singleton.go index a3dfb1cdd5..dd8b855329 100644 --- a/ignite/templates/typed/singleton/singleton.go +++ b/ignite/templates/typed/singleton/singleton.go @@ -289,7 +289,7 @@ func genesisTypesModify(replacer placeholder.Replacer, opts *typed.Options) genn func genesisTestsModify(replacer placeholder.Replacer, opts *typed.Options) genny.RunFn { return func(r *genny.Runner) error { - path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "module/genesis_test.go") + path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "keeper/genesis_test.go") f, err := r.Disk.Find(path) if err != nil { return err @@ -366,7 +366,7 @@ func genesisTypesTestsModify(replacer placeholder.Replacer, opts *typed.Options) func genesisModuleModify(replacer placeholder.Replacer, opts *typed.Options) genny.RunFn { return func(r *genny.Runner) error { - path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "module/genesis.go") + path := filepath.Join(opts.AppPath, "x", opts.ModuleName, "keeper/genesis.go") f, err := r.Disk.Find(path) if err != nil { return err