Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

danceratopz
Copy link
Member

@danceratopz danceratopz commented Aug 21, 2025

🗒️ Description

  1. Adds an optional executionWitness field to the blockchain fixture base class.
  2. Adds a new pytest plugin that:
    • pytest_addoption(): add a boolean --witness flag.
    • pytest_configure(): Compiles checks whether the witness-filler tool is in PATH if --witness is enabled; hard error if not.
    • Provides a fixture generate_witness that generates a fixture's execution witness using the witness-filler tool.
  3. Calls the generate_witness fixture in BaseTestParametrizer. If --witness is not enabled, there is not change in fill behavior.

Usage

uv run fill tests/istanbul/eip1344_chainid/test_chainid.py --output=fixtures-witness --witness --clean
image

🔗 Related Issues or PRs

#2031

✅ Checklist

  • All: Ran fast tox checks to avoid unnecessary CI fails, see also Code Standards and Enabling Pre-commit Checks:
    uvx --with=tox-uv tox -e lint,typecheck,spellcheck,markdownlint
  • All: PR title adheres to the repo standard - it will be used as the squash commit message and should start type(scope):.
  • All: Considered adding an entry to CHANGELOG.md.
  • All: Considered updating the online docs in the ./docs/ directory.
  • All: Set appropriate labels for the changes (only maintainers can apply labels).

@danceratopz danceratopz added type:feat type: Feature scope:fill Scope: fill command labels Aug 21, 2025
@danceratopz danceratopz requested review from marioevz and jsign August 21, 2025 17:59
Copy link
Collaborator

@jsign jsign left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you very much sir!

Copy link
Member

@marioevz marioevz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a huge fan of how hacky this is tbh, but if it's a single use case I can live with it once the changes are applied.

@danceratopz danceratopz requested a review from marioevz August 28, 2025 15:11
@danceratopz
Copy link
Member Author

Hey @marioevz I think I've addressed your concerns, please take another look!

Copy link
Member

@marioevz marioevz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, other than the cargo install.

Don't build it using cargo install; this must be done by the user.
@danceratopz danceratopz requested a review from marioevz August 28, 2025 19:03
Copy link
Member

@marioevz marioevz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@marioevz marioevz merged commit 2d66b26 into main Aug 28, 2025
15 checks passed
@marioevz marioevz deleted the feat/fill-witness branch August 28, 2025 21:35
@jsign
Copy link
Collaborator

jsign commented Aug 28, 2025

@danceratopz, @marioevz, thanks again for this. 🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scope:fill Scope: fill command type:feat type: Feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants