Home

Awesome

About

This repository contains the execution of the EF standard execution layer tests.

The Ethereum Foundation provides a suite of official tests to verify the compliance of EVM clients. Passing all these tests qualifies allows a client to gain confidence on his execution layer. For further information, please refer to the official documentation.

Kakarot is an EVM running within CairoVM, coupled with a RPC, which would make it possible to run these tests using the Ethereum Foundation runner (retesteth). However, in order to limit the possible number of interactions and avoid adding failing points, we develop our own simplified test runner based on Reth's ef-tests runner.

Requirements

Setup

In order to set up the repo and start the testing, please follow the below instructions:

Test execution

To run the whole test suite, execute make ef-test To run a specific test or list of tests, execute cargo test regular_expression where regular_expression allows you to filter on the specific tests you want to run.

Acknowledgement

This repository is heavily inspired by https://github.com/paradigmxyz/reth/tree/main/testing/ef-tests, it uses some code snippets from the Reth codebase and when possible, imports modules and helpers from it.