@maci-protocol/testing 0.0.0-ci.a577366 → 0.0.0-ci.a73cfa9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/LICENSE +1 -2
  2. package/build/ts/__tests__/e2e.full.test.d.ts +2 -0
  3. package/build/ts/__tests__/e2e.full.test.d.ts.map +1 -0
  4. package/build/ts/__tests__/e2e.full.test.js +845 -0
  5. package/build/ts/__tests__/e2e.full.test.js.map +1 -0
  6. package/build/ts/__tests__/e2e.nonQv.test.js +422 -35
  7. package/build/ts/__tests__/e2e.nonQv.test.js.map +1 -1
  8. package/build/ts/__tests__/e2e.test.js +264 -274
  9. package/build/ts/__tests__/e2e.test.js.map +1 -1
  10. package/build/ts/__tests__/integration.test.js +60 -59
  11. package/build/ts/__tests__/integration.test.js.map +1 -1
  12. package/build/ts/__tests__/keyChange.test.js +74 -76
  13. package/build/ts/__tests__/keyChange.test.js.map +1 -1
  14. package/build/ts/__tests__/maciKeys.test.js +41 -41
  15. package/build/ts/__tests__/maciKeys.test.js.map +1 -1
  16. package/build/ts/__tests__/stress/stress.full.test.d.ts +2 -0
  17. package/build/ts/__tests__/stress/stress.full.test.d.ts.map +1 -0
  18. package/build/ts/__tests__/stress/stress.full.test.js +195 -0
  19. package/build/ts/__tests__/stress/stress.full.test.js.map +1 -0
  20. package/build/ts/__tests__/unit/joinPoll.test.js +65 -27
  21. package/build/ts/__tests__/unit/joinPoll.test.js.map +1 -1
  22. package/build/ts/__tests__/unit/poll.test.js +7 -6
  23. package/build/ts/__tests__/unit/poll.test.js.map +1 -1
  24. package/build/ts/__tests__/unit/publish.test.js +10 -9
  25. package/build/ts/__tests__/unit/publish.test.js.map +1 -1
  26. package/build/ts/__tests__/unit/setVerifyingKeys.test.d.ts +2 -0
  27. package/build/ts/__tests__/unit/setVerifyingKeys.test.d.ts.map +1 -0
  28. package/build/ts/__tests__/unit/setVerifyingKeys.test.js +52 -0
  29. package/build/ts/__tests__/unit/setVerifyingKeys.test.js.map +1 -0
  30. package/build/ts/__tests__/unit/signup.test.js +8 -8
  31. package/build/ts/__tests__/unit/signup.test.js.map +1 -1
  32. package/build/ts/__tests__/unit/utils.test.js +12 -12
  33. package/build/ts/__tests__/unit/utils.test.js.map +1 -1
  34. package/build/ts/constants.d.ts +53 -55
  35. package/build/ts/constants.d.ts.map +1 -1
  36. package/build/ts/constants.js +113 -74
  37. package/build/ts/constants.js.map +1 -1
  38. package/build/ts/testingClass.d.ts +7 -7
  39. package/build/ts/testingClass.d.ts.map +1 -1
  40. package/build/ts/testingClass.js +30 -26
  41. package/build/ts/testingClass.js.map +1 -1
  42. package/build/ts/types.d.ts +10 -11
  43. package/build/ts/types.d.ts.map +1 -1
  44. package/build/ts/user.d.ts +2 -2
  45. package/build/ts/user.d.ts.map +1 -1
  46. package/build/ts/user.js +1 -1
  47. package/build/ts/user.js.map +1 -1
  48. package/build/ts/utils.d.ts +3 -3
  49. package/build/ts/utils.d.ts.map +1 -1
  50. package/build/ts/utils.js +12 -12
  51. package/build/ts/utils.js.map +1 -1
  52. package/build/tsconfig.tsbuildinfo +1 -1
  53. package/package.json +19 -18
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const crypto_1 = require("@maci-protocol/crypto");
4
+ const domainobjs_1 = require("@maci-protocol/domainobjs");
5
+ const sdk_1 = require("@maci-protocol/sdk");
6
+ const constants_1 = require("../../constants");
7
+ const utils_1 = require("../../utils");
8
+ const filePerMode = {
9
+ [sdk_1.EMode.FULL]: {
10
+ voteTallyZkey: constants_1.testTallyVotesFullZkeyPath,
11
+ messageProcessorZkey: constants_1.testProcessMessageFullZkeyPath,
12
+ messageProcessorWitnessGenerator: constants_1.testProcessMessagesFullWitnessPath,
13
+ messageProcessorWitnessDatFile: constants_1.testProcessMessagesFullWitnessDatPath,
14
+ voteTallyWitnessGenerator: constants_1.testTallyVotesFullWitnessPath,
15
+ voteTallyWitnessDatFile: constants_1.testTallyVotesFullWitnessDatPath,
16
+ messageProcessorWasm: constants_1.testProcessMessagesFullWasmPath,
17
+ voteTallyWasm: constants_1.testTallyVotesFullWasmPath,
18
+ },
19
+ [sdk_1.EMode.NON_QV]: {
20
+ voteTallyZkey: constants_1.testVoteTallyNonQvZkeyPath,
21
+ messageProcessorZkey: constants_1.testProcessMessageNonQvZkeyPath,
22
+ messageProcessorWitnessGenerator: constants_1.testProcessMessagesNonQvWitnessPath,
23
+ messageProcessorWitnessDatFile: constants_1.testProcessMessagesNonQvWitnessDatPath,
24
+ voteTallyWitnessGenerator: constants_1.testVoteTallyNonQvWitnessPath,
25
+ voteTallyWitnessDatFile: constants_1.testVoteTallyNonQvWitnessDatPath,
26
+ messageProcessorWasm: constants_1.testProcessMessagesNonQvWasmPath,
27
+ voteTallyWasm: constants_1.testVoteTallyNonQvWasmPath,
28
+ },
29
+ [sdk_1.EMode.QV]: {
30
+ voteTallyZkey: constants_1.testTallyVotesZkeyPath,
31
+ messageProcessorZkey: constants_1.testProcessMessageZkeyPath,
32
+ messageProcessorWitnessGenerator: constants_1.testProcessMessagesWitnessPath,
33
+ messageProcessorWitnessDatFile: constants_1.testProcessMessagesWitnessDatPath,
34
+ voteTallyWitnessGenerator: constants_1.testTallyVotesWitnessPath,
35
+ voteTallyWitnessDatFile: constants_1.testTallyVotesWitnessDatPath,
36
+ messageProcessorWasm: constants_1.testProcessMessagesWasmPath,
37
+ voteTallyWasm: constants_1.testTallyVotesWasmPath,
38
+ },
39
+ };
40
+ const numberSignups = 100;
41
+ const numberMessagesPerUser = 2;
42
+ const pollDuration = 900000;
43
+ Object.entries(filePerMode).forEach((data) => {
44
+ const mode = Number(data[0]);
45
+ const files = data[1];
46
+ describe(`stress tests ${sdk_1.EMode[mode]}`, function test() {
47
+ const useWasm = (0, sdk_1.isArm)();
48
+ this.timeout(pollDuration);
49
+ let maciAddresses;
50
+ let initialVoiceCreditProxyContractAddress;
51
+ let verifierContractAddress;
52
+ let signer;
53
+ let verifyingKeysRegistryAddress;
54
+ const generateProofsArgs = {
55
+ outputDir: constants_1.testProofsDirPath,
56
+ tallyFile: constants_1.testTallyFilePath,
57
+ voteTallyZkey: files.voteTallyZkey,
58
+ messageProcessorZkey: files.messageProcessorZkey,
59
+ pollId: 0n,
60
+ rapidsnark: constants_1.testRapidsnarkPath,
61
+ messageProcessorWitnessGenerator: files.messageProcessorWitnessGenerator,
62
+ messageProcessorWitnessDatFile: files.messageProcessorWitnessDatFile,
63
+ voteTallyWitnessGenerator: files.voteTallyWitnessGenerator,
64
+ voteTallyWitnessDatFile: files.voteTallyWitnessDatFile,
65
+ coordinatorPrivateKey: constants_1.coordinatorPrivateKey,
66
+ messageProcessorWasm: files.messageProcessorWasm,
67
+ voteTallyWasm: files.voteTallyWasm,
68
+ useWasm,
69
+ mode,
70
+ };
71
+ const prepareTest = async () => {
72
+ const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
73
+ const signupPolicyContractAddress = await signupPolicy.getAddress();
74
+ const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({ policy: signupPolicyFactory, checker: signupCheckerFactory }, signer, true);
75
+ const pollPolicyContractAddress = await pollPolicy.getAddress();
76
+ // deploy the smart contracts
77
+ const maciContractsAddresses = await (0, sdk_1.deployMaci)({
78
+ ...constants_1.deployArgs,
79
+ signer,
80
+ signupPolicyAddress: signupPolicyContractAddress,
81
+ });
82
+ const startDate = await (0, sdk_1.getBlockTimestamp)(signer);
83
+ // deploy a poll contract
84
+ await (0, sdk_1.deployPoll)({
85
+ ...constants_1.deployPollArgs,
86
+ signer,
87
+ pollStartTimestamp: startDate,
88
+ pollEndTimestamp: startDate + pollDuration,
89
+ relayers: [await signer.getAddress()],
90
+ maciAddress: maciContractsAddresses.maciContractAddress,
91
+ verifierContractAddress,
92
+ verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
93
+ policyContractAddress: pollPolicyContractAddress,
94
+ initialVoiceCreditProxyContractAddress,
95
+ mode,
96
+ });
97
+ return maciContractsAddresses;
98
+ };
99
+ // before all tests we deploy the verifying keys registry contract and set the verifying keys
100
+ before(async () => {
101
+ signer = await (0, sdk_1.getDefaultSigner)();
102
+ // we deploy the verifying keys registry contract
103
+ verifyingKeysRegistryAddress = await (0, sdk_1.deployVerifyingKeysRegistryContract)({ signer });
104
+ const constantInitialVoiceCreditProxyFactory = await (0, sdk_1.deployConstantInitialVoiceCreditProxyFactory)(signer, true);
105
+ const initialVoiceCreditProxy = await (0, sdk_1.deployConstantInitialVoiceCreditProxy)({ amount: constants_1.DEFAULT_INITIAL_VOICE_CREDITS }, constantInitialVoiceCreditProxyFactory, signer);
106
+ initialVoiceCreditProxyContractAddress = await initialVoiceCreditProxy.getAddress();
107
+ const verifier = await (0, sdk_1.deployVerifier)(signer, true);
108
+ verifierContractAddress = await verifier.getAddress();
109
+ // we deploy the verifying keys registry contract
110
+ verifyingKeysRegistryAddress = await (0, sdk_1.deployVerifyingKeysRegistryContract)({ signer });
111
+ // we set the verifying keys
112
+ await (0, sdk_1.setVerifyingKeys)({
113
+ ...(await (0, constants_1.verifyingKeysArgs)(signer, [mode])),
114
+ verifyingKeysRegistryAddress,
115
+ });
116
+ });
117
+ describe(`${numberSignups} signup(s), ${numberSignups * numberMessagesPerUser} message(s)`, () => {
118
+ const users = Array.from({ length: numberSignups }, () => new domainobjs_1.Keypair());
119
+ before(async () => {
120
+ // deploy the smart contracts
121
+ maciAddresses = await prepareTest();
122
+ });
123
+ after(async () => {
124
+ await (0, utils_1.clean)();
125
+ });
126
+ it("should signup users", async () => {
127
+ // eslint-disable-next-line @typescript-eslint/prefer-for-of
128
+ for (let index = 0; index < users.length; index += 1) {
129
+ // eslint-disable-next-line no-await-in-loop
130
+ await (0, sdk_1.signup)({
131
+ maciAddress: maciAddresses.maciContractAddress,
132
+ maciPublicKey: users[index].publicKey.serialize(),
133
+ sgData: constants_1.DEFAULT_SG_DATA,
134
+ signer,
135
+ });
136
+ }
137
+ });
138
+ it("should join users", async () => {
139
+ // eslint-disable-next-line @typescript-eslint/prefer-for-of
140
+ for (let index = 0; index < users.length; index += 1) {
141
+ // eslint-disable-next-line no-await-in-loop
142
+ await (0, sdk_1.joinPoll)({
143
+ maciAddress: maciAddresses.maciContractAddress,
144
+ privateKey: users[index].privateKey.serialize(),
145
+ pollId: 0n,
146
+ pollJoiningZkey: constants_1.testPollJoiningZkeyPath,
147
+ useWasm,
148
+ pollWasm: constants_1.testPollJoiningWasmPath,
149
+ pollWitnessGenerator: constants_1.testPollJoiningWitnessPath,
150
+ rapidsnark: constants_1.testRapidsnarkPath,
151
+ sgDataArg: constants_1.DEFAULT_SG_DATA,
152
+ ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
153
+ signer,
154
+ });
155
+ }
156
+ });
157
+ it("should publish messages", async () => {
158
+ // eslint-disable-next-line @typescript-eslint/prefer-for-of
159
+ for (let index = 0; index < users.length; index += 1) {
160
+ for (let voteOptionIndex = numberMessagesPerUser; voteOptionIndex >= 0; voteOptionIndex -= 1) {
161
+ // eslint-disable-next-line no-await-in-loop
162
+ await (0, sdk_1.publish)({
163
+ publicKey: users[index].publicKey.serialize(),
164
+ stateIndex: BigInt(index + 1),
165
+ voteOptionIndex: BigInt(voteOptionIndex),
166
+ nonce: 1n,
167
+ pollId: 0n,
168
+ newVoteWeight: BigInt(constants_1.DEFAULT_INITIAL_VOICE_CREDITS),
169
+ maciAddress: maciAddresses.maciContractAddress,
170
+ salt: (0, crypto_1.generateRandomSalt)(),
171
+ privateKey: users[index].privateKey.serialize(),
172
+ signer,
173
+ });
174
+ }
175
+ }
176
+ });
177
+ it("should generate zk-SNARK proofs and verify them", async () => {
178
+ await (0, sdk_1.timeTravel)({ seconds: pollDuration, signer });
179
+ await (0, sdk_1.mergeSignups)({ ...constants_1.mergeSignupsArgs, maciAddress: maciAddresses.maciContractAddress, signer });
180
+ const { tallyData: tallyFileData } = await (0, sdk_1.generateProofs)({
181
+ ...generateProofsArgs,
182
+ maciAddress: maciAddresses.maciContractAddress,
183
+ signer,
184
+ });
185
+ await (0, sdk_1.proveOnChain)({ ...constants_1.proveOnChainArgs, maciAddress: maciAddresses.maciContractAddress, signer });
186
+ await (0, sdk_1.verify)({
187
+ ...(await (0, constants_1.verifyArgs)(signer)),
188
+ tallyData: tallyFileData,
189
+ maciAddress: tallyFileData.maci,
190
+ });
191
+ });
192
+ });
193
+ });
194
+ });
195
+ //# sourceMappingURL=stress.full.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stress.full.test.js","sourceRoot":"","sources":["../../../../ts/__tests__/stress/stress.full.test.ts"],"names":[],"mappings":";;AAAA,kDAA2D;AAC3D,0DAAoD;AACpD,4CAuB4B;AAI5B,+CAyCyB;AACzB,uCAAoC;AAEpC,MAAM,WAAW,GAAG;IAClB,CAAC,WAAK,CAAC,IAAI,CAAC,EAAE;QACZ,aAAa,EAAE,sCAA0B;QACzC,oBAAoB,EAAE,0CAA8B;QACpD,gCAAgC,EAAE,8CAAkC;QACpE,8BAA8B,EAAE,iDAAqC;QACrE,yBAAyB,EAAE,yCAA6B;QACxD,uBAAuB,EAAE,4CAAgC;QACzD,oBAAoB,EAAE,2CAA+B;QACrD,aAAa,EAAE,sCAA0B;KAC1C;IAED,CAAC,WAAK,CAAC,MAAM,CAAC,EAAE;QACd,aAAa,EAAE,sCAA0B;QACzC,oBAAoB,EAAE,2CAA+B;QACrD,gCAAgC,EAAE,+CAAmC;QACrE,8BAA8B,EAAE,kDAAsC;QACtE,yBAAyB,EAAE,yCAA6B;QACxD,uBAAuB,EAAE,4CAAgC;QACzD,oBAAoB,EAAE,4CAAgC;QACtD,aAAa,EAAE,sCAA0B;KAC1C;IAED,CAAC,WAAK,CAAC,EAAE,CAAC,EAAE;QACV,aAAa,EAAE,kCAAsB;QACrC,oBAAoB,EAAE,sCAA0B;QAChD,gCAAgC,EAAE,0CAA8B;QAChE,8BAA8B,EAAE,6CAAiC;QACjE,yBAAyB,EAAE,qCAAyB;QACpD,uBAAuB,EAAE,wCAA4B;QACrD,oBAAoB,EAAE,uCAA2B;QACjD,aAAa,EAAE,kCAAsB;KACtC;CACF,CAAC;AAEF,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,MAAM,YAAY,GAAG,MAAO,CAAC;AAE7B,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;IAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAU,CAAC;IACtC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAEtB,QAAQ,CAAC,gBAAgB,WAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,IAAI;QACnD,MAAM,OAAO,GAAG,IAAA,WAAK,GAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAE3B,IAAI,aAA6B,CAAC;QAClC,IAAI,sCAA8C,CAAC;QACnD,IAAI,uBAA+B,CAAC;QACpC,IAAI,MAAc,CAAC;QACnB,IAAI,4BAAoC,CAAC;QAEzC,MAAM,kBAAkB,GAAwD;YAC9E,SAAS,EAAE,6BAAiB;YAC5B,SAAS,EAAE,6BAAiB;YAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;YAChD,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,8BAAkB;YAC9B,gCAAgC,EAAE,KAAK,CAAC,gCAAgC;YACxE,8BAA8B,EAAE,KAAK,CAAC,8BAA8B;YACpE,yBAAyB,EAAE,KAAK,CAAC,yBAAyB;YAC1D,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;YACtD,qBAAqB,EAArB,iCAAqB;YACrB,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;YAChD,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,OAAO;YACP,IAAI;SACL,CAAC;QAEF,MAAM,WAAW,GAAG,KAAK,IAAI,EAAE;YAC7B,MAAM,CAAC,YAAY,EAAE,AAAD,EAAG,mBAAmB,EAAE,oBAAoB,CAAC,GAAG,MAAM,IAAA,kCAA4B,EACpG,EAAE,EACF,MAAM,EACN,IAAI,CACL,CAAC;YACF,MAAM,2BAA2B,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,CAAC;YAEpE,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,IAAA,kCAA4B,EACrD,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,oBAAoB,EAAE,EAC9D,MAAM,EACN,IAAI,CACL,CAAC;YACF,MAAM,yBAAyB,GAAG,MAAM,UAAU,CAAC,UAAU,EAAE,CAAC;YAEhE,6BAA6B;YAC7B,MAAM,sBAAsB,GAAG,MAAM,IAAA,gBAAU,EAAC;gBAC9C,GAAG,sBAAU;gBACb,MAAM;gBACN,mBAAmB,EAAE,2BAA2B;aACjD,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,MAAM,IAAA,uBAAiB,EAAC,MAAM,CAAC,CAAC;YAElD,yBAAyB;YACzB,MAAM,IAAA,gBAAU,EAAC;gBACf,GAAG,0BAAc;gBACjB,MAAM;gBACN,kBAAkB,EAAE,SAAS;gBAC7B,gBAAgB,EAAE,SAAS,GAAG,YAAY;gBAC1C,QAAQ,EAAE,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;gBACrC,WAAW,EAAE,sBAAsB,CAAC,mBAAmB;gBACvD,uBAAuB;gBACvB,oCAAoC,EAAE,4BAA4B;gBAClE,qBAAqB,EAAE,yBAAyB;gBAChD,sCAAsC;gBACtC,IAAI;aACL,CAAC,CAAC;YAEH,OAAO,sBAAsB,CAAC;QAChC,CAAC,CAAC;QAEF,6FAA6F;QAC7F,MAAM,CAAC,KAAK,IAAI,EAAE;YAChB,MAAM,GAAG,MAAM,IAAA,sBAAgB,GAAE,CAAC;YAElC,iDAAiD;YACjD,4BAA4B,GAAG,MAAM,IAAA,yCAAmC,EAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAErF,MAAM,sCAAsC,GAAG,MAAM,IAAA,kDAA4C,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAChH,MAAM,uBAAuB,GAAG,MAAM,IAAA,2CAAqC,EACzE,EAAE,MAAM,EAAE,yCAA6B,EAAE,EACzC,sCAAsC,EACtC,MAAM,CACP,CAAC;YACF,sCAAsC,GAAG,MAAM,uBAAuB,CAAC,UAAU,EAAE,CAAC;YAEpF,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAc,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACpD,uBAAuB,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;YAEtD,iDAAiD;YACjD,4BAA4B,GAAG,MAAM,IAAA,yCAAmC,EAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YACrF,4BAA4B;YAC5B,MAAM,IAAA,sBAAgB,EAAC;gBACrB,GAAG,CAAC,MAAM,IAAA,6BAAiB,EAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5C,4BAA4B;aAC7B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,GAAG,aAAa,eAAe,aAAa,GAAG,qBAAqB,aAAa,EAAE,GAAG,EAAE;YAC/F,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,oBAAO,EAAE,CAAC,CAAC;YAEzE,MAAM,CAAC,KAAK,IAAI,EAAE;gBAChB,6BAA6B;gBAC7B,aAAa,GAAG,MAAM,WAAW,EAAE,CAAC;YACtC,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,IAAA,aAAK,GAAE,CAAC;YAChB,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;gBACnC,4DAA4D;gBAC5D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;oBACrD,4CAA4C;oBAC5C,MAAM,IAAA,YAAM,EAAC;wBACX,WAAW,EAAE,aAAa,CAAC,mBAAmB;wBAC9C,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;wBACjD,MAAM,EAAE,2BAAe;wBACvB,MAAM;qBACP,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;gBACjC,4DAA4D;gBAC5D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;oBACrD,4CAA4C;oBAC5C,MAAM,IAAA,cAAQ,EAAC;wBACb,WAAW,EAAE,aAAa,CAAC,mBAAmB;wBAC9C,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE;wBAC/C,MAAM,EAAE,EAAE;wBACV,eAAe,EAAE,mCAAuB;wBACxC,OAAO;wBACP,QAAQ,EAAE,mCAAuB;wBACjC,oBAAoB,EAAE,sCAA0B;wBAChD,UAAU,EAAE,8BAAkB;wBAC9B,SAAS,EAAE,2BAAe;wBAC1B,WAAW,EAAE,6BAAiB;wBAC9B,MAAM;qBACP,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;gBACvC,4DAA4D;gBAC5D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;oBACrD,KAAK,IAAI,eAAe,GAAG,qBAAqB,EAAE,eAAe,IAAI,CAAC,EAAE,eAAe,IAAI,CAAC,EAAE,CAAC;wBAC7F,4CAA4C;wBAC5C,MAAM,IAAA,aAAO,EAAC;4BACZ,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;4BAC7C,UAAU,EAAE,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;4BAC7B,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC;4BACxC,KAAK,EAAE,EAAE;4BACT,MAAM,EAAE,EAAE;4BACV,aAAa,EAAE,MAAM,CAAC,yCAA6B,CAAC;4BACpD,WAAW,EAAE,aAAa,CAAC,mBAAmB;4BAC9C,IAAI,EAAE,IAAA,2BAAkB,GAAE;4BAC1B,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE;4BAC/C,MAAM;yBACP,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;gBAC/D,MAAM,IAAA,gBAAU,EAAC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;gBACpD,MAAM,IAAA,kBAAY,EAAC,EAAE,GAAG,4BAAgB,EAAE,WAAW,EAAE,aAAa,CAAC,mBAAmB,EAAE,MAAM,EAAE,CAAC,CAAC;gBACpG,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,IAAA,oBAAc,EAAC;oBACxD,GAAG,kBAAkB;oBACrB,WAAW,EAAE,aAAa,CAAC,mBAAmB;oBAC9C,MAAM;iBACP,CAAC,CAAC;gBACH,MAAM,IAAA,kBAAY,EAAC,EAAE,GAAG,4BAAgB,EAAE,WAAW,EAAE,aAAa,CAAC,mBAAmB,EAAE,MAAM,EAAE,CAAC,CAAC;gBACpG,MAAM,IAAA,YAAM,EAAC;oBACX,GAAG,CAAC,MAAM,IAAA,sBAAU,EAAC,MAAM,CAAC,CAAC;oBAC7B,SAAS,EAAE,aAAa;oBACxB,WAAW,EAAE,aAAa,CAAC,IAAI;iBAChC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -2,35 +2,36 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const domainobjs_1 = require("@maci-protocol/domainobjs");
4
4
  const sdk_1 = require("@maci-protocol/sdk");
