You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* 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]>
Copy file name to clipboardExpand all lines: README.md
+22-4Lines changed: 22 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,6 @@
1
1
# Execution Spec Tests
2
2
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.
5
4
6
5
## Quick Start
7
6
@@ -10,10 +9,17 @@ Ethereum tests.
10
9
The following are required to either generate or develop tests:
11
10
12
11
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.
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
+
14
20
3.[`solc`](https://github.com/ethereum/solidity) >= `v0.8.17`; `solc` must be in accessible in the `PATH`.
15
21
16
-
### Generating the Execution Spec Tests For Use With Clients
22
+
### Installation
17
23
18
24
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):
19
25
@@ -25,6 +31,17 @@ source ./venv/bin/activate
25
31
pip install -e .
26
32
```
27
33
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
+
28
45
To generate all the tests defined in the `./fillers` sub-directory, run the `tf` command:
0 commit comments