simapp

package
v0.15.0-alpha.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 10, 2022 License: Apache-2.0 Imports: 136 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Name      = "nibiru"
	AppName   = "Nibiru"
	BondDenom = "unibi"
)
View Source
const (
	GenOracleAddress = "nibi1zuxt7fvuxgj69mjxu3auca96zemqef5u2yemly"
)

Variables

Functions

func AppStateFn

func AppStateFn(cdc codec.JSONCodec, simManager *module.SimulationManager) simtypes.AppStateFn

AppStateFn returns the initial application state using a genesis or the simulation parameters. It panics if the user provides files for both of them. If a file is not given for the genesis or the sim params, it creates a randomized one.

func AppStateFromGenesisFileFn

func AppStateFromGenesisFileFn(r io.Reader, cdc codec.JSONCodec, genesisFile string) (tmtypes.GenesisDoc, []simtypes.Account)

AppStateFromGenesisFileFn util function to generate the genesis AppState from a genesis.json file.

func AppStateRandomizedFn

func AppStateRandomizedFn(
	simManager *module.SimulationManager, r *rand.Rand, cdc codec.JSONCodec,
	accs []simtypes.Account, genesisTimestamp time.Time, appParams simtypes.AppParams,
) (json.RawMessage, []simtypes.Account)

AppStateRandomizedFn creates calls each module's GenesisState generator function and creates the simulation params.

func GetMaccPerms added in v0.13.0

func GetMaccPerms() map[string][]string

GetMaccPerms returns a copy of the module account permissions

func MakeTestEncodingConfig added in v0.13.0

func MakeTestEncodingConfig() params.EncodingConfig

MakeTestEncodingConfig creates an EncodingConfig for testing. This function should be used only in tests or when creating a new app instance (NewApp*()). App user shouldn't create new codecs - use the app.AppCodec instead. [DEPRECATED]

func PricefeedGenesis added in v0.13.0

func PricefeedGenesis() pricefeedtypes.GenesisState
PricefeedGenesis returns an x/pricefeed GenesisState with additional

configuration for convenience during integration tests.

func RegisterSwaggerAPI added in v0.13.0

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

RegisterSwaggerAPI registers swagger route with API Server

Types

type GenesisState added in v0.13.0

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 NewDefaultGenesisState added in v0.13.0

func NewDefaultGenesisState(cdc codec.JSONCodec) GenesisState

NewDefaultGenesisState generates the default state for the application.

func NewTestGenesisState added in v0.13.0

func NewTestGenesisState(codec codec.Codec, inGenState GenesisState,
) (testGenState GenesisState)

NewTestGenesisState transforms 'inGenState' to add genesis parameter changes that are well suited to integration testing, then returns the transformed genesis. The blockchain genesis state is represented as a map from module identifier strings to raw json messages.

Args: - codec: Serializer for the module genesis state proto.Messages - inGenState: Input genesis state before the custom test setup is applied

func NewTestGenesisStateFromDefault added in v0.13.0

func NewTestGenesisStateFromDefault() GenesisState
NewTestGenesisStateFromDefault returns 'NewGenesisState' using the default

genesis as input. The blockchain genesis state is represented as a map from module identifier strings to raw json messages.

type NibiruTestApp added in v0.13.0

type NibiruTestApp struct {
	*baseapp.BaseApp

	// AccountKeeper encodes/decodes accounts using the go-amino (binary) encoding/decoding library
	AccountKeeper authkeeper.AccountKeeper
	// BankKeeper defines a module interface that facilitates the transfer of coins between accounts
	BankKeeper       bankkeeper.Keeper
	CapabilityKeeper *capabilitykeeper.Keeper
	StakingKeeper    stakingkeeper.Keeper
	SlashingKeeper   slashingkeeper.Keeper
	MintKeeper       mintkeeper.Keeper
	/* DistrKeeper is the keeper of the distribution store */
	DistrKeeper    distrkeeper.Keeper
	GovKeeper      govkeeper.Keeper
	CrisisKeeper   crisiskeeper.Keeper
	UpgradeKeeper  upgradekeeper.Keeper
	ParamsKeeper   paramskeeper.Keeper
	AuthzKeeper    authzkeeper.Keeper
	FeeGrantKeeper feegrantkeeper.Keeper

	// --------------------------------------------------------------------
	// IBC keepers
	// --------------------------------------------------------------------
	/* EvidenceKeeper is responsible for managing persistence, state transitions
	   and query handling for the evidence module. It is required to set up
	   the IBC light client misbehavior evidence route. */
	EvidenceKeeper evidencekeeper.Keeper
	/* IBCKeeper defines each ICS keeper for IBC. IBCKeeper must be a pointer in
	   the nibiapp, so we can SetRouter on it correctly. */
	IBCKeeper *ibckeeper.Keeper
	/* TransferKeeper is for cross-chain fungible token transfers. */
	TransferKeeper ibctransferkeeper.Keeper

	// make scoped keepers public for test purposes
	ScopedIBCKeeper      capabilitykeeper.ScopedKeeper
	ScopedTransferKeeper capabilitykeeper.ScopedKeeper

	// ---------------
	// Nibiru keepers
	// ---------------
	OracleKeeper          oraclekeeper.Keeper
	DexKeeper             dexkeeper.Keeper
	StablecoinKeeper      stablecoinkeeper.Keeper
	PerpKeeper            perpkeeper.Keeper
	PricefeedKeeper       pricefeedkeeper.Keeper
	EpochsKeeper          epochskeeper.Keeper
	LockupKeeper          lockupkeeper.Keeper
	IncentivizationKeeper incentivizationkeeper.Keeper
	VpoolKeeper           vpoolkeeper.Keeper
	// contains filtered or unexported fields
}

