@maci-protocol/testing 0.0.0-ci.f4bc8a6 → 0.0.0-ci.f4e2c46

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 (51) 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 +844 -0
  5. package/build/ts/__tests__/e2e.full.test.js.map +1 -0
  6. package/build/ts/__tests__/e2e.nonQv.test.js +424 -38
  7. package/build/ts/__tests__/e2e.nonQv.test.js.map +1 -1
  8. package/build/ts/__tests__/e2e.test.js +269 -280
  9. package/build/ts/__tests__/e2e.test.js.map +1 -1
  10. package/build/ts/__tests__/integration.test.js +59 -55
  11. package/build/ts/__tests__/integration.test.js.map +1 -1
  12. package/build/ts/__tests__/keyChange.test.js +84 -78
  13. package/build/ts/__tests__/keyChange.test.js.map +1 -1
  14. package/build/ts/__tests__/maciKeys.test.d.ts +2 -0
  15. package/build/ts/__tests__/maciKeys.test.d.ts.map +1 -0
  16. package/build/ts/__tests__/maciKeys.test.js +78 -0
  17. package/build/ts/__tests__/maciKeys.test.js.map +1 -0
  18. package/build/ts/__tests__/unit/joinPoll.test.js +94 -27
  19. package/build/ts/__tests__/unit/joinPoll.test.js.map +1 -1
  20. package/build/ts/__tests__/unit/poll.test.js +7 -7
  21. package/build/ts/__tests__/unit/poll.test.js.map +1 -1
  22. package/build/ts/__tests__/unit/publish.test.js +13 -10
  23. package/build/ts/__tests__/unit/publish.test.js.map +1 -1
  24. package/build/ts/__tests__/unit/signup.test.js +9 -9
  25. package/build/ts/__tests__/unit/signup.test.js.map +1 -1
  26. package/build/ts/__tests__/unit/utils.test.js +12 -12
  27. package/build/ts/__tests__/unit/utils.test.js.map +1 -1
  28. package/build/ts/constants.d.ts +52 -53
  29. package/build/ts/constants.d.ts.map +1 -1
  30. package/build/ts/constants.js +98 -74
  31. package/build/ts/constants.js.map +1 -1
  32. package/build/ts/testingClass.d.ts +7 -7
  33. package/build/ts/testingClass.d.ts.map +1 -1
  34. package/build/ts/testingClass.js +31 -27
  35. package/build/ts/testingClass.js.map +1 -1
  36. package/build/ts/types.d.ts +11 -11
  37. package/build/ts/types.d.ts.map +1 -1
  38. package/build/ts/user.d.ts +5 -9
  39. package/build/ts/user.d.ts.map +1 -1
  40. package/build/ts/user.js +5 -6
  41. package/build/ts/user.js.map +1 -1
  42. package/build/ts/utils.d.ts +3 -3
  43. package/build/ts/utils.d.ts.map +1 -1
  44. package/build/ts/utils.js +12 -12
  45. package/build/ts/utils.js.map +1 -1
  46. package/build/tsconfig.tsbuildinfo +1 -1
  47. package/package.json +14 -13
  48. package/build/ts/__tests__/maci-keys.test.d.ts +0 -2
  49. package/build/ts/__tests__/maci-keys.test.d.ts.map +0 -1
  50. package/build/ts/__tests__/maci-keys.test.js +0 -78
  51. package/build/ts/__tests__/maci-keys.test.js.map +0 -1
