43 lines
1.0 KiB
Go
43 lines
1.0 KiB
Go
package ante_test
|
|||
|
|||
import (
|
|||
"math/big"
|
|||
|
|||
"github.com/cerc-io/laconicd/app/ante"
|
|||
evmtypes "github.com/cerc-io/laconicd/x/evm/types"
|
|||
storetypes "github.com/cosmos/cosmos-sdk/store/types"
|
|||
sdk "github.com/cosmos/cosmos-sdk/types"
|
|||
)
|
|||
|
|||
func (suite AnteTestSuite) TestEthSetupContextDecorator() {
|
|||
dec := ante.NewEthSetUpContextDecorator(suite.app.EvmKeeper)
|
|||
tx := evmtypes.NewTxContract(suite.app.EvmKeeper.ChainID(), 1, big.NewInt(10), 1000, big.NewInt(1), nil, nil, nil, nil)
|
|||
|
|||
testCases := []struct {
|
|||
name string
|
|||
tx sdk.Tx
|
|||
expPass bool
|
|||
}{
|
|||
{"invalid transaction type - does not implement GasTx", &invalidTx{}, false},
|
|||
{
|
|||
"success - transaction implement GasTx",
|
|||
tx,
|
|||
true,
|
|||
},
|
|||
}
|
|||
|
|||
for _, tc := range testCases {
|
|||
suite.Run(tc.name, func() {
|
|||
ctx, err := dec.AnteHandle(suite.ctx, tc.tx, false, NextFn)
|
|||
|
|||
if tc.expPass {
|
|||
suite.Require().NoError(err)
|
|||
suite.Equal(storetypes.GasConfig{}, ctx.KVGasConfig())
|
|||
suite.Equal(storetypes.GasConfig{}, ctx.TransientKVGasConfig())
|
|||
} else {
|
|||
suite.Require().Error(err)
|
|||
}
|
|||
})
|
|||
}
|
|||
}
|