mirror of
https://github.com/status-im/nimbus-eth1.git
synced 2025-01-26 20:19:31 +00:00
b3a5c67532
* Remove exception from evm memory * Remove exception from gas meter * Remove exception from stack * Remove exception from precompiles * Remove exception from gas_costs * Remove exception from op handlers * Remove exception from op dispatcher * Remove exception from call_evm * Remove exception from EVM * Fix tools and tests * Remove exception from EVMC * fix evmc * Fix evmc * Remove remnants of async evm stuff * Remove superflous error handling * Proc to func * Fix errors detected by CI * Fix EVM op call stack usage * REmove exception handling from getVmState * Better error message instead of just doAssert * Remove unused validation * Remove superflous catchRaise * Use results.expect instead of unsafeValue
EVM state test tool
The evmstate
tool to execute state test.
Build instructions
There are few options to build evmstate
tool like any other nimbus tools.
- Use your system Nim compiler(v1.6.12) and git to install dependencies.
$> git submodule update --init --recursive $> ./env.sh (run once to generate nimbus-build-system.paths) $> nim c -d:release tools/evmstate/evmstate $> nim c -r -d:release tools/evmstate/evmstate_test
- Use nimbus shipped Nim compiler and dependencies.
$> make update deps $> ./env.sh nim c -d:release tools/evmstate/evmstate $> ./env.sh nim c -r -d:release tools/evmstate/evmstate_test
- Use nimbus makefile.
$> make update $> make evmstate $> make evmstate_test
Command line params
Available command line params
Usage:
evmstate [OPTIONS]... <inputFile>
<inputFile> json file contains state test data.
The following options are available:
--dump dumps the state after the run [=false].
--json output trace logs in machine readable format (json) [=false].
--debug output full trace logs [=false].
--nomemory disable memory output [=true].
--nostack disable stack output [=false].
--nostorage disable storage output [=false].
--noreturndata enable return data output [=true].
--fork choose which fork to be tested.
--index if index is unset, all subtest in the fork will be tested [=none(int)].
--pretty pretty print the trace result [=false].
--verbosity sets the verbosity level [=0].
0 = silent, 1 = error, 2 = warn, 3 = info, 4 = debug, 5 = detail.