@maci-protocol/testing 0.0.0-ci.044d30d → 0.0.0-ci.0bef05d
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.
- package/build/ts/__tests__/e2e.nonQv.test.js +21 -21
- package/build/ts/__tests__/e2e.nonQv.test.js.map +1 -1
- package/build/ts/__tests__/e2e.test.js +216 -216
- package/build/ts/__tests__/e2e.test.js.map +1 -1
- package/build/ts/__tests__/integration.test.js +33 -33
- package/build/ts/__tests__/integration.test.js.map +1 -1
- package/build/ts/__tests__/keyChange.test.js +54 -54
- package/build/ts/__tests__/keyChange.test.js.map +1 -1
- package/build/ts/__tests__/maciKeys.test.js +34 -34
- package/build/ts/__tests__/maciKeys.test.js.map +1 -1
- package/build/ts/__tests__/unit/joinPoll.test.js +10 -10
- package/build/ts/__tests__/unit/joinPoll.test.js.map +1 -1
- package/build/ts/__tests__/unit/poll.test.js +5 -5
- package/build/ts/__tests__/unit/poll.test.js.map +1 -1
- package/build/ts/__tests__/unit/publish.test.js +8 -8
- package/build/ts/__tests__/unit/publish.test.js.map +1 -1
- package/build/ts/__tests__/unit/signup.test.js +8 -8
- package/build/ts/__tests__/unit/signup.test.js.map +1 -1
- package/build/ts/__tests__/unit/utils.test.js +12 -12
- package/build/ts/__tests__/unit/utils.test.js.map +1 -1
- package/build/ts/constants.d.ts +5 -5
- package/build/ts/constants.d.ts.map +1 -1
- package/build/ts/constants.js +10 -10
- package/build/ts/constants.js.map +1 -1
- package/build/ts/testingClass.d.ts.map +1 -1
- package/build/ts/testingClass.js +12 -12
- package/build/ts/testingClass.js.map +1 -1
- package/build/ts/types.d.ts +4 -4
- package/build/ts/types.d.ts.map +1 -1
- package/build/ts/user.d.ts +2 -2
- package/build/ts/user.d.ts.map +1 -1
- package/build/ts/user.js +1 -1
- package/build/ts/user.js.map +1 -1
- package/build/ts/utils.d.ts +2 -2
- package/build/ts/utils.d.ts.map +1 -1
- package/build/ts/utils.js +4 -4
- package/build/ts/utils.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -9
|
@@ -18,7 +18,7 @@ describe("e2e tests with non quadratic voting", function test() {
|
|
|
18
18
|
let initialVoiceCreditProxyContractAddress;
|
|
19
19
|
let verifierContractAddress;
|
|
20
20
|
let signer;
|
|
21
|
-
let
|
|
21
|
+
let verifyingKeysRegistryAddress;
|
|
22
22
|
const generateProofsArgs = {
|
|
23
23
|
outputDir: constants_1.testProofsDirPath,
|
|
24
24
|
tallyFile: constants_1.testTallyFilePath,
|
|
@@ -30,25 +30,25 @@ describe("e2e tests with non quadratic voting", function test() {
|
|
|
30
30
|
processDatFile: constants_1.testProcessMessagesNonQvWitnessDatPath,
|
|
31
31
|
tallyWitgen: constants_1.testTallyVotesNonQvWitnessPath,
|
|
32
32
|
tallyDatFile: constants_1.testTallyVotesNonQvWitnessDatPath,
|
|
33
|
-
coordinatorPrivateKey: constants_1.
|
|
33
|
+
coordinatorPrivateKey: constants_1.coordinatorPrivateKey,
|
|
34
34
|
processWasm: constants_1.testProcessMessagesNonQvWasmPath,
|
|
35
35
|
tallyWasm: constants_1.testTallyVotesNonQvWasmPath,
|
|
36
36
|
useWasm,
|
|
37
37
|
useQuadraticVoting: false,
|
|
38
38
|
};
|
|
39
|
-
// before all tests we deploy the
|
|
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
|
|
43
|
-
|
|
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
|
-
// we deploy the
|
|
49
|
-
|
|
48
|
+
// we deploy the verifying keys registry contract
|
|
49
|
+
verifyingKeysRegistryAddress = await (0, sdk_1.deployVerifyingKeysRegistryContract)({ signer });
|
|
50
50
|
// we set the verifying keys
|
|
51
|
-
await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer, sdk_1.EMode.NON_QV)),
|
|
51
|
+
await (0, sdk_1.setVerifyingKeys)({ ...(await (0, constants_1.verifyingKeysArgs)(signer, sdk_1.EMode.NON_QV)), verifyingKeysRegistryAddress });
|
|
52
52
|
});
|
|
53
53
|
describe("1 signup, 1 message", () => {
|
|
54
54
|
after(async () => {
|
|
@@ -76,7 +76,7 @@ describe("e2e tests with non quadratic voting", function test() {
|
|
|
76
76
|
relayers: [await signer.getAddress()],
|
|
77
77
|
maciAddress: maciAddresses.maciContractAddress,
|
|
78
78
|
verifierContractAddress,
|
|
79
|
-
|
|
79
|
+
verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
|
|
80
80
|
policyContractAddress: pollPolicyContractAddress,
|
|
81
81
|
initialVoiceCreditProxyContractAddress,
|
|
82
82
|
mode: sdk_1.EMode.NON_QV,
|
|
@@ -85,22 +85,22 @@ describe("e2e tests with non quadratic voting", function test() {
|
|
|
85
85
|
it("should signup one user", async () => {
|
|
86
86
|
await (0, sdk_1.signup)({
|
|
87
87
|
maciAddress: maciAddresses.maciContractAddress,
|
|
88
|
-
|
|
88
|
+
maciPublicKey: user.publicKey.serialize(),
|
|
89
89
|
sgData: constants_1.DEFAULT_SG_DATA,
|
|
90
90
|
signer,
|
|
91
91
|
});
|
|
92
92
|
});
|
|
93
93
|
it("should publish one message", async () => {
|
|
94
94
|
await (0, sdk_1.publish)({
|
|
95
|
-
|
|
95
|
+
publicKey: user.publicKey.serialize(),
|
|
96
96
|
stateIndex: 1n,
|
|
97
97
|
voteOptionIndex: 0n,
|
|
98
98
|
nonce: 1n,
|
|
99
99
|
pollId: 0n,
|
|
100
100
|
newVoteWeight: 9n,
|
|
101
101
|
maciAddress: maciAddresses.maciContractAddress,
|
|
102
|
-
salt: (0, crypto_1.
|
|
103
|
-
privateKey: user.
|
|
102
|
+
salt: (0, crypto_1.generateRandomSalt)(),
|
|
103
|
+
privateKey: user.privateKey.serialize(),
|
|
104
104
|
signer,
|
|
105
105
|
});
|
|
106
106
|
});
|
|
@@ -147,7 +147,7 @@ describe("e2e tests with non quadratic voting", function test() {
|
|
|
147
147
|
relayers: [await signer.getAddress()],
|
|
148
148
|
maciAddress: maciAddresses.maciContractAddress,
|
|
149
149
|
verifierContractAddress,
|
|
150
|
-
|
|
150
|
+
verifyingKeysRegistryContractAddress: verifyingKeysRegistryAddress,
|
|
151
151
|
policyContractAddress: pollPolicyContractAddress,
|
|
152
152
|
initialVoiceCreditProxyContractAddress,
|
|
153
153
|
mode: sdk_1.EMode.NON_QV,
|
|
@@ -156,7 +156,7 @@ describe("e2e tests with non quadratic voting", function test() {
|
|
|
156
156
|
it("should signup one user", async () => {
|
|
157
157
|
await (0, sdk_1.signup)({
|
|
158
158
|
maciAddress: maciAddresses.maciContractAddress,
|
|
159
|
-
|
|
159
|
+
maciPublicKey: user.publicKey.serialize(),
|
|
160
160
|
sgData: constants_1.DEFAULT_SG_DATA,
|
|
161
161
|
signer,
|
|
162
162
|
});
|
|
@@ -165,22 +165,22 @@ describe("e2e tests with non quadratic voting", function test() {
|
|
|
165
165
|
const { message, ephemeralKeypair } = (0, sdk_1.generateVote)({
|
|
166
166
|
pollId: 0n,
|
|
167
167
|
voteOptionIndex: 0n,
|
|
168
|
-
salt: (0, crypto_1.
|
|
168
|
+
salt: (0, crypto_1.generateRandomSalt)(),
|
|
169
169
|
nonce: 1n,
|
|
170
|
-
privateKey: user.
|
|
170
|
+
privateKey: user.privateKey,
|
|
171
171
|
stateIndex: 1n,
|
|
172
172
|
voteWeight: 9n,
|
|
173
|
-
|
|
173
|
+
coordinatorPublicKey: constants_1.coordinatorKeypair.publicKey,
|
|
174
174
|
maxVoteOption: BigInt(core_1.VOTE_OPTION_TREE_ARITY ** constants_1.deployPollArgs.voteOptionTreeDepth),
|
|
175
|
-
|
|
175
|
+
newPublicKey: user.publicKey,
|
|
176
176
|
});
|
|
177
177
|
const messages = [
|
|
178
178
|
{
|
|
179
179
|
maciAddress: maciAddresses.maciContractAddress,
|
|
180
180
|
poll: 0,
|
|
181
181
|
data: message.data.map(String),
|
|
182
|
-
publicKey: ephemeralKeypair.
|
|
183
|
-
hash: message.hash(ephemeralKeypair.
|
|
182
|
+
publicKey: ephemeralKeypair.publicKey.asArray().map(String),
|
|
183
|
+
hash: message.hash(ephemeralKeypair.publicKey).toString(),
|
|
184
184
|
},
|
|
185
185
|
];
|
|
186
186
|
await (0, utils_1.relayTestMessages)({ messages, signer, pollId: 0, maciAddress: maciAddresses.maciContractAddress });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e2e.nonQv.test.js","sourceRoot":"","sources":["../../../ts/__tests__/e2e.nonQv.test.ts"],"names":[],"mappings":";;AAAA,8CAA6D;AAC7D,
|
|
1
|
+
{"version":3,"file":"e2e.nonQv.test.js","sourceRoot":"","sources":["../../../ts/__tests__/e2e.nonQv.test.ts"],"names":[],"mappings":"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"}
|