caliper
caliper copied to clipboard
allow creating onchain privacy groups during test setup
Signed-off-by: Taccat Isid [email protected]
Checklist
- ~~A link to the issue/user story that the pull request relates to~~
- [x] How to recreate the problem without the fix
- [x] Design of the fix
- [x] How to prove that the fix works
- [x] Automated tests that prove the fix keeps on working
- [ ] Documentation - any JSDoc, website, or Stackoverflow answers?
Issue/User story
When using caliper with onchain privacy the user currently has to create privacy groups outside of caliper and then record the privacyGroupId in the caliper network config. The id itself is created randomly. Having a fixed value in the caliper network config would require to also have a lot of ossified smart contract state the besu genesis file.
Existing issues
- [x] Stack Overflow issues
- [x] GitHub Issues
- [x] Rocket Chat history
Design of the fix
The setup phase of the ethereum connector was extended to allow creation of privacy groups. The generated group ids are injected into the configuration and passed to individual workers via prepareWorkerArguments
and getContext
.
Validation of the fix
The PR has been tested by using both the existing and the extended (see below) integration tests.
Automated Tests
The existing privacy integration tests have been modified to use onchain privacy with dynamically generated groups. It would be preferable to test onchain and legacy privacy groups at the same time. But a single besu instance only supports one or the other and using onchain allows for far more coverage.
What documentation has been provided for this pull request
None so far.
@taccatisid Could you please rebase your PR to resolve the current conflict?
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.