pre-built MASP proofs for integration tests #1768
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Describe your changes
To speed-up MASP integration tests that were timing out in CI, this PR adds the ability to save and load proofs to/from files stored in
test_fixtures/masp_proofs.The prebuilt proofs are added to
make test-coverageto allow running integration tests in the CI.The MASP proof builder in
fn gen_shielded_transferis optionally given a seed to produce deterministic output. When not specified, the original behavior is preserved (i.e. usingOsRng, but now wrapped in StdRng which is cryptographically secure - see https://rust-random.github.io/rand/rand/trait.SeedableRng.html#method.from_rng for more details).To enable deterministic builders, the
Conversionstype and notes positions inShieldedContextare changed toBTreeMapandBTreeSetresp to provide deterministic output fromfn collect_unspent_notes.Indicate on which release or other PRs this topic is based on
0.20.0
Checklist before merging to
draft