@@ -18,43 +18,43 @@ describe("keyChange tests", function test() {
18
18
  let initialVoiceCreditProxyContractAddress;
19
19
  let verifierContractAddress;
20
20
  let signer;
21
- let vkRegistryAddress;
21
+ let verifyingKeysRegistryAddress;
22
22
  const generateProofsArgs = {
23
23
  outputDir: constants_1.testProofsDirPath,
24
24
  tallyFile: constants_1.testTallyFilePath,
25
- tallyZkey: constants_1.tallyVotesTestZkeyPath,
26
- processZkey: constants_1.processMessageTestZkeyPath,
25
+ voteTallyZkey: constants_1.testTallyVotesZkeyPath,
26
+ messageProcessorZkey: constants_1.testProcessMessageZkeyPath,
27
27
  pollId: 0n,
28
28
  rapidsnark: constants_1.testRapidsnarkPath,
29
- processWitgen: constants_1.testProcessMessagesWitnessPath,
30
- processDatFile: constants_1.testProcessMessagesWitnessDatPath,
31
- tallyWitgen: constants_1.testTallyVotesWitnessPath,
32
- tallyDatFile: constants_1.testTallyVotesWitnessDatPath,
33
- coordinatorPrivateKey: constants_1.coordinatorPrivKey,
34
- processWasm: constants_1.testProcessMessagesWasmPath,
35
- tallyWasm: constants_1.testTallyVotesWasmPath,
29
+ messageProcessorWitnessGenerator: constants_1.testProcessMessagesWitnessPath,
30
+ messageProcessorWitnessDatFile: constants_1.testProcessMessagesWitnessDatPath,
31
+ voteTallyWitnessGenerator: constants_1.testTallyVotesWitnessPath,
32
+ voteTallyWitnessDatFile: constants_1.testTallyVotesWitnessDatPath,
33
+ coordinatorPrivateKey: constants_1.coordinatorPrivateKey,
34
+ messageProcessorWasm: constants_1.testProcessMessagesWasmPath,
35
+ voteTallyWasm: constants_1.testTallyVotesWasmPath,
36
36
  useWasm,
37
- useQuadraticVoting: true,
37
+ mode: core_1.EMode.QV,
38
38
  };
39
- // before all tests we deploy the vk registry contract and set the verifying keys
39
+ // before all tests we deploy the verifying keys registry contract and set the verifying keys
40
40
  before(async () => {
41
41
  signer = await (0, sdk_1.getDefaultSigner)();
42
- // we deploy the vk registry contract
43
- vkRegistryAddress = await (0, sdk_1.deployVkRegistryContract)({ signer });
42
+ // we deploy the verifying keys registry contract
43
+ verifyingKeysRegistryAddress = await (0, sdk_1.deployVerifyingKeysRegistryContract)({ signer });
44
44
  const [initialVoiceCreditProxy] = await (0, sdk_1.deployConstantInitialVoiceCreditProxy)({ amount: constants_1.DEFAULT_INITIAL_VOICE_CREDITS }, signer, undefined, true);
45
45
  initialVoiceCreditProxyContractAddress = await initialVoiceCreditProxy.getAddress();
46
46
  const verifier = await (0, sdk_1.deployVerifier)(signer, true);
47
47
  verifierContractAddress = await verifier.getAddress();
48
48
  // we set the verifying keys
49
- await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer)), vkRegistryAddress });
49
+ await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer)), verifyingKeysRegistryAddress });
50
50
  });
