Skip to content

Commit 8c8e0a4

Browse files
authored
chore(docs): revme readme update (bluealloy#898)
1 parent e802930 commit 8c8e0a4

File tree

2 files changed

+25
-3
lines changed

2 files changed

+25
-3
lines changed

.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ target
66
.idea
77
pkg/
88

9-
9+
tests
1010
bins/revme/temp_folder
1111
bins/revme/tests
1212
ethereumjs-util.js

bins/revme/README.md

+24-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,26 @@
11
# Rust EVM executor or short REVME
22

3-
This is binary crate that executed evm multiple ways. Currently it is used to run ethereum tests:
4-
* statetest: takes path to folder where ethereum statetest json can be found. It recursively searches for all json files and execute them. This is how i run all https://github.com/ethereum/tests to check if revm is compliant. Example `revme statests test/GenericEvmTest/`
3+
`revme` is a binary crate to execute the evm in multiple ways.
4+
5+
Currently it is mainly used to run ethereum tests with the `statetest` subcommand.
6+
7+
## State Tests
8+
9+
`statetest` takes a path to the directory where ethereum statetest json can be found.
10+
It recursively parses all json files in the specified directory and executes them.
11+
12+
Running all [ethereum tests][et] checks that revm is compliant to the ethereum specs.
13+
14+
To run [ethereum tests][et] locally, clone the [tests][et] repository and provide the
15+
test directory. Below, we clone the repo and execute the `GeneralStateTests` suite of
16+
tests.
17+
18+
```shell
19+
git clone https://github.com/ethereum/tests
20+
cargo run -p revme statetest tests/GeneralStateTests
21+
```
22+
23+
*Notice, in the [`.gitignore`](../../.gitignore), the `bins/revme/tests` directory
24+
is ignored so it won't be checked into git.*
25+
26+
[et]: https://github.com/ethereum/tests

0 commit comments

Comments
 (0)