Skip to content

Latest commit

 

History

History
47 lines (29 loc) · 1.38 KB

README.md

File metadata and controls

47 lines (29 loc) · 1.38 KB

FEVM Test Vectors

fevm-test-vectors generate test vector from geth rpc with debug namespace enabled.

Build

cargo build --release

Command

extract ethereum transaction

Extract transaction detail file through evm tracing (including contract slot changes, balance changes, and bytecodes, etc.).

RUST_LOG=info fevm-test-vectors extract --geth-rpc-endpoint <GETH_RPC_ENDPOINT> --tx-hash <TX_HASH> --out-dir <OUT_DIR> 

generate test vector

Generate test vector from transation detail file.

RUST_LOG=info fevm-test-vectors generate-from-file --input <IN_FILE|IN_DIR> --out-dir <OUT_DIR>

Generate test vector from geth rpc directly.

RUST_LOG=info fevm-test-vectors generate --geth-rpc-endpoint <GETH_RPC_ENDPOINT> --tx-hash <TX_HASH> --out-dir <OUT_DIR>

Consume Test Vector

Use froghub-io/ref-fvm branch testing-evm-vectors to consume test vectors.

RUST_LOG=info CARGO_PROFILE_BENCH_DEBUG=true VECTOR=fevm-test-vectors/corpus/test_vectors/xxx.json cargo bench --bench  bench_conformance -- --nocapture

License

Dual-licensed under MIT