5
+ const browser_1 = require("@maci-protocol/sdk/browser");
5
6
  const chai_1 = require("chai");
6
7
  const constants_1 = require("../../constants");
8
+ const utils_1 = require("../../utils");
9
+ const useWasm = (0, utils_1.isArm)();
7
10
  describe("joinPoll", function test() {
8
11
  let signer;
9
12
  let maciAddresses;
10
13
  let initialVoiceCreditProxyContractAddress;
11
14
  let verifierContractAddress;
12
- const user = new domainobjs_1.Keypair();
13
- const userPrivateKey = user.privKey.serialize();
14
- const userPublicKey = user.pubKey.serialize();
15
- const mockStateIndex = 1n;
15
+ const users = new Array(3).fill(undefined).map(() => new domainobjs_1.Keypair());
16
16
  const mockPollId = 9000n;
17
17
  this.timeout(900000);
18
- // before all tests we deploy the vk registry contract and set the verifying keys
18
+ // before all tests we deploy the verifying keys registry contract and set the verifying keys
19
19
  before(async () => {
20
20
  signer = await (0, sdk_1.getDefaultSigner)();
21
21
  const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
22
22
  const signupPolicyContractAddress = await signupPolicy.getAddress();
23
23
  const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({ policy: signupPolicyFactory, checker: signupCheckerFactory }, signer, true);
24
24
  const pollPolicyContractAddress = await pollPolicy.getAddress();
25
- const [initialVoiceCreditProxy] = await (0, sdk_1.deployConstantInitialVoiceCreditProxy)({ amount: constants_1.DEFAULT_INITIAL_VOICE_CREDITS }, signer, undefined, true);
25
+ const constantInitialVoiceCreditProxyFactory = await (0, sdk_1.deployConstantInitialVoiceCreditProxyFactory)(signer, true);
26
+ const initialVoiceCreditProxy = await (0, sdk_1.deployConstantInitialVoiceCreditProxy)({ amount: constants_1.DEFAULT_INITIAL_VOICE_CREDITS }, constantInitialVoiceCreditProxyFactory, signer);
26
27
  initialVoiceCreditProxyContractAddress = await initialVoiceCreditProxy.getAddress();
27
28
  const verifier = await (0, sdk_1.deployVerifier)(signer, true);
28
29
  verifierContractAddress = await verifier.getAddress();
29
30
  const startDate = await (0, sdk_1.getBlockTimestamp)(signer);
30
- // we deploy the vk registry contract
31
- const vkRegistryAddress = await (0, sdk_1.deployVkRegistryContract)({ signer });
31
+ // we deploy the verifying keys registry contract
32
+ const verifyingKeysRegistryAddress = await (0, sdk_1.deployVerifyingKeysRegistryContract)({ signer });
32
33
  // we set the verifying keys
33
- await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer)), vkRegistryAddress });
34
+ await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer)), verifyingKeysRegistryAddress });
34
35
  // deploy the smart contracts
