@maci-protocol/testing 0.0.0-ci.185b643

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 (81) hide show
  1. package/CHANGELOG.md +262 -0
  2. package/LICENSE +22 -0
  3. package/README.md +16 -0
  4. package/build/hardhat.config.d.ts +5 -0
  5. package/build/hardhat.config.d.ts.map +1 -0
  6. package/build/hardhat.config.js +37 -0
  7. package/build/hardhat.config.js.map +1 -0
  8. package/build/ts/__tests__/e2e.nonQv.test.d.ts +2 -0
  9. package/build/ts/__tests__/e2e.nonQv.test.d.ts.map +1 -0
  10. package/build/ts/__tests__/e2e.nonQv.test.js +208 -0
  11. package/build/ts/__tests__/e2e.nonQv.test.js.map +1 -0
  12. package/build/ts/__tests__/e2e.test.d.ts +2 -0
  13. package/build/ts/__tests__/e2e.test.d.ts.map +1 -0
  14. package/build/ts/__tests__/e2e.test.js +1588 -0
  15. package/build/ts/__tests__/e2e.test.js.map +1 -0
  16. package/build/ts/__tests__/integration.test.d.ts +2 -0
  17. package/build/ts/__tests__/integration.test.d.ts.map +1 -0
  18. package/build/ts/__tests__/integration.test.js +293 -0
  19. package/build/ts/__tests__/integration.test.js.map +1 -0
  20. package/build/ts/__tests__/keyChange.test.d.ts +2 -0
  21. package/build/ts/__tests__/keyChange.test.d.ts.map +1 -0
  22. package/build/ts/__tests__/keyChange.test.js +453 -0
  23. package/build/ts/__tests__/keyChange.test.js.map +1 -0
  24. package/build/ts/__tests__/maciKeys.test.d.ts +2 -0
  25. package/build/ts/__tests__/maciKeys.test.d.ts.map +1 -0
  26. package/build/ts/__tests__/maciKeys.test.js +78 -0
  27. package/build/ts/__tests__/maciKeys.test.js.map +1 -0
  28. package/build/ts/__tests__/unit/fundWallet.test.d.ts +2 -0
  29. package/build/ts/__tests__/unit/fundWallet.test.d.ts.map +1 -0
  30. package/build/ts/__tests__/unit/fundWallet.test.js +15 -0
  31. package/build/ts/__tests__/unit/fundWallet.test.js.map +1 -0
  32. package/build/ts/__tests__/unit/joinPoll.test.d.ts +2 -0
  33. package/build/ts/__tests__/unit/joinPoll.test.d.ts.map +1 -0
  34. package/build/ts/__tests__/unit/joinPoll.test.js +125 -0
  35. package/build/ts/__tests__/unit/joinPoll.test.js.map +1 -0
  36. package/build/ts/__tests__/unit/poll.test.d.ts +2 -0
  37. package/build/ts/__tests__/unit/poll.test.d.ts.map +1 -0
  38. package/build/ts/__tests__/unit/poll.test.js +89 -0
  39. package/build/ts/__tests__/unit/poll.test.js.map +1 -0
  40. package/build/ts/__tests__/unit/publish.test.d.ts +2 -0
  41. package/build/ts/__tests__/unit/publish.test.d.ts.map +1 -0
  42. package/build/ts/__tests__/unit/publish.test.js +132 -0
  43. package/build/ts/__tests__/unit/publish.test.js.map +1 -0
  44. package/build/ts/__tests__/unit/signup.test.d.ts +2 -0
  45. package/build/ts/__tests__/unit/signup.test.d.ts.map +1 -0
  46. package/build/ts/__tests__/unit/signup.test.js +63 -0
  47. package/build/ts/__tests__/unit/signup.test.js.map +1 -0
  48. package/build/ts/__tests__/unit/timeTravel.test.d.ts +2 -0
  49. package/build/ts/__tests__/unit/timeTravel.test.d.ts.map +1 -0
  50. package/build/ts/__tests__/unit/timeTravel.test.js +14 -0
  51. package/build/ts/__tests__/unit/timeTravel.test.js.map +1 -0
  52. package/build/ts/__tests__/unit/utils.test.d.ts +2 -0
  53. package/build/ts/__tests__/unit/utils.test.d.ts.map +1 -0
  54. package/build/ts/__tests__/unit/utils.test.js +36 -0
  55. package/build/ts/__tests__/unit/utils.test.js.map +1 -0
  56. package/build/ts/constants.d.ts +84 -0
  57. package/build/ts/constants.d.ts.map +1 -0
  58. package/build/ts/constants.js +159 -0
  59. package/build/ts/constants.js.map +1 -0
  60. package/build/ts/index.d.ts +4 -0
  61. package/build/ts/index.d.ts.map +1 -0
  62. package/build/ts/index.js +23 -0
  63. package/build/ts/index.js.map +1 -0
  64. package/build/ts/testingClass.d.ts +43 -0
  65. package/build/ts/testingClass.d.ts.map +1 -0
  66. package/build/ts/testingClass.js +144 -0
  67. package/build/ts/testingClass.js.map +1 -0
  68. package/build/ts/types.d.ts +100 -0
  69. package/build/ts/types.d.ts.map +1 -0
  70. package/build/ts/types.js +3 -0
  71. package/build/ts/types.js.map +1 -0
  72. package/build/ts/user.d.ts +27 -0
  73. package/build/ts/user.d.ts.map +1 -0
  74. package/build/ts/user.js +36 -0
  75. package/build/ts/user.js.map +1 -0
  76. package/build/ts/utils.d.ts +70 -0
  77. package/build/ts/utils.d.ts.map +1 -0
  78. package/build/ts/utils.js +192 -0
  79. package/build/ts/utils.js.map +1 -0
  80. package/build/tsconfig.tsbuildinfo +1 -0
  81. package/package.json +53 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,262 @@
