-
Notifications
You must be signed in to change notification settings - Fork 147
feat(tests): EIP-7934 - block rlp size limit test cases #1730
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
Conversation
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.
Some comments, it's a nice first approach, thanks for putting this together 👍
Tagging this change: ethereum/EIPs@0e2559f |
db56756
to
e4ea26d
Compare
5f294b5
to
aca15e9
Compare
6d20b73
to
693acb5
Compare
Co-authored-by: Mario Vega <[email protected]> Co-authored-by: felipe <[email protected]>
Insane precision: (ethereum-execution-spec-tests) ➜ execution-spec-tests git:(eip-7934) ✗ cat fixtures/blockchain_tests/osaka/eip7934_block_rlp_limit/max_block_rlp_size/block_at_rlp_size_limit_boundary.json | jq '."tests/osaka/eip7934_block_rlp_limit/test_max_block_rlp_size.py::test_block_at_rlp_size_limit_boundary[fork_Osaka-blockchain_test-max_rlp_size]".blocks[0].rlp' -r | xxd -r -p > raw_block.rlp
(ethereum-execution-spec-tests) ➜ execution-spec-tests git:(eip-7934) ✗ ls -l ./raw_block.rlp
-rw-r--r-- 1 marioevz sudo 8388608 Jun 18 16:01 ./raw_block.rlp |
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.
LGTM, the precision is amazing.
I pushed a tiny change that renames a couple of variables and test IDs.
Also created an issue to follow up on cases I think are missing: #1772
Co-authored-by: felipe <[email protected]>
LGTM! |
🗒️ Description
Creates the initial set of test cases for EIP-7934 and the new exception type
BlockException.RLP_BLOCK_LIMIT_EXCEEDED
.Currently there are only 2 simple tests cases:
test_block_exceeds_rlp_size_limit
, this send a single tx that "should" exceed the block rlp size.test_multiple_transactions_exceed_limit
, this sends 5 txs where the last should push the block rlp over the limit.Note that currently assume that
10_000
extra calldata bytes of a tx will exceed the limit of8_388_608
RLP encoded bytes. Note we use the precise limit:Client specific exceptions will need to be added in a follow up PR, or in this PR one they are ready.
🔗 Related Issues
N/A
✅ Checklist