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

     1  package fee
     2  
     3  import (
     4  	"encoding/json"
     5  
     6  	abci "github.com/fibonacci-chain/fbc/libs/tendermint/abci/types"
     7  
     8  	"github.com/fibonacci-chain/fbc/libs/ibc-go/modules/apps/29-fee/types"
     9  
    10  	sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types"
    11  	fee "github.com/fibonacci-chain/fbc/libs/ibc-go/modules/apps/29-fee"
    12  	"github.com/fibonacci-chain/fbc/libs/ibc-go/modules/apps/29-fee/keeper"
    13  )
    14  
    15  type TestFeeAppModuleBaisc struct {
    16  	fee.AppModuleBasic
    17  }
    18  
    19  func (b TestFeeAppModuleBaisc) DefaultGenesis() json.RawMessage {
    20  	return types.ModuleCdc.MustMarshalJSON(types.DefaultGenesisState())
    21  }
    22  
    23  type TestFeeAppModule struct {
    24  	fee.AppModule
    25  	keeper keeper.Keeper
    26  }
    27  
    28  func NewTestFeeAppModule(keeper keeper.Keeper) *TestFeeAppModule {
    29  	ret := &TestFeeAppModule{
    30  		AppModule: fee.NewAppModule(keeper),
    31  		keeper:    keeper,
    32  	}
    33  	return ret
    34  }
    35  
    36  func (a TestFeeAppModule) ExportGenesis(ctx sdk.Context) json.RawMessage {
    37  	gs := a.keeper.ExportGenesis(ctx)
    38  	return types.ModuleCdc.MustMarshalJSON(gs)
    39  }
    40  
    41  func (a TestFeeAppModule) InitGenesis(ctx sdk.Context, message json.RawMessage) []abci.ValidatorUpdate {
    42  	var genesisState types.GenesisState
    43  	types.ModuleCdc.MustUnmarshalJSON(message, &genesisState)
    44  	a.keeper.InitGenesis(ctx, genesisState)
    45  	return []abci.ValidatorUpdate{}
    46  }