Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// DefaultNodeHome default home directories for the application daemon
	DefaultNodeHome string

	// ModuleBasics defines the module BasicManager is in charge of setting up basic,
	// non-dependant module elements, such as codec registration
	// and genesis verification.
	ModuleBasics = module.NewBasicManager(
		auth.AppModuleBasic{},
		genutil.AppModuleBasic{},
		bank.AppModuleBasic{},
		capability.AppModuleBasic{},
		staking.AppModuleBasic{},
		mint.AppModuleBasic{},
		distr.AppModuleBasic{},
		gov.NewAppModuleBasic(
			paramsclient.ProposalHandler,
			distrclient.ProposalHandler,
			upgradeclient.ProposalHandler,
			upgradeclient.CancelProposalHandler,
		),
		params.AppModuleBasic{},
		crisis.AppModuleBasic{},
		slashing.AppModuleBasic{},
		ibc.AppModuleBasic{},
		upgrade.AppModuleBasic{},
		evidence.AppModuleBasic{},
		transfer.AppModuleBasic{},
		vesting.AppModuleBasic{},

		token.AppModuleBasic{},
		record.AppModuleBasic{},
		nft.AppModuleBasic{},
		htlc.AppModuleBasic{},
		coinswap.AppModuleBasic{},
		service.AppModuleBasic{},
		oracle.AppModuleBasic{},
		random.AppModuleBasic{},
	)
)
View Source
var DefaultConsensusParams = &abci.ConsensusParams{
	Block: &abci.BlockParams{
		MaxBytes: 200000,
		MaxGas:   2000000,
	},
	Evidence: &tmproto.EvidenceParams{
		MaxAgeNumBlocks: 302400,
		MaxAgeDuration:  504 * time.Hour,
		MaxBytes:        10000,
	},
	Validator: &tmproto.ValidatorParams{
		PubKeyTypes: []string{
			tmtypes.ABCIPubKeyTypeEd25519,
		},
	},
}

    DefaultConsensusParams defines the default Tendermint consensus params used in SimApp testing.

    Functions

    func AddTestAddrs

    func AddTestAddrs(app *SimApp, ctx sdk.Context, accNum int, accAmt sdk.Int) []sdk.AccAddress

      AddTestAddrs constructs and returns accNum amount of accounts with an initial balance of accAmt in random order

      func AddTestAddrsFromPubKeys

      func AddTestAddrsFromPubKeys(app *SimApp, ctx sdk.Context, pubKeys []cryptotypes.PubKey, accAmt sdk.Int)

        AddTestAddrsFromPubKeys adds the addresses into the SimApp providing only the public keys.

        func AddTestAddrsIncremental

        func AddTestAddrsIncremental(app *SimApp, ctx sdk.Context, accNum int, accAmt sdk.Int) []sdk.AccAddress

          AddTestAddrs constructs and returns accNum amount of accounts with an initial balance of accAmt in random order

          func CheckBalance

          func CheckBalance(t *testing.T, app *SimApp, addr sdk.AccAddress, balances sdk.Coins)

            CheckBalance checks the balance of an account.

            func ConvertAddrsToValAddrs

            func ConvertAddrsToValAddrs(addrs []sdk.AccAddress) []sdk.ValAddress

              ConvertAddrsToValAddrs converts the provided addresses to ValAddress.

              func CreateTestPubKeys

              func CreateTestPubKeys(numPubKeys int) []cryptotypes.PubKey

                CreateTestPubKeys returns a total of numPubKeys public keys in ascending order.

                func GenSequenceOfTxs

                func GenSequenceOfTxs(txGen client.TxConfig, msgs []sdk.Msg, accNums []uint64, initSeqNums []uint64, numToGenerate int, priv ...cryptotypes.PrivKey) ([]sdk.Tx, error)

                  GenSequenceOfTxs generates a set of signed transactions of messages, such that they differ only by having the sequence numbers incremented between every transaction.

                  func GetMaccPerms

                  func GetMaccPerms() map[string][]string

                    GetMaccPerms returns a copy of the module account permissions

                    func MakeCodecs

                    func MakeCodecs() (codec.Marshaler, *codec.LegacyAmino)

                      MakeCodecs constructs the *std.Codec and *codec.LegacyAmino instances used by simapp. It is useful for tests and clients who do not want to construct the full simapp

                      func MakeTestEncodingConfig

                      func MakeTestEncodingConfig() simappparams.EncodingConfig

                        MakeTestEncodingConfig creates an EncodingConfig for testing. This function should be used only internally (in the SDK). App user should'nt create new codecs - use the app.AppCodec instead. [DEPRECATED]

                        func NewConfig

                        func NewConfig() network.Config

                        func NewPubKeyFromHex

                        func NewPubKeyFromHex(pk string) (res cryptotypes.PubKey)

                          NewPubKeyFromHex returns a PubKey from a hex string.

                          func QueryAccountExec

                          func QueryAccountExec(clientCtx client.Context, address string, extraArgs ...string) (testutil.BufferWriter, error)

                          func QueryBalanceExec

                          func QueryBalanceExec(clientCtx client.Context, address string, denom string, extraArgs ...string) (testutil.BufferWriter, error)

                          func QueryBalancesExec

                          func QueryBalancesExec(clientCtx client.Context, address string, extraArgs ...string) (testutil.BufferWriter, error)

                          func RegisterSwaggerAPI

                          func RegisterSwaggerAPI(ctx client.Context, rtr *mux.Router)

                            RegisterSwaggerAPI registers swagger route with API Server

                            func SignCheckDeliver

                            func SignCheckDeliver(
                            	t *testing.T, txCfg client.TxConfig, app *bam.BaseApp, header tmproto.Header, msgs []sdk.Msg,
                            	chainID string, accNums, accSeqs []uint64, expSimPass, expPass bool, priv ...cryptotypes.PrivKey,
                            ) (sdk.GasInfo, *sdk.Result, error)

                              SignCheckDeliver checks a generated signed transaction and simulates a block commitment with the given transaction. A test assertion is made using the parameter 'expPass' against the result. A corresponding result is returned.

                              func SimAppConstructor

                              func SimAppConstructor(val network.Validator) servertypes.Application

                              func TestAddr

                              func TestAddr(addr string, bech string) (sdk.AccAddress, error)

                              Types

                              type EmptyAppOptions

                              type EmptyAppOptions struct{}

                                EmptyAppOptions is a stub implementing AppOptions

                                func (EmptyAppOptions) Get

                                func (ao EmptyAppOptions) Get(o string) interface{}

                                  Get implements AppOptions

                                  type GenerateAccountStrategy

                                  type GenerateAccountStrategy func(int) []sdk.AccAddress

                                  type GenesisState

                                  type GenesisState map[string]json.RawMessage

                                    The genesis state of the blockchain is represented here as a map of raw json messages key'd by a identifier string. The identifier is used to determine which module genesis information belongs to so it may be appropriately routed during init chain. Within this application default genesis information is retrieved from the ModuleBasicManager which populates json from each BasicModule object provided to it during init.

                                    func NewDefaultGenesisState

                                    func NewDefaultGenesisState(cdc codec.JSONMarshaler) GenesisState

                                      NewDefaultGenesisState generates the default state for the application.

                                      type SimApp

                                      type SimApp struct {
                                      	*baseapp.BaseApp
                                      
                                      	// keepers
                                      	AccountKeeper    authkeeper.AccountKeeper
                                      	BankKeeper       bankkeeper.Keeper
                                      	CapabilityKeeper *capabilitykeeper.Keeper
                                      	StakingKeeper    stakingkeeper.Keeper
                                      	SlashingKeeper   slashingkeeper.Keeper
                                      	MintKeeper       mintkeeper.Keeper
                                      	DistrKeeper      distrkeeper.Keeper
                                      	GovKeeper        govkeeper.Keeper
                                      	CrisisKeeper     crisiskeeper.Keeper
                                      	UpgradeKeeper    upgradekeeper.Keeper
                                      	ParamsKeeper     paramskeeper.Keeper
                                      	IBCKeeper        *ibckeeper.Keeper // IBC Keeper must be a pointer in the app, so we can SetRouter on it correctly
                                      	EvidenceKeeper   evidencekeeper.Keeper
                                      	TransferKeeper   ibctransferkeeper.Keeper
                                      
                                      	// make scoped keepers public for test purposes
                                      	ScopedIBCKeeper      capabilitykeeper.ScopedKeeper
                                      	ScopedTransferKeeper capabilitykeeper.ScopedKeeper
                                      	ScopedIBCMockKeeper  capabilitykeeper.ScopedKeeper
                                      
                                      	TokenKeeper    tokenkeeper.Keeper
                                      	RecordKeeper   recordkeeper.Keeper
                                      	NFTKeeper      nftkeeper.Keeper
                                      	HTLCKeeper     htlckeeper.Keeper
                                      	CoinswapKeeper coinswapkeeper.Keeper
                                      	ServiceKeeper  servicekeeper.Keeper
                                      	OracleKeeper   oracleKeeper.Keeper
                                      	RandomKeeper   randomkeeper.Keeper
                                      	// contains filtered or unexported fields
                                      }

                                        SimApp extends an ABCI application, but with most of its parameters exported. They are exported for convenience in creating helper functions, as object capabilities aren't needed for testing.

                                        func NewSimApp

                                        func NewSimApp(
                                        	logger log.Logger, db dbm.DB, traceStore io.Writer, loadLatest bool, skipUpgradeHeights map[int64]bool,
                                        	homePath string, invCheckPeriod uint, encodingConfig simappparams.EncodingConfig,
                                        	appOpts servertypes.AppOptions, baseAppOptions ...func(*baseapp.BaseApp),
                                        ) *SimApp

                                          NewSimApp returns a reference to an initialized SimApp.

                                          func Setup

                                          func Setup(isCheckTx bool) *SimApp

                                            Setup initializes a new SimApp. A Nop logger is set in SimApp.

                                            func SetupWithGenesisAccounts

                                            func SetupWithGenesisAccounts(genAccs []authtypes.GenesisAccount, balances ...banktypes.Balance) *SimApp

                                              SetupWithGenesisAccounts initializes a new SimApp with the provided genesis accounts and possible balances.

                                              func SetupWithGenesisHTLC

                                              func SetupWithGenesisHTLC(htlcGenesis *htlctypes.GenesisState) *SimApp

                                              func SetupWithGenesisValSet

                                              func SetupWithGenesisValSet(t *testing.T, valSet *tmtypes.ValidatorSet, genAccs []authtypes.GenesisAccount, balances ...banktypes.Balance) *SimApp

                                                SetupWithGenesisValSet initializes a new SimApp with a validator set and genesis accounts that also act as delegators. For simplicity, each validator is bonded with a delegation of one consensus engine unit (10^6) in the default token of the simapp from first genesis account. A Nop logger is set in SimApp.

                                                func (*SimApp) AppCodec

                                                func (app *SimApp) AppCodec() codec.Marshaler

                                                  AppCodec returns SimApp's app codec.

                                                  NOTE: This is solely to be used for testing purposes as it may be desirable for modules to register their own custom testing types.

                                                  func (*SimApp) BeginBlocker

                                                  func (app *SimApp) BeginBlocker(ctx sdk.Context, req abci.RequestBeginBlock) abci.ResponseBeginBlock

                                                    BeginBlocker application updates every begin block

                                                    func (*SimApp) EndBlocker

                                                    func (app *SimApp) EndBlocker(ctx sdk.Context, req abci.RequestEndBlock) abci.ResponseEndBlock

                                                      EndBlocker application updates every end block

                                                      func (*SimApp) ExportAppStateAndValidators

                                                      func (app *SimApp) ExportAppStateAndValidators(
                                                      	forZeroHeight bool, jailAllowedAddrs []string,
                                                      ) (servertypes.ExportedApp, error)

                                                        ExportAppStateAndValidators exports the state of the application for a genesis file.

                                                        func (*SimApp) GetKey

                                                        func (app *SimApp) GetKey(storeKey string) *sdk.KVStoreKey

                                                          GetKey returns the KVStoreKey for the provided store key.

                                                          NOTE: This is solely to be used for testing purposes.

                                                          func (*SimApp) GetMemKey

                                                          func (app *SimApp) GetMemKey(storeKey string) *sdk.MemoryStoreKey

                                                            GetMemKey returns the MemStoreKey for the provided mem key.

                                                            NOTE: This is solely used for testing purposes.

                                                            func (*SimApp) GetSubspace

                                                            func (app *SimApp) GetSubspace(moduleName string) paramstypes.Subspace

                                                              GetSubspace returns a param subspace for a given module name.

                                                              NOTE: This is solely to be used for testing purposes.

                                                              func (*SimApp) GetTKey

                                                              func (app *SimApp) GetTKey(storeKey string) *sdk.TransientStoreKey

                                                                GetTKey returns the TransientStoreKey for the provided store key.

                                                                NOTE: This is solely to be used for testing purposes.

                                                                func (*SimApp) InitChainer

                                                                func (app *SimApp) InitChainer(ctx sdk.Context, req abci.RequestInitChain) abci.ResponseInitChain

                                                                  InitChainer application update at chain initialization

                                                                  func (*SimApp) InterfaceRegistry

                                                                  func (app *SimApp) InterfaceRegistry() types.InterfaceRegistry

                                                                    InterfaceRegistry returns SimApp's InterfaceRegistry

                                                                    func (*SimApp) LegacyAmino

                                                                    func (app *SimApp) LegacyAmino() *codec.LegacyAmino

                                                                      LegacyAmino returns SimApp's amino codec.

                                                                      NOTE: This is solely to be used for testing purposes as it may be desirable for modules to register their own custom testing types.

                                                                      func (*SimApp) LoadHeight

                                                                      func (app *SimApp) LoadHeight(height int64) error

                                                                        LoadHeight loads a particular height

                                                                        func (*SimApp) ModuleAccountAddrs

                                                                        func (app *SimApp) ModuleAccountAddrs() map[string]bool

                                                                          ModuleAccountAddrs returns all the app's module account addresses.

                                                                          func (*SimApp) Name

                                                                          func (app *SimApp) Name() string

                                                                            Name returns the name of the App

                                                                            func (*SimApp) RegisterAPIRoutes

                                                                            func (app *SimApp) RegisterAPIRoutes(apiSvr *api.Server, apiConfig config.APIConfig)

                                                                              RegisterAPIRoutes registers all application module routes with the provided API server.

                                                                              func (*SimApp) RegisterTendermintService

                                                                              func (app *SimApp) RegisterTendermintService(clientCtx client.Context)

                                                                                RegisterTendermintService implements the Application.RegisterTendermintService method.

                                                                                func (*SimApp) RegisterTxService

                                                                                func (app *SimApp) RegisterTxService(clientCtx client.Context)

                                                                                  RegisterTxService implements the Application.RegisterTxService method.

                                                                                  func (*SimApp) SimulationManager

                                                                                  func (app *SimApp) SimulationManager() *module.SimulationManager

                                                                                    SimulationManager implements the SimulationApp interface