1
+ # Change Log
2
+
3
+ All notable changes to this project will be documented in this file.
4
+ See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
+
6
+ ## [3.0.0](https://github.com/privacy-scaling-explorations/maci/compare/v2.5.0...v3.0.0) (2025-03-28)
7
+
8
+
9
+ ### Features
10
+
11
+ * **contracts:** add anon aadhaar gatekeeper checker ([13f14b0](https://github.com/privacy-scaling-explorations/maci/commit/13f14b07fd5fe8433d46b6fc6bab94216b06c97d))
12
+ * **contracts:** add checker and deployment for proxy gatekeepers ([87f6d3b](https://github.com/privacy-scaling-explorations/maci/commit/87f6d3b7f32bf8dddcbf99b855dbe4b7b6c2a58e))
13
+ * prevent duplicate maci key signup ([#2273](https://github.com/privacy-scaling-explorations/maci/issues/2273)) ([4da7858](https://github.com/privacy-scaling-explorations/maci/commit/4da7858cec86c67f5b452ac3c59ee229fef310e4))
14
+ * use excubiae policies instead of gatekeepers ([a2319b1](https://github.com/privacy-scaling-explorations/maci/commit/a2319b19e473e683a301bd79b3ab2b06e83f9452))
15
+
16
+
17
+ ### Code Refactoring
18
+
19
+ * make separate testing package ([#2229](https://github.com/privacy-scaling-explorations/maci/issues/2229)) ([bd07a7f](https://github.com/privacy-scaling-explorations/maci/commit/bd07a7f0783b2efe2659bc18255f8f4ed2e3c0d3))
20
+ * test suite cleanup ([#2233](https://github.com/privacy-scaling-explorations/maci/issues/2233)) ([5795741](https://github.com/privacy-scaling-explorations/maci/commit/5795741b8531a179247bf41438d2294d53de8d0d))
21
+
22
+
23
+ ### Miscellaneous
24
+
25
+ * **deps-dev:** bump @types/node from 22.13.9 to 22.13.10 ([#2241](https://github.com/privacy-scaling-explorations/maci/issues/2241)) ([3f50bb6](https://github.com/privacy-scaling-explorations/maci/commit/3f50bb65db4cd83b5ebe9d4fb1b7a6d650bb1c51))
26
+ * move tests over to testing package ([fad40c3](https://github.com/privacy-scaling-explorations/maci/commit/fad40c30323135483244cc6e3c89ffba51d5120b))
27
+ * update the readme ([#2242](https://github.com/privacy-scaling-explorations/maci/issues/2242)) ([ffdceee](https://github.com/privacy-scaling-explorations/maci/commit/ffdceee3074446f81deae5ef4e3df67f98aaada7))
28
+
29
+
30
+
31
+ ## [2.5.0](https://github.com/privacy-scaling-explorations/maci/compare/v2.4.0...v2.5.0) (2024-11-20)
32
+
33
+
34
+ ### Features
35
+
36
+ * **contracts:** add tally results ([5d8a720](https://github.com/privacy-scaling-explorations/maci/commit/5d8a7203f9eb300f86cca5e83a3858571081e333))
37
+
38
+
39
+ ### Miscellaneous
40
+
41
+ * **deps-dev:** bump @types/node from 22.4.1 to 22.8.1 ([#1873](https://github.com/privacy-scaling-explorations/maci/issues/1873)) ([c1b9c0e](https://github.com/privacy-scaling-explorations/maci/commit/c1b9c0ed18eb3fae5e189dff952a8ab9dfb2f9b1))
42
+ * **deps-dev:** bump @types/node from 22.8.1 to 22.9.0 ([0e11e5d](https://github.com/privacy-scaling-explorations/maci/commit/0e11e5d668fed2e2168de56e87981b0edcca8cd9))
43
+ * **deps-dev:** bump typescript from 5.5.4 to 5.6.3 ([8058c5d](https://github.com/privacy-scaling-explorations/maci/commit/8058c5de1d865317c79a00508b672091cd7b1eb0))
44
+ * **deps:** bump ethers from 6.13.2 to 6.13.4 ([b698a03](https://github.com/privacy-scaling-explorations/maci/commit/b698a036d3fa008a7a47327f343a1a312129fead))
45
+ * **deps:** bump hardhat from 2.22.8 to 2.22.13 ([f8a139a](https://github.com/privacy-scaling-explorations/maci/commit/f8a139a0f0c836851a93bb6051213927df1faa2a))
46
+
47
+
48
+
49
+ ## [2.4.0](https://github.com/privacy-scaling-explorations/maci/compare/v2.3.0...v2.4.0) (2024-09-30)
50
+
51
+
52
+ ### Miscellaneous
53
+
54
+ * **deps-dev:** bump @types/mocha from 10.0.7 to 10.0.8 ([#1827](https://github.com/privacy-scaling-explorations/maci/issues/1827)) ([4deae8b](https://github.com/privacy-scaling-explorations/maci/commit/4deae8bb3a4ea5cf1b4ad16018186a593142adb8))
55
+
56
+
57
+
58
+ ## [2.3.0](https://github.com/privacy-scaling-explorations/maci/compare/v2.2.1...v2.3.0) (2024-09-05)
59
+
60
+ **Note:** Version bump only for package maci-integrationtests
61
+
62
+
63
+
64
+
65
+
66
+ ## [2.2.1](https://github.com/privacy-scaling-explorations/maci/compare/v2.2.0...v2.2.1) (2024-08-19)
67
+
68
+ **Note:** Version bump only for package maci-integrationtests
69
+
70
+
71
+
72
+
73
+
74
+ ## [2.2.0](https://github.com/privacy-scaling-explorations/maci/compare/v2.1.0...v2.2.0) (2024-08-19)
75
+
76
+
77
+ ### Miscellaneous
78
+
79
+ * **deps-dev:** bump @types/node from 22.1.0 to 22.2.0 ([ac18985](https://github.com/privacy-scaling-explorations/maci/commit/ac189852bf6abb787736c474ad87927afaa5163c))
80
+ * **deps-dev:** bump @types/node from 22.2.0 to 22.4.1 ([#1779](https://github.com/privacy-scaling-explorations/maci/issues/1779)) ([4a929e0](https://github.com/privacy-scaling-explorations/maci/commit/4a929e0b9a5c4de5ac0345e742668a3400798867))
81
+ * **deps-dev:** bump mocha from 10.7.0 to 10.7.3 ([6ba908f](https://github.com/privacy-scaling-explorations/maci/commit/6ba908f5f78628aa6afe973b3d71ae54ff08c735))
82
+ * **deps:** bump hardhat from 2.22.7 to 2.22.8 ([#1755](https://github.com/privacy-scaling-explorations/maci/issues/1755)) ([92b30af](https://github.com/privacy-scaling-explorations/maci/commit/92b30af1c18f8261235c26f61de6004287107351))
83
+
84
+
85
+
86
+ ## [2.1.0](https://github.com/privacy-scaling-explorations/maci/compare/v2.0.0...v2.1.0) (2024-08-07)
87
+
88
+ **Note:** Version bump only for package maci-integrationtests
89
+
90
+
91
+
92
+
93
+
94
+ ## [2.0.0](https://github.com/privacy-scaling-explorations/maci/compare/v1.2.0...v2.0.0) (2024-08-06)
95
+
96
+
97
+ ### ⚠ BREAKING CHANGES
98
+
99
+ * **topup:** No more topups
100
+
101
+ ### Features
102
+
103
+ * **contracts:** added message processor and tally addresses to the maci contract ([#1715](https://github.com/privacy-scaling-explorations/maci/issues/1715)) ([801b774](https://github.com/privacy-scaling-explorations/maci/commit/801b7747852a63885ed8d6ae43d81260dab9c76f))
104
+ * **contracts:** tally qv and non-qv optimisations ([b0b7b38](https://github.com/privacy-scaling-explorations/maci/commit/b0b7b38bf008e8a542b550c75ada40ac21854944))
105
+ * export merge function and modify package version ([#1584](https://github.com/privacy-scaling-explorations/maci/issues/1584)) ([f6ae34a](https://github.com/privacy-scaling-explorations/maci/commit/f6ae34a3f9ea375cd5dac8f0ce8618e33509f8ad))
106
+ * support deployment without hardhat ([dab5e2b](https://github.com/privacy-scaling-explorations/maci/commit/dab5e2b0c05f00d4ede53b67ea118d05a952c5c3))
107
+ * use mode instead of flag for voting option ([34421de](https://github.com/privacy-scaling-explorations/maci/commit/34421deb4da54da732cd34d868e76e04a5eea501))
108
+
109
+
110
+ ### Bug Fixes
111
+
112
+ * **build:** add missing typescript dependency for integration tests package ([4f34d4e](https://github.com/privacy-scaling-explorations/maci/commit/4f34d4e6d8bb587fb1ec4c861a583055d5afa2e0))
113
+
114
+
115
+ ### Code Refactoring
116
+
117
+ * **maci:** remove subsidy feature to simplify further protocol improvements ([52fc7c5](https://github.com/privacy-scaling-explorations/maci/commit/52fc7c5b8f2d389868bca6171ffd15a94b1d1659))
118
+ * **topup:** remove the topup feature ([67711d4](https://github.com/privacy-scaling-explorations/maci/commit/67711d44058831302d4556f12d1972ffacede653))
119
+
120
+
121
+ ### Miscellaneous
122
+
123
+ * add qv and non-qv key setup during deploy ([29f9e17](https://github.com/privacy-scaling-explorations/maci/commit/29f9e173e788105b420b2ec0ea4f40d423b27685))
124
+ * bump to 1.2.2 ([e63278f](https://github.com/privacy-scaling-explorations/maci/commit/e63278f71937a1fa908ec8f4be2d43114701c134))
125
+ * **deps-dev:** bump @types/mocha from 10.0.6 to 10.0.7 ([07c3480](https://github.com/privacy-scaling-explorations/maci/commit/07c3480efc40ad1d3f651b78cd7c3aaeee8d7f8a))
126
+ * **deps-dev:** bump @types/node from 20.11.20 to 20.11.24 ([c575eca](https://github.com/privacy-scaling-explorations/maci/commit/c575eca7c54c262764ce794a919f3b1d58d7d8e7))
127
+ * **deps-dev:** bump @types/node from 20.11.24 to 20.11.25 ([5eb49f9](https://github.com/privacy-scaling-explorations/maci/commit/5eb49f9090fc6db3a80ad2d63548d93430ff7645))
128
+ * **deps-dev:** bump @types/node from 20.11.25 to 20.11.28 ([81bebaa](https://github.com/privacy-scaling-explorations/maci/commit/81bebaa880cbc15b8c8445d412b9fc9d89580e67))
129
+ * **deps-dev:** bump @types/node from 20.11.28 to 20.11.30 ([5ef4420](https://github.com/privacy-scaling-explorations/maci/commit/5ef44209d16cd441067fb67201daa61cf968382d))
130
+ * **deps-dev:** bump @types/node from 20.11.30 to 20.12.2 ([e7c32d0](https://github.com/privacy-scaling-explorations/maci/commit/e7c32d0ddd506727f229d950239a116961bbe1a0))
131
+ * **deps-dev:** bump @types/node from 20.12.10 to 20.12.11 ([3019c66](https://github.com/privacy-scaling-explorations/maci/commit/3019c66eb70e54b376e9464417e073bd98d96b6a))
132
+ * **deps-dev:** bump @types/node from 20.12.11 to 20.12.12 ([bd0a0a5](https://github.com/privacy-scaling-explorations/maci/commit/bd0a0a5a1ec685542c2af4f6962186176d5453ba))
133
+ * **deps-dev:** bump @types/node from 20.12.2 to 20.12.5 ([588392f](https://github.com/privacy-scaling-explorations/maci/commit/588392f2f773addce0204f236fc26981ead1f7bb))
134
+ * **deps-dev:** bump @types/node from 20.12.5 to 20.12.7 ([f1b00de](https://github.com/privacy-scaling-explorations/maci/commit/f1b00deb29788e390dcecd5b1741339f96f06f73))
135
+ * **deps-dev:** bump @types/node from 20.12.7 to 20.12.10 ([cf5026a](https://github.com/privacy-scaling-explorations/maci/commit/cf5026a42a41c0078467fb477fdd51a2afb31e1f))
136
+ * **deps-dev:** bump @types/node from 20.14.10 to 20.14.11 ([01564c0](https://github.com/privacy-scaling-explorations/maci/commit/01564c0503379ca65ce90ea77fdc5ebcd9ae81c5))
137
+ * **deps-dev:** bump @types/node from 20.14.11 to 22.1.0 ([#1732](https://github.com/privacy-scaling-explorations/maci/issues/1732)) ([3c4b9d9](https://github.com/privacy-scaling-explorations/maci/commit/3c4b9d9c9eb7439c4ea9791e4388ff586530be50))
138
+ * **deps-dev:** bump @types/node from 20.14.2 to 20.14.8 ([636ac22](https://github.com/privacy-scaling-explorations/maci/commit/636ac22bd29d12e5af7f69c7dd639d0223595992))
139
+ * **deps-dev:** bump @types/node from 20.14.8 to 20.14.10 ([add0ce4](https://github.com/privacy-scaling-explorations/maci/commit/add0ce4e406fea4bfe2b839facc6a0a33b3fe3bf))
140
+ * **deps-dev:** bump chai-as-promised from 7.1.1 to 7.1.2 ([6930a1c](https://github.com/privacy-scaling-explorations/maci/commit/6930a1c6590f0b8d9971ac38bf06d44f90b88760))
141
+ * **deps-dev:** bump mocha from 10.3.0 to 10.4.0 ([7bf5afe](https://github.com/privacy-scaling-explorations/maci/commit/7bf5afe954bcb6b34dbe7f109c9c7e8d5396f1b2))
142
+ * **deps-dev:** bump mocha from 10.4.0 to 10.5.0 ([e5c14cf](https://github.com/privacy-scaling-explorations/maci/commit/e5c14cf01e9b5beb6232e80345121dbb47190fd0))
143
+ * **deps-dev:** bump mocha from 10.5.0 to 10.6.0 ([6847bb3](https://github.com/privacy-scaling-explorations/maci/commit/6847bb374893672bf7e809fc80d124e2d874b784))
144
+ * **deps-dev:** bump mocha from 10.6.0 to 10.7.0 ([#1687](https://github.com/privacy-scaling-explorations/maci/issues/1687)) ([2cad35b](https://github.com/privacy-scaling-explorations/maci/commit/2cad35bab133af79f77ea9c19098d3561ba06f69))
145
+ * **deps-dev:** bump typescript from 5.4.3 to 5.4.4 ([5e047ea](https://github.com/privacy-scaling-explorations/maci/commit/5e047eaa96d508addf34e35764ddaf4deb221593))
146
+ * **deps-dev:** bump typescript from 5.4.4 to 5.4.5 ([ea6339d](https://github.com/privacy-scaling-explorations/maci/commit/ea6339da96dda38a931cb6d39615c9267ca45b81))
147
+ * **deps-dev:** bump typescript from 5.4.5 to 5.5.2 ([e2b4d45](https://github.com/privacy-scaling-explorations/maci/commit/e2b4d45235c82bba349d959a164442cae90ad97f))
148
+ * **deps-dev:** bump typescript from 5.5.2 to 5.5.3 ([c979188](https://github.com/privacy-scaling-explorations/maci/commit/c979188358becfc4b434a2f73331e640ce595846))
149
+ * **deps-dev:** bump typescript from 5.5.3 to 5.5.4 ([8ed2e2b](https://github.com/privacy-scaling-explorations/maci/commit/8ed2e2b109a950137dd289aa7d3eca4268079272))
150
+ * **deps:** bump @nomicfoundation/hardhat-toolbox from 4.0.0 to 5.0.0 ([c403cb4](https://github.com/privacy-scaling-explorations/maci/commit/c403cb4b9c27e15958493a6d19555161ecef743c))
151
+ * **deps:** bump ethers from 6.11.1 to 6.12.0 ([9db5a93](https://github.com/privacy-scaling-explorations/maci/commit/9db5a93d32396d80b76e2d20d1af529e6a97292a))
152
+ * **deps:** bump ethers from 6.12.0 to 6.12.1 ([16b4615](https://github.com/privacy-scaling-explorations/maci/commit/16b46159a132abb82b4659c424a065bb418bd31e))
153
+ * **deps:** bump ethers from 6.13.0 to 6.13.1 ([b32694d](https://github.com/privacy-scaling-explorations/maci/commit/b32694da7aa60e0215daa56d2b64ed5e5f8d9d45))
154
+ * **deps:** bump ethers from 6.13.1 to 6.13.2 ([#1709](https://github.com/privacy-scaling-explorations/maci/issues/1709)) ([c9de72e](https://github.com/privacy-scaling-explorations/maci/commit/c9de72eead282027cc9dcab0edd9170a0fbe5a2e))
155
+ * **deps:** bump hardhat from 2.22.1 to 2.22.2 ([397e50b](https://github.com/privacy-scaling-explorations/maci/commit/397e50b6ded4cc81ce299747b2847254af7ea1ce))
156
+ * **deps:** bump hardhat from 2.22.3 to 2.22.4 ([481a1e7](https://github.com/privacy-scaling-explorations/maci/commit/481a1e7a83ad8984880a98aa09824b3dc689acd9))
157
+ * **deps:** bump hardhat from 2.22.5 to 2.22.6 ([6949eee](https://github.com/privacy-scaling-explorations/maci/commit/6949eee8717c16c129b15c570283ea58ce39ec33))
158
+ * **keys:** update maci keys in docs and scripts ([403262f](https://github.com/privacy-scaling-explorations/maci/commit/403262f3941a2b4e41b9cc05cc8dc340ebe5e759))
159
+ * optimize message processor and tally ([d75b244](https://github.com/privacy-scaling-explorations/maci/commit/d75b2446c2ee012d146afe8d7bc423f5b94e4579))
160
+ * **release:** publish 1.2.1 ([93564f8](https://github.com/privacy-scaling-explorations/maci/commit/93564f8a98baa0fee65db16e2e40209d9ac1b3ae))
161
+ * **release:** publish 2.0.0 ([04e647d](https://github.com/privacy-scaling-explorations/maci/commit/04e647d231df34952569ad6ff802e0b2333eb658))
162
+ * remove max values ([8f951b0](https://github.com/privacy-scaling-explorations/maci/commit/8f951b0fcc73212d99d3ddc962fbaa9788471fb6))
163
+ * unify maci address arguments ([dfc5fd2](https://github.com/privacy-scaling-explorations/maci/commit/dfc5fd2050f60e869c940d656ed66c895dc23fe5))
164
+ * update @openzeppelin/contracts to 5.0.2 ([188b259](https://github.com/privacy-scaling-explorations/maci/commit/188b25990124ac69bf7796d2c1907a797e095481))
165
+ * update hardhat to 2.21.1 ([ba6e236](https://github.com/privacy-scaling-explorations/maci/commit/ba6e236be14ff9b29126e887c9d552bc207e7467))
166
+ * use async fs instead of sync version ([fb8317e](https://github.com/privacy-scaling-explorations/maci/commit/fb8317ef3943a8434083de6e1b0f9469f15dd113))
167
+ * **zkeys:** use ts to download zkey artifacts and simplify repo ([d364f24](https://github.com/privacy-scaling-explorations/maci/commit/d364f24c074a860744d10ed62eae73c58f8c3250))
168
+
169
+
170
+
171
+ ## [1.2.0](https://github.com/privacy-scaling-explorations/maci/compare/v1.1.1...v1.2.0) (2024-02-23)
172
+
173
+
174
+ ### Features
175
+
176
+ * add interfaces and factory contracts with Natspec ([579a53f](https://github.com/privacy-scaling-explorations/maci/commit/579a53f1f9a501e95fbfb064d39272c57a9e4f21))
177
+ * **circuits:** remove zkey-manager in favour of circomkit ([d79e9c0](https://github.com/privacy-scaling-explorations/maci/commit/d79e9c0ee18df27c3bd3e5e49924db21303d1c45))
178
+ * **cli:** accept signer as parameter to cli commands ([b1802e7](https://github.com/privacy-scaling-explorations/maci/commit/b1802e79ac853aa796ba7078e994683b0db35061))
179
+ * **cli:** improve cli integration ux ([7727ab1](https://github.com/privacy-scaling-explorations/maci/commit/7727ab1d99096b296d6c3f25956b0465d036aa4d))
180
+ * optimize deployment and tally event ([185b407](https://github.com/privacy-scaling-explorations/maci/commit/185b407df6db0484824b99286a6b0e866a7345bf))
181
+
182
+
183
+ ### Bug Fixes
184
+
185
+ * **fix integrationtests:** fix integrationTests caused by refactoring ([09ae37f](https://github.com/privacy-scaling-explorations/maci/commit/09ae37fd63db7ee75b977d33e67ded050ce7441d))
186
+ * **integrationTests:** add auto mining option for hardhat ([fe336a2](https://github.com/privacy-scaling-explorations/maci/commit/fe336a269c62b3b8dc40b9c387ca1796759be49b))
187
+ * **publish:** ensure we publish the correct files ([bc42724](https://github.com/privacy-scaling-explorations/maci/commit/bc42724b34cf0c047c5692fbf477ed013a102aee))
188
+ * remove extra blank line ([41d0bb1](https://github.com/privacy-scaling-explorations/maci/commit/41d0bb198176047d699666cd427eae12d1eb1e75))
189
+ * remove trailing chars ([3101a60](https://github.com/privacy-scaling-explorations/maci/commit/3101a6016ebda3385273b47b2de33f5fd9c1221f))
190
+ * **tests:** remove wrong chai matcher from integrationTests ([33d1d4d](https://github.com/privacy-scaling-explorations/maci/commit/33d1d4d726594eed1a27f2ef851daf5f65a36c9e))
191
+
192
+
193
+ ### Code Refactoring
194
+
195
+ * **cli:** use object args for cli commands ([41c4333](https://github.com/privacy-scaling-explorations/maci/commit/41c4333f8471b6a9ed616e5081dd99684b458b51))
196
+ * **contracts:** refactor contracts code by removing dead code, and various optimizations ([7cbe5bd](https://github.com/privacy-scaling-explorations/maci/commit/7cbe5bd67dbfe98b46b485a75361a6cc3badb7ff))
197
+ * **contracts:** remove maxValues and batchSizes from Maci.deployPoll() and instead calculate ([5393868](https://github.com/privacy-scaling-explorations/maci/commit/5393868efa270d9308e78c96e9bf6a7e8d63f3b6)), closes [#1066](https://github.com/privacy-scaling-explorations/maci/issues/1066)
198
+ * **core:** refactor the core package subsidy and tally functions ([0af7dd2](https://github.com/privacy-scaling-explorations/maci/commit/0af7dd2d448c4796c3872665d43654343f9fc3e3))
199
+ * **core:** refactor the process message functions and general cleanup ([823cacd](https://github.com/privacy-scaling-explorations/maci/commit/823cacd8659281b8390b74c8d765b23ee7a83a80))
200
+ * fix ESLint issues ([6c0ed97](https://github.com/privacy-scaling-explorations/maci/commit/6c0ed97c0976a81b5e5506699d550ec93a553cb8))
201
+ * **nonqv:** optimize tally votes non qv circuit and contracts ([ea632a9](https://github.com/privacy-scaling-explorations/maci/commit/ea632a97862c4304c764f511ab480b3664224b5f))
202
+ * **zk-kit-poseidon:** remove old circomlib dependencies in crypto ([0340f79](https://github.com/privacy-scaling-explorations/maci/commit/0340f7960a2214410d8885541ac542419a980a34))
203
+
204
+
205
+ ### Miscellaneous
206
+
207
+ * add a badges to README.md ([888524b](https://github.com/privacy-scaling-explorations/maci/commit/888524baae82d56edbf0c794e587de174906c34c))
208
+ * add types check ([69f038f](https://github.com/privacy-scaling-explorations/maci/commit/69f038f55e6c740d43b8b5376db999bcf92de845))
209
+ * apply prettier ([8b905c0](https://github.com/privacy-scaling-explorations/maci/commit/8b905c0948d4a1f950653c6812067ec98ebfcbc8))
210
+ * bundle size optimizations ([18da49c](https://github.com/privacy-scaling-explorations/maci/commit/18da49c791e53350158659df8248d48af8e80f6d))
211
+ * **changelog:** add CHANGELOG of v1.1.1 ([f0c315a](https://github.com/privacy-scaling-explorations/maci/commit/f0c315a4c1b86f88839f2dbe4c4b9f59193f7be4))
212
+ * **cli:** integrate linter ([49571a1](https://github.com/privacy-scaling-explorations/maci/commit/49571a1199a8a027c64a7c39bd21f46a3a268f43))
213
+ * **cli:** prepare cli package for web apps ([f706d9a](https://github.com/privacy-scaling-explorations/maci/commit/f706d9aa5689f58e646650d92b188f27e5beb4d8))
214
+ * **cli:** reorganize e2e tests and add more tests for cli commands ([6000227](https://github.com/privacy-scaling-explorations/maci/commit/6000227231bee3917686b64685c14ca329fcf38b))
215
+ * **cli:** support install for web apps ([3166cdd](https://github.com/privacy-scaling-explorations/maci/commit/3166cdd249450c36f069e0d9703980902339eb54))
216
+ * **cli:** unify publish arg type ([50635dc](https://github.com/privacy-scaling-explorations/maci/commit/50635dc429f8784dde3815d91384c3d67eae8f85))
217
+ * **contract:** add deploy tasks for maci ([8b58688](https://github.com/privacy-scaling-explorations/maci/commit/8b586889033c0703b6358ddda78753725b8d07c9))
218
+ * **contract:** apply linter for deploy scripts and contracts ([9af9c04](https://github.com/privacy-scaling-explorations/maci/commit/9af9c0497a2491eaf89fbff475cf0f60bc04f59c))
219
+ * **dependencies:** update project dependencies and remove redundant ones ([4c5ac27](https://github.com/privacy-scaling-explorations/maci/commit/4c5ac27767492c9867a6e2ab2acd6b10fe132847))
220
+ * **deps-dev:** bump @types/node from 18.19.6 to 20.10.8 ([6645120](https://github.com/privacy-scaling-explorations/maci/commit/664512038212d36d40799e8c4787847735bd7d82))
221
+ * **deps-dev:** bump @types/node from 20.10.8 to 20.11.0 ([805d253](https://github.com/privacy-scaling-explorations/maci/commit/805d2536a54478c51403362419ecad0b6ab736a7))
222
+ * **deps-dev:** bump @types/node from 20.11.0 to 20.11.2 ([45839e8](https://github.com/privacy-scaling-explorations/maci/commit/45839e8c2668ec56ea06221758605f88029ea8a1))
223
+ * **deps-dev:** bump @types/node from 20.11.10 to 20.11.16 ([8144919](https://github.com/privacy-scaling-explorations/maci/commit/8144919939f7d9a841eb6fce7182628cedbf8746))
224
+ * **deps-dev:** bump @types/node from 20.11.16 to 20.11.17 ([44de5db](https://github.com/privacy-scaling-explorations/maci/commit/44de5db0c25a5fdfd5c13c397f49edb7185bf1f5))
225
+ * **deps-dev:** bump @types/node from 20.11.17 to 20.11.19 ([8d86b32](https://github.com/privacy-scaling-explorations/maci/commit/8d86b32ef70b89f4239aad3903fd36937cf6a90f))
226
+ * **deps-dev:** bump @types/node from 20.11.2 to 20.11.5 ([7698ede](https://github.com/privacy-scaling-explorations/maci/commit/7698edef2b95bc017e54c1fc0d796ccc9da3de85))
227
+ * **deps-dev:** bump @types/node from 20.11.5 to 20.11.10 ([a2c445a](https://github.com/privacy-scaling-explorations/maci/commit/a2c445a295e792e421f6c1537b2b21f8a7648683))
228
+ * **deps-dev:** bump lerna from 6.6.2 to 8.0.2 ([4b150ad](https://github.com/privacy-scaling-explorations/maci/commit/4b150ade7c4fbaf88eb0e1f629cec6749377706d))
229
+ * **deps-dev:** bump mocha from 10.2.0 to 10.3.0 ([2b76e04](https://github.com/privacy-scaling-explorations/maci/commit/2b76e0445f5da5864a335352f66eac33c070ab29))
230
+ * **deps:** bump ethers from 6.10.0 to 6.11.0 ([815696d](https://github.com/privacy-scaling-explorations/maci/commit/815696de4268c41e466ab6794215807a38906938))
231
+ * **deps:** bump ethers from 6.11.0 to 6.11.1 ([a01f434](https://github.com/privacy-scaling-explorations/maci/commit/a01f434451a377447052518236a23ad3c9051d17))
232
+ * **deps:** bump ethers from 6.9.2 to 6.10.0 ([dd8b4a0](https://github.com/privacy-scaling-explorations/maci/commit/dd8b4a048c013f28be175cc0db17fe5fc45d5976))
233
+ * **deps:** bump hardhat from 2.19.4 to 2.19.5 ([40ab10d](https://github.com/privacy-scaling-explorations/maci/commit/40ab10defff0a538aefa81d67fd6ce04b69f5eb6))
234
+ * **deps:** bump hardhat from 2.19.5 to 2.20.1 ([68543a6](https://github.com/privacy-scaling-explorations/maci/commit/68543a6886b2836c42fd18b77f9e98f322fb971e))
235
+ * **integration:** ensure integration tests are using the correct user keys ([5b6aa92](https://github.com/privacy-scaling-explorations/maci/commit/5b6aa9255907cd0e02f692ad7d8487f9bd9a70f3))
236
+ * **intergationTests:** apply linter for intergration tests package ([ef75ec3](https://github.com/privacy-scaling-explorations/maci/commit/ef75ec37b2b4e000ad4b3fcdbdf85ba822690512))
237
+ * linter ([42ea4f0](https://github.com/privacy-scaling-explorations/maci/commit/42ea4f0ae8b342f6bd5ca5ac86f1bdd143978324))
238
+ * linter unification ([61a8bcd](https://github.com/privacy-scaling-explorations/maci/commit/61a8bcd915fd3e4b4da3c00d40704d892c02f51b))
239
+ * **poll:** unify pollId type ([21d01ef](https://github.com/privacy-scaling-explorations/maci/commit/21d01efc565df74ea8b71dfeeead60be5a07db56))
240
+ * **publishing:** remove bash script for empty ballot roots contract ([025287c](https://github.com/privacy-scaling-explorations/maci/commit/025287c778547e0acb1582532f3412e022cca6fa))
241
+ * **release:** publish 1.1.2 ([10b3a85](https://github.com/privacy-scaling-explorations/maci/commit/10b3a85cc9b53c0fc1ccdf54221a48ec8d6efe0d))
242
+ * remove `gitHead` field from package.json ([d38ba71](https://github.com/privacy-scaling-explorations/maci/commit/d38ba71301469f350b3d80eab5bf94e779dda9cc))
243
+ * run prettier ([d09cd0e](https://github.com/privacy-scaling-explorations/maci/commit/d09cd0e01ac747245307ceec5343d9ed30d7a6f0))
244
+ * run prettier fix after bumping version ([e1f85a5](https://github.com/privacy-scaling-explorations/maci/commit/e1f85a53bbb72696b6998af5406748fd18df4701))
245
+ * **testing:** revisit testing docs and add more in detail info ([183c1d8](https://github.com/privacy-scaling-explorations/maci/commit/183c1d8361bdf3a192a212ef610ae7855c96c587))
246
+ * **website:** apply linter for website and remove unused packages ([1a3b343](https://github.com/privacy-scaling-explorations/maci/commit/1a3b343948f9f48ed4948a5ade63b4b55645f4ab))
247
+
248
+
249
+
250
+ ## [1.1.2](https://github.com/gurrpi/maci/compare/v1.1.1...v1.1.2) (2023-01-19)
251
+
252
+ ### Miscellaneous
253
+
254
+ - add a badges to README.md ([888524b](https://github.com/gurrpi/maci/commit/888524baae82d56edbf0c794e587de174906c34c))
255
+ - **changelog:** add CHANGELOG of v1.1.1 ([ea1f0ca](https://github.com/gurrpi/maci/commit/ea1f0ca93f1618df0ba046f1f01b2abad57e0ee1))
256
+
257
+ ## [1.1.1](https://github.com/gurrpi/maci/compare/v1.1.0...v1.1.1) (2022-12-03)
258
+
259
+ ### Bug Fixes
260
+
261
+ - **integrationtests:** add missing error handling in integration test harness ([403787e](https://github.com/gurrpi/maci/commit/403787e197f5188270d9ed0da52abbba9d0db7d1))
262
+ - **maci:** upgraded minor version and fixed bug in testnet deployment ([5ef5ed8](https://github.com/gurrpi/maci/commit/5ef5ed842360277ac823c6919e171d0c51ff5702)), closes [#551](https://github.com/gurrpi/maci/issues/551) [#552](https://github.com/gurrpi/maci/issues/552)
package/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2020 Barry WhiteHat, Kendrick Tan, Kobi Gurkan, Kirill Goncharov
4
+ Cory Dickson, Han Jian, Chih-Cheng Liang, and Koh Wei Jie
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in all
14
+ copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,16 @@
1
+ # maci-integrationTests
2
+
3
+ [![NPM Package][integrationTests-npm-badge]][integrationTests-npm-link]
4
+ [![Actions Status][integrationTests-actions-badge]][integrationTests-actions-link]
5
+
6
+ This submodule contains test suites that span between different submodules.
7
+
8
+ The current approach is to test each CLI command and also chain
9
+ them together to test the entire flow.
10
+
11
+ Please refer to the [tests documentation](https://maci.pse.dev/docs/testing) for more information.
12
+
13
+ [integrationTests-npm-badge]: https://img.shields.io/npm/v/maci-integrationtests.svg
14
+ [integrationTests-npm-link]: https://www.npmjs.com/package/maci-integrationtests
15
+ [integrationTests-actions-badge]: https://github.com/privacy-scaling-explorations/maci/actions/workflows/e2e.yml/badge.svg
16
+ [integrationTests-actions-link]: https://github.com/privacy-scaling-explorations/maci/actions?query=workflow%3ACI
@@ -0,0 +1,5 @@
1
+ import "@nomicfoundation/hardhat-toolbox";
2
+ import type { HardhatUserConfig } from "hardhat/types";
3
+ declare const config: HardhatUserConfig;
4
+ export default config;
5
+ //# sourceMappingURL=hardhat.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hardhat.config.d.ts","sourceRoot":"","sources":["../hardhat.config.ts"],"names":[],"mappings":"AAAA,OAAO,kCAAkC,CAAC;AAE1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAKvD,QAAA,MAAM,MAAM,EAAE,iBA6Bb,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ require("@nomicfoundation/hardhat-toolbox");
4
+ const WALLET_MNEMONIC = "candy maple cake sugar pudding cream honey rich smooth crumble sweet treat";
5
+ const GAS_LIMIT = 30000000;
6
+ const config = {
7
+ defaultNetwork: "hardhat",
8
+ networks: {
9
+ hardhat: {
10
+ gas: GAS_LIMIT,
11
+ blockGasLimit: GAS_LIMIT,
12
+ accounts: { count: 30, mnemonic: WALLET_MNEMONIC },
13
+ mining: {
14
+ auto: true,
15
+ interval: 100,
16
+ },
17
+ },
18
+ },
19
+ solidity: {
20
+ version: "0.8.28",
21
+ settings: {
22
+ optimizer: {
23
+ enabled: true,
24
+ runs: 200,
25
+ details: {
26
+ yul: true,
27
+ },
28
+ },
29
+ },
30
+ },
31
+ paths: {
32
+ sources: "./node_modules/@maci-protocol/sdk/node_modules/@maci-protocol/contracts/contracts",
33
+ artifacts: "./node_modules/@maci-protocol/sdk/node_modules/@maci-protocol/contracts/artifacts",
34
+ },
35
+ };
36
+ exports.default = config;
37
+ //# sourceMappingURL=hardhat.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hardhat.config.js","sourceRoot":"","sources":["../hardhat.config.ts"],"names":[],"mappings":";;AAAA,4CAA0C;AAI1C,MAAM,eAAe,GAAG,4EAA4E,CAAC;AACrG,MAAM,SAAS,GAAG,QAAU,CAAC;AAE7B,MAAM,MAAM,GAAsB;IAChC,cAAc,EAAE,SAAS;IACzB,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,GAAG,EAAE,SAAS;YACd,aAAa,EAAE,SAAS;YACxB,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;YAClD,MAAM,EAAE;gBACN,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,GAAG;aACd;SACF;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE;YACR,SAAS,EAAE;gBACT,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE;oBACP,GAAG,EAAE,IAAI;iBACV;aACF;SACF;KACF;IACD,KAAK,EAAE;QACL,OAAO,EAAE,mFAAmF;QAC5F,SAAS,EAAE,mFAAmF;KAC/F;CACF,CAAC;AAEF,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=e2e.nonQv.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2e.nonQv.test.d.ts","sourceRoot":"","sources":["../../../ts/__tests__/e2e.nonQv.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@maci-protocol/core");
4
+ const crypto_1 = require("@maci-protocol/crypto");
5
+ const domainobjs_1 = require("@maci-protocol/domainobjs");
6
+ const sdk_1 = require("@maci-protocol/sdk");
7
+ const constants_1 = require("../constants");
8
+ const utils_1 = require("../utils");
9
+ /**
10
+ Test scenarios:
11
+ 1 signup, 1 message with quadratic voting disabled
12
+ 1 signup, 1 relayed message
13
+ */
14
+ describe("e2e tests with non quadratic voting", function test() {
15
+ const useWasm = (0, sdk_1.isArm)();
16
+ this.timeout(900000);
17
+ let maciAddresses;
18
+ let initialVoiceCreditProxyContractAddress;
19
+ let verifierContractAddress;
20
+ let signer;
21
+ let vkRegistryAddress;
22
+ const generateProofsArgs = {
23
+ outputDir: constants_1.testProofsDirPath,
24
+ tallyFile: constants_1.testTallyFilePath,
25
+ tallyZkey: constants_1.tallyVotesTestNonQvZkeyPath,
26
+ processZkey: constants_1.processMessageTestNonQvZkeyPath,
27
+ pollId: 0n,
28
+ rapidsnark: constants_1.testRapidsnarkPath,
29
+ processWitgen: constants_1.testProcessMessagesNonQvWitnessPath,
30
+ processDatFile: constants_1.testProcessMessagesNonQvWitnessDatPath,
31
+ tallyWitgen: constants_1.testTallyVotesNonQvWitnessPath,
32
+ tallyDatFile: constants_1.testTallyVotesNonQvWitnessDatPath,
33
+ coordinatorPrivateKey: constants_1.coordinatorPrivKey,
34
+ processWasm: constants_1.testProcessMessagesNonQvWasmPath,
35
+ tallyWasm: constants_1.testTallyVotesNonQvWasmPath,
36
+ useWasm,
37
+ useQuadraticVoting: false,
38
+ };
39
+ // before all tests we deploy the vk registry contract and set the verifying keys
40
+ before(async () => {
41
+ signer = await (0, sdk_1.getDefaultSigner)();
42
+ // we deploy the vk registry contract
43
+ vkRegistryAddress = await (0, sdk_1.deployVkRegistryContract)({ signer });
44
+ const [initialVoiceCreditProxy] = await (0, sdk_1.deployConstantInitialVoiceCreditProxy)({ amount: constants_1.DEFAULT_INITIAL_VOICE_CREDITS }, signer, undefined, true);
45
+ initialVoiceCreditProxyContractAddress = await initialVoiceCreditProxy.getAddress();
46
+ const verifier = await (0, sdk_1.deployVerifier)(signer, true);
47
+ verifierContractAddress = await verifier.getAddress();
48
+ // we deploy the vk registry contract
49
+ vkRegistryAddress = await (0, sdk_1.deployVkRegistryContract)({ signer });
50
+ // we set the verifying keys
51
+ await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer, sdk_1.EMode.NON_QV)), vkRegistryAddress });
52
+ });
53
+ describe("1 signup, 1 message", () => {
54
+ after(async () => {
55
+ await (0, utils_1.clean)();
56
+ });
57
+ const user = new domainobjs_1.Keypair();
58
+ before(async () => {
59
+ const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
60
+ const signupPolicyContractAddress = await signupPolicy.getAddress();
61
+ const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({ policy: signupPolicyFactory, checker: signupCheckerFactory }, signer, true);
62
+ const pollPolicyContractAddress = await pollPolicy.getAddress();
63
+ // deploy the smart contracts
64
+ maciAddresses = await (0, sdk_1.deployMaci)({
65
+ ...constants_1.deployArgs,
66
+ signer,
67
+ signupPolicyAddress: signupPolicyContractAddress,
68
+ });
69
+ const startDate = await (0, sdk_1.getBlockTimestamp)(signer);
70
+ // deploy a poll contract
71
+ await (0, sdk_1.deployPoll)({
72
+ ...constants_1.deployPollArgs,
73
+ signer,
74
+ pollStartTimestamp: startDate,
75
+ pollEndTimestamp: startDate + constants_1.pollDuration,
76
+ relayers: [await signer.getAddress()],
77
+ maciAddress: maciAddresses.maciContractAddress,
78
+ verifierContractAddress,
79
+ vkRegistryContractAddress: vkRegistryAddress,
80
+ policyContractAddress: pollPolicyContractAddress,
81
+ initialVoiceCreditProxyContractAddress,
82
+ mode: sdk_1.EMode.NON_QV,
83
+ });
84
+ });
85
+ it("should signup one user", async () => {
86
+ await (0, sdk_1.signup)({
87
+ maciAddress: maciAddresses.maciContractAddress,
88
+ maciPubKey: user.pubKey.serialize(),
89
+ sgData: constants_1.DEFAULT_SG_DATA,
90
+ signer,
91
+ });
92
+ });
93
+ it("should publish one message", async () => {
94
+ await (0, sdk_1.publish)({
95
+ pubkey: user.pubKey.serialize(),
96
+ stateIndex: 1n,
97
+ voteOptionIndex: 0n,
98
+ nonce: 1n,
99
+ pollId: 0n,
100
+ newVoteWeight: 9n,
101
+ maciAddress: maciAddresses.maciContractAddress,
102
+ salt: (0, crypto_1.genRandomSalt)(),
103
+ privateKey: user.privKey.serialize(),
104
+ signer,
105
+ });
106
+ });
107
+ it("should generate zk-SNARK proofs and verify them", async () => {
108
+ await (0, sdk_1.timeTravel)({ seconds: constants_1.pollDuration, signer });
109
+ await (0, sdk_1.mergeSignups)({ ...constants_1.mergeSignupsArgs, maciAddress: maciAddresses.maciContractAddress, signer });
110
+ const { tallyData: tallyFileData } = await (0, sdk_1.generateProofs)({
111
+ ...generateProofsArgs,
112
+ signer,
113
+ maciAddress: maciAddresses.maciContractAddress,
114
+ useQuadraticVoting: false,
115
+ });
116
+ await (0, sdk_1.proveOnChain)({ ...constants_1.proveOnChainArgs, maciAddress: maciAddresses.maciContractAddress, signer });
117
+ await (0, sdk_1.verify)({
118
+ ...(await (0, constants_1.verifyArgs)(signer)),
119
+ tallyData: tallyFileData,
120
+ maciAddress: tallyFileData.maci,
121
+ });
122
+ });
123
+ });
124
+ describe("1 signup, 1 relayed message", () => {
125
+ after(async () => {
126
+ await (0, utils_1.clean)();
127
+ });
128
+ const user = new domainobjs_1.Keypair();
129
+ before(async () => {
130
+ const [signupPolicy, , signupPolicyFactory, signupCheckerFactory] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({}, signer, true);
131
+ const signupPolicyContractAddress = await signupPolicy.getAddress();
132
+ const [pollPolicy] = await (0, sdk_1.deployFreeForAllSignUpPolicy)({ policy: signupPolicyFactory, checker: signupCheckerFactory }, signer, true);
133
+ const pollPolicyContractAddress = await pollPolicy.getAddress();
134
+ // deploy the smart contracts
135
+ maciAddresses = await (0, sdk_1.deployMaci)({
136
+ ...constants_1.deployArgs,
137
+ signer,
138
+ signupPolicyAddress: signupPolicyContractAddress,
139
+ });
140
+ const startDate = await (0, sdk_1.getBlockTimestamp)(signer);
141
+ // deploy a poll contract
142
+ await (0, sdk_1.deployPoll)({
143
+ ...constants_1.deployPollArgs,
144
+ signer,
145
+ pollStartTimestamp: startDate,
146
+ pollEndTimestamp: startDate + constants_1.pollDuration,
147
+ relayers: [await signer.getAddress()],
148
+ maciAddress: maciAddresses.maciContractAddress,
149
+ verifierContractAddress,
150
+ vkRegistryContractAddress: vkRegistryAddress,
151
+ policyContractAddress: pollPolicyContractAddress,
152
+ initialVoiceCreditProxyContractAddress,
153
+ mode: sdk_1.EMode.NON_QV,
154
+ });
155
+ });
156
+ it("should signup one user", async () => {
157
+ await (0, sdk_1.signup)({
158
+ maciAddress: maciAddresses.maciContractAddress,
159
+ maciPubKey: user.pubKey.serialize(),
160
+ sgData: constants_1.DEFAULT_SG_DATA,
161
+ signer,
162
+ });
163
+ });
164
+ it("should relay one message", async () => {
165
+ const { message, ephemeralKeypair } = (0, sdk_1.generateVote)({
166
+ pollId: 0n,
167
+ voteOptionIndex: 0n,
168
+ salt: (0, crypto_1.genRandomSalt)(),
169
+ nonce: 1n,
170
+ privateKey: user.privKey,
171
+ stateIndex: 1n,
172
+ voteWeight: 9n,
173
+ coordinatorPubKey: constants_1.coordinatorKeypair.pubKey,
174
+ maxVoteOption: BigInt(core_1.VOTE_OPTION_TREE_ARITY ** constants_1.deployPollArgs.voteOptionTreeDepth),
175
+ newPubKey: user.pubKey,
176
+ });
177
+ const messages = [
178
+ {
179
+ maciAddress: maciAddresses.maciContractAddress,
180
+ poll: 0,
181
+ data: message.data.map(String),
182
+ publicKey: ephemeralKeypair.pubKey.asArray().map(String),
183
+ hash: message.hash(ephemeralKeypair.pubKey).toString(),
184
+ },
185
+ ];
186
+ await (0, utils_1.relayTestMessages)({ messages, signer, pollId: 0, maciAddress: maciAddresses.maciContractAddress });
187
+ });
188
+ it("should generate zk-SNARK proofs and verify them", async () => {
189
+ const ipfsMessageBackupFiles = await (0, utils_1.getBackupFilenames)();
190
+ await (0, sdk_1.timeTravel)({ seconds: constants_1.pollDuration, signer });
191
+ await (0, sdk_1.mergeSignups)({ ...constants_1.mergeSignupsArgs, maciAddress: maciAddresses.maciContractAddress, signer });
192
+ const { tallyData: tallyFileData } = await (0, sdk_1.generateProofs)({
193
+ ...generateProofsArgs,
194
+ signer,
195
+ maciAddress: maciAddresses.maciContractAddress,
196
+ ipfsMessageBackupFiles,
197
+ useQuadraticVoting: false,
198
+ });
199
+ await (0, sdk_1.proveOnChain)({ ...constants_1.proveOnChainArgs, maciAddress: maciAddresses.maciContractAddress, signer });
200
+ await (0, sdk_1.verify)({
201
+ ...(await (0, constants_1.verifyArgs)(signer)),
202
+ tallyData: tallyFileData,
203
+ maciAddress: tallyFileData.maci,
204
+ });
205
+ });
206
+ });
207
+ });
208
+ //# sourceMappingURL=e2e.nonQv.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2e.nonQv.test.js","sourceRoot":"","sources":["../../../ts/__tests__/e2e.nonQv.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=e2e.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2e.test.d.ts","sourceRoot":"","sources":["../../../ts/__tests__/e2e.test.ts"],"names":[],"mappings":""}