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

Integration tests #5

Open
storojs72 opened this issue May 19, 2023 · 0 comments
Open

Integration tests #5

storojs72 opened this issue May 19, 2023 · 0 comments
Labels

Comments

@storojs72
Copy link
Collaborator

Current stack of solidity-verifier includes Rust, Python and Solidity environments. Rust implementations of pasta_curves, neptune and Nova are considered as "reference". Compatibility is an important requirement in mind for solidity-verifier that is why we use methodic of comparing test vectors produced from Rust "reference" software and consumed by Solidity contracts. We also use Python utility scripts inside the stack where we have some necessary algorithms implemented (uncompressing curve points + modular sqrt, splitting 256-bits field elements to 64-bit limbs). Those parts of the stack are not linked and enforced by CI and in case of any changes in "reference" software, compatibility may be broken, so we need some integration tests that convert our stack parts into the pipeline which we can enforce with a help of CI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant