-
Notifications
You must be signed in to change notification settings - Fork 90
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
new(tests): EIP-7251: Increase the MAX_EFFECTIVE_BALANCE (EL Consolidations) #642
Conversation
3a41f67
to
f7c1325
Compare
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.
Tests are looking good from my side. Helped my understanding of the EIP. These align really nicely with the 6110, 7002 & 7685 tests.
Some additional coverage ideas:
- Should we add cases where the source and target public keys are in an invalid format? Assuming t8n rejects filling these cases then I assume we'd want to go the "overwriting tx rlp" route. Maybe we could do this for the other request eips.
- I'm not certain what would happen when we have a duplicate consolidation request. My assumption is that both would be valid on the EL side where the CL would reject one of the requests when adding it to the queue. Nonetheless we could add a duplicate consolidation request test.
- Maybe a test where the target and source keys are the same.
- These might exist here already but could we do recursive consolidation requests? My guess is where we use the same target public key.
I don't understand how could they be recursive since the contracts cannot do calls themselves to other contracts, do you mean on a loop? |
Added a modification that ensures the test keeps producing blocks until the consolidation/withdrawal requests queues are exhausted, in order to properly validate that the invalid requests are not included in a future block. This is done to all test cases. |
Yeah you are right, they can't be recursive! |
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.
Amazing! LGTM
tests/prague/eip7685_general_purpose_el_requests/test_deposits_withdrawals_consolidations.py
Show resolved
Hide resolved
fix(evm_transition_tool): result type fix
Update src/ethereum_test_tools/common/conversions.py Co-authored-by: spencer <[email protected]>
move contract
fix(tests): EIP-7251 new(tests): Add deposit+withdrawal+consolidation tests new(tests): Add different requests in same tx new(tests): Add invalid-order requests tests with consolidations Update tests/prague/eip7251_consolidations/helpers.py Co-authored-by: spencer <[email protected]> Update tests/prague/eip7251_consolidations/spec.py Co-authored-by: spencer <[email protected]> Update tests/prague/eip7251_consolidations/spec.py Co-authored-by: spencer <[email protected]> tests: add consolidation test with same pubkey fix(tests): EIP-7002,EIP-7251: keep producing empty blocks to exhaust queues fix(tests): tox fix(tests): tox fix
ποΈ Description
Implements tests for EIP-7251
π Related Issues
#606
β Checklist
mkdocs serve
locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.