35
36
  maciAddresses = await (0, sdk_1.deployMaci)({
36
37
  ...constants_1.deployArgs,
@@ -40,7 +41,19 @@ describe("joinPoll", function test() {
40
41
  // signup the user
41
42
  await (0, sdk_1.signup)({
42
43
  maciAddress: maciAddresses.maciContractAddress,
43
- maciPubKey: userPublicKey,
44
+ maciPublicKey: users[0].publicKey.serialize(),
45
+ sgData: constants_1.DEFAULT_SG_DATA,
46
+ signer,
47
+ });
48
+ await (0, sdk_1.signup)({
49
+ maciAddress: maciAddresses.maciContractAddress,
50
+ maciPublicKey: users[1].publicKey.serialize(),
51
+ sgData: constants_1.DEFAULT_SG_DATA,
52
+ signer,
53
+ });
54
+ await (0, sdk_1.signup)({
55
+ maciAddress: maciAddresses.maciContractAddress,
56
+ maciPublicKey: users[2].publicKey.serialize(),
44
57
  sgData: constants_1.DEFAULT_SG_DATA,
45
58
  signer,
46
59
  });
@@ -53,7 +66,7 @@ describe("joinPoll", function test() {
53
66
  relayers: [await signer.getAddress()],
54
67
  maciAddress: maciAddresses.maciContractAddress,
55
68
  verifierContractAddress,
56
- vkRegistryContractAddress: vkRegistryAddress,
69
+ verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
57
70
  policyContractAddress: pollPolicyContractAddress,
58
71
  initialVoiceCreditProxyContractAddress,
59
72
  });
@@ -62,14 +75,13 @@ describe("joinPoll", function test() {
62
75
  const startBlock = await signer.provider?.getBlockNumber();
63
76
  await (0, sdk_1.joinPoll)({
64
77
  maciAddress: maciAddresses.maciContractAddress,
65
- privateKey: userPrivateKey,
66
- stateIndex: 1n,
78
+ privateKey: users[0].privateKey.serialize(),
67
79
  signer,
68
80
  pollId: 0n,
69
- pollJoiningZkey: constants_1.pollJoiningTestZkeyPath,
70
- useWasm: true,
81
+ pollJoiningZkey: constants_1.testPollJoiningZkeyPath,
82
+ useWasm,
71
83
  pollWasm: constants_1.testPollJoiningWasmPath,
72
- pollWitgen: constants_1.testPollJoiningWitnessPath,
84
+ pollWitnessGenerator: constants_1.testPollJoiningWitnessPath,
73
85
  rapidsnark: constants_1.testRapidsnarkPath,
74
86
  sgDataArg: constants_1.DEFAULT_SG_DATA,
75
87
  ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
@@ -77,34 +89,61 @@ describe("joinPoll", function test() {
77
89
  const registeredUserData = await (0, sdk_1.getJoinedUserData)({
78
90
  maciAddress: maciAddresses.maciContractAddress,
79
91
  pollId: 0n,
80
- pollPubKey: user.pubKey.serialize(),
92
+ pollPublicKey: users[0].publicKey.serialize(),
81
93
  signer,
82
94
  startBlock: startBlock || 0,
83
95
  });
84
96
  (0, chai_1.expect)(registeredUserData.isJoined).to.eq(true);
85
97
  (0, chai_1.expect)(BigInt(registeredUserData.pollStateIndex)).to.eq(1);
86
98
  });
99
+ it("should allow to join the poll using a precomputed inclusion proof", async () => {
100
+ const startBlock = await signer.provider?.getBlockNumber();
101
+ const stateTree = await (0, sdk_1.generateMaciStateTreeWithEndKey)({
102
+ maciContractAddress: maciAddresses.maciContractAddress,
103
+ signer,
104
+ userPublicKey: users[1].publicKey,
105
+ });
106
+ const inclusionProof = stateTree.signUpTree.generateProof(2);
107
+ await (0, browser_1.joinPoll)({
108
+ maciAddress: maciAddresses.maciContractAddress,
109
+ privateKey: users[1].privateKey.serialize(),
110
+ signer,
111
+ pollId: 0n,
112
+ inclusionProof,
113
+ pollJoiningZkey: constants_1.testPollJoiningZkeyPath,
114
+ pollWasm: constants_1.testPollJoiningWasmPath,
115
+ sgDataArg: constants_1.DEFAULT_SG_DATA,
116
+ ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
117
+ });
118
+ const registeredUserData = await (0, sdk_1.getJoinedUserData)({
119
+ maciAddress: maciAddresses.maciContractAddress,
120
+ pollId: 0n,
121
+ pollPublicKey: users[1].publicKey.serialize(),
122
+ signer,
123
+ startBlock: startBlock || 0,
124
+ });
125
+ (0, chai_1.expect)(registeredUserData.isJoined).to.eq(true);
126
+ (0, chai_1.expect)(BigInt(registeredUserData.pollStateIndex)).to.eq(2);
127
+ });
87
128
  it("should throw error if poll does not exist", async () => {
88
129
  await (0, chai_1.expect)((0, sdk_1.joinPoll)({
89
130
  maciAddress: maciAddresses.maciContractAddress,
90
- privateKey: userPrivateKey,
91
- stateIndex: mockStateIndex,
131
+ privateKey: users[0].privateKey.serialize(),
92
132
  signer,
93
133
  pollId: mockPollId,
94
- pollJoiningZkey: constants_1.pollJoiningTestZkeyPath,
134
+ pollJoiningZkey: constants_1.testPollJoiningZkeyPath,
95
135
  sgDataArg: constants_1.DEFAULT_SG_DATA,
96
136
  ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
97
137
  })).eventually.rejectedWith("PollDoesNotExist(9000)");
98
138
  });
99
- it("should throw error if state index is invalid", async () => {
139
+ it("should throw error if user did not sign up to maci and therefore state index is invalid", async () => {
100
140
  const keypair = new domainobjs_1.Keypair();
101
141
  await (0, chai_1.expect)((0, sdk_1.joinPoll)({
102
142
  maciAddress: maciAddresses.maciContractAddress,
103
- privateKey: keypair.privKey.serialize(),
104
- stateIndex: -1n,
143
+ privateKey: keypair.privateKey.serialize(),
105
144
  signer,
106
145
  pollId: 0n,
107
- pollJoiningZkey: constants_1.pollJoiningTestZkeyPath,
146
+ pollJoiningZkey: constants_1.testPollJoiningZkeyPath,
108
147
  sgDataArg: constants_1.DEFAULT_SG_DATA,
109
148
  ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
110
149
  })).eventually.rejectedWith("Invalid state index");
@@ -112,11 +151,10 @@ describe("joinPoll", function test() {
112
151
  it("should throw error if current poll id is invalid", async () => {
113
152
  await (0, chai_1.expect)((0, sdk_1.joinPoll)({
114
153
  maciAddress: maciAddresses.maciContractAddress,
115
- privateKey: userPrivateKey,
116
- stateIndex: mockStateIndex,
154
+ privateKey: users[0].privateKey.serialize(),
117
155
  signer,
118
156
  pollId: -1n,
119
- pollJoiningZkey: constants_1.pollJoiningTestZkeyPath,
157
+ pollJoiningZkey: constants_1.testPollJoiningZkeyPath,
120
158
  sgDataArg: constants_1.DEFAULT_SG_DATA,
121
159
  ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
122
160
  })).eventually.rejectedWith("Invalid poll id");
@@ -1 +1 @@
1
- {"version":3,"file":"joinPoll.test.js","sourceRoot":"","sources":["../../../../ts/__tests__/unit/joinPoll.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"joinPoll.test.js","sourceRoot":"","sources":["../../../../ts/__tests__/unit/joinPoll.test.ts"],"names":[],"mappings":";;AAAA,0DAAoD;AACpD,4CAgB4B;AAC5B,wDAAyE;AACzE,+BAA8B;AAG9B,+CAYyB;AACzB,uCAAoC;AAEpC,MAAM,OAAO,GAAG,IAAA,aAAK,GAAE,CAAC;AAExB,QAAQ,CAAC,UAAU,EAAE,SAAS,IAAI;IAChC,IAAI,MAAc,CAAC;IACnB,IAAI,aAA6B,CAAC;IAClC,IAAI,sCAA8C,CAAC;IACnD,IAAI,uBAA+B,CAAC;IAEpC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,oBAAO,EAAE,CAAC,CAAC;IAEpE,MAAM,UAAU,GAAG,KAAK,CAAC;IAEzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrB,6FAA6F;IAC7F,MAAM,CAAC,KAAK,IAAI,EAAE;QAChB,MAAM,GAAG,MAAM,IAAA,sBAAgB,GAAE,CAAC;QAElC,MAAM,CAAC,YAAY,EAAE,AAAD,EAAG,mBAAmB,EAAE,oBAAoB,CAAC,GAAG,MAAM,IAAA,kCAA4B,EACpG,EAAE,EACF,MAAM,EACN,IAAI,CACL,CAAC;QACF,MAAM,2BAA2B,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,CAAC;QAEpE,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,IAAA,kCAA4B,EACrD,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,oBAAoB,EAAE,EAC9D,MAAM,EACN,IAAI,CACL,CAAC;QACF,MAAM,yBAAyB,GAAG,MAAM,UAAU,CAAC,UAAU,EAAE,CAAC;QAEhE,MAAM,sCAAsC,GAAG,MAAM,IAAA,kDAA4C,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAChH,MAAM,uBAAuB,GAAG,MAAM,IAAA,2CAAqC,EACzE,EAAE,MAAM,EAAE,yCAA6B,EAAE,EACzC,sCAAsC,EACtC,MAAM,CACP,CAAC;QACF,sCAAsC,GAAG,MAAM,uBAAuB,CAAC,UAAU,EAAE,CAAC;QAEpF,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAc,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpD,uBAAuB,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAEtD,MAAM,SAAS,GAAG,MAAM,IAAA,uBAAiB,EAAC,MAAM,CAAC,CAAC;QAElD,iDAAiD;QACjD,MAAM,4BAA4B,GAAG,MAAM,IAAA,yCAAmC,EAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3F,4BAA4B;QAC5B,MAAM,IAAA,sBAAgB,EAAC,EAAE,GAAG,CAAC,MAAM,IAAA,6BAAiB,EAAC,MAAM,CAAC,CAAC,EAAE,4BAA4B,EAAE,CAAC,CAAC;QAC/F,6BAA6B;QAC7B,aAAa,GAAG,MAAM,IAAA,gBAAU,EAAC;YAC/B,GAAG,sBAAU;YACb,MAAM;YACN,mBAAmB,EAAE,2BAA2B;SACjD,CAAC,CAAC;QAEH,kBAAkB;QAClB,MAAM,IAAA,YAAM,EAAC;YACX,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;YAC7C,MAAM,EAAE,2BAAe;YACvB,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,IAAA,YAAM,EAAC;YACX,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;YAC7C,MAAM,EAAE,2BAAe;YACvB,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,IAAA,YAAM,EAAC;YACX,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;YAC7C,MAAM,EAAE,2BAAe;YACvB,MAAM;SACP,CAAC,CAAC;QAEH,yBAAyB;QACzB,MAAM,IAAA,gBAAU,EAAC;YACf,GAAG,0BAAc;YACjB,MAAM;YACN,kBAAkB,EAAE,SAAS;YAC7B,gBAAgB,EAAE,SAAS,GAAG,wBAAY;YAC1C,QAAQ,EAAE,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;YACrC,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,uBAAuB;YACvB,oCAAoC,EAAE,4BAA4B;YAClE,qBAAqB,EAAE,yBAAyB;YAChD,sCAAsC;SACvC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACtE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,CAAC;QAE3D,MAAM,IAAA,cAAQ,EAAC;YACb,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE;YAC3C,MAAM;YACN,MAAM,EAAE,EAAE;YACV,eAAe,EAAE,mCAAuB;YACxC,OAAO;YACP,QAAQ,EAAE,mCAAuB;YACjC,oBAAoB,EAAE,sCAA0B;YAChD,UAAU,EAAE,8BAAkB;YAC9B,SAAS,EAAE,2BAAe;YAC1B,WAAW,EAAE,6BAAiB;SAC/B,CAAC,CAAC;QAEH,MAAM,kBAAkB,GAAG,MAAM,IAAA,uBAAiB,EAAC;YACjD,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;YAC7C,MAAM;YACN,UAAU,EAAE,UAAU,IAAI,CAAC;SAC5B,CAAC,CAAC;QAEH,IAAA,aAAM,EAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAChD,IAAA,aAAM,EAAC,MAAM,CAAC,kBAAkB,CAAC,cAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACjF,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,CAAC;QAE3D,MAAM,SAAS,GAAG,MAAM,IAAA,qCAA+B,EAAC;YACtD,mBAAmB,EAAE,aAAa,CAAC,mBAAmB;YACtD,MAAM;YACN,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;SAClC,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAE7D,MAAM,IAAA,kBAAe,EAAC;YACpB,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE;YAC3C,MAAM;YACN,MAAM,EAAE,EAAE;YACV,cAAc;YACd,eAAe,EAAE,mCAAuB;YACxC,QAAQ,EAAE,mCAAuB;YACjC,SAAS,EAAE,2BAAe;YAC1B,WAAW,EAAE,6BAAiB;SAC/B,CAAC,CAAC;QAEH,MAAM,kBAAkB,GAAG,MAAM,IAAA,uBAAiB,EAAC;YACjD,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;YAC7C,MAAM;YACN,UAAU,EAAE,UAAU,IAAI,CAAC;SAC5B,CAAC,CAAC;QAEH,IAAA,aAAM,EAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAChD,IAAA,aAAM,EAAC,MAAM,CAAC,kBAAkB,CAAC,cAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,IAAA,aAAM,EACV,IAAA,cAAQ,EAAC;YACP,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE;YAC3C,MAAM;YACN,MAAM,EAAE,UAAU;YAClB,eAAe,EAAE,mCAAuB;YACxC,SAAS,EAAE,2BAAe;YAC1B,WAAW,EAAE,6BAAiB;SAC/B,CAAC,CACH,CAAC,UAAU,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACvG,MAAM,OAAO,GAAG,IAAI,oBAAO,EAAE,CAAC;QAE9B,MAAM,IAAA,aAAM,EACV,IAAA,cAAQ,EAAC;YACP,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS,EAAE;YAC1C,MAAM;YACN,MAAM,EAAE,EAAE;YACV,eAAe,EAAE,mCAAuB;YACxC,SAAS,EAAE,2BAAe;YAC1B,WAAW,EAAE,6BAAiB;SAC/B,CAAC,CACH,CAAC,UAAU,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,IAAA,aAAM,EACV,IAAA,cAAQ,EAAC;YACP,WAAW,EAAE,aAAa,CAAC,mBAAmB;YAC9C,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE;YAC3C,MAAM;YACN,MAAM,EAAE,CAAC,EAAE;YACX,eAAe,EAAE,mCAAuB;YACxC,SAAS,EAAE,2BAAe;YAC1B,WAAW,EAAE,6BAAiB;SAC/B,CAAC,CACH,CAAC,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -10,21 +10,22 @@ describe("poll", function test() {
10
10
  let verifierContractAddress;
11
11
  let pollAddresses;
12
12
  let signer;
13
- // before all tests we deploy the vk registry contract and set the verifying keys
13
+ // before all tests we deploy the verifying keys registry contract and set the verifying keys
14
14
  before(async () => {
15
15
  signer = await (0, sdk_1.getDefaultSigner)();
16
16
  const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
17
17
  const signupPolicyContractAddress = await signupPolicy.getAddress();
18
18
  const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({ policy: signupPolicyFactory, checker: signupCheckerFactory }, signer, true);
19
19
  const pollPolicyContractAddress = await pollPolicy.getAddress();
20
- const [initialVoiceCreditProxy] = await (0, sdk_1.deployConstantInitialVoiceCreditProxy)({ amount: constants_1.DEFAULT_INITIAL_VOICE_CREDITS }, signer, undefined, true);
20
+ const constantInitialVoiceCreditProxyFactory = await (0, sdk_1.deployConstantInitialVoiceCreditProxyFactory)(signer, true);
21
+ const initialVoiceCreditProxy = await (0, sdk_1.deployConstantInitialVoiceCreditProxy)({ amount: constants_1.DEFAULT_INITIAL_VOICE_CREDITS }, constantInitialVoiceCreditProxyFactory, signer);
21
22
  initialVoiceCreditProxyContractAddress = await initialVoiceCreditProxy.getAddress();
22
23
  const verifier = await (0, sdk_1.deployVerifier)(signer, true);
23
24
  verifierContractAddress = await verifier.getAddress();
24
- // we deploy the vk registry contract
25
- const vkRegistryAddress = await (0, sdk_1.deployVkRegistryContract)({ signer });
25
+ // we deploy the verifying keys registry contract
26
+ const verifyingKeysRegistryAddress = await (0, sdk_1.deployVerifyingKeysRegistryContract)({ signer });
26
27
  // we set the verifying keys
27
- await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer)), vkRegistryAddress });
28
+ await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer)), verifyingKeysRegistryAddress });
28
29
  const startDate = await (0, sdk_1.getBlockTimestamp)(signer);
29
30
  // deploy the smart contracts
30
31
  maciAddresses = await (0, sdk_1.deployMaci)({
@@ -41,7 +42,7 @@ describe("poll", function test() {
41
42
  relayers: [await signer.getAddress()],
42
43
  maciAddress: maciAddresses.maciContractAddress,
43
44
  verifierContractAddress,
44
- vkRegistryContractAddress: vkRegistryAddress,
45
+ verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
45
46
  policyContractAddress: pollPolicyContractAddress,
46
47
  initialVoiceCreditProxyContractAddress,
47
48
  });
@@ -1 +1 @@
1
- {"version":3,"file":"poll.test.js","sourceRoot":"","sources":["../../../../ts/__tests__/unit/poll.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poll.test.js","sourceRoot":"","sources":["../../../../ts/__tests__/unit/poll.test.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,7 @@ describe("publish", function test() {
27
27
  newVoteWeight: 1n,
28
28
  },
29
29
  ];
30
- // before all tests we deploy the vk registry contract and set the verifying keys
30
+ // before all tests we deploy the verifying keys registry contract and set the verifying keys
31
31
  before(async () => {
32
32
  signer = await (0, sdk_1.getDefaultSigner)();
33
33
  const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
@@ -37,14 +37,15 @@ describe("publish", function test() {
37
37
  checker: signupCheckerFactory,
38
38
  }, signer, true);
39
39
  const pollPolicyContractAddress = await pollPolicy.getAddress();
40
- const [initialVoiceCreditProxy] = await (0, sdk_1.deployConstantInitialVoiceCreditProxy)({ amount: constants_1.DEFAULT_INITIAL_VOICE_CREDITS }, signer, undefined, true);
40
+ const constantInitialVoiceCreditProxyFactory = await (0, sdk_1.deployConstantInitialVoiceCreditProxyFactory)(signer, true);
41
+ const initialVoiceCreditProxy = await (0, sdk_1.deployConstantInitialVoiceCreditProxy)({ amount: constants_1.DEFAULT_INITIAL_VOICE_CREDITS }, constantInitialVoiceCreditProxyFactory, signer);
41
42
  initialVoiceCreditProxyContractAddress = await initialVoiceCreditProxy.getAddress();
42
43
  const verifier = await (0, sdk_1.deployVerifier)(signer, true);
43
44
  verifierContractAddress = await verifier.getAddress();
44
- // we deploy the vk registry contract
45
- const vkRegistryAddress = await (0, sdk_1.deployVkRegistryContract)({ signer });
45
+ // we deploy the verifying keys registry contract
46
+ const verifyingKeysRegistryAddress = await (0, sdk_1.deployVerifyingKeysRegistryContract)({ signer });
46
47
  // we set the verifying keys
47
- await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer)), vkRegistryAddress });
48
+ await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer)), verifyingKeysRegistryAddress });
48
49
  const startDate = await (0, sdk_1.getBlockTimestamp)(signer);
49
50
  // deploy the smart contracts
50
51
  maciAddresses = await (0, sdk_1.deployMaci)({
@@ -61,7 +62,7 @@ describe("publish", function test() {
61
62
  relayers: [await signer.getAddress()],
62
63
  maciAddress: maciAddresses.maciContractAddress,
63
64
  verifierContractAddress,
64
- vkRegistryContractAddress: vkRegistryAddress,
65
+ verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
65
66
  policyContractAddress: pollPolicyContractAddress,
66
67
  initialVoiceCreditProxyContractAddress,
67
68
  });
@@ -72,15 +73,15 @@ describe("publish", function test() {
72
73
  before(async () => {
73
74
  defaultArgs = {
74
75
  maciAddress: maciAddresses.maciContractAddress,
75
- publicKey: user.pubKey.serialize(),
76
- privateKey: user.privKey.serialize(),
76
+ publicKey: user.publicKey.serialize(),
77
+ privateKey: user.privateKey.serialize(),
77
78
  messages,
78
79
  pollId: 0n,
79
80
  signer,
80
81
  };
81
82
  await (0, sdk_1.signup)({
82
83
  maciAddress: maciAddresses.maciContractAddress,
83
- maciPubKey: user.pubKey.serialize(),
84
+ maciPublicKey: user.publicKey.serialize(),
84
85
  sgData: constants_1.DEFAULT_SG_DATA,
85
86
  signer,
86
87
  });
@@ -1 +1 @@
1
- {"version":3,"file":"publish.test.js","sourceRoot":"","sources":["../../../../ts/__tests__/unit/publish.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publish.test.js","sourceRoot":"","sources":["../../../../ts/__tests__/unit/publish.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=setVerifyingKeys.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setVerifyingKeys.test.d.ts","sourceRoot":"","sources":["../../../../ts/__tests__/unit/setVerifyingKeys.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const sdk_1 = require("@maci-protocol/sdk");
4
+ const chai_1 = require("chai");
5
+ const constants_1 = require("../../constants");
6
+ describe("setVerifyingKeys", function test() {
7
+ this.timeout(900000);
8
+ let signer;
9
+ let verifyingKeysRegistryAddress;
10
+ before(async () => {
11
+ signer = await (0, sdk_1.getDefaultSigner)();
12
+ });
13
+ beforeEach(async () => {
14
+ verifyingKeysRegistryAddress = await (0, sdk_1.deployVerifyingKeysRegistryContract)({ signer });
15
+ });
16
+ it("should set the verifying keys of mode QV on the contract", async () => {
17
+ await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer)), verifyingKeysRegistryAddress });
18
+ });
19
+ it("should set the verifying keys of mode QV and NON_QV on the contract", async () => {
20
+ await (0, sdk_1.setVerifyingKeys)({
21
+ ...(await (0, constants_1.verifyingKeysArgs)(signer, [sdk_1.EMode.QV, sdk_1.EMode.NON_QV])),
22
+ verifyingKeysRegistryAddress,
23
+ });
24
+ });
25
+ it("should set the verifying keys of mode QV, NON_QV and FULL on the contract", async () => {
26
+ await (0, sdk_1.setVerifyingKeys)({
27
+ ...(await (0, constants_1.verifyingKeysArgs)(signer, [sdk_1.EMode.QV, sdk_1.EMode.NON_QV, sdk_1.EMode.FULL])),
28
+ verifyingKeysRegistryAddress,
29
+ });
30
+ });
31
+ it("should throw when setting verifying keys twice", async () => {
32
+ await (0, sdk_1.setVerifyingKeys)({
33
+ ...(await (0, constants_1.verifyingKeysArgs)(signer)),
34
+ verifyingKeysRegistryAddress,
35
+ });
36
+ (0, chai_1.expect)((0, sdk_1.setVerifyingKeys)({
37
+ ...(await (0, constants_1.verifyingKeysArgs)(signer, [sdk_1.EMode.NON_QV])),
38
+ verifyingKeysRegistryAddress,
39
+ })).rejectedWith("This poll joining verifying key is already set in the contract");
40
+ });
41
+ it("should throw when setting different number of modes and different number of process verifying keys", async () => {
42
+ const args = await (0, constants_1.verifyingKeysArgs)(signer, [sdk_1.EMode.QV, sdk_1.EMode.NON_QV]);
43
+ args.processMessagesVerifyingKeys.splice(1, 1);
44
+ await (0, chai_1.expect)((0, sdk_1.setVerifyingKeys)({ ...args, verifyingKeysRegistryAddress })).eventually.rejectedWith("Number of process messages verifying keys must match number of modes");
45
+ });
46
+ it("should throw when setting different number of modes and different number of tally verifying keys", async () => {
47
+ const args = await (0, constants_1.verifyingKeysArgs)(signer, [sdk_1.EMode.QV, sdk_1.EMode.NON_QV]);
48
+ args.tallyVotesVerifyingKeys.splice(1, 1);
49
+ await (0, chai_1.expect)((0, sdk_1.setVerifyingKeys)({ ...args, verifyingKeysRegistryAddress })).eventually.rejectedWith("Number of tally votes verifying keys must match number of modes");
50
+ });
51
+ });
52
+ //# sourceMappingURL=setVerifyingKeys.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setVerifyingKeys.test.js","sourceRoot":"","sources":["../../../../ts/__tests__/unit/setVerifyingKeys.test.ts"],"names":[],"mappings":"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"}