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

Extend api_conformity tests #2652

Open
konstantinabl opened this issue Jul 2, 2024 · 1 comment
Open

Extend api_conformity tests #2652

konstantinabl opened this issue Jul 2, 2024 · 1 comment
Labels
enhancement New feature or request

Comments

@konstantinabl
Copy link
Collaborator

konstantinabl commented Jul 2, 2024

Problem

Currently, the api_conformity test suites uses these tests from the Ethereum repository to ensure that we are correctly following the Ethereum RPC schema. However, in the mentioned repository, only a portion of the endpoints we maintain are tested—18 out of approximately 50.

Solution

We would want to have conformity tests for all of our endpoints. One way to achieve this is to create similar tests for the endpoints we miss, integrate them into our local repository, and add them to the existing tests. Also, we would need to create an OpenRpc schema for those in order to validate the correct format of the fields - e.g hex strings, length of the hex etc.
The downside of this approach is that we would need to maintain these tests and ensure they are up-to-date with the newest Ethereum RPC schema.

Alternatives

No response

@konstantinabl konstantinabl added the enhancement New feature or request label Jul 2, 2024
@Nana-EC
Copy link
Collaborator

Nana-EC commented Jul 2, 2024

Thanks @konstantinabl

Let's explore that last part more.
For example a GHA that runs and lets us know if the schema changes . It would be non blocking but would alert us if say a new API is added that we haven't added support of or noted as a "won't support".

Another option is if we take a dependency on their versions then we'll get bump requests to stay up to date and in doing so running the schema tests would tell us if there's a mismatch.

Mainly we want to ensure our supported endpoints are conformant and be made aware of additional APIs over time so we decide support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Backlog
Development

No branches or pull requests

2 participants