Documentation ¶
Overview ¶
Package tests implements execution of Ethereum JSON tests.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockTest ¶
type BlockTest struct {
// contains filtered or unexported fields
}
A BlockTest checks handling of entire blocks.
func (*BlockTest) UnmarshalJSON ¶
type RLPTest ¶
type RLPTest struct { // If the value of In is "INVALID" or "VALID", the test // checks whether Out can be decoded into a value of // type interface{}. // // For other JSON values, In is treated as a driver for // calls to rlp.Stream. The test also verifies that encoding // In produces the bytes in Out. In interface{} // Out is a hex-encoded RLP value. Out string }
RLPTest is the JSON structure of a single RLP test.
type StateSubtest ¶
StateSubtest selects a specific configuration of a General State Test.
type StateTest ¶
type StateTest struct {
// contains filtered or unexported fields
}
StateTest checks transaction processing without block context. See https://github.com/ethereum/EIPs/issues/176 for the test format specification.
func (*StateTest) Run ¶
func (t *StateTest) Run(subtest StateSubtest, vmconfig vm.Config) error
Run executes a specific subtest.
func (*StateTest) Subtests ¶
func (t *StateTest) Subtests() []StateSubtest
Subtests returns all valid subtests of the test.
func (*StateTest) UnmarshalJSON ¶
type TransactionTest ¶
type TransactionTest struct {
// contains filtered or unexported fields
}
TransactionTest checks RLP decoding and sender derivation of transactions.
func (*TransactionTest) Run ¶
func (tt *TransactionTest) Run(config *params.ChainConfig) error
type VMTest ¶
type VMTest struct {
// contains filtered or unexported fields
}
VMTest checks EVM execution without block or transaction context. See https://github.com/ethereum/tests/wiki/VM-Tests for the test format specification.