Emulator
A simple emulated Network. This can be used to do integration tests of whole dApps. Staking is not yet supported.
export interface Emulator {
blocks: EmulatorTx[][]
createUtxo(
wallet: SimpleWallet,
lovelace: bigint,
assets: Assets
): TxOutputId
createWallet(
lovelace: bigint,
assets: Assets
): SimpleWallet
currentSlot: number
dump(): void
genesis: EmulatorGenesisTx[]
getUtxo(id: TxOutputId): Promise<TxInput>
getUtxos(addr: Address): Promise<TxInput[]>
isConsumed(utxo: TxInput): boolean
isMainnet(): boolean
mempool: EmulatorTx[]
now: number
parameters: Promise<NetworkParams>
parametersSync: NetworkParams
submitTx(tx: Tx): Promise<TxId>
tick(nSlots: IntLike): void
txIds: TxId[]
}
Properties
blocks
emulator.blocks satisfies EmulatorTx[][]
createUtxo
Creates a UTxO using a GenesisTx.
emulator.createUtxo satisfies (
wallet: SimpleWallet,
lovelace: bigint,
assets: Assets
) => TxOutputId
createWallet
Creates a new SimpleWallet and populates it with a given lovelace quantity and assets. Special genesis transactions are added to the emulated chain in order to create these assets.
emulator.createWallet satisfies (
lovelace: bigint,
assets: Assets
) => SimpleWallet
currentSlot
emulator.currentSlot satisfies number
dump
Dumps to current emulator state to console
emulator.dump satisfies () => void
genesis
emulator.genesis satisfies EmulatorGenesisTx[]
getUtxo
Throws an error if the UTxO isn't found
emulator.getUtxo satisfies (id: TxOutputId) => Promise<TxInput>
getUtxos
emulator.getUtxos satisfies (addr: Address) => Promise<TxInput[]>
isConsumed
emulator.isConsumed satisfies (utxo: TxInput) => boolean
isMainnet
Returns false
emulator.isMainnet satisfies () => boolean
mempool
emulator.mempool satisfies EmulatorTx[]
now
Multiplies currentslot by 1000 (i.e. each slot is assumed to be 1000 milliseconds)
emulator.now satisfies number
parameters
emulator.parameters satisfies Promise<NetworkParams>
parametersSync
emulator.parametersSync satisfies NetworkParams
submitTx
emulator.submitTx satisfies (tx: Tx) => Promise<TxId>
tick
emulator.tick satisfies (nSlots: IntLike) => void
txIds
Ignores the genesis txs
emulator.txIds satisfies TxId[]