Documentation
¶
Index ¶
- Constants
- Variables
- func AddTestAddrsIncremental(app *SimApp, ctx sdk.Context, accNum int, accAmt sdkmath.Int) []sdk.AccAddress
- func BlockedAddresses() map[string]bool
- func GetMaccPerms() map[string][]string
- func NewTestNetworkFixture() network.TestFixture
- type GenesisState
- type SetupOptions
- type SimApp
- func NewSimApp(logger log.Logger, db dbm.DB, loadLatest bool, appOpts servertypes.AppOptions, ...) *SimApp
- func NewSimappWithCustomOptions(t *testing.T, isCheckTx bool, options SetupOptions) *SimApp
- func Setup(t *testing.T, isCheckTx bool) *SimApp
- func SetupWithGenesisValSet(t *testing.T, valSet *cmttypes.ValidatorSet, ...) *SimApp
- func (app *SimApp) AppCodec() codec.Codec
- func (app *SimApp) AutoCliOpts() autocli.AppOptions
- func (app *SimApp) BeginBlocker(ctx sdk.Context) (sdk.BeginBlock, error)
- func (a *SimApp) Configurator() module.Configurator
- func (a *SimApp) DefaultGenesis() map[string]json.RawMessage
- func (app *SimApp) EndBlocker(ctx sdk.Context) (sdk.EndBlock, error)
- func (app *SimApp) ExportAppStateAndValidators(forZeroHeight bool, jailAllowedAddrs, modulesToExport []string) (servertypes.ExportedApp, error)
- func (app *SimApp) GetKey(storeKey string) *storetypes.KVStoreKey
- func (app *SimApp) GetStoreKeys() []storetypes.StoreKey
- func (app *SimApp) InitChainer(ctx sdk.Context, req *abci.RequestInitChain) (*abci.ResponseInitChain, error)
- func (app *SimApp) InterfaceRegistry() types.InterfaceRegistry
- func (app *SimApp) LegacyAmino() *codec.LegacyAmino
- func (app *SimApp) LoadHeight(height int64) error
- func (app *SimApp) Name() string
- func (app *SimApp) PreBlocker(ctx sdk.Context, _ *abci.RequestFinalizeBlock) (*sdk.ResponsePreBlock, error)
- func (app *SimApp) RegisterAPIRoutes(apiSvr *api.Server, apiConfig config.APIConfig)
- func (app *SimApp) RegisterNodeService(clientCtx client.Context, cfg config.Config)
- func (app *SimApp) RegisterTendermintService(clientCtx client.Context)
- func (app *SimApp) RegisterTxService(clientCtx client.Context)
- func (app SimApp) RegisterUpgradeHandlers()
- func (app *SimApp) SimulationManager() *module.SimulationManager
- func (app *SimApp) TxConfig() client.TxConfig
- type SimGenesisAccount
- type VoteExtension
- type VoteExtensionHandler
Constants ¶
const UpgradeName = "v054-to-v055"
UpgradeName defines the on-chain upgrade name for the sample SimApp upgrade from v054 to v055.
NOTE: This upgrade defines a reference implementation of what an upgrade could look like when an application is migrating from Cosmos SDK version v0.54.x to v0.55.x.
Variables ¶
var ( // DefaultNodeHome default home directories for the application daemon DefaultNodeHome string )
Functions ¶
func AddTestAddrsIncremental ¶
func AddTestAddrsIncremental(app *SimApp, ctx sdk.Context, accNum int, accAmt sdkmath.Int) []sdk.AccAddress
AddTestAddrsIncremental constructs and returns accNum amount of accounts with an initial balance of accAmt in random order
func BlockedAddresses ¶
BlockedAddresses returns all the app's blocked account addresses.
func GetMaccPerms ¶
GetMaccPerms returns a copy of the module account permissions
NOTE: This is solely to be used for testing purposes.
func NewTestNetworkFixture ¶
func NewTestNetworkFixture() network.TestFixture
NewTestNetworkFixture returns a new simapp AppConstructor for network simulation tests
Types ¶
type GenesisState ¶
type GenesisState map[string]json.RawMessage
GenesisState 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 GenesisStateWithSingleValidator ¶
func GenesisStateWithSingleValidator(t *testing.T, app *SimApp) GenesisState
GenesisStateWithSingleValidator initializes GenesisState with a single validator and genesis accounts that also act as delegators.
type SetupOptions ¶
type SetupOptions struct {
Logger log.Logger
DB *dbm.MemDB
AppOpts servertypes.AppOptions
}
SetupOptions defines arguments that are passed into `Simapp` constructor.
type SimApp ¶
type SimApp struct {
*baseapp.BaseApp
// essential keepers
AccountKeeper authkeeper.AccountKeeper
BankKeeper bankkeeper.BaseKeeper
StakingKeeper *stakingkeeper.Keeper
SlashingKeeper slashingkeeper.Keeper
MintKeeper mintkeeper.Keeper
DistrKeeper distrkeeper.Keeper
GovKeeper govkeeper.Keeper
UpgradeKeeper *upgradekeeper.Keeper
EvidenceKeeper evidencekeeper.Keeper
ConsensusParamsKeeper consensusparamkeeper.Keeper
// supplementary keepers
FeeGrantKeeper feegrantkeeper.Keeper
AuthzKeeper authzkeeper.Keeper
EpochsKeeper *epochskeeper.Keeper
ProtocolPoolKeeper protocolpoolkeeper.Keeper
// the module manager
ModuleManager *module.Manager
BasicModuleManager module.BasicManager
// 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, loadLatest bool, appOpts servertypes.AppOptions, baseAppOptions ...func(*baseapp.BaseApp), ) *SimApp
NewSimApp returns a reference to an initialized SimApp.
func NewSimappWithCustomOptions ¶
func NewSimappWithCustomOptions(t *testing.T, isCheckTx bool, options SetupOptions) *SimApp
NewSimappWithCustomOptions initializes a new SimApp with custom options.
func SetupWithGenesisValSet ¶
func SetupWithGenesisValSet(t *testing.T, valSet *cmttypes.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 in the default token of the simapp from first genesis account. A Nop logger is set in SimApp.
func (*SimApp) AppCodec ¶
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) AutoCliOpts ¶
func (app *SimApp) AutoCliOpts() autocli.AppOptions
AutoCliOpts returns the autocli options for the app.
func (*SimApp) BeginBlocker ¶
BeginBlocker application updates every begin block
func (*SimApp) Configurator ¶
func (a *SimApp) Configurator() module.Configurator
func (*SimApp) DefaultGenesis ¶
func (a *SimApp) DefaultGenesis() map[string]json.RawMessage
DefaultGenesis returns a default genesis from the registered AppModuleBasic's.
func (*SimApp) EndBlocker ¶
EndBlocker application updates every end block
func (*SimApp) ExportAppStateAndValidators ¶
func (app *SimApp) ExportAppStateAndValidators(forZeroHeight bool, jailAllowedAddrs, modulesToExport []string) (servertypes.ExportedApp, error)
ExportAppStateAndValidators exports the state of the application for a genesis file.
func (*SimApp) GetKey ¶
func (app *SimApp) GetKey(storeKey string) *storetypes.KVStoreKey
GetKey returns the KVStoreKey for the provided store key.
NOTE: This is solely to be used for testing purposes.
func (*SimApp) GetStoreKeys ¶
func (app *SimApp) GetStoreKeys() []storetypes.StoreKey
GetStoreKeys returns all the stored store keys.
func (*SimApp) InitChainer ¶
func (app *SimApp) InitChainer(ctx sdk.Context, req *abci.RequestInitChain) (*abci.ResponseInitChain, error)
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 ¶
LoadHeight loads a particular height
func (*SimApp) PreBlocker ¶
func (app *SimApp) PreBlocker(ctx sdk.Context, _ *abci.RequestFinalizeBlock) (*sdk.ResponsePreBlock, error)
PreBlocker application updates every pre block
func (*SimApp) RegisterAPIRoutes ¶
RegisterAPIRoutes registers all application module routes with the provided API server.
func (*SimApp) RegisterNodeService ¶
func (*SimApp) RegisterTendermintService ¶
RegisterTendermintService implements the Application.RegisterTendermintService method.
func (*SimApp) RegisterTxService ¶
RegisterTxService implements the Application.RegisterTxService method.
func (SimApp) RegisterUpgradeHandlers ¶
func (app SimApp) RegisterUpgradeHandlers()
func (*SimApp) SimulationManager ¶
func (app *SimApp) SimulationManager() *module.SimulationManager
SimulationManager implements the SimulationApp interface
type SimGenesisAccount ¶
type SimGenesisAccount struct {
*authtypes.BaseAccount
// vesting account fields
OriginalVesting sdk.Coins `json:"original_vesting" yaml:"original_vesting"` // total vesting coins upon initialization
DelegatedFree sdk.Coins `json:"delegated_free" yaml:"delegated_free"` // delegated vested coins at time of delegation
DelegatedVesting sdk.Coins `json:"delegated_vesting" yaml:"delegated_vesting"` // delegated vesting coins at time of delegation
StartTime int64 `json:"start_time" yaml:"start_time"` // vesting start time (UNIX Epoch time)
EndTime int64 `json:"end_time" yaml:"end_time"` // vesting end time (UNIX Epoch time)
// module account fields
ModuleName string `json:"module_name" yaml:"module_name"` // name of the module account
ModulePermissions []string `json:"module_permissions" yaml:"module_permissions"` // permissions of module account
}
SimGenesisAccount defines a type that implements the GenesisAccount interface to be used for simulation accounts in the genesis state.
func (SimGenesisAccount) Validate ¶
func (sga SimGenesisAccount) Validate() error
Validate checks for errors on the vesting and module account parameters
type VoteExtension ¶
VoteExtension defines the structure used to create a dummy vote extension.
type VoteExtensionHandler ¶
type VoteExtensionHandler struct{}
VoteExtensionHandler defines a dummy vote extension handler for SimApp.
NOTE: This implementation is solely used for testing purposes. DO NOT use in a production application!
func NewVoteExtensionHandler ¶
func NewVoteExtensionHandler() *VoteExtensionHandler
func (*VoteExtensionHandler) ExtendVote ¶
func (h *VoteExtensionHandler) ExtendVote() sdk.ExtendVoteHandler
func (*VoteExtensionHandler) SetHandlers ¶
func (h *VoteExtensionHandler) SetHandlers(bApp *baseapp.BaseApp)
func (*VoteExtensionHandler) VerifyVoteExtension ¶
func (h *VoteExtensionHandler) VerifyVoteExtension() sdk.VerifyVoteExtensionHandler