2022-10-26 15:46:13 +00:00
|
|
|
## 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.
|
|
|
|
|
|
|
|
1. Use nimble to install dependencies and your system Nim compiler(version <= 1.6.0).
|
|
|
|
```
|
|
|
|
$> nimble install -y --depsOnly
|
2022-11-17 08:27:26 +00:00
|
|
|
$> nim c -d:release tools/evmstate/evmstate
|
2022-10-26 15:46:13 +00:00
|
|
|
$> nim c -r -d:release tools/evmstate/evmstate_test
|
|
|
|
```
|
|
|
|
2. Use nimbus shipped Nim compiler and dependencies.
|
|
|
|
```
|
2022-12-14 11:34:59 +00:00
|
|
|
$> make update deps
|
2022-11-17 08:27:26 +00:00
|
|
|
$> ./env.sh nim c -d:release tools/evmstate/evmstate
|
2022-10-26 15:46:13 +00:00
|
|
|
$> ./env.sh nim c -r -d:release tools/evmstate/evmstate_test
|
|
|
|
```
|
|
|
|
3. 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].
|
2022-11-15 03:50:12 +00:00
|
|
|
--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].
|
2022-10-26 15:46:13 +00:00
|
|
|
--verbosity sets the verbosity level [=0].
|
2022-11-17 08:27:26 +00:00
|
|
|
0 = silent, 1 = error, 2 = warn, 3 = info, 4 = debug, 5 = detail.
|
2022-10-26 15:46:13 +00:00
|
|
|
```
|