-
Notifications
You must be signed in to change notification settings - Fork 100
test(levm,l1): run state tests as if they were blocks instead of transactions #4179
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
Merged
+377
−118
Merged
Changes from all commits
Commits
Show all changes
61 commits
Select commit
Hold shift + click to select a range
85cb3ff
run tests with sp1
JereSalo 28ab1ea
make progress organizing tests
JereSalo 36494f3
make test runner simpler
JereSalo 0875f3e
add test sp1 make target
JereSalo 3f99230
organize tests a little bit more
JereSalo 356228f
Merge branch 'main' into blockhain_tests_sp1
JereSalo fa178b4
clippy lint
JereSalo fb3e3a9
fix problems runner
JereSalo 240a216
improve todo comments
JereSalo 6745f04
Update cmd/ef_tests/blockchain/test_runner.rs
JereSalo d342ee5
tidy a little bit
JereSalo e9877f0
merge
JereSalo 78915d5
Delete cmd/ef_tests/state_v2/success_report.txt
JereSalo 3c51655
first iteration for running tests (doesnt work)
JereSalo 70d5ca7
make some progress in transaction signing
JereSalo 0614b0e
change gas price for the vm not to fail validation
JereSalo 961167f
comment withdrawals stuff
JereSalo 79c5d04
Merge branch 'main' into blockhain_tests_sp1
JereSalo 9836c16
merge main
JereSalo beda446
merge main
JereSalo fbdbc98
differentiate transactions correctly in tests
JereSalo b3b590d
fix recovery id on legacy txs
JereSalo e63157b
try use test.env fields instead of LEVM Environment
JereSalo c4ececd
set headers properly
JereSalo 5209d88
fix problems with headers and gas fees (at least some of them)
JereSalo 5614edd
fix some other tests
JereSalo 76e6007
skip some tests for high gas price
JereSalo 5e7b030
fix blob gas problem on type 3 transactions
JereSalo f97ffb3
fix for mistake
JereSalo 65d6465
remove system contract empty check
JereSalo 0b337dd
remove dead code and improve comment
JereSalo 2f28404
make revm a feature instead of levm
JereSalo 331d1e9
merge main
JereSalo bb2e358
Merge branch 'blockhain_tests_sp1' into state_tests_sp1
JereSalo 9e9768e
remove a comment and fix some lints
JereSalo 9a1ff3d
skip system contract deployment tests
JereSalo 6e5bb30
fix lint
JereSalo 801d6eb
tidy more the code
JereSalo cff62d4
allow clippy all
JereSalo b57df19
merge main
JereSalo 2611f72
remove comment
JereSalo 147f279
run cargo fmt
JereSalo ac735a5
rename single_block_run to run_test
JereSalo 3cf7a72
prevrandao from test.env
JereSalo 89a8679
run tests that fail too
JereSalo 3d9501f
improve code
JereSalo 1fe6bec
change some lines
JereSalo ee312e7
return custom error instead
JereSalo 986fa17
remove print
JereSalo 2af3cfb
skip other tests
JereSalo 772d890
Merge branch 'main' into state_tests_sp1
JereSalo 32c2dd6
Update tooling/ef_tests/state_v2/src/modules/types.rs
JereSalo 3135b11
Update tooling/ef_tests/state_v2/src/modules/types.rs
JereSalo b835ee2
Update tooling/ef_tests/state_v2/src/modules/block_runner.rs
JereSalo 33be3fd
Revert "Update tooling/ef_tests/state_v2/src/modules/types.rs"
JereSalo a5ccf82
Revert "Update tooling/ef_tests/state_v2/src/modules/types.rs"
JereSalo 2c39bcb
Merge branch 'main' into state_tests_sp1
JereSalo 0099f0a
add default
JereSalo 2ca16b4
Merge branch 'main' into state_tests_sp1
JereSalo 0a869c3
fix lint
JereSalo d20269f
Merge branch 'main' into state_tests_sp1
JereSalo File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
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
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
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
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
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
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
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why is this removed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because these contracts do not exist in the state tests, so they will always have empty code in these scenarios and therefore block execution will fail because of this. If I added the contracts to the state it would mean that the root hash would be different than the one precalculated in the test fixture and I don't want that.
In mainnet and testnets this check only adds overhead because the contracts do have code. That's why clients like geth don't have this logic either. Not useful in real-world scenarios.