Skip to content

Commit 0726e5a

Browse files
qbzztmarioevz
andauthored
readme: Updates (#51)
* Replace the EVM version with the latest (also, explain how to get it) * Separate install, test generation * Update README.md * Update README.md * Update README.md --------- Co-authored-by: Mario Vega <[email protected]>
1 parent 5c9d1e6 commit 0726e5a

File tree

1 file changed

+22
-4
lines changed

1 file changed

+22
-4
lines changed

README.md

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
# Execution Spec Tests
22

3-
This repository provides tools and libraries for generating cross-client
4-
Ethereum tests.
3+
This repository provides tools and libraries for generating cross-client Ethereum tests.
54

65
## Quick Start
76

@@ -10,10 +9,17 @@ Ethereum tests.
109
The following are required to either generate or develop tests:
1110

1211
1. Python `3.10.0`.
13-
2. [`go-ethereum`](https://github.com/ethereum/go-ethereum) `v1.10.13` for `geth`'s `evm` utility which must be accessible in the `PATH`. See https://github.com/ethereum/go-ethereum#building-the-source for information on how to build go-ethereum utilities.
12+
2. [`go-ethereum`](https://github.com/ethereum/go-ethereum) `geth`'s `evm` utility must be accessible in the `PATH`, typically at the latest version. To get it:
13+
1. Install [the Go programming language](https://go.dev/doc/install) on your computer.
14+
2. Clone [the Geth repository](https://github.com/ethereum/go-ethereum).
15+
3. Run `make all`.
16+
4. Copy `build/bin/evm` to a directory on the path.
17+
18+
**Note:** To update to a different Geth branch (for example one that supports a specific EIP) all you need to do is to change the `evm` in the path.
19+
1420
3. [`solc`](https://github.com/ethereum/solidity) >= `v0.8.17`; `solc` must be in accessible in the `PATH`.
1521

16-
### Generating the Execution Spec Tests For Use With Clients
22+
### Installation
1723

1824
To generate tests from the test "fillers", it's necessary to install the Python packages provided by `execution-spec-tests` (it's recommended to use a virtual environment for the installation):
1925

@@ -25,6 +31,17 @@ source ./venv/bin/activate
2531
pip install -e .
2632
```
2733

34+
After the installation, run this sanity check to ensure tests are generated.
35+
If everything is OK, you will see the beginning of the JSON format filled test.
36+
37+
```console
38+
tf --output="fixtures" --test-case yul
39+
head fixtures/example/example/yul.json
40+
```
41+
42+
43+
### Generating the Execution Spec Tests For Use With Clients
44+
2845
To generate all the tests defined in the `./fillers` sub-directory, run the `tf` command:
2946

3047
```console
@@ -59,6 +76,7 @@ pip install tox
5976
tox -e py3
6077
```
6178

79+
6280
## Execution Spec Tests Package Overview
6381

6482
### `ethereum_test_tools`

0 commit comments

Comments
 (0)