This repository was archived by the owner on Nov 20, 2023. It is now read-only.
Update Ethereum tests to release 9.0.2#5
Draft
mzabaluev wants to merge 5 commits intorust-blockchain:masterfrom
Draft
Update Ethereum tests to release 9.0.2#5mzabaluev wants to merge 5 commits intorust-blockchain:masterfrom
mzabaluev wants to merge 5 commits intorust-blockchain:masterfrom
Conversation
Test stChangedEIP150 is no longer present in the suite. Test stExample has added a post-Berlin transaction description and has to be ignored for the time being.
All GeneralStateTests/st* cases from the 9.0.2 release of the Ethereum now have their associated Rust test cases. Some of the new tests have to be ignored for now due to the new transaction data format. Also, test Constantinople/GeneralStateTests/stTimeConsuming is tagged with #[ignore] since it is, indeed, time-consuming.
The currently maintained subset of old VM tests is now under the state tests and the test cases shall be invoked using that format.
Contributor
Author
|
Created as a draft since there are hash mismatch failures in two of the updated test cases:
|
Some newer state tests use EIP-1559 transactions with maxPriorityFeePerGas and maxFeePerGas fields replacing the gasPrice field in the transaction JSON structure. As evm has no way to deal with these currently, make sure such transaction descriptions can be parsed, but skip tests containing them.
Member
|
This might be getting ahead of itself as not even Berlin is in yet. |
Contributor
Author
|
The currently maintained set of tests targets Istanbul along with newer hard forks. I've done this to be able to exercise those up to date tests, and later extend the coverage to Berlin and London when support for the requisite features is implemented. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Update test coverage to the currently maintained state test cases.
The old Constantinople-era VM tests live on in the
LegacyTestsdirectory, so these are still run as well.The state test description loader is compatible with most of the current test cases, except a few that use the new (and undocumented) transaction description format that SputnikVM does not have the means to support yet.