laconicd/x/feemarket/keeper/grpc_query_test.go
Daniel Burckhardt 93020f8786
feemarket: unit tests EIP1559 (#758)
* Fee-Market(Types): Setup Params tests

* Fee-Market(Types): Add all Params tests

* Fee-Market(Types): Add genesis tests

* Fee-Market(Keeper): Copy Keeper setup from EVM module and add Params tests

* Fee-Market(Keeper): Add Keeper tests

* Fee-Market(Keeper): Add review comments

* Fee-Market(Keeper): WIP grpc tests

* Fee-Market(Keeper): WIP ERIP1559 tests

* Fee-Market(Keeper): WIP ERIP1559 tests

* Fee-Market(Keeper): WIP ERIP1559 tests maxGas influences on baseFee

* Fee-Market(Keeper): Add last ERIP1559 tests

* Fee-Market(Keeper): Add abci tests
2021-11-19 16:22:25 +00:00

104 lines
2.1 KiB
Go

package keeper_test
import (
"fmt"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/tharsis/ethermint/x/feemarket/types"
)
func (suite *KeeperTestSuite) TestQueryParams() {
testCases := []struct {
name string
expPass bool
}{
{
"pass",
true,
},
}
for _, tc := range testCases {
params := suite.app.FeeMarketKeeper.GetParams(suite.ctx)
exp := &types.QueryParamsResponse{Params: params}
res, err := suite.queryClient.Params(suite.ctx.Context(), &types.QueryParamsRequest{})
if tc.expPass {
suite.Require().Equal(exp, res, tc.name)
suite.Require().NoError(err)
} else {
suite.Require().Error(err)
}
}
}
func (suite *KeeperTestSuite) TestQueryBaseFee() {
var (
aux sdk.Int
expRes *types.QueryBaseFeeResponse
)
testCases := []struct {
name string
malleate func()
expPass bool
}{
{
"pass - nil Base Fee",
func() {
expRes = &types.QueryBaseFeeResponse{}
},
true,
},
{
"pass - non-nil Base Fee",
func() {
baseFee := sdk.OneInt().BigInt()
suite.app.FeeMarketKeeper.SetBaseFee(suite.ctx, baseFee)
aux = sdk.NewIntFromBigInt(baseFee)
expRes = &types.QueryBaseFeeResponse{BaseFee: &aux}
},
true,
},
}
for _, tc := range testCases {
fee := suite.app.FeeMarketKeeper.GetBaseFee(suite.ctx)
fmt.Printf("baseFee: %v", fee)
tc.malleate()
res, err := suite.queryClient.BaseFee(suite.ctx.Context(), &types.QueryBaseFeeRequest{})
if tc.expPass {
suite.Require().NotNil(res)
suite.Require().Equal(expRes, res, tc.name)
suite.Require().NoError(err)
} else {
suite.Require().Error(err)
}
}
}
func (suite *KeeperTestSuite) TestQueryBlockGas() {
testCases := []struct {
name string
expPass bool
}{
{
"pass",
true,
},
}
for _, tc := range testCases {
gas := suite.app.FeeMarketKeeper.GetBlockGasUsed(suite.ctx)
exp := &types.QueryBlockGasResponse{Gas: int64(gas)}
res, err := suite.queryClient.BlockGas(suite.ctx.Context(), &types.QueryBlockGasRequest{})
if tc.expPass {
suite.Require().Equal(exp, res, tc.name)
suite.Require().NoError(err)
} else {
suite.Require().Error(err)
}
}
}