mirror of
https://github.com/planetmint/planetmint-go.git
synced 2025-11-24 14:35:47 +00:00
added mocks for testing and test cases
Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>
This commit is contained in:
parent
c057e377fa
commit
52b5e9b7b7
1
go.mod
1
go.mod
@ -6,6 +6,7 @@ require (
|
|||||||
github.com/cosmos/cosmos-sdk v0.46.7
|
github.com/cosmos/cosmos-sdk v0.46.7
|
||||||
github.com/cosmos/ibc-go/v6 v6.1.0
|
github.com/cosmos/ibc-go/v6 v6.1.0
|
||||||
github.com/gogo/protobuf v1.3.3
|
github.com/gogo/protobuf v1.3.3
|
||||||
|
github.com/golang/mock v1.6.0
|
||||||
github.com/golang/protobuf v1.5.3
|
github.com/golang/protobuf v1.5.3
|
||||||
github.com/gorilla/mux v1.8.0
|
github.com/gorilla/mux v1.8.0
|
||||||
github.com/grpc-ecosystem/grpc-gateway v1.16.0
|
github.com/grpc-ecosystem/grpc-gateway v1.16.0
|
||||||
|
|||||||
@ -3,9 +3,11 @@ package keeper
|
|||||||
import (
|
import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
"planetmint-go/testutil/sample"
|
||||||
"planetmint-go/x/asset/keeper"
|
"planetmint-go/x/asset/keeper"
|
||||||
"planetmint-go/x/asset/types"
|
"planetmint-go/x/asset/types"
|
||||||
machinetypes "planetmint-go/x/machine/types"
|
|
||||||
|
assettestutils "planetmint-go/x/asset/testutil"
|
||||||
|
|
||||||
"github.com/cosmos/cosmos-sdk/codec"
|
"github.com/cosmos/cosmos-sdk/codec"
|
||||||
codectypes "github.com/cosmos/cosmos-sdk/codec/types"
|
codectypes "github.com/cosmos/cosmos-sdk/codec/types"
|
||||||
@ -13,7 +15,10 @@ import (
|
|||||||
storetypes "github.com/cosmos/cosmos-sdk/store/types"
|
storetypes "github.com/cosmos/cosmos-sdk/store/types"
|
||||||
sdk "github.com/cosmos/cosmos-sdk/types"
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
||||||
typesparams "github.com/cosmos/cosmos-sdk/x/params/types"
|
typesparams "github.com/cosmos/cosmos-sdk/x/params/types"
|
||||||
|
"github.com/golang/mock/gomock"
|
||||||
"github.com/stretchr/testify/require"
|
"github.com/stretchr/testify/require"
|
||||||
|
"github.com/tendermint/tendermint/libs/log"
|
||||||
|
tmproto "github.com/tendermint/tendermint/proto/tendermint/types"
|
||||||
tmdb "github.com/tendermint/tm-db"
|
tmdb "github.com/tendermint/tm-db"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -26,9 +31,6 @@ func AssetKeeper(t testing.TB) (*keeper.Keeper, sdk.Context) {
|
|||||||
stateStore.MountStoreWithDB(storeKey, storetypes.StoreTypeIAVL, db)
|
stateStore.MountStoreWithDB(storeKey, storetypes.StoreTypeIAVL, db)
|
||||||
stateStore.MountStoreWithDB(memStoreKey, storetypes.StoreTypeMemory, nil)
|
stateStore.MountStoreWithDB(memStoreKey, storetypes.StoreTypeMemory, nil)
|
||||||
|
|
||||||
mkStoreKey := sdk.NewKVStoreKey(machinetypes.StoreKey)
|
|
||||||
stateStore.MountStoreWithDB(mkStoreKey, storetypes.StoreTypeIAVL, db)
|
|
||||||
|
|
||||||
require.NoError(t, stateStore.LoadLatestVersion())
|
require.NoError(t, stateStore.LoadLatestVersion())
|
||||||
|
|
||||||
registry := codectypes.NewInterfaceRegistry()
|
registry := codectypes.NewInterfaceRegistry()
|
||||||
@ -40,7 +42,13 @@ func AssetKeeper(t testing.TB) (*keeper.Keeper, sdk.Context) {
|
|||||||
memStoreKey,
|
memStoreKey,
|
||||||
"AssetParams",
|
"AssetParams",
|
||||||
)
|
)
|
||||||
mk, ctx := MachineKeeper(t)
|
|
||||||
|
ctx := sdk.NewContext(stateStore, tmproto.Header{}, false, log.NewNopLogger())
|
||||||
|
|
||||||
|
ctrl := gomock.NewController(t)
|
||||||
|
mk := assettestutils.NewMockMachineKeeper(ctrl)
|
||||||
|
mk.EXPECT().GetMachine(ctx, "pubkey").Return(sample.Machine(), true)
|
||||||
|
|
||||||
k := keeper.NewKeeper(
|
k := keeper.NewKeeper(
|
||||||
cdc,
|
cdc,
|
||||||
storeKey,
|
storeKey,
|
||||||
@ -49,8 +57,6 @@ func AssetKeeper(t testing.TB) (*keeper.Keeper, sdk.Context) {
|
|||||||
mk,
|
mk,
|
||||||
)
|
)
|
||||||
|
|
||||||
// ctx := sdk.NewContext(stateStore, tmproto.Header{}, false, log.NewNopLogger())
|
|
||||||
|
|
||||||
// Initialize params
|
// Initialize params
|
||||||
k.SetParams(ctx, types.DefaultParams())
|
k.SetParams(ctx, types.DefaultParams())
|
||||||
|
|
||||||
|
|||||||
@ -5,7 +5,6 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
keepertest "planetmint-go/testutil/keeper"
|
keepertest "planetmint-go/testutil/keeper"
|
||||||
sample "planetmint-go/testutil/sample"
|
|
||||||
"planetmint-go/x/asset/keeper"
|
"planetmint-go/x/asset/keeper"
|
||||||
"planetmint-go/x/asset/types"
|
"planetmint-go/x/asset/types"
|
||||||
|
|
||||||
@ -18,22 +17,11 @@ func setupMsgServer(t testing.TB) (types.MsgServer, context.Context) {
|
|||||||
return keeper.NewMsgServerImpl(*k), sdk.WrapSDKContext(ctx)
|
return keeper.NewMsgServerImpl(*k), sdk.WrapSDKContext(ctx)
|
||||||
}
|
}
|
||||||
|
|
||||||
func prepareMachine(t testing.TB, ctx sdk.Context) {
|
|
||||||
// store machine to test
|
|
||||||
machine := sample.Machine()
|
|
||||||
k, _ := keepertest.MachineKeeper(t)
|
|
||||||
k.StoreMachine(ctx, machine)
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestMsgServerNotarizeAsset(t *testing.T) {
|
func TestMsgServerNotarizeAsset(t *testing.T) {
|
||||||
// machine pubkey for now
|
|
||||||
|
|
||||||
msg := types.NewMsgNotarizeAsset("pubkey", "cid", "sign", "pubkey")
|
msg := types.NewMsgNotarizeAsset("pubkey", "cid", "sign", "pubkey")
|
||||||
|
|
||||||
msgServer, ctx := setupMsgServer(t)
|
msgServer, ctx := setupMsgServer(t)
|
||||||
prepareMachine(t, sdk.UnwrapSDKContext(ctx))
|
|
||||||
res, err := msgServer.NotarizeAsset(ctx, msg)
|
res, err := msgServer.NotarizeAsset(ctx, msg)
|
||||||
if assert.NoError(t, err) {
|
if assert.NoError(t, err) {
|
||||||
assert.Equal(t, types.MsgNotarizeAssetResponse{}, res)
|
assert.Equal(t, &types.MsgNotarizeAssetResponse{}, res)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
126
x/asset/testutil/expected_keepers_mocks.go
Normal file
126
x/asset/testutil/expected_keepers_mocks.go
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
// Code generated by MockGen. DO NOT EDIT.
|
||||||
|
// Source: x/asset/types/expected_keepers.go
|
||||||
|
|
||||||
|
// Package testutil is a generated GoMock package.
|
||||||
|
package testutil
|
||||||
|
|
||||||
|
import (
|
||||||
|
types1 "planetmint-go/x/machine/types"
|
||||||
|
reflect "reflect"
|
||||||
|
|
||||||
|
types "github.com/cosmos/cosmos-sdk/types"
|
||||||
|
types0 "github.com/cosmos/cosmos-sdk/x/auth/types"
|
||||||
|
gomock "github.com/golang/mock/gomock"
|
||||||
|
)
|
||||||
|
|
||||||
|
// MockAccountKeeper is a mock of AccountKeeper interface.
|
||||||
|
type MockAccountKeeper struct {
|
||||||
|
ctrl *gomock.Controller
|
||||||
|
recorder *MockAccountKeeperMockRecorder
|
||||||
|
}
|
||||||
|
|
||||||
|
// MockAccountKeeperMockRecorder is the mock recorder for MockAccountKeeper.
|
||||||
|
type MockAccountKeeperMockRecorder struct {
|
||||||
|
mock *MockAccountKeeper
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewMockAccountKeeper creates a new mock instance.
|
||||||
|
func NewMockAccountKeeper(ctrl *gomock.Controller) *MockAccountKeeper {
|
||||||
|
mock := &MockAccountKeeper{ctrl: ctrl}
|
||||||
|
mock.recorder = &MockAccountKeeperMockRecorder{mock}
|
||||||
|
return mock
|
||||||
|
}
|
||||||
|
|
||||||
|
// EXPECT returns an object that allows the caller to indicate expected use.
|
||||||
|
func (m *MockAccountKeeper) EXPECT() *MockAccountKeeperMockRecorder {
|
||||||
|
return m.recorder
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetAccount mocks base method.
|
||||||
|
func (m *MockAccountKeeper) GetAccount(ctx types.Context, addr types.AccAddress) types0.AccountI {
|
||||||
|
m.ctrl.T.Helper()
|
||||||
|
ret := m.ctrl.Call(m, "GetAccount", ctx, addr)
|
||||||
|
ret0, _ := ret[0].(types0.AccountI)
|
||||||
|
return ret0
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetAccount indicates an expected call of GetAccount.
|
||||||
|
func (mr *MockAccountKeeperMockRecorder) GetAccount(ctx, addr interface{}) *gomock.Call {
|
||||||
|
mr.mock.ctrl.T.Helper()
|
||||||
|
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAccount", reflect.TypeOf((*MockAccountKeeper)(nil).GetAccount), ctx, addr)
|
||||||
|
}
|
||||||
|
|
||||||
|
// MockBankKeeper is a mock of BankKeeper interface.
|
||||||
|
type MockBankKeeper struct {
|
||||||
|
ctrl *gomock.Controller
|
||||||
|
recorder *MockBankKeeperMockRecorder
|
||||||
|
}
|
||||||
|
|
||||||
|
// MockBankKeeperMockRecorder is the mock recorder for MockBankKeeper.
|
||||||
|
type MockBankKeeperMockRecorder struct {
|
||||||
|
mock *MockBankKeeper
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewMockBankKeeper creates a new mock instance.
|
||||||
|
func NewMockBankKeeper(ctrl *gomock.Controller) *MockBankKeeper {
|
||||||
|
mock := &MockBankKeeper{ctrl: ctrl}
|
||||||
|
mock.recorder = &MockBankKeeperMockRecorder{mock}
|
||||||
|
return mock
|
||||||
|
}
|
||||||
|
|
||||||
|
// EXPECT returns an object that allows the caller to indicate expected use.
|
||||||
|
func (m *MockBankKeeper) EXPECT() *MockBankKeeperMockRecorder {
|
||||||
|
return m.recorder
|
||||||
|
}
|
||||||
|
|
||||||
|
// SpendableCoins mocks base method.
|
||||||
|
func (m *MockBankKeeper) SpendableCoins(ctx types.Context, addr types.AccAddress) types.Coins {
|
||||||
|
m.ctrl.T.Helper()
|
||||||
|
ret := m.ctrl.Call(m, "SpendableCoins", ctx, addr)
|
||||||
|
ret0, _ := ret[0].(types.Coins)
|
||||||
|
return ret0
|
||||||
|
}
|
||||||
|
|
||||||
|
// SpendableCoins indicates an expected call of SpendableCoins.
|
||||||
|
func (mr *MockBankKeeperMockRecorder) SpendableCoins(ctx, addr interface{}) *gomock.Call {
|
||||||
|
mr.mock.ctrl.T.Helper()
|
||||||
|
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SpendableCoins", reflect.TypeOf((*MockBankKeeper)(nil).SpendableCoins), ctx, addr)
|
||||||
|
}
|
||||||
|
|
||||||
|
// MockMachineKeeper is a mock of MachineKeeper interface.
|
||||||
|
type MockMachineKeeper struct {
|
||||||
|
ctrl *gomock.Controller
|
||||||
|
recorder *MockMachineKeeperMockRecorder
|
||||||
|
}
|
||||||
|
|
||||||
|
// MockMachineKeeperMockRecorder is the mock recorder for MockMachineKeeper.
|
||||||
|
type MockMachineKeeperMockRecorder struct {
|
||||||
|
mock *MockMachineKeeper
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewMockMachineKeeper creates a new mock instance.
|
||||||
|
func NewMockMachineKeeper(ctrl *gomock.Controller) *MockMachineKeeper {
|
||||||
|
mock := &MockMachineKeeper{ctrl: ctrl}
|
||||||
|
mock.recorder = &MockMachineKeeperMockRecorder{mock}
|
||||||
|
return mock
|
||||||
|
}
|
||||||
|
|
||||||
|
// EXPECT returns an object that allows the caller to indicate expected use.
|
||||||
|
func (m *MockMachineKeeper) EXPECT() *MockMachineKeeperMockRecorder {
|
||||||
|
return m.recorder
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetMachine mocks base method.
|
||||||
|
func (m *MockMachineKeeper) GetMachine(ctx types.Context, pubKey string) (types1.Machine, bool) {
|
||||||
|
m.ctrl.T.Helper()
|
||||||
|
ret := m.ctrl.Call(m, "GetMachine", ctx, pubKey)
|
||||||
|
ret0, _ := ret[0].(types1.Machine)
|
||||||
|
ret1, _ := ret[1].(bool)
|
||||||
|
return ret0, ret1
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetMachine indicates an expected call of GetMachine.
|
||||||
|
func (mr *MockMachineKeeperMockRecorder) GetMachine(ctx, pubKey interface{}) *gomock.Call {
|
||||||
|
mr.mock.ctrl.T.Helper()
|
||||||
|
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetMachine", reflect.TypeOf((*MockMachineKeeper)(nil).GetMachine), ctx, pubKey)
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user