-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
itests: add event matrix tests for realtime eth filters and subscriptions #10083
Conversation
Note - #10027 changes how the rpc works / is used, probably worth landing those tests first so that we can have some confidence in the rpc changes later |
Do you mean landing the tests in this PR or waiting for the tests in 10027? |
Added cbor decoding to EthGetTransactionReceipt since we're doing it in the other places we construct an EthLog |
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.
Just two comments for you!
} | ||
|
||
// Perform all the invocations | ||
messages := invokeAndWaitUntilAllOnChain(t, client, invocations) |
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 know it wasn't written in this PR, but invokeAndWaitUntilAllOnChain
sends messages into msgChan
whether they're reverted or applied. It sets a reverted flag in the msgInTipset
object, but this value is never checked. This won't cause any problems if your test setup only uses one miner because there will be no reverts, but this could cause problems with more complicated setups. We should either limit the use of this function to single-miner setups, or we should do something with the reverted flag, so we know a message might not actually be on chain.
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.
Good point. The ethereum event apis can use this flag, but these single miner tests aren't exercising it. We could add further tests that cause reversions and ensure they are emitted in the ethereum event log apis.
Thanks for the review @geoff-vball. I've removed the debug statement. Are you able to ok this for merging? |
Yep, go ahead and merge after the last test passes. |
Related Issues
Part of #9849
Proposed Changes
Bugs fixed:
New/revised tests using the event matrix to cover wide variety of filter conditions:
New test:
Some noisy reorganisation of event matrix test cases to make them usable to the new tests
Additional Info
Checklist
Before you mark the PR ready for review, please make sure that:
<PR type>: <area>: <change being made>
fix: mempool: Introduce a cache for valid signatures
PR type
: fix, feat, build, chore, ci, docs, perf, refactor, revert, style, testarea
, e.g. api, chain, state, market, mempool, multisig, networking, paych, proving, sealing, wallet, deps