Documentation ¶
Index ¶
- Constants
- func AccountExists(accnts state.AccountsAdapter, addressBytes []byte) bool
- func ComputeExpectedBalance(existing *big.Int, transferred *big.Int, gasLimit uint64, gasPrice uint64) *big.Int
- func ComputeGasLimit(gasSchedule map[string]map[string]uint64, testContext *VMTestContext, ...) uint64
- func CreateAccount(accnts state.AccountsAdapter, pubKey []byte, nonce uint64, balance *big.Int) ([]byte, error)
- func CreateDeployTx(senderAddressBytes []byte, senderNonce uint64, value *big.Int, gasPrice uint64, ...) *dataTransaction.Transaction
- func CreateEmptyAddress() []byte
- func CreateMockGasScheduleNotifier() *mock.GasScheduleNotifierMock
- func CreateOneSCExecutorMockVM(accnts state.AccountsAdapter) vmcommon.VMExecutionHandler
- func CreatePreparedTxProcessorAndAccountsWithMockedVM(vmOpGas uint64, senderNonce uint64, senderAddressBytes []byte, ...) (process.TransactionProcessor, state.AccountsAdapter, error)
- func CreateTransaction(nonce uint64, value *big.Int, sndAddress []byte, rcvAddress []byte, ...) *dataTransaction.Transaction
- func CreateTransferTokenTx(nonce uint64, functionName string, value *big.Int, scAddrress []byte, ...) *dataTransaction.Transaction
- func CreateTx(senderAddressBytes []byte, receiverAddressBytes []byte, senderNonce uint64, ...) *dataTransaction.Transaction
- func CreateTxProcessorWithOneSCExecutorMockVM(accnts state.AccountsAdapter, opGas uint64, ...) (process.TransactionProcessor, error)
- func CreateVMAndBlockchainHookAndDataPool(accnts state.AccountsAdapter, gasSchedule core.GasScheduleNotifier, ...) (process.VirtualMachinesContainer, *hooks.BlockChainHookImpl, ...)
- func CreateVMAndBlockchainHookMeta(accnts state.AccountsAdapter, gasSchedule core.GasScheduleNotifier, ...) (process.VirtualMachinesContainer, *hooks.BlockChainHookImpl)
- func GetIntValueFromSC(gasSchedule map[string]map[string]uint64, accnts state.AccountsAdapter, ...) *big.Int
- func GetNodeIndex(nodeList []*integrationTests.TestProcessorNode, ...) (int, error)
- func GetVmOutput(gasSchedule map[string]map[string]uint64, accnts state.AccountsAdapter, ...) *vmcommon.VMOutput
- func TestAccount(t *testing.T, accnts state.AccountsAdapter, senderAddressBytes []byte, ...) *big.Int
- func TestDeployedContractContents(t *testing.T, destinationAddressBytes []byte, accnts state.AccountsAdapter, ...)
- type ResultsCreateTxProcessor
- type VMTestAccount
- type VMTestContext
- func CreatePreparedTxProcessorAndAccountsWithVMs(senderNonce uint64, senderAddressBytes []byte, senderBalance *big.Int, ...) (*VMTestContext, error)
- func CreatePreparedTxProcessorWithVMs(enableEpochs config.EnableEpochs) (*VMTestContext, error)
- func CreatePreparedTxProcessorWithVMsAndCustomGasSchedule(enableEpochs config.EnableEpochs, ...) (*VMTestContext, error)
- func CreatePreparedTxProcessorWithVMsMultiShard(selfShardID uint32, enableEpochsConfig config.EnableEpochs) (*VMTestContext, error)
- func CreatePreparedTxProcessorWithVMsWithShardCoordinator(enableEpochsConfig config.EnableEpochs, shardCoordinator sharding.Coordinator) (*VMTestContext, error)
- func CreatePreparedTxProcessorWithVMsWithShardCoordinatorDBAndGas(enableEpochsConfig config.EnableEpochs, shardCoordinator sharding.Coordinator, ...) (*VMTestContext, error)
- func CreateTxProcessorWasmVMWithGasSchedule(senderNonce uint64, senderAddressBytes []byte, senderBalance *big.Int, ...) (*VMTestContext, error)
- func CreateTxProcessorWasmVMWithVMConfig(enableEpochsConfig config.EnableEpochs, vmConfig *config.VirtualMachineConfig, ...) (*VMTestContext, error)
- func (vmTestContext *VMTestContext) CleanIntermediateTransactions(tb testing.TB)
- func (vmTestContext *VMTestContext) Close()
- func (vmTestContext *VMTestContext) CreateAccount(account *VMTestAccount)
- func (vmTestContext *VMTestContext) CreateBlockStarted()
- func (vmTestContext *VMTestContext) CreateTransaction(sender *VMTestAccount, receiver *VMTestAccount, value *big.Int, ...) *dataTransaction.Transaction
- func (vmTestContext *VMTestContext) CreateTransferTokenTx(sender *VMTestAccount, receiver *VMTestAccount, value *big.Int, ...) *dataTransaction.Transaction
- func (vmTestContext *VMTestContext) GetCompositeTestError() error
- func (vmTestContext *VMTestContext) GetGasRemaining() uint64
- func (vmTestContext *VMTestContext) GetIntValueFromSCWithTransientVM(funcName string, args ...[]byte) *big.Int
- func (vmTestContext *VMTestContext) GetIntermediateTransactions(tb testing.TB) []data.TransactionHandler
- func (vmTestContext *VMTestContext) GetVMOutputWithTransientVM(funcName string, args ...[]byte) *vmcommon.VMOutput
Constants ¶
const EpochGuardianDelay = uint32(2)
EpochGuardianDelay is the test constant for the delay in epochs for the guardian feature
Variables ¶
This section is empty.
Functions ¶
func AccountExists ¶
func AccountExists(accnts state.AccountsAdapter, addressBytes []byte) bool
AccountExists -
func ComputeExpectedBalance ¶
func ComputeExpectedBalance( existing *big.Int, transferred *big.Int, gasLimit uint64, gasPrice uint64, ) *big.Int
ComputeExpectedBalance -
func ComputeGasLimit ¶
func ComputeGasLimit(gasSchedule map[string]map[string]uint64, testContext *VMTestContext, tx *dataTx.Transaction) uint64
ComputeGasLimit -
func CreateAccount ¶
func CreateAccount(accnts state.AccountsAdapter, pubKey []byte, nonce uint64, balance *big.Int) ([]byte, error)
CreateAccount -
func CreateDeployTx ¶
func CreateDeployTx( senderAddressBytes []byte, senderNonce uint64, value *big.Int, gasPrice uint64, gasLimit uint64, scCodeAndVMType string, ) *dataTransaction.Transaction
CreateDeployTx -
func CreateMockGasScheduleNotifier ¶ added in v1.4.9
func CreateMockGasScheduleNotifier() *mock.GasScheduleNotifierMock
CreateMockGasScheduleNotifier will create a mock gas schedule notifier to be used in tests
func CreateOneSCExecutorMockVM ¶
func CreateOneSCExecutorMockVM(accnts state.AccountsAdapter) vmcommon.VMExecutionHandler
CreateOneSCExecutorMockVM -
func CreatePreparedTxProcessorAndAccountsWithMockedVM ¶
func CreatePreparedTxProcessorAndAccountsWithMockedVM( vmOpGas uint64, senderNonce uint64, senderAddressBytes []byte, senderBalance *big.Int, enableEpochs config.EnableEpochs, wasmVMChangeLocker common.Locker, ) (process.TransactionProcessor, state.AccountsAdapter, error)
CreatePreparedTxProcessorAndAccountsWithMockedVM -
func CreateTransaction ¶
func CreateTransaction( nonce uint64, value *big.Int, sndAddress []byte, rcvAddress []byte, gasprice uint64, gasLimit uint64, data []byte, ) *dataTransaction.Transaction
CreateTransaction -
func CreateTransferTokenTx ¶
func CreateTransferTokenTx( nonce uint64, functionName string, value *big.Int, scAddrress []byte, sndAddress []byte, rcvAddress []byte, ) *dataTransaction.Transaction
CreateTransferTokenTx -
func CreateTx ¶
func CreateTx( senderAddressBytes []byte, receiverAddressBytes []byte, senderNonce uint64, value *big.Int, gasPrice uint64, gasLimit uint64, scCodeOrFunc string, ) *dataTransaction.Transaction
CreateTx -
func CreateTxProcessorWithOneSCExecutorMockVM ¶
func CreateTxProcessorWithOneSCExecutorMockVM( accnts state.AccountsAdapter, opGas uint64, enableEpochsConfig config.EnableEpochs, wasmVMChangeLocker common.Locker, ) (process.TransactionProcessor, error)
CreateTxProcessorWithOneSCExecutorMockVM -
func CreateVMAndBlockchainHookAndDataPool ¶
func CreateVMAndBlockchainHookAndDataPool( accnts state.AccountsAdapter, gasSchedule core.GasScheduleNotifier, vmConfig *config.VirtualMachineConfig, shardCoordinator sharding.Coordinator, wasmVMChangeLocker common.Locker, epochNotifierInstance process.EpochNotifier, enableEpochsHandler common.EnableEpochsHandler, chainHandler data.ChainHandler, guardedAccountHandler vmcommon.GuardedAccountHandler, ) (process.VirtualMachinesContainer, *hooks.BlockChainHookImpl, dataRetriever.PoolsHolder)
CreateVMAndBlockchainHookAndDataPool -
func CreateVMAndBlockchainHookMeta ¶
func CreateVMAndBlockchainHookMeta( accnts state.AccountsAdapter, gasSchedule core.GasScheduleNotifier, shardCoordinator sharding.Coordinator, enableEpochsConfig config.EnableEpochs, ) (process.VirtualMachinesContainer, *hooks.BlockChainHookImpl)
CreateVMAndBlockchainHookMeta -
func GetIntValueFromSC ¶
func GetIntValueFromSC( gasSchedule map[string]map[string]uint64, accnts state.AccountsAdapter, scAddressBytes []byte, funcName string, args ...[]byte, ) *big.Int
GetIntValueFromSC -
func GetNodeIndex ¶
func GetNodeIndex(nodeList []*integrationTests.TestProcessorNode, node *integrationTests.TestProcessorNode) (int, error)
GetNodeIndex -
func GetVmOutput ¶
func GetVmOutput(gasSchedule map[string]map[string]uint64, accnts state.AccountsAdapter, scAddressBytes []byte, funcName string, args ...[]byte) *vmcommon.VMOutput
GetVmOutput -
Types ¶
type ResultsCreateTxProcessor ¶
type ResultsCreateTxProcessor struct { TxProc process.TransactionProcessor SCProc *smartContract.TestScProcessor IntermediateTxProc process.IntermediateTransactionHandler EconomicsHandler process.EconomicsDataHandler CostHandler external.TransactionCostHandler TxLogProc process.TransactionLogProcessor }
ResultsCreateTxProcessor is the struct that will hold all needed processor instances
func CreateTxProcessorWithOneSCExecutorWithVMs ¶
func CreateTxProcessorWithOneSCExecutorWithVMs( accnts state.AccountsAdapter, vmContainer process.VirtualMachinesContainer, blockChainHook *hooks.BlockChainHookImpl, feeAccumulator process.TransactionFeeHandler, shardCoordinator sharding.Coordinator, enableEpochsConfig config.EnableEpochs, wasmVMChangeLocker common.Locker, poolsHolder dataRetriever.PoolsHolder, epochNotifierInstance process.EpochNotifier, guardianChecker process.GuardianChecker, ) (*ResultsCreateTxProcessor, error)
CreateTxProcessorWithOneSCExecutorWithVMs -
type VMTestAccount ¶
VMTestAccount -
type VMTestContext ¶
type VMTestContext struct { ChainHandler *testscommon.ChainHandlerStub TxProcessor process.TransactionProcessor ScProcessor *smartContract.TestScProcessor Accounts state.AccountsAdapter BlockchainHook vmcommon.BlockchainHook VMContainer process.VirtualMachinesContainer TxFeeHandler process.TransactionFeeHandler ShardCoordinator sharding.Coordinator ScForwarder process.IntermediateTransactionHandler EconomicsData process.EconomicsDataHandler Marshalizer marshal.Marshalizer GasSchedule core.GasScheduleNotifier VMConfiguration *config.VirtualMachineConfig EpochNotifier process.EpochNotifier EnableEpochsHandler common.EnableEpochsHandler SCQueryService *smartContract.SCQueryService GuardedAccountsHandler process.GuardedAccountHandler Alice VMTestAccount Bob VMTestAccount ContractOwner VMTestAccount Contract VMTestAccount TxCostHandler external.TransactionCostHandler TxsLogsProcessor process.TransactionLogProcessor }
VMTestContext -
func CreatePreparedTxProcessorAndAccountsWithVMs ¶
func CreatePreparedTxProcessorAndAccountsWithVMs( senderNonce uint64, senderAddressBytes []byte, senderBalance *big.Int, enableEpochsConfig config.EnableEpochs, ) (*VMTestContext, error)
CreatePreparedTxProcessorAndAccountsWithVMs -
func CreatePreparedTxProcessorWithVMs ¶
func CreatePreparedTxProcessorWithVMs(enableEpochs config.EnableEpochs) (*VMTestContext, error)
CreatePreparedTxProcessorWithVMs -
func CreatePreparedTxProcessorWithVMsAndCustomGasSchedule ¶
func CreatePreparedTxProcessorWithVMsAndCustomGasSchedule( enableEpochs config.EnableEpochs, updateGasSchedule func(gasMap wasmConfig.GasScheduleMap)) (*VMTestContext, error)
CreatePreparedTxProcessorWithVMsAndCustomGasSchedule -
func CreatePreparedTxProcessorWithVMsMultiShard ¶
func CreatePreparedTxProcessorWithVMsMultiShard(selfShardID uint32, enableEpochsConfig config.EnableEpochs) (*VMTestContext, error)
CreatePreparedTxProcessorWithVMsMultiShard -
func CreatePreparedTxProcessorWithVMsWithShardCoordinator ¶
func CreatePreparedTxProcessorWithVMsWithShardCoordinator(enableEpochsConfig config.EnableEpochs, shardCoordinator sharding.Coordinator) (*VMTestContext, error)
CreatePreparedTxProcessorWithVMsWithShardCoordinator -
func CreatePreparedTxProcessorWithVMsWithShardCoordinatorDBAndGas ¶
func CreatePreparedTxProcessorWithVMsWithShardCoordinatorDBAndGas( enableEpochsConfig config.EnableEpochs, shardCoordinator sharding.Coordinator, db storage.Storer, gasScheduleNotifier core.GasScheduleNotifier, ) (*VMTestContext, error)
CreatePreparedTxProcessorWithVMsWithShardCoordinatorDBAndGas -
func CreateTxProcessorWasmVMWithGasSchedule ¶
func CreateTxProcessorWasmVMWithGasSchedule( senderNonce uint64, senderAddressBytes []byte, senderBalance *big.Int, gasScheduleMap map[string]map[string]uint64, enableEpochsConfig config.EnableEpochs, ) (*VMTestContext, error)
CreateTxProcessorWasmVMWithGasSchedule -
func CreateTxProcessorWasmVMWithVMConfig ¶
func CreateTxProcessorWasmVMWithVMConfig( enableEpochsConfig config.EnableEpochs, vmConfig *config.VirtualMachineConfig, gasSchedule map[string]map[string]uint64, ) (*VMTestContext, error)
CreateTxProcessorWasmVMWithVMConfig -
func (*VMTestContext) CleanIntermediateTransactions ¶
func (vmTestContext *VMTestContext) CleanIntermediateTransactions(tb testing.TB)
CleanIntermediateTransactions -
func (*VMTestContext) CreateAccount ¶
func (vmTestContext *VMTestContext) CreateAccount(account *VMTestAccount)
CreateAccount -
func (*VMTestContext) CreateBlockStarted ¶
func (vmTestContext *VMTestContext) CreateBlockStarted()
CreateBlockStarted -
func (*VMTestContext) CreateTransaction ¶
func (vmTestContext *VMTestContext) CreateTransaction( sender *VMTestAccount, receiver *VMTestAccount, value *big.Int, gasprice uint64, gasLimit uint64, data []byte, ) *dataTransaction.Transaction
CreateTransaction -
func (*VMTestContext) CreateTransferTokenTx ¶
func (vmTestContext *VMTestContext) CreateTransferTokenTx( sender *VMTestAccount, receiver *VMTestAccount, value *big.Int, functionName string, ) *dataTransaction.Transaction
CreateTransferTokenTx -
func (*VMTestContext) GetCompositeTestError ¶
func (vmTestContext *VMTestContext) GetCompositeTestError() error
GetCompositeTestError -
func (*VMTestContext) GetGasRemaining ¶
func (vmTestContext *VMTestContext) GetGasRemaining() uint64
GetGasRemaining -
func (*VMTestContext) GetIntValueFromSCWithTransientVM ¶
func (vmTestContext *VMTestContext) GetIntValueFromSCWithTransientVM(funcName string, args ...[]byte) *big.Int
GetIntValueFromSCWithTransientVM -
func (*VMTestContext) GetIntermediateTransactions ¶
func (vmTestContext *VMTestContext) GetIntermediateTransactions(tb testing.TB) []data.TransactionHandler
GetIntermediateTransactions -
func (*VMTestContext) GetVMOutputWithTransientVM ¶
func (vmTestContext *VMTestContext) GetVMOutputWithTransientVM(funcName string, args ...[]byte) *vmcommon.VMOutput
GetVMOutputWithTransientVM -