Skip to content
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

test: Minimal test suite to run against node RPC to check for breaks over the wire #3959

Open
renaynay opened this issue Nov 22, 2024 · 5 comments
Assignees
Labels
area:api Related to celestia-node API

Comments

@renaynay
Copy link
Member

We need something ASAP that's minimal and covers the most important endpoints at first, and then spreads to 100% coverage of the API. We do not need the canonical API workstream to get this done, we can already do it now.

Spin up a node instance in docker and some separate sidecar-like program that uses node's API over RPC and ensures they're all working normally.

Run a mock tendermint node as well so the cel-node has something to point at for data, we need to test writes as well.

@renaynay renaynay added the area:api Related to celestia-node API label Nov 22, 2024
@renaynay
Copy link
Member Author

Or let's maybe look at using knuu for this as a first step.

@cmwaters
Copy link
Contributor

cmwaters commented Dec 3, 2024

Yeah I think this should be paired with knuu work i.e. and should ideally use raw JSON RPC queries

@Wondertan
Copy link
Member

Wondertan commented Dec 3, 2024

Well, this is what Swamp tests were for which supposed to be run over RPC client instead of direct API calls, but iirc Ryan never had a chance to finish that.

On the raw RPC @cmwaters. There is no need for that and it will only complicate things.
We have interface and both server and client are autogenerated for it via reflection. If we make tests over the interface and ensure that those tests run over RPC client for every method, then all such breakages are gonna be detected without hussles of raw json

@Wondertan
Copy link
Member

And this is a duplicate of #2337 fwiw

@cmwaters
Copy link
Contributor

cmwaters commented Dec 3, 2024

Sure, I just want to make sure that we can guarantee that clients in other languages can use the API as expected. Raw can mean using generated interfaces if that sufficiently covers it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:api Related to celestia-node API
Projects
None yet
Development

No branches or pull requests

5 participants