Updated Understanding and debugging Nimbus EVM JSON tests (markdown)

kdeme 2019-07-18 21:04:00 +02:00
parent fd3e21461d
commit 1226e6ae33
1 changed files with 7 additions and 1 deletions

@ -15,13 +15,19 @@ Run Ethereum [JSON-based general state tests](https://github.com/ethereum/tests/
mkdir -p build
nim c -r -o:build/test_generalstate_json tests/test_generalstate_json.nim
```
You might want to run the tests with `-d:release` flag as some tests might end up with a stack overflow in `debug` mode.
Build and run an individual test (with tracing enabled):
```
nim c -r -d:chronicles_log_level=TRACE -o:build/test_generalstate_json tests/test_generalstate_json.nim tests/fixtures/GeneralStateTests/stAttackTest/ContractCreationSpam.json
nim c -r -d:chronicles_log_level=TRACE -o:build/test_generalstate_json tests/test_generalstate_json.nim stAttackTest/ContractCreationSpam.json
```
(this particular test needs to be commented out of "tests/test_generalstate_failing.nim" before running it)
Individual tests are default only tested on Frontier fork. You can change the fork with `--fork:`, e.g.:
```
nim c -d:release -r -o:build/test_generalstate_json tests/test_generalstate_json.nim stCallCreateCallCodeTest/Call1024BalanceTooLow.json --fork:Byzantium
```
## VMTests
### JSON structure