github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/token/module_test.go (about) 1 package token 2 3 import ( 4 "github.com/fibonacci-chain/fbc/x/common" 5 "testing" 6 7 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec" 8 9 cliLcd "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/client/lcd" 10 abci "github.com/fibonacci-chain/fbc/libs/tendermint/abci/types" 11 "github.com/fibonacci-chain/fbc/x/common/version" 12 "github.com/fibonacci-chain/fbc/x/token/types" 13 "github.com/stretchr/testify/require" 14 ) 15 16 func TestAppModule_InitGenesis(t *testing.T) { 17 common.InitConfig() 18 app, tokenKeeper, _ := getMockDexAppEx(t, 0) 19 module := NewAppModule(version.ProtocolVersionV0, tokenKeeper, app.supplyKeeper) 20 ctx := app.NewContext(true, abci.Header{}) 21 gs := defaultGenesisState() 22 gs.Tokens = nil 23 gsJSON := types.ModuleCdc.MustMarshalJSON(gs) 24 25 err := module.ValidateGenesis(gsJSON) 26 require.NoError(t, err) 27 28 vu := module.InitGenesis(ctx, gsJSON) 29 params := tokenKeeper.GetParams(ctx) 30 require.Equal(t, gs.Params, params) 31 require.Equal(t, vu, []abci.ValidatorUpdate{}) 32 33 export := module.ExportGenesis(ctx) 34 require.EqualValues(t, gsJSON, []byte(export)) 35 36 require.EqualValues(t, types.ModuleName, module.Name()) 37 require.EqualValues(t, types.ModuleName, module.AppModuleBasic.Name()) 38 require.EqualValues(t, types.RouterKey, module.Route()) 39 require.EqualValues(t, types.QuerierRoute, module.QuerierRoute()) 40 module.NewHandler() 41 module.GetQueryCmd(app.Cdc.GetCdc()) 42 module.GetTxCmd(app.Cdc.GetCdc()) 43 module.NewQuerierHandler() 44 rs := cliLcd.NewRestServer(app.Cdc, nil, nil) 45 module.RegisterRESTRoutes(rs.CliCtx, rs.Mux) 46 module.BeginBlock(ctx, abci.RequestBeginBlock{}) 47 module.EndBlock(ctx, abci.RequestEndBlock{}) 48 module.DefaultGenesis() 49 module.RegisterCodec(codec.New()) 50 51 gsJSON = []byte("[[],{}]") 52 err = module.ValidateGenesis(gsJSON) 53 require.NotNil(t, err) 54 }