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

Script that shows the differences between Zebra and zcashd RPC responses #4130

Closed
teor2345 opened this issue Apr 18, 2022 · 0 comments · Fixed by #4219
Closed

Script that shows the differences between Zebra and zcashd RPC responses #4130

teor2345 opened this issue Apr 18, 2022 · 0 comments · Fixed by #4219
Assignees
Labels
A-rpc Area: Remote Procedure Call interfaces C-testing Category: These are tests lightwalletd any work associated with lightwalletd

Comments

@teor2345
Copy link
Contributor

teor2345 commented Apr 18, 2022

Motivation

In the address index review meeting last week, we talked about testing address indexes.

One of the ways we can test is by comparing RPC responses from Zebra and zcashd.

Designs

We can test RPCs by:

  • making sure Zebra and zcashd are synced to the same height
  • sending the same RPC query to both
  • formatting both responses using the same formatter
  • comparing their responses
  • fixing any Zebra differences
  • adding a snapshot test to make sure they stay fixed (Add RPC response snapshot tests #4131)

This could be a Rust script, we already have a tool that queries zcashd RPCs. Or it could be a shell script.

Optional Features

Automatically ignore expected differences, including:
- extra zcashd fields
- irrelevant order differences (but the getaddresstxids RPC guarantees that the transactions will be in chain order)
- irrelevant data differences

Related Work

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-rpc Area: Remote Procedure Call interfaces C-testing Category: These are tests lightwalletd any work associated with lightwalletd
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants