Documentation ¶
Index ¶
- type SimulatedBackend
- func (b *SimulatedBackend) BalanceAt(ctx context.Context, contract common.Address, blockNumber *big.Int) (*big.Int, error)
- func (b *SimulatedBackend) CallContract(ctx context.Context, call fastychain.CallMsg, blockNumber *big.Int) ([]byte, error)
- func (b *SimulatedBackend) CodeAt(ctx context.Context, contract common.Address, blockNumber *big.Int) ([]byte, error)
- func (b *SimulatedBackend) Commit()
- func (b *SimulatedBackend) EstimateGas(ctx context.Context, call fastychain.CallMsg) (uint64, error)
- func (b *SimulatedBackend) FilterLogs(ctx context.Context, query fastychain.FilterQuery) ([]types.Log, error)
- func (b *SimulatedBackend) NonceAt(ctx context.Context, contract common.Address, blockNumber *big.Int) (uint64, error)
- func (b *SimulatedBackend) PendingCallContract(ctx context.Context, call fastychain.CallMsg) ([]byte, error)
- func (b *SimulatedBackend) PendingCodeAt(ctx context.Context, contract common.Address) ([]byte, error)
- func (b *SimulatedBackend) PendingNonceAt(ctx context.Context, account common.Address) (uint64, error)
- func (b *SimulatedBackend) SendTransaction(ctx context.Context, tx *types.Transaction) error
- func (b *SimulatedBackend) StorageAt(ctx context.Context, contract common.Address, key common.Hash, ...) ([]byte, error)
- func (b *SimulatedBackend) SubscribeFilterLogs(ctx context.Context, query fastychain.FilterQuery, ch chan<- types.Log) (fastychain.Subscription, error)
- func (b *SimulatedBackend) SuggestGasPrice(ctx context.Context) (*big.Int, error)
- func (b *SimulatedBackend) TransactionByHash(ctx context.Context, txHash common.Hash) (*types.Transaction, bool, error)
- func (b *SimulatedBackend) TransactionReceipt(ctx context.Context, txHash common.Hash) (*types.Receipt, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type SimulatedBackend ¶
type SimulatedBackend struct {
// contains filtered or unexported fields
}
SimulatedBackend implements bind.ContractBackend, simulating a blockchain in the background. Its main purpose is to allow easily testing contract bindings.
func NewSimulatedBackend ¶
func NewSimulatedBackend(alloc core.GenesisAlloc) *SimulatedBackend
NewSimulatedBackend creates a new binding backend using a simulated blockchain for testing purposes.
func (*SimulatedBackend) BalanceAt ¶
func (b *SimulatedBackend) BalanceAt(ctx context.Context, contract common.Address, blockNumber *big.Int) (*big.Int, error)
BalanceAt returns the wei balance of a certain account in the blockchain.
func (*SimulatedBackend) CallContract ¶
func (b *SimulatedBackend) CallContract(ctx context.Context, call fastychain.CallMsg, blockNumber *big.Int) ([]byte, error)
CallContract executes a contract call.
func (*SimulatedBackend) CodeAt ¶
func (b *SimulatedBackend) CodeAt(ctx context.Context, contract common.Address, blockNumber *big.Int) ([]byte, error)
CodeAt returns the code associated with a certain account in the blockchain.
func (*SimulatedBackend) Commit ¶
func (b *SimulatedBackend) Commit()
Commit imports all the pending transactions as a single block and starts a fresh new state.
func (*SimulatedBackend) EstimateGas ¶
func (b *SimulatedBackend) EstimateGas(ctx context.Context, call fastychain.CallMsg) (uint64, error)
EstimateGas executes the requested code against the currently pending block/state and returns the used amount of gas.
func (*SimulatedBackend) FilterLogs ¶
func (b *SimulatedBackend) FilterLogs(ctx context.Context, query fastychain.FilterQuery) ([]types.Log, error)
FilterLogs executes a log filter operation, blocking during execution and returning all the results in one batch.
TODO(karalabe): Deprecate when the subscription one can return past data too.
func (*SimulatedBackend) NonceAt ¶
func (b *SimulatedBackend) NonceAt(ctx context.Context, contract common.Address, blockNumber *big.Int) (uint64, error)
NonceAt returns the nonce of a certain account in the blockchain.
func (*SimulatedBackend) PendingCallContract ¶
func (b *SimulatedBackend) PendingCallContract(ctx context.Context, call fastychain.CallMsg) ([]byte, error)
PendingCallContract executes a contract call on the pending state.
func (*SimulatedBackend) PendingCodeAt ¶
func (b *SimulatedBackend) PendingCodeAt(ctx context.Context, contract common.Address) ([]byte, error)
PendingCodeAt returns the code associated with an account in the pending state.
func (*SimulatedBackend) PendingNonceAt ¶
func (b *SimulatedBackend) PendingNonceAt(ctx context.Context, account common.Address) (uint64, error)
PendingNonceAt implements PendingStateReader.PendingNonceAt, retrieving the nonce currently pending for the account.
func (*SimulatedBackend) SendTransaction ¶
func (b *SimulatedBackend) SendTransaction(ctx context.Context, tx *types.Transaction) error
SendTransaction updates the pending block to include the given transaction. It panics if the transaction is invalid.
func (*SimulatedBackend) StorageAt ¶
func (b *SimulatedBackend) StorageAt(ctx context.Context, contract common.Address, key common.Hash, blockNumber *big.Int) ([]byte, error)
StorageAt returns the value of key in the storage of an account in the blockchain.
func (*SimulatedBackend) SubscribeFilterLogs ¶
func (b *SimulatedBackend) SubscribeFilterLogs(ctx context.Context, query fastychain.FilterQuery, ch chan<- types.Log) (fastychain.Subscription, error)
SubscribeFilterLogs creates a background log filtering operation, returning a subscription immediately, which can be used to stream the found events.
func (*SimulatedBackend) SuggestGasPrice ¶
SuggestGasPrice implements ContractTransactor.SuggestGasPrice. Since the simulated chain doesn't have miners, we just return a gas price of 1 for any call.
func (*SimulatedBackend) TransactionByHash ¶
func (b *SimulatedBackend) TransactionByHash(ctx context.Context, txHash common.Hash) (*types.Transaction, bool, error)
TransactionByHash checks the pool of pending transactions in addition to the blockchain. The isPending return value indicates whether the transaction has been mined yet. Note that the transaction may not be part of the canonical chain even if it's not pending.
func (*SimulatedBackend) TransactionReceipt ¶
func (b *SimulatedBackend) TransactionReceipt(ctx context.Context, txHash common.Hash) (*types.Receipt, error)
TransactionReceipt returns the receipt of a transaction.