github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/gov/module_test.go (about) 1 package gov 2 3 import ( 4 "testing" 5 6 fbexchaincodec "github.com/fibonacci-chain/fbc/app/codec" 7 interfacetypes "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec/types" 8 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types/module" 9 ibctransfer "github.com/fibonacci-chain/fbc/libs/ibc-go/modules/apps/transfer" 10 ibc "github.com/fibonacci-chain/fbc/libs/ibc-go/modules/core" 11 12 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/client/context" 13 cliLcd "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/client/lcd" 14 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec" 15 abci "github.com/fibonacci-chain/fbc/libs/tendermint/abci/types" 16 "github.com/fibonacci-chain/fbc/x/gov/client" 17 "github.com/fibonacci-chain/fbc/x/gov/client/rest" 18 "github.com/fibonacci-chain/fbc/x/gov/keeper" 19 "github.com/fibonacci-chain/fbc/x/gov/types" 20 "github.com/spf13/cobra" 21 "github.com/stretchr/testify/require" 22 ) 23 24 func TestAppModule_BeginBlock(t *testing.T) { 25 26 } 27 28 func getCmdSubmitProposal(proxy *codec.CodecProxy, reg interfacetypes.InterfaceRegistry) *cobra.Command { 29 return &cobra.Command{} 30 } 31 32 func proposalRESTHandler(cliCtx context.CLIContext) rest.ProposalRESTHandler { 33 return rest.ProposalRESTHandler{} 34 } 35 36 func TestNewAppModuleBasic(t *testing.T) { 37 ctx, _, gk, _, crisisKeeper := keeper.CreateTestInput(t, false, 1000) 38 39 moduleBasic := NewAppModuleBasic(client.ProposalHandler{ 40 CLIHandler: getCmdSubmitProposal, 41 RESTHandler: proposalRESTHandler, 42 }) 43 44 require.Equal(t, types.ModuleName, moduleBasic.Name()) 45 46 cdc := codec.New() 47 ModuleBasics := module.NewBasicManager( 48 ibc.AppModuleBasic{}, 49 ibctransfer.AppModuleBasic{}, 50 ) 51 //cdc := fbexchaincodec.MakeCodec(ModuleBasics) 52 interfaceReg := fbexchaincodec.MakeIBC(ModuleBasics) 53 protoCodec := codec.NewProtoCodec(interfaceReg) 54 codecProxy := codec.NewCodecProxy(protoCodec, cdc) 55 56 moduleBasic.RegisterCodec(cdc) 57 bz, err := cdc.MarshalBinaryBare(types.MsgSubmitProposal{}) 58 require.NotNil(t, bz) 59 require.Nil(t, err) 60 61 jsonMsg := moduleBasic.DefaultGenesis() 62 err = moduleBasic.ValidateGenesis(jsonMsg) 63 require.Nil(t, err) 64 err = moduleBasic.ValidateGenesis(jsonMsg[:len(jsonMsg)-1]) 65 require.NotNil(t, err) 66 67 rs := cliLcd.NewRestServer(codecProxy, interfaceReg, nil) 68 moduleBasic.RegisterRESTRoutes(rs.CliCtx, rs.Mux) 69 70 // todo: check diff after GetTxCmd 71 moduleBasic.GetTxCmd(cdc) 72 73 // todo: check diff after GetQueryCmd 74 moduleBasic.GetQueryCmd(cdc) 75 76 appModule := NewAppModule(gk, gk.SupplyKeeper()) 77 require.Equal(t, types.ModuleName, appModule.Name()) 78 79 // todo: check diff after RegisterInvariants 80 appModule.RegisterInvariants(&crisisKeeper) 81 82 require.Equal(t, types.RouterKey, appModule.Route()) 83 84 require.IsType(t, NewHandler(gk), appModule.NewHandler()) 85 86 require.Equal(t, types.QuerierRoute, appModule.QuerierRoute()) 87 88 require.IsType(t, NewQuerier(gk), appModule.NewQuerierHandler()) 89 90 require.Equal(t, []abci.ValidatorUpdate{}, appModule.InitGenesis(ctx, jsonMsg)) 91 92 require.Equal(t, jsonMsg, appModule.ExportGenesis(ctx)) 93 94 appModule.BeginBlock(ctx, abci.RequestBeginBlock{}) 95 96 appModule.EndBlock(ctx, abci.RequestEndBlock{}) 97 }