@maci-protocol/coordinator 0.0.0-ci.52e6f25 → 0.0.0-ci.532ab15
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/README.md +65 -11
- package/build/hardhat.config.cjs +14 -9
- package/build/hardhat.config.cjs.map +1 -1
- package/build/hardhat.config.d.cts +12 -12
- package/build/hardhat.config.d.cts.map +1 -1
- package/build/scripts/generateKeypair.js +2 -2
- package/build/scripts/generateKeypair.js.map +1 -1
- package/build/tests/constants.d.ts +3 -3
- package/build/tests/constants.d.ts.map +1 -1
- package/build/tests/constants.js +5 -3
- package/build/tests/constants.js.map +1 -1
- package/build/tests/e2e.deploy.test.js +46 -54
- package/build/tests/e2e.deploy.test.js.map +1 -1
- package/build/tests/e2e.redis.test.d.ts +2 -0
- package/build/tests/e2e.redis.test.d.ts.map +1 -0
- package/build/tests/e2e.redis.test.js +118 -0
- package/build/tests/e2e.redis.test.js.map +1 -0
- package/build/tests/utils.d.ts +1 -1
- package/build/tests/utils.d.ts.map +1 -1
- package/build/tests/utils.js +5 -3
- package/build/tests/utils.js.map +1 -1
- package/build/ts/app.module.d.ts.map +1 -1
- package/build/ts/app.module.js +6 -0
- package/build/ts/app.module.js.map +1 -1
- package/build/ts/common/__tests__/common.test.js +43 -41
- package/build/ts/common/__tests__/common.test.js.map +1 -1
- package/build/ts/common/accountAbstraction.d.ts +5 -5
- package/build/ts/common/accountAbstraction.d.ts.map +1 -1
- package/build/ts/common/accountAbstraction.js +11 -9
- package/build/ts/common/accountAbstraction.js.map +1 -1
- package/build/ts/common/chain.d.ts +12 -6
- package/build/ts/common/chain.d.ts.map +1 -1
- package/build/ts/common/chain.js +19 -17
- package/build/ts/common/chain.js.map +1 -1
- package/build/ts/common/coordinatorKeypair.d.ts +7 -0
- package/build/ts/common/coordinatorKeypair.d.ts.map +1 -0
- package/build/ts/common/coordinatorKeypair.js +14 -0
- package/build/ts/common/coordinatorKeypair.js.map +1 -0
- package/build/ts/common/errors.d.ts +16 -12
- package/build/ts/common/errors.d.ts.map +1 -1
- package/build/ts/common/errors.js +16 -12
- package/build/ts/common/errors.js.map +1 -1
- package/build/ts/common/http.d.ts +6 -0
- package/build/ts/common/http.d.ts.map +1 -0
- package/build/ts/common/http.js +49 -0
- package/build/ts/common/http.js.map +1 -0
- package/build/ts/common/index.d.ts +1 -1
- package/build/ts/common/index.d.ts.map +1 -1
- package/build/ts/common/index.js +1 -1
- package/build/ts/common/index.js.map +1 -1
- package/build/ts/common/networks.d.ts +2 -21
- package/build/ts/common/networks.d.ts.map +1 -1
- package/build/ts/common/networks.js +39 -48
- package/build/ts/common/networks.js.map +1 -1
- package/build/ts/common/types.d.ts +2 -2
- package/build/ts/common/types.d.ts.map +1 -1
- package/build/ts/deployer/__tests__/deployer.controller.test.js +23 -25
- package/build/ts/deployer/__tests__/deployer.controller.test.js.map +1 -1
- package/build/ts/deployer/__tests__/deployer.service.test.js +186 -80
- package/build/ts/deployer/__tests__/deployer.service.test.js.map +1 -1
- package/build/ts/deployer/__tests__/utils.d.ts +10 -14
- package/build/ts/deployer/__tests__/utils.d.ts.map +1 -1
- package/build/ts/deployer/__tests__/utils.js +14 -23
- package/build/ts/deployer/__tests__/utils.js.map +1 -1
- package/build/ts/deployer/deployer.controller.d.ts.map +1 -1
- package/build/ts/deployer/deployer.controller.js +19 -6
- package/build/ts/deployer/deployer.controller.js.map +1 -1
- package/build/ts/deployer/deployer.service.d.ts +17 -8
- package/build/ts/deployer/deployer.service.d.ts.map +1 -1
- package/build/ts/deployer/deployer.service.js +227 -63
- package/build/ts/deployer/deployer.service.js.map +1 -1
- package/build/ts/deployer/dto.d.ts +3 -3
- package/build/ts/deployer/dto.d.ts.map +1 -1
- package/build/ts/deployer/dto.js +5 -5
- package/build/ts/deployer/dto.js.map +1 -1
- package/build/ts/deployer/types.d.ts +37 -30
- package/build/ts/deployer/types.d.ts.map +1 -1
- package/build/ts/file/__tests__/file.service.test.js +9 -9
- package/build/ts/file/__tests__/file.service.test.js.map +1 -1
- package/build/ts/file/file.service.d.ts +2 -2
- package/build/ts/file/file.service.d.ts.map +1 -1
- package/build/ts/file/file.service.js +9 -8
- package/build/ts/file/file.service.js.map +1 -1
- package/build/ts/file/types.d.ts +2 -2
- package/build/ts/file/types.d.ts.map +1 -1
- package/build/ts/health/__tests__/health.controller.test.d.ts +2 -0
- package/build/ts/health/__tests__/health.controller.test.d.ts.map +1 -0
- package/build/ts/health/__tests__/health.controller.test.js +52 -0
- package/build/ts/health/__tests__/health.controller.test.js.map +1 -0
- package/build/ts/health/__tests__/health.service.test.d.ts +2 -0
- package/build/ts/health/__tests__/health.service.test.d.ts.map +1 -0
- package/build/ts/health/__tests__/health.service.test.js +101 -0
- package/build/ts/health/__tests__/health.service.test.js.map +1 -0
- package/build/ts/health/health.controller.d.ts +16 -0
- package/build/ts/health/health.controller.d.ts.map +1 -0
- package/build/ts/health/health.controller.js +43 -0
- package/build/ts/health/health.controller.js.map +1 -0
- package/build/ts/health/health.module.d.ts +3 -0
- package/build/ts/health/health.module.d.ts.map +1 -0
- package/build/ts/health/health.module.js +22 -0
- package/build/ts/health/health.module.js.map +1 -0
- package/build/ts/health/health.service.d.ts +42 -0
- package/build/ts/health/health.service.d.ts.map +1 -0
- package/build/ts/health/health.service.js +176 -0
- package/build/ts/health/health.service.js.map +1 -0
- package/build/ts/health/types.d.ts +87 -0
- package/build/ts/health/types.d.ts.map +1 -0
- package/build/ts/health/types.js +2 -0
- package/build/ts/health/types.js.map +1 -0
- package/build/ts/jest/__mocks__/@openzeppelin/merkle-tree.d.ts +11 -0
- package/build/ts/jest/__mocks__/@openzeppelin/merkle-tree.d.ts.map +1 -0
- package/build/ts/jest/__mocks__/@openzeppelin/merkle-tree.js +12 -0
- package/build/ts/jest/__mocks__/@openzeppelin/merkle-tree.js.map +1 -0
- package/build/ts/main.js +1 -1
- package/build/ts/proof/__tests__/proof.controller.test.js +5 -7
- package/build/ts/proof/__tests__/proof.controller.test.js.map +1 -1
- package/build/ts/proof/__tests__/proof.gateway.test.js +2 -4
- package/build/ts/proof/__tests__/proof.gateway.test.js.map +1 -1
- package/build/ts/proof/__tests__/proof.service.test.js +27 -73
- package/build/ts/proof/__tests__/proof.service.test.js.map +1 -1
- package/build/ts/proof/dto.d.ts +4 -9
- package/build/ts/proof/dto.d.ts.map +1 -1
- package/build/ts/proof/dto.js +8 -24
- package/build/ts/proof/dto.js.map +1 -1
- package/build/ts/proof/proof.controller.d.ts.map +1 -1
- package/build/ts/proof/proof.controller.js +38 -15
- package/build/ts/proof/proof.controller.js.map +1 -1
- package/build/ts/proof/proof.module.d.ts.map +1 -1
- package/build/ts/proof/proof.module.js +1 -0
- package/build/ts/proof/proof.module.js.map +1 -1
- package/build/ts/proof/proof.service.d.ts +2 -4
- package/build/ts/proof/proof.service.d.ts.map +1 -1
- package/build/ts/proof/proof.service.js +22 -24
- package/build/ts/proof/proof.service.js.map +1 -1
- package/build/ts/proof/types.d.ts +5 -9
- package/build/ts/proof/types.d.ts.map +1 -1
- package/build/ts/proof/types.js.map +1 -1
- package/build/ts/redis/__tests__/redis.service.test.d.ts +2 -0
- package/build/ts/redis/__tests__/redis.service.test.d.ts.map +1 -0
- package/build/ts/redis/__tests__/redis.service.test.js +148 -0
- package/build/ts/redis/__tests__/redis.service.test.js.map +1 -0
- package/build/ts/redis/redis.module.d.ts +3 -0
- package/build/ts/redis/redis.module.d.ts.map +1 -0
- package/build/ts/redis/redis.module.js +18 -0
- package/build/ts/redis/redis.module.js.map +1 -0
- package/build/ts/redis/redis.service.d.ts +53 -0
- package/build/ts/redis/redis.service.d.ts.map +1 -0
- package/build/ts/redis/redis.service.js +99 -0
- package/build/ts/redis/redis.service.js.map +1 -0
- package/build/ts/redis/types.d.ts +66 -0
- package/build/ts/redis/types.d.ts.map +1 -0
- package/build/ts/redis/types.js +2 -0
- package/build/ts/redis/types.js.map +1 -0
- package/build/ts/redis/utils.d.ts +20 -0
- package/build/ts/redis/utils.d.ts.map +1 -0
- package/build/ts/redis/utils.js +27 -0
- package/build/ts/redis/utils.js.map +1 -0
- package/build/ts/scheduler/__tests__/scheduler.controller.test.d.ts +2 -0
- package/build/ts/scheduler/__tests__/scheduler.controller.test.d.ts.map +1 -0
- package/build/ts/scheduler/__tests__/scheduler.controller.test.js +62 -0
- package/build/ts/scheduler/__tests__/scheduler.controller.test.js.map +1 -0
- package/build/ts/scheduler/__tests__/scheduler.service.test.d.ts +2 -0
- package/build/ts/scheduler/__tests__/scheduler.service.test.d.ts.map +1 -0
- package/build/ts/scheduler/__tests__/scheduler.service.test.js +369 -0
- package/build/ts/scheduler/__tests__/scheduler.service.test.js.map +1 -0
- package/build/ts/scheduler/dto.d.ts +41 -0
- package/build/ts/scheduler/dto.d.ts.map +1 -0
- package/build/ts/scheduler/dto.js +115 -0
- package/build/ts/scheduler/dto.js.map +1 -0
- package/build/ts/scheduler/scheduler.controller.d.ts +32 -0
- package/build/ts/scheduler/scheduler.controller.d.ts.map +1 -0
- package/build/ts/scheduler/scheduler.controller.js +118 -0
- package/build/ts/scheduler/scheduler.controller.js.map +1 -0
- package/build/ts/scheduler/scheduler.module.d.ts +3 -0
- package/build/ts/scheduler/scheduler.module.d.ts.map +1 -0
- package/build/ts/scheduler/scheduler.module.js +24 -0
- package/build/ts/scheduler/scheduler.module.js.map +1 -0
- package/build/ts/scheduler/scheduler.service.d.ts +71 -0
- package/build/ts/scheduler/scheduler.service.d.ts.map +1 -0
- package/build/ts/scheduler/scheduler.service.js +297 -0
- package/build/ts/scheduler/scheduler.service.js.map +1 -0
- package/build/ts/scheduler/types.d.ts +65 -0
- package/build/ts/scheduler/types.d.ts.map +1 -0
- package/build/ts/scheduler/types.js +2 -0
- package/build/ts/scheduler/types.js.map +1 -0
- package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.js +2 -2
- package/build/ts/sessionKeys/__tests__/sessionKeys.controller.test.js.map +1 -1
- package/build/ts/sessionKeys/__tests__/sessionKeys.service.test.js +34 -19
- package/build/ts/sessionKeys/__tests__/sessionKeys.service.test.js.map +1 -1
- package/build/ts/sessionKeys/__tests__/utils.d.ts +1 -1
- package/build/ts/sessionKeys/__tests__/utils.d.ts.map +1 -1
- package/build/ts/sessionKeys/__tests__/utils.js +7 -6
- package/build/ts/sessionKeys/__tests__/utils.js.map +1 -1
- package/build/ts/sessionKeys/provider/KernelEIP1193Provider.d.ts +1 -1
- package/build/ts/sessionKeys/provider/KernelEIP1193Provider.d.ts.map +1 -1
- package/build/ts/sessionKeys/sessionKeys.service.d.ts +4 -3
- package/build/ts/sessionKeys/sessionKeys.service.d.ts.map +1 -1
- package/build/ts/sessionKeys/sessionKeys.service.js +1 -2
- package/build/ts/sessionKeys/sessionKeys.service.js.map +1 -1
- package/build/ts/subgraph/__tests__/subgraph.controller.test.js +3 -3
- package/build/ts/subgraph/__tests__/subgraph.controller.test.js.map +1 -1
- package/build/ts/subgraph/__tests__/subgraph.gateway.test.js +2 -2
- package/build/ts/subgraph/__tests__/subgraph.gateway.test.js.map +1 -1
- package/build/ts/subgraph/__tests__/subgraph.service.test.js +5 -5
- package/build/ts/subgraph/__tests__/subgraph.service.test.js.map +1 -1
- package/build/ts/subgraph/dto.d.ts +2 -2
- package/build/ts/subgraph/dto.d.ts.map +1 -1
- package/build/ts/subgraph/dto.js +3 -3
- package/build/ts/subgraph/dto.js.map +1 -1
- package/build/ts/subgraph/subgraph.controller.d.ts.map +1 -1
- package/build/ts/subgraph/subgraph.controller.js +8 -3
- package/build/ts/subgraph/subgraph.controller.js.map +1 -1
- package/build/ts/subgraph/subgraph.service.d.ts +4 -0
- package/build/ts/subgraph/subgraph.service.d.ts.map +1 -1
- package/build/ts/subgraph/subgraph.service.js +23 -10
- package/build/ts/subgraph/subgraph.service.js.map +1 -1
- package/build/ts/subgraph/types.d.ts +2 -2
- package/build/ts/subgraph/types.d.ts.map +1 -1
- package/build/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +42 -35
- package/build/tests/e2e.aa.test.d.ts +0 -2
- package/build/tests/e2e.aa.test.d.ts.map +0 -1
- package/build/tests/e2e.aa.test.js +0 -98
- package/build/tests/e2e.aa.test.js.map +0 -1
package/README.md
CHANGED
|
@@ -7,18 +7,72 @@ Please refer to [Offchain relayer service documentation](https://maci.pse.dev/do
|
|
|
7
7
|
1. [Node.js](https://nodejs.org/en) version 20.0.0.
|
|
8
8
|
2. [pnpm](https://pnpm.io/installation) package manager.
|
|
9
9
|
3. [rapidsnark](https://github.com/iden3/rapidsnark) program.
|
|
10
|
+
4. (Optional) [Redis](https://redis.io/docs/latest/operate/oss_and_stack/install/archive/install-redis/) database if you want to use the scheduler module.
|
|
10
11
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
12
|
+
- Please note that the build process might fail in a Windows environment. If you are using Windows, it is recommended to use Windows Subsystem for Linux (WSL) or a virtual machine with a Linux distribution.
|
|
13
|
+
|
|
14
|
+
## Install and build it from source
|
|
15
|
+
|
|
16
|
+
1. Install dependencies and build the project
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
pnpm install
|
|
20
|
+
pnpm run build
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
2. Install Redis database (if the scheduler module is going to be used) using [the official guide](https://redis.io/docs/latest/operate/oss_and_stack/install/archive/install-redis/)
|
|
24
|
+
|
|
25
|
+
3. Download the zkeys
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
pnpm run download-zkeys:test
|
|
29
|
+
# for production zkeys
|
|
30
|
+
# pnpm run download-zkeys:ceremony
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
4. Move to the coordinator service directory
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
cd apps/coordinator
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
5. Generate the RSA key pair to encrypt values throughout the communication workflow
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
pnpm run generate-keypair
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
6. Setup .env file (see `.env.example` for reference)
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
cp .env.example .env
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
7. Run the NestJS application
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
pnpm run start
|
|
55
|
+
# or
|
|
56
|
+
pnpm run start:prod
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Docker
|
|
60
|
+
|
|
61
|
+
Remember to run it from the monorepo root directory.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Build docker
|
|
65
|
+
docker compose -f apps/coordinator/docker-compose.yml build
|
|
66
|
+
|
|
67
|
+
# Run container detached
|
|
68
|
+
docker compose -f apps/coordinator/docker-compose.yml up -d
|
|
69
|
+
|
|
70
|
+
# Enter the container
|
|
71
|
+
docker compose -f apps/coordinator/docker-compose.yml exec coordinator-service /bin/sh
|
|
72
|
+
|
|
73
|
+
# Stop container
|
|
74
|
+
docker compose -f apps/coordinator/docker-compose.yml down
|
|
75
|
+
```
|
|
22
76
|
|
|
23
77
|
## Subgraph deployment
|
|
24
78
|
|
package/build/hardhat.config.cjs
CHANGED
|
@@ -7,20 +7,25 @@ dotenv.config();
|
|
|
7
7
|
const parentDir = __dirname.includes("build") ? ".." : "";
|
|
8
8
|
const TEST_MNEMONIC = "test test test test test test test test test test test junk";
|
|
9
9
|
module.exports = {
|
|
10
|
-
defaultNetwork: "
|
|
10
|
+
defaultNetwork: "localhost",
|
|
11
11
|
networks: {
|
|
12
|
-
|
|
12
|
+
localhost: {
|
|
13
13
|
url: process.env.COORDINATOR_RPC_URL || "http://localhost:8545",
|
|
14
|
-
accounts:
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
14
|
+
accounts: process.env.PRIVATE_KEY
|
|
15
|
+
? [process.env.PRIVATE_KEY]
|
|
16
|
+
: {
|
|
17
|
+
mnemonic: process.env.MNEMONIC || TEST_MNEMONIC,
|
|
18
|
+
path: "m/44'/60'/0'/0",
|
|
19
|
+
initialIndex: process.env.INITIAL_INDEX ? Number(process.env.INITIAL_INDEX) : 0,
|
|
20
|
+
count: 20,
|
|
21
|
+
},
|
|
21
22
|
},
|
|
22
23
|
hardhat: {
|
|
23
24
|
loggingEnabled: false,
|
|
25
|
+
mining: {
|
|
26
|
+
auto: false,
|
|
27
|
+
interval: 5000,
|
|
28
|
+
},
|
|
24
29
|
},
|
|
25
30
|
},
|
|
26
31
|
solidity: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hardhat.config.cjs","sourceRoot":"","sources":["../hardhat.config.cjs"],"names":[],"mappings":";AAAA,uDAAuD;AACvD,OAAO,CAAC,kCAAkC,CAAC,CAAC;AAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEjC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAE7B,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1D,MAAM,aAAa,GAAG,6DAA6D,CAAC;AAEpF,MAAM,CAAC,OAAO,GAAG;IACf,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"hardhat.config.cjs","sourceRoot":"","sources":["../hardhat.config.cjs"],"names":[],"mappings":";AAAA,uDAAuD;AACvD,OAAO,CAAC,kCAAkC,CAAC,CAAC;AAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEjC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAE7B,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1D,MAAM,aAAa,GAAG,6DAA6D,CAAC;AAEpF,MAAM,CAAC,OAAO,GAAG;IACf,cAAc,EAAE,WAAW;IAC3B,QAAQ,EAAE;QACR,SAAS,EAAE;YACT,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,uBAAuB;YAC/D,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;gBAC/B,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;gBAC3B,CAAC,CAAC;oBACE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,aAAa;oBAC/C,IAAI,EAAE,gBAAgB;oBACtB,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC/E,KAAK,EAAE,EAAE;iBACV;SACN;QACD,OAAO,EAAE;YACP,cAAc,EAAE,KAAK;YACrB,MAAM,EAAE;gBACN,IAAI,EAAE,KAAK;gBACX,QAAQ,EAAE,IAAI;aACf;SACF;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,QAAQ;KAClB;IACD,KAAK,EAAE;QACL,OAAO,EAAE,IAAI,CAAC,OAAO,CACnB,SAAS,EACT,SAAS,EACT,mFAAmF,CACpF;QACD,SAAS,EAAE,IAAI,CAAC,OAAO,CACrB,SAAS,EACT,SAAS,EACT,mFAAmF,CACpF;KACF;CACF,CAAC"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
-
declare const TEST_MNEMONIC: "test test test test test test test test test test test junk";
|
|
2
1
|
export let defaultNetwork: string;
|
|
3
2
|
export namespace networks {
|
|
4
|
-
namespace
|
|
3
|
+
namespace localhost {
|
|
5
4
|
let url: string;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
let loggingEnabled: boolean;
|
|
5
|
+
let accounts: string[] | {
|
|
6
|
+
mnemonic: string;
|
|
7
|
+
path: string;
|
|
8
|
+
initialIndex: number;
|
|
9
|
+
count: number;
|
|
10
|
+
};
|
|
13
11
|
}
|
|
14
12
|
namespace hardhat {
|
|
15
|
-
let
|
|
16
|
-
|
|
13
|
+
let loggingEnabled: boolean;
|
|
14
|
+
namespace mining {
|
|
15
|
+
let auto: boolean;
|
|
16
|
+
let interval: number;
|
|
17
|
+
}
|
|
17
18
|
}
|
|
18
19
|
}
|
|
19
20
|
export namespace solidity {
|
|
@@ -23,5 +24,4 @@ export namespace paths {
|
|
|
23
24
|
let sources: string;
|
|
24
25
|
let artifacts: string;
|
|
25
26
|
}
|
|
26
|
-
export {};
|
|
27
27
|
//# sourceMappingURL=hardhat.config.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hardhat.config.d.cts","sourceRoot":"","sources":["../hardhat.config.cjs"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hardhat.config.d.cts","sourceRoot":"","sources":["../hardhat.config.cjs"],"names":[],"mappings":""}
|
|
@@ -17,8 +17,8 @@ export async function generateRsaKeypair() {
|
|
|
17
17
|
const publicKey = keypair.publicKey.export({ type: "pkcs1", format: "pem" });
|
|
18
18
|
const privateKey = keypair.privateKey.export({ type: "pkcs1", format: "pem" });
|
|
19
19
|
await Promise.all([
|
|
20
|
-
fs.promises.writeFile(path.resolve(process.env.COORDINATOR_PUBLIC_KEY_PATH), publicKey),
|
|
21
|
-
fs.promises.writeFile(path.resolve(process.env.COORDINATOR_PRIVATE_KEY_PATH), privateKey),
|
|
20
|
+
fs.promises.writeFile(path.resolve(process.env.COORDINATOR_PUBLIC_KEY_PATH || "./public.key"), publicKey),
|
|
21
|
+
fs.promises.writeFile(path.resolve(process.env.COORDINATOR_PRIVATE_KEY_PATH || "./private.key"), privateKey),
|
|
22
22
|
]);
|
|
23
23
|
}
|
|
24
24
|
generateRsaKeypair();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateKeypair.js","sourceRoot":"","sources":["../../scripts/generateKeypair.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,yCAAyC;AACzC,iDAAiD;AACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACnE,wCAAwC;AACxC,gDAAgD;AAEhD,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;AAE1G,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE;QACzC,aAAa,EAAE,cAAc;KAC9B,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAE/E,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"generateKeypair.js","sourceRoot":"","sources":["../../scripts/generateKeypair.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,yCAAyC;AACzC,iDAAiD;AACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACnE,wCAAwC;AACxC,gDAAgD;AAEhD,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;AAE1G,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE;QACzC,aAAa,EAAE,cAAc;KAC9B,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAE/E,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,cAAc,CAAC,EAAE,SAAS,CAAC;QACzG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,IAAI,eAAe,CAAC,EAAE,UAAU,CAAC;KAC7G,CAAC,CAAC;AACL,CAAC;AAED,kBAAkB,EAAE,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export declare const pollJoiningTestZkeyPath
|
|
2
|
-
export declare const testPollJoiningWasmPath
|
|
3
|
-
export declare const testPollJoiningWitnessPath
|
|
1
|
+
export declare const pollJoiningTestZkeyPath: string;
|
|
2
|
+
export declare const testPollJoiningWasmPath: string;
|
|
3
|
+
export declare const testPollJoiningWitnessPath: string;
|
|
4
4
|
export declare const testRapidsnarkPath: string;
|
|
5
5
|
export declare const zeroUint256Encoded: string;
|
|
6
6
|
export declare const oneUint256Encoded: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../tests/constants.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../tests/constants.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,uBAAuB,QAA+E,CAAC;AACpH,eAAO,MAAM,uBAAuB,QAGnC,CAAC;AACF,eAAO,MAAM,0BAA0B,QAGtC,CAAC;AACF,eAAO,MAAM,kBAAkB,QAAyC,CAAC;AAEzE,eAAO,MAAM,kBAAkB,QAAsD,CAAC;AACtF,eAAO,MAAM,iBAAiB,QAAsD,CAAC"}
|
package/build/tests/constants.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { AbiCoder } from "ethers";
|
|
2
2
|
import { homedir } from "os";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export const
|
|
3
|
+
import path from "path";
|
|
4
|
+
const root = path.resolve(__dirname, "../../..");
|
|
5
|
+
export const pollJoiningTestZkeyPath = path.resolve(root, "./zkeys/PollJoining_10_test/PollJoining_10_test.0.zkey");
|
|
6
|
+
export const testPollJoiningWasmPath = path.resolve(root, "./zkeys/PollJoining_10_test/PollJoining_10_test_js/PollJoining_10_test.wasm");
|
|
7
|
+
export const testPollJoiningWitnessPath = path.resolve(root, "./zkeys/PollJoining_10_test/PollJoining_10_test_cpp/PollJoining_10_test");
|
|
6
8
|
export const testRapidsnarkPath = `${homedir()}/rapidsnark/build/prover`;
|
|
7
9
|
export const zeroUint256Encoded = AbiCoder.defaultAbiCoder().encode(["uint256"], [0]);
|
|
8
10
|
export const oneUint256Encoded = AbiCoder.defaultAbiCoder().encode(["uint256"], [1]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../tests/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../tests/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AAEjD,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,wDAAwD,CAAC,CAAC;AACpH,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC,OAAO,CACjD,IAAI,EACJ,6EAA6E,CAC9E,CAAC;AACF,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC,OAAO,CACpD,IAAI,EACJ,yEAAyE,CAC1E,CAAC;AACF,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,OAAO,EAAE,0BAA0B,CAAC;AAEzE,MAAM,CAAC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACtF,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Keypair } from "@maci-protocol/domainobjs";
|
|
2
|
-
import {
|
|
2
|
+
import { isArm, joinPoll, signup, sleepUntil, ESupportedChains, ContractStorage } from "@maci-protocol/sdk";
|
|
3
3
|
import { ValidationPipe } from "@nestjs/common";
|
|
4
4
|
import { Test } from "@nestjs/testing";
|
|
5
5
|
import dotenv from "dotenv";
|
|
@@ -7,52 +7,46 @@ import { io } from "socket.io-client";
|
|
|
7
7
|
import { zeroAddress } from "viem";
|
|
8
8
|
import path from "path";
|
|
9
9
|
import { AppModule } from "../ts/app.module";
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import { coordinatorMACIKeypair, pollStartDateExtraSeconds, testMaciDeploymentConfig, testPollDeploymentConfig, } from "../ts/deployer/__tests__/utils";
|
|
10
|
+
import { getSigner } from "../ts/common";
|
|
11
|
+
import { pollDuration, pollStartDateExtraSeconds, testMaciDeploymentConfig, testPollDeploymentConfig, } from "../ts/deployer/__tests__/utils";
|
|
13
12
|
import { DeployerModule } from "../ts/deployer/deployer.module";
|
|
14
13
|
import { FileModule } from "../ts/file/file.module";
|
|
15
14
|
import { ProofModule } from "../ts/proof/proof.module";
|
|
16
|
-
import { getKernelAccount } from "../ts/sessionKeys/__tests__/utils";
|
|
17
15
|
import { SessionKeysModule } from "../ts/sessionKeys/sessionKeys.module";
|
|
18
16
|
import { pollJoiningTestZkeyPath, testPollJoiningWasmPath, testPollJoiningWitnessPath, testRapidsnarkPath, zeroUint256Encoded, } from "./constants";
|
|
19
|
-
import {
|
|
17
|
+
import { getAuthorizationHeader } from "./utils";
|
|
20
18
|
dotenv.config();
|
|
21
19
|
jest.setTimeout(700000); // Sets timeout to 700 seconds
|
|
22
|
-
const
|
|
23
|
-
const
|
|
20
|
+
const PORT = process.env.COORDINATOR_PORT || 3001;
|
|
21
|
+
const TEST_URL = `http://localhost:${PORT}/v1`;
|
|
22
|
+
const CHAIN = ESupportedChains.Localhost;
|
|
24
23
|
const REGEX_SUBGRAPH = /^https:\/\/api\.studio\.thegraph\.com\/query\/\d+\/maci-subgraph\/v0\.0\.\d+$/;
|
|
25
24
|
const NUM_USERS = 1;
|
|
26
25
|
const VOTE_OPTIONS = {
|
|
27
26
|
"0": 0,
|
|
28
27
|
"1": 0,
|
|
29
28
|
};
|
|
29
|
+
const useWasm = isArm();
|
|
30
30
|
describe("E2E Deployment Tests", () => {
|
|
31
31
|
let signer;
|
|
32
32
|
let encryptedHeader;
|
|
33
|
-
let sessionKeyAddress;
|
|
34
33
|
let app;
|
|
35
34
|
let socket;
|
|
36
|
-
const publicClient = getPublicClient(CHAIN);
|
|
37
35
|
let maciAddress;
|
|
36
|
+
let maciCreatedAt;
|
|
38
37
|
let pollId;
|
|
39
|
-
const pollDuration = 60;
|
|
40
38
|
// set up coordinator address
|
|
41
39
|
beforeAll(async () => {
|
|
42
|
-
signer = getSigner(CHAIN);
|
|
40
|
+
signer = await getSigner(CHAIN);
|
|
43
41
|
encryptedHeader = await getAuthorizationHeader(signer);
|
|
44
42
|
process.env.COORDINATOR_ADDRESSES = await signer.getAddress();
|
|
45
|
-
await rechargeGasIfNeeded(process.env.COORDINATOR_ADDRESSES, "0.007", "0.007");
|
|
46
|
-
});
|
|
47
|
-
// set up NestJS app
|
|
48
|
-
beforeAll(async () => {
|
|
49
43
|
const moduleFixture = await Test.createTestingModule({
|
|
50
44
|
imports: [AppModule, FileModule, DeployerModule, ProofModule, SessionKeysModule],
|
|
51
45
|
}).compile();
|
|
52
46
|
app = moduleFixture.createNestApplication();
|
|
53
47
|
app.useGlobalPipes(new ValidationPipe({ transform: true }));
|
|
54
48
|
await app.init();
|
|
55
|
-
await app.listen(
|
|
49
|
+
await app.listen(PORT);
|
|
56
50
|
});
|
|
57
51
|
afterAll(async () => {
|
|
58
52
|
await app.close();
|
|
@@ -78,7 +72,14 @@ describe("E2E Deployment Tests", () => {
|
|
|
78
72
|
afterEach(() => {
|
|
79
73
|
socket.disconnect();
|
|
80
74
|
});
|
|
81
|
-
|
|
75
|
+
test("should return true in the health check", async () => {
|
|
76
|
+
const response = await fetch(`${TEST_URL}/health/check`, { method: "GET" });
|
|
77
|
+
const body = (await response.json());
|
|
78
|
+
expect(response.status).toBe(200);
|
|
79
|
+
expect(body.rapidsnark.rapidsnarkIsExecutable).toBe(true);
|
|
80
|
+
expect(body.zkeysDirectory.zkeysDirectoryExists).toBe(true);
|
|
81
|
+
expect(body.coordinatorWalletFunds.fundsInNetworks[0].address).not.toBe(zeroAddress);
|
|
82
|
+
});
|
|
82
83
|
test("should retrieve RSA public key", async () => {
|
|
83
84
|
const response = await fetch(`${TEST_URL}/proof/publicKey`, {
|
|
84
85
|
method: "GET",
|
|
@@ -86,7 +87,6 @@ describe("E2E Deployment Tests", () => {
|
|
|
86
87
|
const body = (await response.json());
|
|
87
88
|
expect(response.status).toBe(200);
|
|
88
89
|
expect(body.publicKey).toBeDefined();
|
|
89
|
-
// this RSA should be used in the encrypted auth header and the encrypted coordinator maci private key
|
|
90
90
|
});
|
|
91
91
|
test("should retrieve the session key address", async () => {
|
|
92
92
|
const response = await fetch(`${TEST_URL}/session-keys/generate`, {
|
|
@@ -98,20 +98,8 @@ describe("E2E Deployment Tests", () => {
|
|
|
98
98
|
const body = (await response.json());
|
|
99
99
|
expect(response.status).toBe(200);
|
|
100
100
|
expect(body.sessionKeyAddress).not.toBe(zeroAddress);
|
|
101
|
-
// save them for next tests
|
|
102
|
-
sessionKeyAddress = body.sessionKeyAddress;
|
|
103
|
-
const sessionKeyAccount = await getKernelAccount(sessionKeyAddress);
|
|
104
|
-
await rechargeGasIfNeeded(sessionKeyAccount.address, "0.03", "0.03");
|
|
105
101
|
});
|
|
106
102
|
test("should deploy MACI correctly", async () => {
|
|
107
|
-
const config = testMaciDeploymentConfig;
|
|
108
|
-
config.VerifyingKeysRegistry.args.stateTreeDepth = config.VerifyingKeysRegistry.args.stateTreeDepth.toString();
|
|
109
|
-
config.VerifyingKeysRegistry.args.pollStateTreeDepth =
|
|
110
|
-
config.VerifyingKeysRegistry.args.pollStateTreeDepth.toString();
|
|
111
|
-
config.VerifyingKeysRegistry.args.tallyProcessingStateTreeDepth =
|
|
112
|
-
config.VerifyingKeysRegistry.args.tallyProcessingStateTreeDepth.toString();
|
|
113
|
-
config.VerifyingKeysRegistry.args.voteOptionTreeDepth =
|
|
114
|
-
config.VerifyingKeysRegistry.args.voteOptionTreeDepth.toString();
|
|
115
103
|
const response = await fetch(`${TEST_URL}/deploy/maci`, {
|
|
116
104
|
method: "POST",
|
|
117
105
|
headers: {
|
|
@@ -120,21 +108,22 @@ describe("E2E Deployment Tests", () => {
|
|
|
120
108
|
},
|
|
121
109
|
body: JSON.stringify({
|
|
122
110
|
chain: CHAIN,
|
|
123
|
-
config,
|
|
111
|
+
config: testMaciDeploymentConfig,
|
|
124
112
|
}),
|
|
125
113
|
});
|
|
126
114
|
const body = (await response.json());
|
|
127
115
|
expect(response.status).toBe(201);
|
|
128
116
|
expect(body.address).not.toBe(zeroAddress);
|
|
129
117
|
// save them for next tests
|
|
118
|
+
const blockNumber = await signer.provider.getBlockNumber();
|
|
119
|
+
maciCreatedAt = BigInt(blockNumber);
|
|
130
120
|
maciAddress = body.address;
|
|
131
121
|
});
|
|
132
122
|
test("should deploy a poll correctly", async () => {
|
|
133
|
-
|
|
134
|
-
config.voteOptions = config.voteOptions.toString();
|
|
123
|
+
testPollDeploymentConfig.voteOptions = testPollDeploymentConfig.voteOptions.toString();
|
|
135
124
|
const startDate = Math.floor(Date.now() / 1000) + pollStartDateExtraSeconds;
|
|
136
|
-
|
|
137
|
-
|
|
125
|
+
testPollDeploymentConfig.startDate = startDate;
|
|
126
|
+
testPollDeploymentConfig.endDate = startDate + pollDuration;
|
|
138
127
|
const response = await fetch(`${TEST_URL}/deploy/poll`, {
|
|
139
128
|
method: "POST",
|
|
140
129
|
headers: {
|
|
@@ -143,7 +132,7 @@ describe("E2E Deployment Tests", () => {
|
|
|
143
132
|
},
|
|
144
133
|
body: JSON.stringify({
|
|
145
134
|
chain: CHAIN,
|
|
146
|
-
config,
|
|
135
|
+
config: testPollDeploymentConfig,
|
|
147
136
|
}),
|
|
148
137
|
});
|
|
149
138
|
const body = (await response.json());
|
|
@@ -153,7 +142,7 @@ describe("E2E Deployment Tests", () => {
|
|
|
153
142
|
pollId = BigInt(body.pollId);
|
|
154
143
|
});
|
|
155
144
|
test("should allow voting on a poll", async () => {
|
|
156
|
-
await
|
|
145
|
+
await sleepUntil(testPollDeploymentConfig.startDate * 1000);
|
|
157
146
|
for (let i = 0; i < NUM_USERS; i += 1) {
|
|
158
147
|
const keypairUser = new Keypair();
|
|
159
148
|
const userPublicKey = keypairUser.publicKey.serialize();
|
|
@@ -173,12 +162,11 @@ describe("E2E Deployment Tests", () => {
|
|
|
173
162
|
await joinPoll({
|
|
174
163
|
maciAddress,
|
|
175
164
|
privateKey: userPrivateKey,
|
|
176
|
-
stateIndex: 1n,
|
|
177
165
|
pollId: BigInt(pollId),
|
|
178
166
|
pollJoiningZkey: pollJoiningTestZkeyPath,
|
|
179
|
-
useWasm
|
|
167
|
+
useWasm,
|
|
180
168
|
pollWasm: testPollJoiningWasmPath,
|
|
181
|
-
|
|
169
|
+
pollWitnessGenerator: testPollJoiningWitnessPath,
|
|
182
170
|
rapidsnark: testRapidsnarkPath,
|
|
183
171
|
sgDataArg: zeroUint256Encoded,
|
|
184
172
|
ivcpDataArg: zeroUint256Encoded,
|
|
@@ -187,7 +175,6 @@ describe("E2E Deployment Tests", () => {
|
|
|
187
175
|
}
|
|
188
176
|
});
|
|
189
177
|
test("should deploy a subgraph correctly", async () => {
|
|
190
|
-
const blockNumber = await publicClient.getBlockNumber();
|
|
191
178
|
const response = await fetch(`${TEST_URL}/subgraph/deploy`, {
|
|
192
179
|
method: "POST",
|
|
193
180
|
headers: {
|
|
@@ -196,20 +183,28 @@ describe("E2E Deployment Tests", () => {
|
|
|
196
183
|
},
|
|
197
184
|
body: JSON.stringify({
|
|
198
185
|
maciContractAddress: maciAddress,
|
|
199
|
-
startBlock: Number(
|
|
200
|
-
network:
|
|
186
|
+
startBlock: Number(maciCreatedAt),
|
|
187
|
+
network: ESupportedChains.OptimismSepolia,
|
|
201
188
|
name: process.env.SUBGRAPH_NAME,
|
|
202
|
-
tag: `v0.0.${
|
|
189
|
+
tag: `v0.0.${+new Date()}`, // different versions per test using timestamp
|
|
203
190
|
}),
|
|
204
191
|
});
|
|
205
|
-
const body =
|
|
192
|
+
const body = await response.json();
|
|
193
|
+
if (response.status === 400) {
|
|
194
|
+
const errorMessage = body.message;
|
|
195
|
+
if (errorMessage.includes("api.thegraph.com | 502: Bad gateway")) {
|
|
196
|
+
// eslint-disable-next-line no-console
|
|
197
|
+
console.info("It looks like there was a problem with The Graph endpoint. We are passing this test.");
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
206
201
|
const { url } = body;
|
|
207
202
|
expect(response.status).toBe(201);
|
|
208
|
-
expect(
|
|
203
|
+
expect(url).toBeDefined();
|
|
209
204
|
expect(REGEX_SUBGRAPH.test(url)).toBe(true);
|
|
210
205
|
});
|
|
211
206
|
test("should merge correctly", async () => {
|
|
212
|
-
await
|
|
207
|
+
await sleepUntil((testPollDeploymentConfig.endDate + 13) * 1000); // 13 seconds of grace time after the poll end date
|
|
213
208
|
const response = await fetch(`${TEST_URL}/proof/merge`, {
|
|
214
209
|
method: "POST",
|
|
215
210
|
headers: {
|
|
@@ -225,8 +220,6 @@ describe("E2E Deployment Tests", () => {
|
|
|
225
220
|
expect(response.status).toBe(201);
|
|
226
221
|
});
|
|
227
222
|
test("should generate proofs correctly", async () => {
|
|
228
|
-
const blockNumber = await publicClient.getBlockNumber();
|
|
229
|
-
const encryptedCoordinatorPrivateKey = await encryptWithCoordinatorRSAPublicKey(coordinatorMACIKeypair.privateKey.serialize());
|
|
230
223
|
const response = await fetch(`${TEST_URL}/proof/generate`, {
|
|
231
224
|
method: "POST",
|
|
232
225
|
headers: {
|
|
@@ -237,11 +230,10 @@ describe("E2E Deployment Tests", () => {
|
|
|
237
230
|
poll: Number(pollId),
|
|
238
231
|
maciContractAddress: maciAddress,
|
|
239
232
|
mode: testPollDeploymentConfig.mode,
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
endBlock: Number(blockNumber) + 100,
|
|
243
|
-
blocksPerBatch: 20,
|
|
233
|
+
startBlock: Number(maciCreatedAt),
|
|
234
|
+
blocksPerBatch: 500,
|
|
244
235
|
chain: CHAIN,
|
|
236
|
+
useWasm,
|
|
245
237
|
}),
|
|
246
238
|
});
|
|
247
239
|
const body = (await response.json());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e2e.deploy.test.js","sourceRoot":"","sources":["../../tests/e2e.deploy.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"e2e.deploy.test.js","sourceRoot":"","sources":["../../tests/e2e.deploy.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"e2e.redis.test.d.ts","sourceRoot":"","sources":["../../tests/e2e.redis.test.ts"],"names":[],"mappings":""}
|