github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/ibc-go/testing/simapp/adapter/evm/module.go (about)

     1  package evm
     2  
     3  import (
     4  	"encoding/json"
     5  
     6  	sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types"
     7  	"github.com/fibonacci-chain/fbc/libs/ibc-go/testing/simapp/adapter"
     8  	abci "github.com/fibonacci-chain/fbc/libs/tendermint/abci/types"
     9  	"github.com/fibonacci-chain/fbc/x/evm"
    10  	"github.com/fibonacci-chain/fbc/x/evm/types"
    11  )
    12  
    13  type EvmModuleAdapter struct {
    14  	evm.AppModule
    15  
    16  	tkeeper *evm.Keeper
    17  	ak      types.AccountKeeper
    18  }
    19  
    20  func TNewEvmModuleAdapter(k *evm.Keeper, ak types.AccountKeeper) *EvmModuleAdapter {
    21  	ret := &EvmModuleAdapter{}
    22  	ret.AppModule = evm.NewAppModule(k, ak)
    23  	ret.tkeeper = k
    24  	ret.ak = ak
    25  	return ret
    26  }
    27  
    28  func (ea EvmModuleAdapter) DefaultGenesis() json.RawMessage {
    29  	return adapter.ModuleCdc.MustMarshalJSON(types.DefaultGenesisState())
    30  }
    31  func (ea EvmModuleAdapter) InitGenesis(ctx sdk.Context, data json.RawMessage) []abci.ValidatorUpdate {
    32  	return ea.initGenesis(ctx, data)
    33  }
    34  
    35  func (ea EvmModuleAdapter) initGenesis(ctx sdk.Context, data json.RawMessage) []abci.ValidatorUpdate {
    36  	var genState types.GenesisState
    37  	// Initialize global index to index in genesis state
    38  
    39  	adapter.ModuleCdc.MustUnmarshalJSON(data, &genState)
    40  	genState.Params.EnableCall = true
    41  	genState.Params.MaxGasLimitPerTx = 10000000000000
    42  	evm.InitGenesis(ctx, *ea.tkeeper, ea.ak, genState)
    43  
    44  	return []abci.ValidatorUpdate{}
    45  }