62 lines
1.9 KiB
Go
62 lines
1.9 KiB
Go
package keeper_test
|
|
|
|
import (
|
|
gocontext "context"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/suite"
|
|
tmproto "github.com/tendermint/tendermint/proto/tendermint/types"
|
|
|
|
"github.com/cosmos/cosmos-sdk/baseapp"
|
|
codectypes "github.com/cosmos/cosmos-sdk/codec/types"
|
|
simtestutil "github.com/cosmos/cosmos-sdk/testutil/sims"
|
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
|
"github.com/cosmos/cosmos-sdk/x/mint/keeper"
|
|
"github.com/cosmos/cosmos-sdk/x/mint/testutil"
|
|
"github.com/cosmos/cosmos-sdk/x/mint/types"
|
|
)
|
|
|
|
type MintTestSuite struct {
|
|
suite.Suite
|
|
|
|
ctx sdk.Context
|
|
queryClient types.QueryClient
|
|
mintKeeper keeper.Keeper
|
|
}
|
|
|
|
func (suite *MintTestSuite) SetupTest() {
|
|
var interfaceRegistry codectypes.InterfaceRegistry
|
|
|
|
app, err := simtestutil.Setup(testutil.AppConfig,
|
|
&interfaceRegistry,
|
|
&suite.mintKeeper,
|
|
)
|
|
suite.Require().NoError(err)
|
|
|
|
ctx := app.BaseApp.NewContext(false, tmproto.Header{})
|
|
|
|
queryHelper := baseapp.NewQueryServerTestHelper(ctx, interfaceRegistry)
|
|
types.RegisterQueryServer(queryHelper, suite.mintKeeper)
|
|
|
|
suite.ctx = ctx
|
|
suite.queryClient = types.NewQueryClient(queryHelper)
|
|
}
|
|
|
|
func (suite *MintTestSuite) TestGRPCParams() {
|
|
params, err := suite.queryClient.Params(gocontext.Background(), &types.QueryParamsRequest{})
|
|
suite.Require().NoError(err)
|
|
suite.Require().Equal(params.Params, suite.mintKeeper.GetParams(suite.ctx))
|
|
|
|
inflation, err := suite.queryClient.Inflation(gocontext.Background(), &types.QueryInflationRequest{})
|
|
suite.Require().NoError(err)
|
|
suite.Require().Equal(inflation.Inflation, suite.mintKeeper.GetMinter(suite.ctx).Inflation)
|
|
|
|
annualProvisions, err := suite.queryClient.AnnualProvisions(gocontext.Background(), &types.QueryAnnualProvisionsRequest{})
|
|
suite.Require().NoError(err)
|
|
suite.Require().Equal(annualProvisions.AnnualProvisions, suite.mintKeeper.GetMinter(suite.ctx).AnnualProvisions)
|
|
}
|
|
|
|
func TestMintTestSuite(t *testing.T) {
|
|
suite.Run(t, new(MintTestSuite))
|
|
}
|