-
Notifications
You must be signed in to change notification settings - Fork 189
new(tests): add more test cases for request types #1340
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
…valid_deposit_withdrawal_consolidation_requests
marioevz
left a comment
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 on this preliminary review 🙌
Let me know if any of them needs more info.
tests/prague/eip7685_general_purpose_el_requests/test_deposits_withdrawals_consolidations.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_deposits_withdrawals_consolidations.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_deposits_withdrawals_consolidations.py
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_deposits_withdrawals_consolidations.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_deposits_withdrawals_consolidations.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_deposits_withdrawals_consolidations.py
Outdated
Show resolved
Hide resolved
… added mypy silencer for type warning
…lows 18 withdrawals per block
marioevz
left a comment
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.
I mainly reviewed test_modified_withdrawal_contract.py here, but some thoughts:
- I would use
--traceswhen runninguv run fillto make sure that the transactions are indeed correctly calling the system contract and are not failing or running out of gas. - My main concern with the modified contract is that it will be a bit difficult to debug if the system call is not working correctly because currently the t8n does not provide traces for the system call (although that would be a nice feature!).
If you have the modified sys-asm contract to take a look at we could also help out reviewing that 👍
tests/prague/eip7685_general_purpose_el_requests/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
4f602a2 to
b61fe3e
Compare
marioevz
left a comment
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.
Hey, I addressed your questions in each comment, it works for me locally although I didn't check for 18 withdrawals only two.
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
995c2af to
c1e9fc9
Compare
marioevz
left a comment
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 that I think will help in this and future tests where you have to put bytes into memory 👍
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
marioevz
left a comment
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, but I think it's close to be good to go 👍
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_multi_type_requests.py
Outdated
Show resolved
Hide resolved
tests/prague/eip7685_general_purpose_el_requests/test_multi_type_requests.py
Outdated
Show resolved
Hide resolved
…withdrawal_contract.py
Co-authored-by: Mario Vega <marioevz@gmail.com>
f66372c to
10f41b0
Compare
marioevz
left a comment
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.
One last request, please add a item to docs/CHANGELOG.md with a one-line description of the tests added by this PR.
Thanks for the changes!
tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py
Outdated
Show resolved
Hide resolved
…#1340) * new(tests): added more cases (two contract req, one EOA req) in test_valid_deposit_withdrawal_consolidation_requests * fixed comments * rename test_deposits_withdrawals_consolidations.py to test_multi_type_requests.py * changed type from ParameterSet to a union of the three request types, added mypy silencer for type warning * added draft test of trying out a modified withdrawal contract that allows 18 withdrawals per block * fixed docstrings * tried to implement marios feedback * moved test to a better suited folder (eip7002) * parameterized test and bugfixes * added pseudo contract that just returns withdrawals requests * removed unnecessary offset update * macro MSTORE now used instead of manually splitting into chunks * Update tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py * Datatype is ParameterSet Co-authored-by: Mario Vega <marioevz@gmail.com> * added pytest marker for prague, and some minor fixes * removed comment and updated CHANGELOG.md --------- Co-authored-by: Mario Vega <marioevz@gmail.com>
…#1340) * new(tests): added more cases (two contract req, one EOA req) in test_valid_deposit_withdrawal_consolidation_requests * fixed comments * rename test_deposits_withdrawals_consolidations.py to test_multi_type_requests.py * changed type from ParameterSet to a union of the three request types, added mypy silencer for type warning * added draft test of trying out a modified withdrawal contract that allows 18 withdrawals per block * fixed docstrings * tried to implement marios feedback * moved test to a better suited folder (eip7002) * parameterized test and bugfixes * added pseudo contract that just returns withdrawals requests * removed unnecessary offset update * macro MSTORE now used instead of manually splitting into chunks * Update tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py * Datatype is ParameterSet Co-authored-by: Mario Vega <marioevz@gmail.com> * added pytest marker for prague, and some minor fixes * removed comment and updated CHANGELOG.md --------- Co-authored-by: Mario Vega <marioevz@gmail.com>
🗒️ Description
WIP
🔗 Related Issues
✅ Checklist
mkdocs servelocally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.