-
Notifications
You must be signed in to change notification settings - Fork 88
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(fw): Implement execute
command to run tests in live networks
#686
Conversation
f58ce17
to
da6a76e
Compare
da6a76e
to
48c8851
Compare
cf0f3c9
to
b3b2496
Compare
d2b1f23
to
538005c
Compare
execute
command to run tests in live networks
5330ff2
to
6425396
Compare
f2e2b36
to
f94e230
Compare
f94e230
to
794105f
Compare
Hi @danceratopz @spencer-tb this has been rebased on top of main and I think is ready for review. One thing that could be missing is the changes to existing tests to add markers or make the tests more execute-friendly, but that would add many files to this PR (I have a commit on other branch). Should that be on a different PR for easier review? |
@marioevz Let's get this merged without getting hung up on running with existing tests and handle that in a subsequent PR 🚀 |
042e489
to
93120b2
Compare
…lugin This moves shared fixtures and hooks to their own plugin, that both commands can load as a plugin. This is a simple move; no deeper refactor required
93120b2
to
7ac42ec
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.
LGTM!
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.
Let's get this merged!
Requires
#822, #823, #824, #825, #826, #827
Will stay in draft until these requirements are merged.
🗒️ Description
Introduces the new command
execute
that allows to run tests in live networks when provided with enough funds to send test transactions.execute
CommandIt includes two modes of executing tests.
Hive Local Network Mode
Run the tests in a local network instantiated using hive. The
execute
command drives the network by use of the Engine API and does not require a consensus client.Remote RPC Network Mode
Run the tests on a live network by sending the transactions using the JSON RPC endpoint of an execution client connected to the network.
The command requires a private key with funds to be specified by using a parameter (
--rpc-seed-key
).For more information see the included doc page: https://github.com/ethereum/execution-spec-tests/pull/686/files#diff-39b858dd04aa8508cf00fe9dafe46936865a8a3cded669a628c8ee1556b6cee1
New Test Markers
Included in this PR there are two new markers which can aid to mark tests with specific behavior on
execute
andfill
modes.pytest.mark.fill
,pytest.mark.execute
These marks accept any number of markers as arguments which will be applied to the tests in the respective mode.
For example:
for tests that cannot be executed on a live network due to balance requirements.
🔗 Related Issues
None.
✅ Checklist
mkdocs serve
locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.