-
Couldn't load subscription status.
- Fork 185
feat(tests): enhance eip7883 test coverage #1929
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
feat(tests): enhance eip7883 test coverage #1929
Conversation
016bf91 to
4d57f68
Compare
tests/osaka/eip7883_modexp_gas_increase/test_modexp_thresholds_transition.py
Outdated
Show resolved
Hide resolved
tests/osaka/eip7883_modexp_gas_increase/test_modexp_thresholds_transition.py
Show resolved
Hide resolved
256b98c to
ed33e8d
Compare
5c7c640 to
87c8cac
Compare
fce1649 to
13ab385
Compare
tests/osaka/eip7883_modexp_gas_increase/test_modexp_thresholds.py
Outdated
Show resolved
Hide resolved
3d0391f to
47ba51b
Compare
|
I didn’t create a separate PR for issue ethereum/execution-specs#1576, as it depends on the infrastructure introduced in this PR. There are 37 test cases in the legacy
|
47ba51b to
55d8fec
Compare
efb5a00 to
6e7819f
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.
Thanks for working on this. Just some small comments for now.
Could you double check my understanding for my comment here:
#1929 (comment)
6e7819f to
ec39341
Compare
c6b83d4 to
7bd5794
Compare
|
These test works as expected locally but CI fails. I've checked the error message, and it seems like all the tests are ignored? |
|
Validated coverage script in #2071. |
* refactor(eip7883): update vector input structure * feat: add eip7702, gas usage and extra edge cases * feat: add fork transition test * test: add extra invalid cases * refactor(tests): Improve fixture and test descriptions for clarity * refactor(tests): add helper for invalid case * feat: add invalud boundary test cases * chore: update boundary input case * refactor(tests): simplify boundary modexp test cases * fix(tests): update fork transition test * feat(test): add gas formula egde cases * test: add extra casefor modexp invalid input * tests: port legacy modexp test * refactor: update vector and data types * refactor: remove valid case from invalid scenario * refactor: update result comparison method and test case * refactor: update comment * refactor: update naming and new cases * refactor: update valid fork configuration
🗒️ Description
EIP-7883: ModExp Gas Cost Increase
This EIP changes the gas cost, so it falls under this category in the checklist. While this category is meant specifically for gas cost changes, I’ve added a broader set of scenarios, similar to what would be done for a new precompile, since the existing tests from
Byzantiumare incomplete.Call contexts
Inputs
Value Transfer
Modexpis not no-fee precompileOut-of-bounds checks
Input Lengths
Gas usage
Fork transition
🔗 Related Issues or PRs
Issue ethereum/execution-specs#1564, ethereum/execution-specs#1558, ethereum/execution-specs#1576
✅ Checklist
toxchecks to avoid unnecessary CI fails, see also Code Standards and Enabling Pre-commit Checks:uvx --with=tox-uv tox -e lint,typecheck,spellcheck,markdownlinttype(scope):.mkdocs servelocally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.@ported_frommarker.