@muritavo/testing-toolkit 0.3.4 → 0.4.1

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.
@@ -1,4 +1,10 @@
1
1
  import GenericContract, { MapTypeToJS } from "../types/contract";
2
+ /**
3
+ * For future me: This is needed because when using
4
+ * on cypress-toolkit "startblockchain" and "invokecontract"
5
+ * are run in different contexts, so the port variable cannot be
6
+ * shared.
7
+ */
2
8
  export declare function setPort(_port: number): void;
3
9
  export declare function invokeContract<C, M extends keyof C["methods"]>(wallet: string, _contract: C, contractMethodName: M, ...params: Parameters<C["methods"][M]>): Promise<C extends GenericContract<infer ABI> ? (ABI[number] & {
4
10
  name: M;
@@ -41,11 +41,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.invokeContract = exports.setPort = void 0;
43
43
  var web3_1 = __importDefault(require("web3"));
44
- var port = 8545;
44
+ var port;
45
+ /**
46
+ * For future me: This is needed because when using
47
+ * on cypress-toolkit "startblockchain" and "invokecontract"
48
+ * are run in different contexts, so the port variable cannot be
49
+ * shared.
50
+ */
45
51
  function setPort(_port) {
46
52
  port = _port;
47
53
  }
48
54
  exports.setPort = setPort;
55
+ function _getPort() {
56
+ if (!port)
57
+ throw new Error("Please, indicate the port that the blockchain node is running (by default it runs on 8545) \nusing the setPort from \"@muritavo/testing-toolkit/dist/client/blockchain\"");
58
+ return port;
59
+ }
49
60
  /// @ts-expect-error
50
61
  function invokeContract(wallet, _contract, contractMethodName) {
51
62
  /// @ts-expect-error
@@ -80,17 +91,21 @@ function invokeContract(wallet, _contract, contractMethodName) {
80
91
  gas: 90000000,
81
92
  gasPrice: "90000000000",
82
93
  });
83
- web3 = new web3_1.default(new web3_1.default.providers.HttpProvider("http://".concat("127.0.0.1", ":").concat(port)));
94
+ web3 = new web3_1.default(new web3_1.default.providers.HttpProvider("http://".concat("127.0.0.1", ":").concat(_getPort())));
84
95
  return [2 /*return*/, new Promise(function (r, rej) { return __awaiter(_this, void 0, void 0, function () {
85
- var txHash, transaction, isMined;
96
+ var txHash, transaction, isMined, e_1;
86
97
  return __generator(this, function (_a) {
87
98
  switch (_a.label) {
88
- case 0: return [4 /*yield*/, new Promise(function (r, rej) {
89
- call.on("transactionHash", function (tX) {
90
- r(tX);
91
- });
92
- call.catch(rej);
93
- })];
99
+ case 0:
100
+ _a.trys.push([0, 8, , 9]);
101
+ return [4 /*yield*/, new Promise(function (r, rej) {
102
+ call.on("transactionHash", function (tX) {
103
+ r(tX);
104
+ });
105
+ call.catch(function (e) {
106
+ rej(e);
107
+ });
108
+ })];
94
109
  case 1:
95
110
  txHash = _a.sent();
96
111
  _a.label = 2;
@@ -110,13 +125,20 @@ function invokeContract(wallet, _contract, contractMethodName) {
110
125
  _a.sent();
111
126
  return [3 /*break*/, 6];
112
127
  case 5:
113
- if (isMined)
128
+ if (isMined) {
114
129
  r();
115
- else
130
+ }
131
+ else {
116
132
  rej(new Error("Transaction failed, check the logs"));
133
+ }
117
134
  return [3 /*break*/, 7];
118
135
  case 6: return [3 /*break*/, 2];
119
- case 7: return [2 /*return*/];
136
+ case 7: return [3 /*break*/, 9];
137
+ case 8:
138
+ e_1 = _a.sent();
139
+ rej(e_1);
140
+ return [3 /*break*/, 9];
141
+ case 9: return [2 /*return*/];
120
142
  }
121
143
  });
122
144
  }); })];
@@ -1 +1 @@
1
- {"version":3,"file":"blockchain.js","sourceRoot":"","sources":["../../src/client/blockchain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blockchain.js","sourceRoot":"","sources":["../../src/client/blockchain.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export declare const deleteCollection: (projectId: string, collectionPath: strin
10
10
  * @param projectId The current project id of the emulator instance
11
11
  * @param cb The callback to be executed
12
12
  */
13
- export declare const setupEmulator: (projectId: string, cb: (firestore: ReturnType<typeof firebase.firestore>, storage: ReturnType<typeof firebase.storage>) => Promise<void>, storageBucket?: string) => Promise<void>;
13
+ export declare const setupEmulator: (projectId: string, cb: (firestore: firebase.firestore.Firestore, storage: firebase.storage.Storage) => Promise<void>, storageBucket?: string) => Promise<void>;
14
14
  /**
15
15
  * Creates a user on the auth emulator allowing him to authenticate to the emulator
16
16
  * @param projectId The current project id of the emulator instance
@@ -1,10 +1,12 @@
1
+ import debug from "debug";
1
2
  import GenericContract from "../types/contract";
3
+ export declare const blockchainLogger: debug.Debugger;
2
4
  type Addresses = {
3
5
  [wallet: string]: {
4
6
  secretKey: string;
5
7
  };
6
8
  };
7
- export declare function startBlockchain({ projectRootFolder: projectFolder, port, }: {
9
+ export declare function startBlockchain({ projectRootFolder: projectFolder, port, graphqlProject, }: {
8
10
  /** The NFT projects root folder so the contracts can be deployed from */
9
11
  projectRootFolder: string;
10
12
  /**
@@ -12,16 +14,30 @@ export declare function startBlockchain({ projectRootFolder: projectFolder, port
12
14
  * @default 8545
13
15
  * */
14
16
  port?: number;
17
+ /**
18
+ * Adds support for graphql for listening to blockchain events and indexing information.
19
+ */
20
+ graphqlProject?: string;
15
21
  }): Promise<Addresses>;
22
+ export declare function deriveWallet(index: number, hardhat: any): {
23
+ key: string;
24
+ address: string;
25
+ };
16
26
  export declare function deployContract<const ABI extends any[] = []>({ contractAbi, contractName, args, }: {
17
27
  contractAbi: ABI;
18
28
  contractName: string;
19
29
  args: any[];
20
30
  }): Promise<{
21
- address: import("ethers").BaseContractMethod<any[], any, any>;
31
+ address: string;
22
32
  owner: string;
23
33
  contract: GenericContract<ABI, "allEvents" | (ABI[number] extends infer T ? T extends ABI[number] ? T extends {
24
34
  type: "event";
25
35
  } ? T["name"] : never : never : never)>;
26
36
  }>;
37
+ /**
38
+ * Takes a graph and deploys it into the graph-node
39
+ */
40
+ export declare function deployGraph(graphPath: string, contractAddresses: {
41
+ [deployedContractName: string]: string;
42
+ }): Promise<void>;
27
43
  export {};
@@ -73,15 +73,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
73
73
  return (mod && mod.__esModule) ? mod : { "default": mod };
74
74
  };
75
75
  Object.defineProperty(exports, "__esModule", { value: true });
76
- exports.deployContract = exports.startBlockchain = void 0;
76
+ exports.deployGraph = exports.deployContract = exports.deriveWallet = exports.startBlockchain = exports.blockchainLogger = void 0;
77
77
  var debug_1 = __importDefault(require("debug"));
78
- var logger = (0, debug_1.default)("@muritavo/testing-toolkit/blockchain");
78
+ var blockchain_1 = require("../client/blockchain");
79
+ var child_process_1 = require("child_process");
80
+ var utility_1 = require("../utility");
81
+ var fs_1 = require("fs");
82
+ var path_1 = require("path");
83
+ exports.blockchainLogger = (0, debug_1.default)("@muritavo/testing-toolkit/blockchain");
79
84
  var instance;
80
85
  function startBlockchain(_a) {
81
86
  return __awaiter(this, arguments, void 0, function (_b) {
82
87
  var prevFork, serverInstance, accounts;
83
88
  var _this = this;
84
- var projectFolder = _b.projectRootFolder, _c = _b.port, port = _c === void 0 ? 8545 : _c;
89
+ var projectFolder = _b.projectRootFolder, _c = _b.port, port = _c === void 0 ? 8545 : _c, graphqlProject = _b.graphqlProject;
85
90
  return __generator(this, function (_d) {
86
91
  switch (_d.label) {
87
92
  case 0:
@@ -105,7 +110,12 @@ function startBlockchain(_a) {
105
110
  case 2: return [2 /*return*/, instance.addresses];
106
111
  case 3:
107
112
  if (projectFolder)
108
- logger("Starting blockchain server at \"".concat(projectFolder, "\""));
113
+ (0, exports.blockchainLogger)("Starting blockchain server at \"".concat(projectFolder, "\""));
114
+ if (graphqlProject)
115
+ (0, child_process_1.execSync)("docker-compose up --detach", {
116
+ cwd: graphqlProject,
117
+ stdio: "ignore",
118
+ });
109
119
  return [4 /*yield*/, initHardhat(projectFolder)];
110
120
  case 4:
111
121
  serverInstance = _d.sent();
@@ -130,7 +140,7 @@ function startBlockchain(_a) {
130
140
  .fill(undefined)
131
141
  .reduce(function (res, _, idx) {
132
142
  var _a;
133
- var account = deployer(idx, serverInstance);
143
+ var account = deriveWallet(idx, serverInstance);
134
144
  return __assign(__assign({}, res), (_a = {}, _a[account.address] = {
135
145
  secretKey: account.key,
136
146
  }, _a));
@@ -142,22 +152,24 @@ function startBlockchain(_a) {
142
152
  addresses: accounts,
143
153
  port: port,
144
154
  };
155
+ (0, blockchain_1.setPort)(port);
145
156
  return [2 /*return*/, accounts];
146
157
  }
147
158
  });
148
159
  });
149
160
  }
150
161
  exports.startBlockchain = startBlockchain;
151
- function deployer(index, hardhat) {
162
+ function deriveWallet(index, hardhat) {
152
163
  if (index === void 0) { index = 0; }
153
164
  var ethers = hardhat.ethers;
154
165
  var accounts = hardhat.config.networks.hardhat.accounts;
155
- var wallet = ethers.Wallet.fromPhrase(accounts.mnemonic, accounts.path + "/".concat(index));
166
+ var wallet = ethers.HDNodeWallet.fromMnemonic(ethers.Mnemonic.fromPhrase(accounts.mnemonic), accounts.path + "/".concat(index));
156
167
  return {
157
168
  key: wallet.privateKey,
158
169
  address: wallet.address,
159
170
  };
160
171
  }
172
+ exports.deriveWallet = deriveWallet;
161
173
  function initHardhat(dir) {
162
174
  return __awaiter(this, void 0, void 0, function () {
163
175
  var startingDir, hardhat, _a, e_1;
@@ -217,12 +229,12 @@ function deployContract(_a) {
217
229
  return __generator(this, function (_e) {
218
230
  switch (_e.label) {
219
231
  case 0:
220
- logger("Deploying contract ".concat(contractName, " with ").concat(args.length, " parameters ").concat(args
232
+ (0, exports.blockchainLogger)("Deploying contract ".concat(contractName, " with ").concat(args.length, " parameters ").concat(args
221
233
  .map(function (a) { return "".concat(a, " (").concat(Array.isArray(a) ? "array" : typeof a, ")"); })
222
234
  .join(", ")));
223
235
  _e.label = 1;
224
236
  case 1:
225
- _e.trys.push([1, 13, , 14]);
237
+ _e.trys.push([1, 17, , 18]);
226
238
  if (!(instance === null || instance === void 0 ? void 0 : instance.rootFolder))
227
239
  throw new Error("You are trying to deploy a contract without defining the Blockchain Project folder. Please define it at startBlockchain command.");
228
240
  getContract = function () { return __awaiter(_this, void 0, void 0, function () {
@@ -255,8 +267,8 @@ function deployContract(_a) {
255
267
  return [4 /*yield*/, lock_1.waitForDeployment()];
256
268
  case 6:
257
269
  _e.sent();
258
- if (!(args.length > 0)) return [3 /*break*/, 10];
259
- logger("Initializing contract with owner ".concat(owner, " and args ").concat(args));
270
+ if (!(args.length > 0)) return [3 /*break*/, 12];
271
+ (0, exports.blockchainLogger)("Initializing contract with owner ".concat(owner, " and args ").concat(args));
260
272
  connection = lock_1.connect(owner);
261
273
  initializationKey_1 = "initialize";
262
274
  connection.interface.forEachFunction(function (func) {
@@ -271,30 +283,109 @@ function deployContract(_a) {
271
283
  _e.sent();
272
284
  _e.label = 8;
273
285
  case 8:
274
- _c = {
275
- address: lock_1.address,
276
- owner: owner.address
277
- };
286
+ _c = {};
287
+ return [4 /*yield*/, lock_1.getAddress()];
288
+ case 9:
289
+ _c.address = _e.sent();
290
+ return [4 /*yield*/, owner.getAddress()];
291
+ case 10:
292
+ _c.owner = _e.sent();
278
293
  return [4 /*yield*/, getContract()];
279
- case 9: return [2 /*return*/, (_c.contract = _e.sent(),
294
+ case 11: return [2 /*return*/, (_c.contract = _e.sent(),
280
295
  _c)];
281
- case 10:
282
- _d = {
283
- address: lock_1.address,
284
- owner: owner.address
285
- };
296
+ case 12:
297
+ _d = {};
298
+ return [4 /*yield*/, lock_1.getAddress()];
299
+ case 13:
300
+ _d.address = _e.sent();
301
+ return [4 /*yield*/, owner.getAddress()];
302
+ case 14:
303
+ _d.owner = _e.sent();
286
304
  return [4 /*yield*/, getContract()];
287
- case 11: return [2 /*return*/, (_d.contract = _e.sent(),
305
+ case 15: return [2 /*return*/, (_d.contract = _e.sent(),
288
306
  _d)];
289
- case 12: return [3 /*break*/, 14];
290
- case 13:
307
+ case 16: return [3 /*break*/, 18];
308
+ case 17:
291
309
  e_2 = _e.sent();
292
- logger("Something has gone wrong", e_2);
310
+ (0, exports.blockchainLogger)("Something has gone wrong", e_2);
293
311
  throw e_2;
294
- case 14: return [2 /*return*/];
312
+ case 18: return [2 /*return*/];
295
313
  }
296
314
  });
297
315
  });
298
316
  }
299
317
  exports.deployContract = deployContract;
318
+ /**
319
+ * Takes a graph and deploys it into the graph-node
320
+ */
321
+ function deployGraph(graphPath, contractAddresses) {
322
+ return __awaiter(this, void 0, void 0, function () {
323
+ function generateGraphManifest() {
324
+ var graphManifestCacheDir = cacheDir({ name: "graph-manifest" });
325
+ var subgraphYml = parse((0, fs_1.readFileSync)((0, path_1.resolve)(graphPath, "subgraph.yaml")).toString());
326
+ function relativeToAbsolutePath(relativePath) {
327
+ return (0, path_1.resolve)(graphPath, relativePath);
328
+ }
329
+ subgraphYml.schema.file = relativeToAbsolutePath(subgraphYml.schema.file);
330
+ for (var _i = 0, _a = subgraphYml.dataSources; _i < _a.length; _i++) {
331
+ var dataSource = _a[_i];
332
+ dataSource.network = "localhost";
333
+ if (!contractAddresses[dataSource.source.abi])
334
+ throw new Error("Please, provide the address for the contract \"".concat(dataSource.source.abi, "\" deployed on the local hardhat node"));
335
+ dataSource.source.address = contractAddresses[dataSource.source.abi];
336
+ dataSource.mapping.file = relativeToAbsolutePath(dataSource.mapping.file);
337
+ for (var _b = 0, _c = dataSource.mapping.abis; _b < _c.length; _b++) {
338
+ var abi = _c[_b];
339
+ abi.file = relativeToAbsolutePath(abi.file);
340
+ }
341
+ }
342
+ var graphManifestPath = (0, path_1.resolve)(graphManifestCacheDir, "subgraph.yaml");
343
+ if (!(0, fs_1.existsSync)(graphManifestCacheDir))
344
+ (0, fs_1.mkdirSync)(graphManifestCacheDir, { recursive: true });
345
+ (0, fs_1.writeFileSync)(graphManifestPath, stringify(subgraphYml));
346
+ return graphManifestPath;
347
+ }
348
+ var _a, parse, stringify, cacheDir, stdioMode, error_1, localhostGraphManifest;
349
+ return __generator(this, function (_b) {
350
+ switch (_b.label) {
351
+ case 0: return [4 /*yield*/, Promise.resolve().then(function () { return __importStar(require("yaml")); })];
352
+ case 1:
353
+ _a = _b.sent(), parse = _a.parse, stringify = _a.stringify;
354
+ return [4 /*yield*/, Promise.resolve().then(function () { return __importStar(require("find-cache-dir")); })];
355
+ case 2:
356
+ cacheDir = (_b.sent()).default;
357
+ stdioMode = exports.blockchainLogger.enabled ? undefined : "ignore";
358
+ _b.label = 3;
359
+ case 3:
360
+ if (!true) return [3 /*break*/, 8];
361
+ _b.label = 4;
362
+ case 4:
363
+ _b.trys.push([4, 5, , 7]);
364
+ (0, child_process_1.execSync)("yarn create-local", {
365
+ cwd: graphPath,
366
+ stdio: stdioMode,
367
+ });
368
+ return [3 /*break*/, 8];
369
+ case 5:
370
+ error_1 = _b.sent();
371
+ return [4 /*yield*/, (0, utility_1.wait)(1000)];
372
+ case 6:
373
+ _b.sent();
374
+ return [3 /*break*/, 7];
375
+ case 7: return [3 /*break*/, 3];
376
+ case 8:
377
+ localhostGraphManifest = generateGraphManifest();
378
+ (0, child_process_1.execSync)("yarn deploy-local ".concat(localhostGraphManifest, " -l v0.0.1"), {
379
+ cwd: graphPath,
380
+ stdio: stdioMode,
381
+ });
382
+ return [4 /*yield*/, (0, utility_1.wait)(1000)];
383
+ case 9:
384
+ _b.sent();
385
+ return [2 /*return*/];
386
+ }
387
+ });
388
+ });
389
+ }
390
+ exports.deployGraph = deployGraph;
300
391
  //# sourceMappingURL=blockchain.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"blockchain.js","sourceRoot":"","sources":["../../src/native/blockchain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blockchain.js","sourceRoot":"","sources":["../../src/native/blockchain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function wait(timeMs: number): Promise<unknown>;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.wait = void 0;
4
+ function wait(timeMs) {
5
+ return new Promise(function (r) {
6
+ setTimeout(function () {
7
+ r(null);
8
+ }, timeMs);
9
+ });
10
+ }
11
+ exports.wait = wait;
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utility/index.ts"],"names":[],"mappings":";;;AAAA,SAAgB,IAAI,CAAC,MAAc;IACjC,OAAO,IAAI,OAAO,CAAC,UAAC,CAAC;QACnB,UAAU,CAAC;YACT,CAAC,CAAC,IAAI,CAAC,CAAC;QACV,CAAC,EAAE,MAAM,CAAC,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC;AAND,oBAMC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@muritavo/testing-toolkit",
3
- "version": "0.3.4",
3
+ "version": "0.4.1",
4
4
  "description": "A series of functions to help with testing",
5
5
  "main": "index.js",
6
6
  "files": [
@@ -9,7 +9,10 @@
9
9
  "scripts": {
10
10
  "dev": "tsc --watch",
11
11
  "prepack": "tsc",
12
- "test": "jest --watchAll"
12
+ "test": "jest --watchAll",
13
+ "graph-codegen": "cd ./test/graphs/simple-graph && graph codegen",
14
+ "graph-build": "cd ./test/graphs/simple-graph && graph build",
15
+ "graph-local-clean": "docker-compose down -v && docker-compose rm -v && rm -rf data/ipfs data/postgres"
13
16
  },
14
17
  "repository": {
15
18
  "type": "git",
@@ -22,24 +25,31 @@
22
25
  },
23
26
  "homepage": "https://github.com/Muritavo/testing-toolkit#readme",
24
27
  "devDependencies": {
28
+ "@apollo/client": "^3.10.4",
29
+ "@graphprotocol/graph-ts": "^0.35.1",
25
30
  "@nomicfoundation/hardhat-ethers": "^3.0.5",
31
+ "@types/debug": "^4.1.12",
26
32
  "@types/jest": "^29.5.12",
27
33
  "ethers": "^6.12.0",
34
+ "find-cache-dir": "^3.0.0",
28
35
  "firebase": "^9.10.0",
29
36
  "firebase-admin": "^11.5.0",
30
37
  "ganache": "^7.8.0",
38
+ "graphql": "^16.8.1",
31
39
  "hardhat": "^2.14.1",
32
40
  "jest": "^29.7.0",
41
+ "react": "^18.3.1",
33
42
  "text2png": "^2.3.0",
34
43
  "ts-jest": "^29.1.2",
35
44
  "web3": "^1",
36
- "web3v4": "npm:web3@4.1.0"
45
+ "web3v4": "npm:web3@4.1.0",
46
+ "yaml": "^2.4.2"
37
47
  },
38
48
  "dependencies": {
39
49
  "@firebase/rules-unit-testing": "^2.0.4",
40
50
  "@types/kill-port": "^2.0.3",
41
51
  "@types/node-fetch": "^2.6.2",
42
- "kill-port": "^2.0.1",
52
+ "kill-port": "^1.6.0",
43
53
  "node-fetch": "^1",
44
54
  "typescript": "^5.4.2"
45
55
  }