Skip to content

Commit

Permalink
refactor: deploy maci command
Browse files Browse the repository at this point in the history
  • Loading branch information
ctrlc03 committed Feb 28, 2025
1 parent dfbc410 commit 038ec2c
Show file tree
Hide file tree
Showing 21 changed files with 999 additions and 499 deletions.
42 changes: 32 additions & 10 deletions apps/relayer/tests/deploy.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import hardhat from "hardhat";
import { deploy, deployVkRegistryContract } from "maci-cli";
import { deployVkRegistryContract } from "maci-cli";
import { Keypair } from "maci-domainobjs";
import {
EMode,
Expand All @@ -8,7 +8,11 @@ import {
setVerifyingKeys,
signup,
joinPoll,
deployMaci,
deployPoll,
deployFreeForAllSignUpGatekeeper,
deployVerifier,
deployConstantInitialVoiceCreditProxy,
} from "maci-sdk";

import {
Expand All @@ -24,6 +28,7 @@ import {
pollWitgen,
rapidsnark,
DEFAULT_VOTE_OPTIONS,
DEFAULT_INITIAL_VOICE_CREDITS,
} from "./constants.js";

interface IContractsData {
Expand Down Expand Up @@ -92,7 +97,24 @@ export class TestDeploy {
signer,
});

const maciAddresses = await deploy({ stateTreeDepth: 10, signer });
const signupGatekeeper = await deployFreeForAllSignUpGatekeeper(signer, true);
const signupGatekeeperContractAddress = await signupGatekeeper.getAddress();

const maciAddresses = await deployMaci({
stateTreeDepth: 10,
signer,
signupGatekeeperAddress: signupGatekeeperContractAddress,
});

const initialVoiceCreditProxy = await deployConstantInitialVoiceCreditProxy(
DEFAULT_INITIAL_VOICE_CREDITS,
signer,
true,
);
const initialVoiceCreditProxyContractAddress = await initialVoiceCreditProxy.getAddress();

const verifier = await deployVerifier(signer, true);
const verifierContractAddress = await verifier.getAddress();

const startDate = Math.floor(Date.now() / 1000) + 30;

Expand All @@ -106,23 +128,23 @@ export class TestDeploy {
mode: EMode.NON_QV,
relayers: [await signer.getAddress()],
signer,
verifierContractAddress: maciAddresses.verifierAddress,
maciContractAddress: maciAddresses.maciAddress,
gatekeeperContractAddress: maciAddresses.signUpGatekeeperAddress,
initialVoiceCreditProxyContractAddress: maciAddresses.initialVoiceCreditProxyAddress,
verifierContractAddress,
maciContractAddress: maciAddresses.maciContractAddress,
gatekeeperContractAddress: signupGatekeeperContractAddress,
initialVoiceCreditProxyContractAddress,
voteOptions: DEFAULT_VOTE_OPTIONS,
vkRegistryContractAddress: vkRegistry,
});

await signup({
maciAddress: maciAddresses.maciAddress,
maciAddress: maciAddresses.maciContractAddress,
maciPubKey: user.pubKey.serialize(),
sgData: DEFAULT_SG_DATA,
signer,
});

const { pollStateIndex, timestamp, voiceCredits } = await joinPoll({
maciAddress: maciAddresses.maciAddress,
maciAddress: maciAddresses.maciContractAddress,
pollId: 0n,
privateKey: user.privKey.serialize(),
stateIndex: 1n,
Expand All @@ -138,13 +160,13 @@ export class TestDeploy {

const maciState = await genMaciStateFromContract({
provider: signer.provider,
address: maciAddresses.maciAddress,
address: maciAddresses.maciContractAddress,
coordinatorKeypair,
pollId: 0n,
});

this.contractsData.maciState = maciState;
this.contractsData.maciContractAddress = maciAddresses.maciAddress;
this.contractsData.maciContractAddress = maciAddresses.maciContractAddress;
this.contractsData.stateLeafIndex = Number(pollStateIndex);
this.contractsData.timestamp = Number(timestamp);
this.contractsData.voiceCredits = Number(voiceCredits);
Expand Down
Loading

0 comments on commit 038ec2c

Please sign in to comment.