-
Notifications
You must be signed in to change notification settings - Fork 75
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(docs,tools): Add fixture formats specifications to the documentation; Refactor types #375
feat(docs,tools): Add fixture formats specifications to the documentation; Refactor types #375
Conversation
Really nice! I'm liking the path this is going in :) How do you guys feel about having separate pages for:
I think we should also keep a basic consume pipeline command at the end of the getting started section? |
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.
It's really nice to have this documented and readily readable!
I'm not sure this is the right approach though. I'm not very keen on the data structures and their fields being manually written (copied) in the markdown. The source will likely get incrementally improved over time and these changes should ideally be propagated to the docs. I think the descriptions under each field should be extracted from the source instead of re-writing a docstring in the markdown. For example, we have:
and:
I would prefer it if the markdown is replaced with docstrings extracted from the python source. Happy to have a look at this and see if there's a reasonable approach to achieve it!
Absolutely, this is the long term solution, and I think should be doable, but I could not figure out a way of extracting and formatting the information yet. |
b183d54
to
abd9ba4
Compare
Added |
0559c67
to
b64df50
Compare
b64df50
to
67d8f43
Compare
abd9ba4
to
8530db4
Compare
8530db4
to
51fd03e
Compare
caf2ad3
to
b9526ad
Compare
This is ready for review @danceratopz @spencer-tb The markdown lint is complaining a lot, and I've managed to fix most of the complains, but some I have not been able to fix, such as this long line: https://github.com/marioevz/execution-spec-tests/blob/b9526adcc278fbc27fe7407769f350e0a077ddc2/docs/consuming_tests/blockchain_test.md?plain=1#L157 I think the format could be improved but let me know what you think! |
Use h3 headers instead of bullet points (also for TOC).
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.
Looks great, really love the "Description" and "Consumption" sections for each format.
I tried to make the intro a bit more compact in 068595c5675a665de83597e56a923a5597640773. Feel free to revert if you don't like it.
LGTM, except the one comment below in the Forks section in common types.
Co-authored-by: danceratopz <danceratopz@gmail.com>
🗒️ Description
Documentation Changes
Adds the fixture formats description to the documentation in the new "Consuming Tests" section.
The section contains 4 different pages at the moment:
The first three are the current fixture formats that the
execution-spec-tests
repository is able to generate.The last page contains type descriptions that all fixture formats use.
Framework changes
This PR also performs some minor refactors to some of the types in order for them to be more coherent.
FixtureWithdrawal
andFixtureTransaction
are moved fromcommon
into thespec/blockchain/types.py
file with the rest of the definitions that are exclusively used for blockchain fixture generation.FixtureBlock
and replaced with lambda functions.Optional
was removed from many fixture fields, such as those where there was never an instance ofNone
being used as value.🔗 Related Issues
None
✅ Checklist
mkdocs serve
locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.