OpenZeppelin / OpenZeppelin/Robust-Provider
Add Integration Tests with Real Ethereum Nodes
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 6
- Forks
- 4
- Avg merge
- 15h 52m
- Merged PRs (30d)
- 5
Description
Summary
Our test suite only uses Anvil, which doesn't accurately replicate real execution client behavior. As seen in Robust-Provider#6 there are non-trivial differences between Anvil and real clients (Geth, Nethermind, Reth, etc.) that cause production issues. We need integration tests against variety of real nodes for a stable release.
Problem
- Anvil differs from production clients in WebSocket behavior, error responses, and RPC semantics
- Bugs may slip through that would be caught with real client testing
Solution
Use ethereum-package via Kurtosis to spin up ephemeral Ethereum networks with real execution clients for integration testing.
Tasks
- Add Kurtosis to CI pipeline
- Create integration test suite (feature-gated, separate from unit tests)
- Test against multiple clients: Geth, Nethermind, Reth
- Cover key scenarios: subscriptions, reconnection, error handling
- Run on merges to main and release branches (not every PR)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No repository files or tests are named. Start by locating the CI configuration and the existing Anvil-backed tests, then review how integration tests are separated and feature-gated; done means Kurtosis can launch Geth, Nethermind, and Reth networks and merge/release runs cover subscriptions, reconnection, and error handling.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- ci-cd, devops, distributed-systems, testing-qa
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100