51
51
  describe("keyChange and new vote (new vote has same nonce)", () => {
52
52
  after(async () => {
53
53
  await (0, utils_1.clean)();
54
54
  });
55
55
  const user1Keypair = new domainobjs_1.Keypair();
56
- const { privKey: pollPrivKey1, pubKey: pollPubKey1 } = user1Keypair;
57
- const { pubKey: pollPubKey2 } = new domainobjs_1.Keypair();
56
+ const { privateKey: pollPrivateKey, publicKey: pollPublicKey1 } = user1Keypair;
57
+ const { publicKey: pollPublicKey2 } = new domainobjs_1.Keypair();
58
58
  const initialNonce = 1n;
59
59
  const initialVoteOption = 0n;
60
60
  const initialVoteAmount = 9n;
@@ -63,9 +63,12 @@ describe("keyChange tests", function test() {
63
63
  const expectedTally = initialVoteAmount - 1n;
64
64
  const expectedPerVoteOptionTally = (initialVoteAmount - 1n) ** 2n;
65
65
  before(async () => {
66
- const [signupPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)(signer, true);
66
+ const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
67
67
  const signupPolicyContractAddress = await signupPolicy.getAddress();
68
- const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)(signer, true);
68
+ const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({
69
+ policy: signupPolicyFactory,
70
+ checker: signupCheckerFactory,
71
+ }, signer, true);
69
72
  const pollPolicyContractAddress = await pollPolicy.getAddress();
70
73
  // deploy the smart contracts
71
74
  maciAddresses = await (0, sdk_1.deployMaci)({
@@ -83,40 +86,39 @@ describe("keyChange tests", function test() {
83
86
  relayers: [await signer.getAddress()],
84
87
  maciAddress: maciAddresses.maciContractAddress,
85
88
  verifierContractAddress,
86
- vkRegistryContractAddress: vkRegistryAddress,
89
+ verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
87
90
  policyContractAddress: pollPolicyContractAddress,
88
91
  initialVoiceCreditProxyContractAddress,
89
92
  });
90
93
  stateIndex = BigInt(await (0, sdk_1.signup)({
91
94
  maciAddress: maciAddresses.maciContractAddress,
92
- maciPubKey: user1Keypair.pubKey.serialize(),
95
+ maciPublicKey: user1Keypair.publicKey.serialize(),
93
96
  sgData: constants_1.DEFAULT_SG_DATA,
94
97
  signer,
95
98
  }).then((result) => result.stateIndex));
96
99
  await (0, sdk_1.joinPoll)({
97
100
  maciAddress: maciAddresses.maciContractAddress,
98
- privateKey: user1Keypair.privKey.serialize(),
99
- stateIndex,
101
+ privateKey: user1Keypair.privateKey.serialize(),
100
102
  pollId,
101
- pollJoiningZkey: constants_1.pollJoiningTestZkeyPath,
103
+ pollJoiningZkey: constants_1.testPollJoiningZkeyPath,
102
104
  useWasm: true,
103
105
  pollWasm: constants_1.testPollJoiningWasmPath,
104
- pollWitgen: constants_1.testPollJoiningWitnessPath,
106
+ pollWitnessGenerator: constants_1.testPollJoiningWitnessPath,
105
107
  rapidsnark: constants_1.testRapidsnarkPath,
106
108
  sgDataArg: constants_1.DEFAULT_SG_DATA,
107
109
  ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
108
110
  signer,
109
111
  });
110
112
  await (0, sdk_1.publish)({
111
- pubkey: pollPubKey1.serialize(),
113
+ publicKey: pollPublicKey1.serialize(),
112
114
  stateIndex,
113
115
  voteOptionIndex: initialVoteOption,
114
116
  nonce: initialNonce,
115
117
  pollId,
116
118
  newVoteWeight: initialVoteAmount,
117
119
  maciAddress: maciAddresses.maciContractAddress,
118
- salt: (0, crypto_1.genRandomSalt)(),
119
- privateKey: pollPrivKey1.serialize(),
120
+ salt: (0, crypto_1.generateRandomSalt)(),
121
+ privateKey: pollPrivateKey.serialize(),
120
122
  signer,
121
123
  });
122
124
  });
@@ -125,14 +127,14 @@ describe("keyChange tests", function test() {
125
127
  {
126
128
  pollId,
127
129
  voteOptionIndex: initialVoteOption,
128
- salt: (0, crypto_1.genRandomSalt)(),
130
+ salt: (0, crypto_1.generateRandomSalt)(),
129
131
  nonce: initialNonce,
130
- privateKey: pollPrivKey1,
132
+ privateKey: pollPrivateKey,
131
133
  stateIndex,
132
134
  voteWeight: initialVoteAmount - 2n,
133
- coordinatorPubKey: constants_1.coordinatorKeypair.pubKey,
135
+ coordinatorPublicKey: constants_1.coordinatorKeypair.publicKey,
134
136
  maxVoteOption: BigInt(core_1.VOTE_OPTION_TREE_ARITY ** constants_1.deployPollArgs.voteOptionTreeDepth),
135
- newPubKey: pollPubKey2,
137
+ newPublicKey: pollPublicKey2,
136
138
  },
137
139
  ];
138
140
  const messages = votes
@@ -141,8 +143,8 @@ describe("keyChange tests", function test() {
141
143
  maciAddress: maciAddresses.maciContractAddress,
142
144
  poll: Number(pollId),
143
145
  data: message.data.map(String),
144
- publicKey: ephemeralKeypair.pubKey.asArray().map(String),
145
- hash: message.hash(ephemeralKeypair.pubKey).toString(),
146
+ publicKey: ephemeralKeypair.publicKey.asArray().map(String),
147
+ hash: message.hash(ephemeralKeypair.publicKey).toString(),
146
148
  }));
147
149
  await (0, utils_1.relayTestMessages)({
148
150
  messages,
@@ -153,15 +155,15 @@ describe("keyChange tests", function test() {
153
155
  });
154
156
  it("should publish a message to change the poll key and cast a new vote", async () => {
155
157
  await (0, sdk_1.publish)({
156
- pubkey: pollPubKey2.serialize(),
158
+ publicKey: pollPublicKey2.serialize(),
157
159
  stateIndex,
158
160
  voteOptionIndex: initialVoteOption,
159
161
  nonce: initialNonce,
160
162
  pollId,
161
163
  newVoteWeight: initialVoteAmount - 1n,
162
164
  maciAddress: maciAddresses.maciContractAddress,
163
- salt: (0, crypto_1.genRandomSalt)(),
164
- privateKey: pollPrivKey1.serialize(),
165
+ salt: (0, crypto_1.generateRandomSalt)(),
166
+ privateKey: pollPrivateKey.serialize(),
165
167
  signer,
166
168
  });
167
169
  });
@@ -181,7 +183,7 @@ describe("keyChange tests", function test() {
181
183
  it("should confirm the tally is correct", async () => {
182
184
  const tallyData = JSON.parse(await fs_1.default.promises.readFile(constants_1.testTallyFilePath).then((res) => res.toString()));
183
185
  (0, chai_1.expect)(tallyData.results.tally[0]).to.equal(expectedTally.toString());
184
- (0, chai_1.expect)(tallyData.perVOSpentVoiceCredits?.tally[0]).to.equal(expectedPerVoteOptionTally.toString());
186
+ (0, chai_1.expect)(tallyData.perVoteOptionSpentVoiceCredits?.tally[0]).to.equal(expectedPerVoteOptionTally.toString());
185
187
  });
186
188
  });
187
189
  describe("keyChange and new vote (new vote has greater nonce and different vote option)", () => {
@@ -189,7 +191,7 @@ describe("keyChange tests", function test() {
189
191
  await (0, utils_1.clean)();
190
192
  });
191
193
  const user1Keypair = new domainobjs_1.Keypair();
192
- const { pubKey: pollPubKey2 } = new domainobjs_1.Keypair();
194
+ const { publicKey: pollPublicKey2 } = new domainobjs_1.Keypair();
193
195
  const initialNonce = 1n;
194
196
  const initialVoteOption = 0n;
195
197
  const initialVoteAmount = 9n;
@@ -198,9 +200,12 @@ describe("keyChange tests", function test() {
198
200
  const expectedTally = initialVoteAmount;
199
201
  const expectedPerVoteOptionTally = initialVoteAmount ** 2n;
200
202
  before(async () => {
201
- const [signupPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)(signer, true);
203
+ const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
202
204
  const signupPolicyContractAddress = await signupPolicy.getAddress();
203
- const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)(signer, true);
205
+ const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({
206
+ policy: signupPolicyFactory,
207
+ checker: signupCheckerFactory,
208
+ }, signer, true);
204
209
  const pollPolicyContractAddress = await pollPolicy.getAddress();
205
210
  // deploy the smart contracts
206
211
  maciAddresses = await (0, sdk_1.deployMaci)({
@@ -218,25 +223,24 @@ describe("keyChange tests", function test() {
218
223
  relayers: [await signer.getAddress()],
219
224
  maciAddress: maciAddresses.maciContractAddress,
220
225
  verifierContractAddress,
221
- vkRegistryContractAddress: vkRegistryAddress,
226
+ verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
222
227
  policyContractAddress: pollPolicyContractAddress,
223
228
  initialVoiceCreditProxyContractAddress,
224
229
  });
225
230
  stateIndex = BigInt(await (0, sdk_1.signup)({
226
231
  maciAddress: maciAddresses.maciContractAddress,
227
- maciPubKey: user1Keypair.pubKey.serialize(),
232
+ maciPublicKey: user1Keypair.publicKey.serialize(),
228
233
  sgData: constants_1.DEFAULT_SG_DATA,
229
234
  signer,
230
235
  }).then((result) => result.stateIndex));
231
236
  await (0, sdk_1.joinPoll)({
232
237
  maciAddress: maciAddresses.maciContractAddress,
233
- privateKey: user1Keypair.privKey.serialize(),
234
- stateIndex,
238
+ privateKey: user1Keypair.privateKey.serialize(),
235
239
  pollId,
236
- pollJoiningZkey: constants_1.pollJoiningTestZkeyPath,
240
+ pollJoiningZkey: constants_1.testPollJoiningZkeyPath,
237
241
  useWasm: true,
238
242
  pollWasm: constants_1.testPollJoiningWasmPath,
239
- pollWitgen: constants_1.testPollJoiningWitnessPath,
243
+ pollWitnessGenerator: constants_1.testPollJoiningWitnessPath,
240
244
  rapidsnark: constants_1.testRapidsnarkPath,
241
245
  sgDataArg: constants_1.DEFAULT_SG_DATA,
242
246
  ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
@@ -246,14 +250,14 @@ describe("keyChange tests", function test() {
246
250
  {
247
251
  pollId,
248
252
  voteOptionIndex: initialVoteOption,
249
- salt: (0, crypto_1.genRandomSalt)(),
253
+ salt: (0, crypto_1.generateRandomSalt)(),
250
254
  nonce: initialNonce,
251
- privateKey: user1Keypair.privKey,
255
+ privateKey: user1Keypair.privateKey,
252
256
  stateIndex,
253
257
  voteWeight: initialVoteAmount,
254
- coordinatorPubKey: constants_1.coordinatorKeypair.pubKey,
258
+ coordinatorPublicKey: constants_1.coordinatorKeypair.publicKey,
255
259
  maxVoteOption: BigInt(core_1.VOTE_OPTION_TREE_ARITY ** constants_1.deployPollArgs.voteOptionTreeDepth),
256
- newPubKey: user1Keypair.pubKey,
260
+ newPublicKey: user1Keypair.publicKey,
257
261
  },
258
262
  ];
259
263
  const messages = votes
@@ -262,8 +266,8 @@ describe("keyChange tests", function test() {
262
266
  maciAddress: maciAddresses.maciContractAddress,
263
267
  poll: Number(pollId),
264
268
  data: message.data.map(String),
265
- publicKey: ephemeralKeypair.pubKey.asArray().map(String),
266
- hash: message.hash(ephemeralKeypair.pubKey).toString(),
269
+ publicKey: ephemeralKeypair.publicKey.asArray().map(String),
270
+ hash: message.hash(ephemeralKeypair.publicKey).toString(),
267
271
  }));
268
272
  await (0, utils_1.relayTestMessages)({
269
273
  messages,
@@ -274,15 +278,15 @@ describe("keyChange tests", function test() {
274
278
  });
275
279
  it("should publish a message to change the key and cast a new vote", async () => {
276
280
  await (0, sdk_1.publish)({
277
- pubkey: pollPubKey2.serialize(),
281
+ publicKey: pollPublicKey2.serialize(),
278
282
  stateIndex,
279
283
  voteOptionIndex: initialVoteOption + 1n,
280
284
  nonce: initialNonce + 1n,
281
285
  pollId,
282
286
  newVoteWeight: initialVoteAmount - 1n,
283
287
  maciAddress: maciAddresses.maciContractAddress,
284
- salt: (0, crypto_1.genRandomSalt)(),
285
- privateKey: user1Keypair.privKey.serialize(),
288
+ salt: (0, crypto_1.generateRandomSalt)(),
289
+ privateKey: user1Keypair.privateKey.serialize(),
286
290
  signer,
287
291
  });
288
292
  });
@@ -302,7 +306,7 @@ describe("keyChange tests", function test() {
302
306
  it("should confirm the tally is correct", async () => {
303
307
  const tallyData = JSON.parse(await fs_1.default.promises.readFile(constants_1.testTallyFilePath).then((res) => res.toString()));
304
308
  (0, chai_1.expect)(tallyData.results.tally[0]).to.equal(expectedTally.toString());
305
- (0, chai_1.expect)(tallyData.perVOSpentVoiceCredits?.tally[0]).to.equal(expectedPerVoteOptionTally.toString());
309
+ (0, chai_1.expect)(tallyData.perVoteOptionSpentVoiceCredits?.tally[0]).to.equal(expectedPerVoteOptionTally.toString());
306
310
  });
307
311
  });
308
312
  describe("keyChange and new vote (new vote has same nonce and different vote option)", () => {
@@ -319,9 +323,12 @@ describe("keyChange tests", function test() {
319
323
  const expectedTally = initialVoteAmount - 3n;
320
324
  const expectedPerVoteOptionTally = (initialVoteAmount - 3n) ** 2n;
321
325
  before(async () => {
322
- const [signupPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)(signer, true);
326
+ const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
323
327
  const signupPolicyContractAddress = await signupPolicy.getAddress();
324
- const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)(signer, true);
328
+ const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({
329
+ policy: signupPolicyFactory,
330
+ checker: signupCheckerFactory,
331
+ }, signer, true);
325
332
  const pollPolicyContractAddress = await pollPolicy.getAddress();
326
333
  // deploy the smart contracts
327
334
  maciAddresses = await (0, sdk_1.deployMaci)({
@@ -339,40 +346,39 @@ describe("keyChange tests", function test() {
339
346
  relayers: [await signer.getAddress()],
340
347
  maciAddress: maciAddresses.maciContractAddress,
341
348
  verifierContractAddress,
342
- vkRegistryContractAddress: vkRegistryAddress,
349
+ verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
343
350
  policyContractAddress: pollPolicyContractAddress,
344
351
  initialVoiceCreditProxyContractAddress,
345
352
  });
346
353
  stateIndex = BigInt(await (0, sdk_1.signup)({
347
354
  maciAddress: maciAddresses.maciContractAddress,
348
- maciPubKey: user1Keypair.pubKey.serialize(),
355
+ maciPublicKey: user1Keypair.publicKey.serialize(),
349
356
  sgData: constants_1.DEFAULT_SG_DATA,
350
357
  signer,
351
358
  }).then((result) => result.stateIndex));
352
359
  await (0, sdk_1.joinPoll)({
353
360
  maciAddress: maciAddresses.maciContractAddress,
354
- privateKey: user1Keypair.privKey.serialize(),
355
- stateIndex,
361
+ privateKey: user1Keypair.privateKey.serialize(),
356
362
  pollId,
357
- pollJoiningZkey: constants_1.pollJoiningTestZkeyPath,
363
+ pollJoiningZkey: constants_1.testPollJoiningZkeyPath,
358
364
  useWasm: true,
359
365
  pollWasm: constants_1.testPollJoiningWasmPath,
360
- pollWitgen: constants_1.testPollJoiningWitnessPath,
366
+ pollWitnessGenerator: constants_1.testPollJoiningWitnessPath,
361
367
  rapidsnark: constants_1.testRapidsnarkPath,
362
368
  sgDataArg: constants_1.DEFAULT_SG_DATA,
363
369
  ivcpDataArg: constants_1.DEFAULT_IVCP_DATA,
364
370
  signer,
365
371
  });
366
372
  await (0, sdk_1.publish)({
367
- pubkey: user1Keypair.pubKey.serialize(),
373
+ publicKey: user1Keypair.publicKey.serialize(),
368
374
  stateIndex,
369
375
  voteOptionIndex: initialVoteOption,
370
376
  nonce: initialNonce,
371
377
  pollId,
372
378
  newVoteWeight: initialVoteAmount,
373
379
  maciAddress: maciAddresses.maciContractAddress,
374
- salt: (0, crypto_1.genRandomSalt)(),
375
- privateKey: user1Keypair.privKey.serialize(),
380
+ salt: (0, crypto_1.generateRandomSalt)(),
381
+ privateKey: user1Keypair.privateKey.serialize(),
376
382
  signer,
377
383
  });
378
384
  });
@@ -381,14 +387,14 @@ describe("keyChange tests", function test() {
381
387
  {
382
388
  pollId,
383
389
  voteOptionIndex: initialVoteOption + 2n,
384
- salt: (0, crypto_1.genRandomSalt)(),
390
+ salt: (0, crypto_1.generateRandomSalt)(),
385
391
  nonce: initialNonce,
386
- privateKey: user1Keypair.privKey,
392
+ privateKey: user1Keypair.privateKey,
387
393
  stateIndex,
388
394
  voteWeight: initialVoteAmount - 2n,
389
- coordinatorPubKey: constants_1.coordinatorKeypair.pubKey,
395
+ coordinatorPublicKey: constants_1.coordinatorKeypair.publicKey,
390
396
  maxVoteOption: BigInt(core_1.VOTE_OPTION_TREE_ARITY ** constants_1.deployPollArgs.voteOptionTreeDepth),
391
- newPubKey: secondKeypair.pubKey,
397
+ newPublicKey: secondKeypair.publicKey,
392
398
  },
393
399
  ];
394
400
  const messages = votes
@@ -397,8 +403,8 @@ describe("keyChange tests", function test() {
397
403
  maciAddress: maciAddresses.maciContractAddress,
398
404
  poll: Number(pollId),
399
405
  data: message.data.map(String),
400
- publicKey: ephemeralKeypair.pubKey.asArray().map(String),
401
- hash: message.hash(ephemeralKeypair.pubKey).toString(),
406
+ publicKey: ephemeralKeypair.publicKey.asArray().map(String),
407
+ hash: message.hash(ephemeralKeypair.publicKey).toString(),
402
408
  }));
403
409
  await (0, utils_1.relayTestMessages)({
404
410
  messages,
@@ -409,15 +415,15 @@ describe("keyChange tests", function test() {
409
415
  });
410
416
  it("should publish a message to change the poll key, and a new vote", async () => {
411
417
  await (0, sdk_1.publish)({
412
- pubkey: secondKeypair.pubKey.serialize(),
418
+ publicKey: secondKeypair.publicKey.serialize(),
413
419
  stateIndex,
414
420
  voteOptionIndex: initialVoteOption + 2n,
415
421
  nonce: initialNonce,
416
422
  pollId,
417
423
  newVoteWeight: initialVoteAmount - 3n,
418
424
  maciAddress: maciAddresses.maciContractAddress,
419
- salt: (0, crypto_1.genRandomSalt)(),
420
- privateKey: user1Keypair.privKey.serialize(),
425
+ salt: (0, crypto_1.generateRandomSalt)(),
426
+ privateKey: user1Keypair.privateKey.serialize(),
421
427
  signer,
422
428
  });
423
429
  });
@@ -437,7 +443,7 @@ describe("keyChange tests", function test() {
437
443
  it("should confirm the tally is correct", async () => {
438
444
  const tallyData = JSON.parse(await fs_1.default.promises.readFile(constants_1.testTallyFilePath).then((res) => res.toString()));
439
445
  (0, chai_1.expect)(tallyData.results.tally[2]).to.equal(expectedTally.toString());
440
- (0, chai_1.expect)(tallyData.perVOSpentVoiceCredits?.tally[2]).to.equal(expectedPerVoteOptionTally.toString());
446
+ (0, chai_1.expect)(tallyData.perVoteOptionSpentVoiceCredits?.tally[2]).to.equal(expectedPerVoteOptionTally.toString());
441
447
  });
442
448
  });
443
449
  });
@@ -1 +1 @@
1
- {"version":3,"file":"keyChange.test.js","sourceRoot":"","sources":["../../../ts/__tests__/keyChange.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keyChange.test.js","sourceRoot":"","sources":["../../../ts/__tests__/keyChange.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=maciKeys.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maciKeys.test.d.ts","sourceRoot":"","sources":["../../../ts/__tests__/maciKeys.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,78 @@
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 chai_1 = require("chai");
7
+ const constants_1 = require("../constants");
8
+ const testingClass_1 = require("../testingClass");
9
+ describe("integration tests private/public/keypair", () => {
10
+ describe("crypto/domainobjs", () => {
11
+ it("should serialize and deserialize a private key correctly", () => {
12
+ const privateKeyCrypto = (0, crypto_1.generatePrivateKey)();
13
+ const privateKeyDomainobjs = new domainobjs_1.PrivateKey(privateKeyCrypto);
14
+ const privateKeyDomainobjsSerialized = privateKeyDomainobjs.serialize();
15
+ const privateKeyDomainobjsDeserialized = domainobjs_1.PrivateKey.deserialize(privateKeyDomainobjsSerialized);
16
+ (0, chai_1.expect)(privateKeyDomainobjsDeserialized.raw.toString()).to.eq(privateKeyCrypto.toString());
17
+ });
18
+ it("should serialize and deserialize a public key correctly", () => {
19
+ const privateKeyCrypto = (0, crypto_1.generatePrivateKey)();
20
+ const publicKeyCrypto = (0, crypto_1.generatePublicKey)(privateKeyCrypto);
21
+ const publicKeyDomainobjs = new domainobjs_1.PublicKey(publicKeyCrypto);
22
+ const publicKeyDomainobjsSerialized = publicKeyDomainobjs.serialize();
23
+ const publicKeyDomainobjsDeserialized = domainobjs_1.PublicKey.deserialize(publicKeyDomainobjsSerialized);
24
+ (0, chai_1.expect)(publicKeyDomainobjsDeserialized.raw[0].toString()).to.eq(publicKeyCrypto[0].toString());
25
+ (0, chai_1.expect)(publicKeyDomainobjsDeserialized.raw[1].toString()).to.eq(publicKeyCrypto[1].toString());
26
+ });
27
+ it("should serialize and deserialize a private key correct after serializing as contract params", () => {
28
+ const privateKeyCrypto = (0, crypto_1.generatePrivateKey)();
29
+ const privateKeyDomainobjs = new domainobjs_1.PrivateKey(privateKeyCrypto);
30
+ const keypairDomainobjs = new domainobjs_1.Keypair(privateKeyDomainobjs);
31
+ const publicKeyDomainobjsAsContractParam = keypairDomainobjs.publicKey.asContractParam();
32
+ const privateKeyDomainobjsSerialized = privateKeyDomainobjs.serialize();
33
+ const privateKeyDomainobjsDeserialized = domainobjs_1.PrivateKey.deserialize(privateKeyDomainobjsSerialized);
34
+ const keypairDomainobjsDeserialized = new domainobjs_1.Keypair(privateKeyDomainobjsDeserialized);
35
+ (0, chai_1.expect)(keypairDomainobjsDeserialized.publicKey.raw[0].toString()).to.eq(publicKeyDomainobjsAsContractParam.x.toString());
36
+ (0, chai_1.expect)(keypairDomainobjsDeserialized.publicKey.raw[1].toString()).to.eq(publicKeyDomainobjsAsContractParam.y.toString());
37
+ });
38
+ });
39
+ describe("crypto/domainobjs/contracts", () => {
40
+ let pollContract;
41
+ let testingClass;
42
+ let signer;
43
+ const coordinatorKeypair = new domainobjs_1.Keypair();
44
+ before(async () => {
45
+ signer = await (0, sdk_1.getDefaultSigner)();
46
+ testingClass = await testingClass_1.TestingClass.getInstance({
47
+ pollJoiningZkeyPath: constants_1.testPollJoiningZkeyPath,
48
+ pollJoinedZkeyPath: constants_1.testPollJoinedZkeyPath,
49
+ messageProcessorZkeyPath: constants_1.testProcessMessageNonQvZkeyPath,
50
+ voteTallyZkeyPath: constants_1.testVoteTallyNonQvZkeyPath,
51
+ pollWasm: constants_1.testPollJoiningWasmPath,
52
+ pollWitnessGenerator: constants_1.testPollJoiningWitnessPath,
53
+ rapidsnark: constants_1.testRapidsnarkPath,
54
+ });
55
+ const pollContractAddress = testingClass.contractsData.polls[0];
56
+ pollContract = sdk_1.Poll__factory.connect(pollContractAddress, signer);
57
+ });
58
+ it("should have the correct coordinator public key set on chain", async () => {
59
+ const onChainKey = await pollContract.coordinatorPublicKey();
60
+ (0, chai_1.expect)(onChainKey.x.toString()).to.eq(coordinatorKeypair.publicKey.raw[0].toString());
61
+ (0, chai_1.expect)(onChainKey.y.toString()).to.eq(coordinatorKeypair.publicKey.raw[1].toString());
62
+ });
63
+ it("should serialize and deserialize the coordinator private key to match the on chain key", async () => {
64
+ const onChainKey = await pollContract.coordinatorPublicKey();
65
+ const coordinatorPrivateKeySerialized = coordinatorKeypair.privateKey.serialize();
66
+ const coordinatorPrivateKeyDeserialized = domainobjs_1.PrivateKey.deserialize(coordinatorPrivateKeySerialized);
67
+ const coordinatorKeypairDeserialized = new domainobjs_1.Keypair(coordinatorPrivateKeyDeserialized);
68
+ (0, chai_1.expect)(coordinatorKeypairDeserialized.publicKey.raw[0].toString()).to.eq(onChainKey.x.toString());
69
+ (0, chai_1.expect)(coordinatorKeypairDeserialized.publicKey.raw[1].toString()).to.eq(onChainKey.y.toString());
70
+ });
71
+ it("should have a matching coordinator public key hash", async () => {
72
+ const onChainKeyHash = await pollContract.coordinatorPublicKeyHash();
73
+ const coordinatorPublicKeyHash = coordinatorKeypair.publicKey.hash();
74
+ (0, chai_1.expect)(onChainKeyHash.toString()).to.eq(coordinatorPublicKeyHash.toString());
75
+ });
76
+ });
77
+ });
78
+ //# sourceMappingURL=maciKeys.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maciKeys.test.js","sourceRoot":"","sources":["../../../ts/__tests__/maciKeys.test.ts"],"names":[],"mappings":"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"}