Skip to content

LEVM: Add LegacyTests to the LEVM EF tests suite #1701

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
ilitteri opened this issue Jan 13, 2025 · 0 comments · Fixed by #1870
Closed

LEVM: Add LegacyTests to the LEVM EF tests suite #1701

ilitteri opened this issue Jan 13, 2025 · 0 comments · Fixed by #1870
Assignees
Labels
ef-tests Hive tests, execution-spec-tests levm Lambda EVM implementation

Comments

@ilitteri
Copy link
Contributor

Add the EF tests GitHub submodule LegacyTests to our current suite.

This submodule has three directories BasicTests, Constantinople, and Cancun. Each of these contains a GeneralStateTests subdirectory.

The idea is to add LegacyTests/BasicTests/GeneralStateTests/, LegacyTests/Constantinople/GeneralStateTests/, and LegacyTests/Cancun/GeneralStateTests/ to our suite.

@ilitteri ilitteri added ef-tests Hive tests, execution-spec-tests levm Lambda EVM implementation labels Jan 13, 2025
@tomip01 tomip01 self-assigned this Feb 3, 2025
github-merge-queue bot pushed a commit that referenced this issue Feb 6, 2025
**Motivation**

<!-- Why does this pull request exist? What are its goals? -->
This pull request introduces changes to the Ethereum Foundation (EF)
test framework, specifically enhancing the handling of forks within the
test reports. The changes include modifications to the deserialization
process, test report structure, and test runner logic to support
multiple forks.

**Description**

<!-- A clear and concise general description of the changes this PR
introduces -->

<!-- Link to issues: Resolves #111, Resolves #222 -->

* `cmd/ef_tests/levm/report.rs`: Refactored `EFTestReport` to include
`fork_results` instead of a single `fork` field. Introduced
`EFTestReportForkResult` to encapsulate fork-specific results. Updated
methods to handle the new structure and ensure correct reporting of test
results per fork.

* `cmd/ef_tests/levm/runner/levm_runner.rs`: Updated the `run_ef_test`
and `run_ef_test_tx` functions to iterate over forks and handle
fork-specific test execution. Adjusted `prepare_vm_for_tx` and
`ensure_post_state` functions to accept a `fork` parameter.

* `cmd/ef_tests/levm/runner/mod.rs`: Handled cases where test hashes
might be missing to prevent panics.
* `cmd/ef_tests/levm/runner/revm_runner.rs`: Updated imports to include
`EFTestReportForkResult`.

Closes #1701
@github-project-automation github-project-automation bot moved this to Done in ethrex_l1 Feb 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ef-tests Hive tests, execution-spec-tests levm Lambda EVM implementation
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

2 participants