NibiruTestApp 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 NewNibiruTestApp added in v0.13.0

func NewNibiruTestApp(
	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),
) *NibiruTestApp

NewNibiruTestApp returns a reference to an initialized NibiruTestApp.

func NewTestNibiruApp added in v0.13.0

func NewTestNibiruApp(shouldUseDefaultGenesis bool) *NibiruTestApp

NewTestNibiruApp creates an application instance ('app.NibiruApp') with an in-memory database ('tmdb.MemDB') and disabled logging. It either uses the application's default genesis state or a blank one.

func NewTestNibiruAppAndContext added in v0.13.0

func NewTestNibiruAppAndContext(shouldUseDefaultGenesis bool) (*NibiruTestApp, sdk.Context)

NewTestNibiruAppAndContext creates an 'app.NibiruApp' instance with an in-memory 'tmdb.MemDB' and fresh 'sdk.Context'.

func NewTestNibiruAppWithGenesis added in v0.13.0

func NewTestNibiruAppWithGenesis(gen GenesisState) *NibiruTestApp

NewTestNibiruAppWithGenesis initializes a chain with the given genesis state to creates an application instance ('app.NibiruApp'). This app uses an in-memory database ('tmdb.MemDB') and has logging disabled.

func (*NibiruTestApp) AppCodec added in v0.13.0

func (app *NibiruTestApp) AppCodec() codec.Codec

AppCodec returns SimApp's nibiapp 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 (*NibiruTestApp) BeginBlocker added in v0.13.0

BeginBlocker application updates every begin block

func (*NibiruTestApp) EndBlocker added in v0.13.0

EndBlocker application updates every end block

func (*NibiruTestApp) ExportAppStateAndValidators added in v0.13.0

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

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

func (*NibiruTestApp) GetBaseApp added in v0.13.0

func (app *NibiruTestApp) GetBaseApp() *baseapp.BaseApp

func (*NibiruTestApp) GetIBCKeeper added in v0.13.0

func (app *NibiruTestApp) GetIBCKeeper() *ibckeeper.Keeper

func (*NibiruTestApp) GetKey added in v0.13.0

func (app *NibiruTestApp) 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 (*NibiruTestApp) GetMemKey added in v0.13.0

func (app *NibiruTestApp) GetMemKey(storeKey string) *storetypes.MemoryStoreKey

GetMemKey returns the MemStoreKey for the provided mem key.

NOTE: This is solely used for testing purposes.

func (*NibiruTestApp) GetScopedIBCKeeper added in v0.13.0

func (app *NibiruTestApp) GetScopedIBCKeeper() capabilitykeeper.ScopedKeeper

func (*NibiruTestApp) GetStakingKeeper added in v0.13.0

func (app *NibiruTestApp) GetStakingKeeper() stakingkeeper.Keeper

func (*NibiruTestApp) GetSubspace added in v0.13.0

func (app *NibiruTestApp) 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 (*NibiruTestApp) GetTKey added in v0.13.0

func (app *NibiruTestApp) GetTKey(storeKey string) *storetypes.TransientStoreKey

GetTKey returns the TransientStoreKey for the provided store key.

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

func (*NibiruTestApp) GetTxConfig added in v0.13.0

func (app *NibiruTestApp) GetTxConfig() client.TxConfig

func (*NibiruTestApp) InitChainer added in v0.13.0

InitChainer application update at chain initialization

func (*NibiruTestApp) InterfaceRegistry added in v0.13.0

func (app *NibiruTestApp) InterfaceRegistry() codectypes.InterfaceRegistry

InterfaceRegistry returns App's InterfaceRegistry

func (*NibiruTestApp) LegacyAmino added in v0.13.0

func (app *NibiruTestApp) 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 (*NibiruTestApp) LoadHeight added in v0.13.0

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

LoadHeight loads a particular height

func (*NibiruTestApp) ModuleAccountAddrs added in v0.13.0

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

ModuleAccountAddrs returns all the nibiapp's module account addresses.

func (*NibiruTestApp) Name added in v0.13.0

func (app *NibiruTestApp) Name() string

Name returns the name of the App

func (*NibiruTestApp) RegisterAPIRoutes added in v0.13.0

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

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

func (*NibiruTestApp) RegisterTendermintService added in v0.13.0

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

RegisterTendermintService implements the Application.RegisterTendermintService method.

func (*NibiruTestApp) RegisterTxService added in v0.13.0

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

RegisterTxService implements the Application.RegisterTxService method.

func (*NibiruTestApp) SimulationManager added in v0.13.0

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

SimulationManager implements the SimulationApp interface

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL