@muritavo/testing-toolkit 0.1.2 → 0.2.0
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/dist/client/emulator.js +40 -27
- package/dist/client/emulator.js.map +1 -1
- package/dist/client/utility.js +2 -2
- package/dist/client/utility.js.map +1 -1
- package/dist/native/blockchain.d.ts +9 -15
- package/dist/native/blockchain.js +180 -69
- package/dist/native/blockchain.js.map +1 -1
- package/dist/native/consts.js +1 -1
- package/dist/native/emulator.js +14 -14
- package/dist/native/emulator.js.map +1 -1
- package/dist/types/contract.js +2 -2
- package/dist/types/contract.js.map +1 -1
- package/package.json +11 -6
package/dist/client/emulator.js
CHANGED
|
@@ -35,10 +35,19 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
35
35
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
39
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
40
|
+
if (ar || !(i in from)) {
|
|
41
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
42
|
+
ar[i] = from[i];
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
46
|
+
};
|
|
38
47
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
48
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
49
|
};
|
|
41
|
-
exports
|
|
50
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
51
|
exports.clearFirestore = exports.setEmulatorConfig = exports.clearAuth = exports.addAuthUser = exports.setupEmulator = exports.deleteCollection = void 0;
|
|
43
52
|
var node_fetch_1 = __importDefault(require("node-fetch"));
|
|
44
53
|
var rules_unit_testing_1 = require("@firebase/rules-unit-testing");
|
|
@@ -52,8 +61,8 @@ var emulatorConfig;
|
|
|
52
61
|
var deleteCollection = function (projectId, collectionPath) { return __awaiter(void 0, void 0, void 0, function () {
|
|
53
62
|
return __generator(this, function (_a) {
|
|
54
63
|
switch (_a.label) {
|
|
55
|
-
case 0: return [4 /*yield*/, (0, node_fetch_1
|
|
56
|
-
method: "delete"
|
|
64
|
+
case 0: return [4 /*yield*/, (0, node_fetch_1.default)("http://".concat(consts_1.LOCALHOST_DOMAIN, ":").concat(_getPort("firestore"), "/emulator/v1/projects/").concat(projectId, "/databases/(default)/documents").concat(collectionPath), {
|
|
65
|
+
method: "delete",
|
|
57
66
|
})];
|
|
58
67
|
case 1:
|
|
59
68
|
_a.sent();
|
|
@@ -75,12 +84,12 @@ var setupEmulator = function (projectId, cb, storageBucket) { return __awaiter(v
|
|
|
75
84
|
projectId: projectId,
|
|
76
85
|
firestore: {
|
|
77
86
|
host: consts_1.LOCALHOST_DOMAIN,
|
|
78
|
-
port: _getPort("firestore")
|
|
87
|
+
port: _getPort("firestore"),
|
|
79
88
|
},
|
|
80
89
|
storage: {
|
|
81
90
|
host: consts_1.LOCALHOST_DOMAIN,
|
|
82
|
-
port: _getPort("storage")
|
|
83
|
-
}
|
|
91
|
+
port: _getPort("storage"),
|
|
92
|
+
},
|
|
84
93
|
})];
|
|
85
94
|
case 1:
|
|
86
95
|
testEnv = _a.sent();
|
|
@@ -89,7 +98,7 @@ var setupEmulator = function (projectId, cb, storageBucket) { return __awaiter(v
|
|
|
89
98
|
switch (_a.label) {
|
|
90
99
|
case 0: return [4 /*yield*/, cb(ctx.firestore({
|
|
91
100
|
experimentalForceLongPolling: true,
|
|
92
|
-
merge: true
|
|
101
|
+
merge: true,
|
|
93
102
|
}), ctx.storage(storageBucket))];
|
|
94
103
|
case 1:
|
|
95
104
|
_a.sent();
|
|
@@ -111,23 +120,27 @@ exports.setupEmulator = setupEmulator;
|
|
|
111
120
|
* @param password The password to authenticate the user with
|
|
112
121
|
* @param localId A deterministic Id to be used for this user
|
|
113
122
|
*/
|
|
114
|
-
var addAuthUser = function (
|
|
115
|
-
|
|
116
|
-
|
|
123
|
+
var addAuthUser = function (projectId_1, email_1, password_1) {
|
|
124
|
+
var args_1 = [];
|
|
125
|
+
for (var _i = 3; _i < arguments.length; _i++) {
|
|
126
|
+
args_1[_i - 3] = arguments[_i];
|
|
127
|
+
}
|
|
128
|
+
return __awaiter(void 0, __spreadArray([projectId_1, email_1, password_1], args_1, true), void 0, function (projectId, email, password, localId) {
|
|
117
129
|
var result;
|
|
130
|
+
if (localId === void 0) { localId = ""; }
|
|
118
131
|
return __generator(this, function (_a) {
|
|
119
132
|
switch (_a.label) {
|
|
120
|
-
case 0: return [4 /*yield*/, (0, node_fetch_1
|
|
133
|
+
case 0: return [4 /*yield*/, (0, node_fetch_1.default)("http://".concat(consts_1.LOCALHOST_DOMAIN, ":").concat(_getPort("auth"), "/identitytoolkit.googleapis.com/v1/projects/").concat(projectId, "/accounts"), {
|
|
121
134
|
body: JSON.stringify({
|
|
122
135
|
email: email,
|
|
123
136
|
password: password,
|
|
124
|
-
localId: localId
|
|
137
|
+
localId: localId,
|
|
125
138
|
}),
|
|
126
139
|
headers: {
|
|
127
140
|
"content-type": "application/json",
|
|
128
|
-
authorization: "Bearer owner"
|
|
141
|
+
authorization: "Bearer owner",
|
|
129
142
|
},
|
|
130
|
-
method: "post"
|
|
143
|
+
method: "post",
|
|
131
144
|
})];
|
|
132
145
|
case 1:
|
|
133
146
|
result = _a.sent();
|
|
@@ -148,8 +161,8 @@ var clearAuth = function (projectId) { return __awaiter(void 0, void 0, void 0,
|
|
|
148
161
|
var result;
|
|
149
162
|
return __generator(this, function (_a) {
|
|
150
163
|
switch (_a.label) {
|
|
151
|
-
case 0: return [4 /*yield*/, (0, node_fetch_1
|
|
152
|
-
method: "delete"
|
|
164
|
+
case 0: return [4 /*yield*/, (0, node_fetch_1.default)("http://".concat(consts_1.LOCALHOST_DOMAIN, ":").concat(_getPort("auth"), "/emulator/v1/projects/").concat(projectId, "/accounts"), {
|
|
165
|
+
method: "delete",
|
|
153
166
|
})];
|
|
154
167
|
case 1:
|
|
155
168
|
result = _a.sent();
|
|
@@ -180,8 +193,8 @@ var clearFirestore = function (projectId) { return __awaiter(void 0, void 0, voi
|
|
|
180
193
|
projectId: projectId,
|
|
181
194
|
firestore: {
|
|
182
195
|
host: consts_1.LOCALHOST_DOMAIN,
|
|
183
|
-
port: _getPort("firestore")
|
|
184
|
-
}
|
|
196
|
+
port: _getPort("firestore"),
|
|
197
|
+
},
|
|
185
198
|
})];
|
|
186
199
|
case 1:
|
|
187
200
|
testEnv = _a.sent();
|
|
@@ -197,28 +210,28 @@ exports.clearFirestore = clearFirestore;
|
|
|
197
210
|
var FirebaseConfigEmulatorsShapeExample = {
|
|
198
211
|
emulators: {
|
|
199
212
|
auth: {
|
|
200
|
-
port: 9099
|
|
213
|
+
port: 9099,
|
|
201
214
|
},
|
|
202
215
|
functions: {
|
|
203
|
-
port: 5001
|
|
216
|
+
port: 5001,
|
|
204
217
|
},
|
|
205
218
|
firestore: {
|
|
206
|
-
port: 8080
|
|
219
|
+
port: 8080,
|
|
207
220
|
},
|
|
208
221
|
hosting: {
|
|
209
|
-
port: 5000
|
|
222
|
+
port: 5000,
|
|
210
223
|
},
|
|
211
224
|
storage: {
|
|
212
|
-
port: 9199
|
|
225
|
+
port: 9199,
|
|
213
226
|
},
|
|
214
227
|
pubsub: {
|
|
215
|
-
port: 8055
|
|
228
|
+
port: 8055,
|
|
216
229
|
},
|
|
217
230
|
ui: {
|
|
218
231
|
enabled: true,
|
|
219
|
-
port: 4000
|
|
220
|
-
}
|
|
221
|
-
}
|
|
232
|
+
port: 4000,
|
|
233
|
+
},
|
|
234
|
+
},
|
|
222
235
|
};
|
|
223
236
|
/**
|
|
224
237
|
* Guarantees a firebase config has been provided before using the ports
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/client/emulator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/client/emulator.ts"],"names":[],"mappings":"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"}
|
package/dist/client/utility.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
exports
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateImage = void 0;
|
|
4
4
|
var text2png = require("text2png");
|
|
5
5
|
var firstEmoji = 0x1f604;
|
|
@@ -31,7 +31,7 @@ var generateImage = function (cols, rows, strRandom, orientation) {
|
|
|
31
31
|
padding: 10,
|
|
32
32
|
font: "50px monospace",
|
|
33
33
|
color: "rgb(".concat(256 - (rest % 256), ", ").concat(256 - (numFromStr % 256), ", ").concat(256 - (Math.abs(numFromStr - rest) % 256), ")"),
|
|
34
|
-
backgroundColor: "rgb(".concat(rest % 256, ", ").concat(numFromStr % 256, ", ").concat(Math.abs(numFromStr - rest) % 256, ")")
|
|
34
|
+
backgroundColor: "rgb(".concat(rest % 256, ", ").concat(numFromStr % 256, ", ").concat(Math.abs(numFromStr - rest) % 256, ")"),
|
|
35
35
|
});
|
|
36
36
|
return instance;
|
|
37
37
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utility.js","sourceRoot":"","sources":["../../src/client/utility.ts"],"names":[],"mappings":";;;AAAA,IAAI,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEnC,IAAM,UAAU,GAAG,OAAO,CAAC;AAC3B,IAAM,WAAW,GAAG,OAAO,GAAG,UAAU,CAAC;AAEzC;;;;;GAKG;AACI,IAAM,aAAa,GAAG,UAC3B,IAAY,EACZ,IAAY,EACZ,SAAiB,EACjB,WAAmD;IAAnD,4BAAA,EAAA,wBAAmD;IAEnD,SAAS;QACP,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAG,SAAS,SAAG,WAAW,CAAE,CAAC;IACxE,IAAM,UAAU,GAAG,SAAS;SACzB,KAAK,CAAC,EAAE,CAAC;SACT,MAAM,CAAC,UAAC,CAAC,EAAE,IAAI,IAAK,OAAA,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAtB,CAAsB,EAAE,CAAC,CAAC,CAAC;IAClD,IAAM,IAAI,GAAG,UAAU,GAAG,WAAW,CAAC;IACtC,IAAM,CAAC,GAAG,UAAC,CAAS,IAAK,OAAA,MAAM,CAAC,aAAa,CAAC,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,EAA3C,CAA2C,CAAC;IAErE,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"utility.js","sourceRoot":"","sources":["../../src/client/utility.ts"],"names":[],"mappings":";;;AAAA,IAAI,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEnC,IAAM,UAAU,GAAG,OAAO,CAAC;AAC3B,IAAM,WAAW,GAAG,OAAO,GAAG,UAAU,CAAC;AAEzC;;;;;GAKG;AACI,IAAM,aAAa,GAAG,UAC3B,IAAY,EACZ,IAAY,EACZ,SAAiB,EACjB,WAAmD;IAAnD,4BAAA,EAAA,wBAAmD;IAEnD,SAAS;QACP,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAG,SAAS,SAAG,WAAW,CAAE,CAAC;IACxE,IAAM,UAAU,GAAG,SAAS;SACzB,KAAK,CAAC,EAAE,CAAC;SACT,MAAM,CAAC,UAAC,CAAC,EAAE,IAAI,IAAK,OAAA,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAtB,CAAsB,EAAE,CAAC,CAAC,CAAC;IAClD,IAAM,IAAI,GAAG,UAAU,GAAG,WAAW,CAAC;IACtC,IAAM,CAAC,GAAG,UAAC,CAAS,IAAK,OAAA,MAAM,CAAC,aAAa,CAAC,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,EAA3C,CAA2C,CAAC;IAErE,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,QAAQ,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9B,CAAC;QACD,QAAQ,IAAI,IAAI,CAAC;IACnB,CAAC;IAED,IAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE;QAClC,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,cAAO,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,eAAK,GAAG,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,eAC3D,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,MACxC;QACH,eAAe,EAAE,cAAO,IAAI,GAAG,GAAG,eAAK,UAAU,GAAG,GAAG,eACrD,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,GAAG,MAChC;KACJ,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAlCW,QAAA,aAAa,iBAkCxB"}
|
|
@@ -1,15 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
address: string;
|
|
11
|
-
} | {
|
|
12
|
-
address: any;
|
|
13
|
-
owner: any;
|
|
14
|
-
}>;
|
|
15
|
-
export {};
|
|
1
|
+
export declare function startBlockchain({ projectRootFolder: projectFolder, port, }: {
|
|
2
|
+
/** The NFT projects root folder so the contracts can be deployed from */
|
|
3
|
+
projectRootFolder: string;
|
|
4
|
+
/**
|
|
5
|
+
* This indicates the port the ganache server will run at
|
|
6
|
+
* @default 8545
|
|
7
|
+
* */
|
|
8
|
+
port?: number;
|
|
9
|
+
}): Promise<any>;
|
|
@@ -10,6 +10,29 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
10
|
};
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
13
36
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
37
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
38
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -46,103 +69,191 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
46
69
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
70
|
}
|
|
48
71
|
};
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
72
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
73
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
74
|
+
};
|
|
75
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
76
|
+
exports.startBlockchain = void 0;
|
|
77
|
+
var debug_1 = __importDefault(require("debug"));
|
|
78
|
+
var task_names_1 = require("hardhat/builtin-tasks/task-names");
|
|
79
|
+
var logger = (0, debug_1.default)("@muritavo/testing-toolkit/blockchain");
|
|
53
80
|
var instance;
|
|
54
|
-
function
|
|
55
|
-
return __awaiter(this,
|
|
56
|
-
var serverInstance, accounts;
|
|
57
|
-
|
|
58
|
-
|
|
81
|
+
function startBlockchain(_a) {
|
|
82
|
+
return __awaiter(this, arguments, void 0, function (_b) {
|
|
83
|
+
var prevFork, serverInstance, accounts;
|
|
84
|
+
var _this = this;
|
|
85
|
+
var projectFolder = _b.projectRootFolder, _c = _b.port, port = _c === void 0 ? 8545 : _c;
|
|
86
|
+
return __generator(this, function (_d) {
|
|
87
|
+
switch (_d.label) {
|
|
59
88
|
case 0:
|
|
60
|
-
if (instance)
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
});
|
|
74
|
-
return [4 /*yield*/, serverInstance.listen(15000).then(function () {
|
|
75
|
-
return Object.entries(serverInstance.provider.getInitialAccounts()).reduce(function (r, _a) {
|
|
76
|
-
var _b;
|
|
77
|
-
var k = _a[0], v = _a[1];
|
|
78
|
-
return (__assign(__assign({}, r), (_b = {}, _b[k] = __assign(__assign({}, v), { balance: Number(v.balance), unlocked: Number(v.unlocked) }), _b)));
|
|
79
|
-
}, {});
|
|
89
|
+
if (!instance) return [3 /*break*/, 3];
|
|
90
|
+
prevFork = instance.process.config.networks.hardhat.forking;
|
|
91
|
+
if (!prevFork) return [3 /*break*/, 2];
|
|
92
|
+
return [4 /*yield*/, instance.process.network.provider.request({
|
|
93
|
+
method: "hardhat_reset",
|
|
94
|
+
params: [
|
|
95
|
+
{
|
|
96
|
+
forking: {
|
|
97
|
+
jsonRpcUrl: prevFork.url,
|
|
98
|
+
blockNumber: prevFork.blockNumber,
|
|
99
|
+
},
|
|
100
|
+
},
|
|
101
|
+
],
|
|
80
102
|
})];
|
|
81
103
|
case 1:
|
|
82
|
-
|
|
104
|
+
_d.sent();
|
|
105
|
+
_d.label = 2;
|
|
106
|
+
case 2: return [2 /*return*/, instance.addresses];
|
|
107
|
+
case 3:
|
|
108
|
+
if (projectFolder)
|
|
109
|
+
logger("Starting blockchain server at \"".concat(projectFolder, "\""));
|
|
110
|
+
return [4 /*yield*/, initHardhat(projectFolder)];
|
|
111
|
+
case 4:
|
|
112
|
+
serverInstance = (_d.sent());
|
|
113
|
+
return [4 /*yield*/, new Promise(function (r, rej) {
|
|
114
|
+
var timeoutId = setTimeout(function () {
|
|
115
|
+
rej(new Error("Something went wrong while starting hardhat node"));
|
|
116
|
+
}, 30000);
|
|
117
|
+
serverInstance.tasks[task_names_1.TASK_NODE_SERVER_READY].setAction(function () { return __awaiter(_this, void 0, void 0, function () {
|
|
118
|
+
return __generator(this, function (_a) {
|
|
119
|
+
clearTimeout(timeoutId);
|
|
120
|
+
r();
|
|
121
|
+
return [2 /*return*/];
|
|
122
|
+
});
|
|
123
|
+
}); });
|
|
124
|
+
serverInstance.run("node", {
|
|
125
|
+
port: port,
|
|
126
|
+
});
|
|
127
|
+
})];
|
|
128
|
+
case 5:
|
|
129
|
+
_d.sent();
|
|
130
|
+
accounts = new Array(serverInstance.config.networks.hardhat.accounts.count)
|
|
131
|
+
.fill(undefined)
|
|
132
|
+
.reduce(function (res, _, idx) {
|
|
133
|
+
var _a;
|
|
134
|
+
var account = deployer(idx, serverInstance);
|
|
135
|
+
return __assign(__assign({}, res), (_a = {}, _a[account.address] = {
|
|
136
|
+
secretKey: account.key,
|
|
137
|
+
}, _a));
|
|
138
|
+
}, {});
|
|
83
139
|
instance = {
|
|
84
140
|
process: serverInstance,
|
|
85
|
-
rootFolder:
|
|
141
|
+
rootFolder: projectFolder,
|
|
86
142
|
contracts: {},
|
|
87
|
-
addresses: accounts
|
|
143
|
+
addresses: accounts,
|
|
88
144
|
};
|
|
89
145
|
return [2 /*return*/, accounts];
|
|
90
146
|
}
|
|
91
147
|
});
|
|
92
148
|
});
|
|
93
149
|
}
|
|
94
|
-
exports.
|
|
95
|
-
function
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
150
|
+
exports.startBlockchain = startBlockchain;
|
|
151
|
+
function deployer(index, hardhat) {
|
|
152
|
+
if (index === void 0) { index = 0; }
|
|
153
|
+
var ethers = hardhat.ethers;
|
|
154
|
+
var accounts = hardhat.config.networks.hardhat.accounts;
|
|
155
|
+
var wallet = ethers.Wallet.fromMnemonic(accounts.mnemonic, accounts.path + "/".concat(index));
|
|
156
|
+
return {
|
|
157
|
+
key: wallet.privateKey,
|
|
158
|
+
address: wallet.address,
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
function initHardhat(dir) {
|
|
100
162
|
return __awaiter(this, void 0, void 0, function () {
|
|
101
|
-
var startingDir, hardhat,
|
|
163
|
+
var startingDir, hardhat, e_1;
|
|
164
|
+
var _this = this;
|
|
102
165
|
return __generator(this, function (_a) {
|
|
103
166
|
switch (_a.label) {
|
|
104
167
|
case 0:
|
|
105
|
-
if (!instance.contracts[contractName]) return [3 /*break*/, 1];
|
|
106
|
-
return [2 /*return*/, instance.contracts[contractName]];
|
|
107
|
-
case 1:
|
|
108
|
-
logger("Deploying contract ".concat(contractName, " with parameters ").concat(initializationArgs));
|
|
109
168
|
startingDir = process.cwd();
|
|
110
|
-
process.chdir(
|
|
111
|
-
|
|
112
|
-
|
|
169
|
+
process.chdir(dir);
|
|
170
|
+
_a.label = 1;
|
|
171
|
+
case 1:
|
|
172
|
+
_a.trys.push([1, 3, , 4]);
|
|
173
|
+
return [4 /*yield*/, (function () { return __awaiter(_this, void 0, void 0, function () {
|
|
174
|
+
var e_2;
|
|
175
|
+
return __generator(this, function (_a) {
|
|
176
|
+
switch (_a.label) {
|
|
177
|
+
case 0:
|
|
178
|
+
_a.trys.push([0, 1, , 3]);
|
|
179
|
+
return [2 /*return*/, require("hardhat")];
|
|
180
|
+
case 1:
|
|
181
|
+
e_2 = _a.sent();
|
|
182
|
+
console.log("Requiring hardhat failed... Trying using import... Check the error below\n", e_2);
|
|
183
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return __importStar(require("hardhat")); })];
|
|
184
|
+
case 2: return [2 /*return*/, (_a.sent()).default];
|
|
185
|
+
case 3: return [2 /*return*/];
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
}); })()];
|
|
189
|
+
case 2:
|
|
190
|
+
hardhat = (_a.sent());
|
|
113
191
|
process.chdir(startingDir);
|
|
114
|
-
|
|
115
|
-
|
|
192
|
+
return [2 /*return*/, hardhat];
|
|
193
|
+
case 3:
|
|
194
|
+
e_1 = _a.sent();
|
|
195
|
+
process.chdir(startingDir);
|
|
196
|
+
throw e_1;
|
|
197
|
+
case 4: return [2 /*return*/];
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
function deployContract(_a) {
|
|
203
|
+
return __awaiter(this, arguments, void 0, function (_b) {
|
|
204
|
+
var ethers, owner, Factory, lock, connection, initializationKey, e_3;
|
|
205
|
+
var contractName = _b.contractName, args = _b.args;
|
|
206
|
+
return __generator(this, function (_c) {
|
|
207
|
+
switch (_c.label) {
|
|
208
|
+
case 0:
|
|
209
|
+
logger("Deploying contract ".concat(contractName, " with ").concat(args.length, " parameters ").concat(args
|
|
210
|
+
.map(function (a) { return "".concat(a, " (").concat(Array.isArray(a) ? "array" : typeof a, ")"); })
|
|
211
|
+
.join(", ")));
|
|
212
|
+
_c.label = 1;
|
|
213
|
+
case 1:
|
|
214
|
+
_c.trys.push([1, 11, , 12]);
|
|
215
|
+
if (!(instance === null || instance === void 0 ? void 0 : instance.rootFolder))
|
|
216
|
+
throw new Error("You are trying to deploy a contract without defining the Blockchain Project folder. Please define it at startBlockchain command.");
|
|
217
|
+
return [4 /*yield*/, initHardhat(instance.rootFolder)];
|
|
116
218
|
case 2:
|
|
117
|
-
|
|
118
|
-
return [4 /*yield*/, ethers.
|
|
219
|
+
ethers = (_c.sent()).ethers;
|
|
220
|
+
return [4 /*yield*/, ethers.getSigners()];
|
|
119
221
|
case 3:
|
|
120
|
-
|
|
121
|
-
return [4 /*yield*/,
|
|
222
|
+
owner = (_c.sent())[0];
|
|
223
|
+
return [4 /*yield*/, ethers.getContractFactory(contractName)];
|
|
122
224
|
case 4:
|
|
123
|
-
|
|
124
|
-
return [4 /*yield*/,
|
|
225
|
+
Factory = _c.sent();
|
|
226
|
+
return [4 /*yield*/, Factory.deploy()];
|
|
125
227
|
case 5:
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
logger("Initializing contract with owner ".concat(owner, " and args ").concat(initializationArgs));
|
|
129
|
-
connection = lock.connect(owner);
|
|
130
|
-
initializationKey = Object.keys(connection.functions).find(function (a) {
|
|
131
|
-
return a.split(",", initializationArgs.length) &&
|
|
132
|
-
a.startsWith("initialize(");
|
|
133
|
-
}) || "initialize";
|
|
134
|
-
if (!connection[initializationKey]) return [3 /*break*/, 7];
|
|
135
|
-
return [4 /*yield*/, connection[initializationKey].apply(connection, initializationArgs)];
|
|
228
|
+
lock = _c.sent();
|
|
229
|
+
return [4 /*yield*/, lock.deployed()];
|
|
136
230
|
case 6:
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
231
|
+
_c.sent();
|
|
232
|
+
if (!(args.length > 0)) return [3 /*break*/, 9];
|
|
233
|
+
logger("Initializing contract with owner ".concat(owner, " and args ").concat(args));
|
|
234
|
+
connection = lock.connect(owner);
|
|
235
|
+
initializationKey = Object.keys(connection.functions).find(function (a) { return a.split(",", args.length) && a.startsWith("initialize("); }) || "initialize";
|
|
236
|
+
if (!connection[initializationKey]) return [3 /*break*/, 8];
|
|
237
|
+
return [4 /*yield*/, connection[initializationKey].apply(connection, args)];
|
|
238
|
+
case 7:
|
|
239
|
+
_c.sent();
|
|
240
|
+
_c.label = 8;
|
|
241
|
+
case 8: return [2 /*return*/, {
|
|
242
|
+
address: lock.address,
|
|
243
|
+
owner: owner.address,
|
|
244
|
+
}];
|
|
245
|
+
case 9: return [2 /*return*/, {
|
|
140
246
|
address: lock.address,
|
|
141
|
-
owner: owner.address
|
|
247
|
+
owner: owner.address,
|
|
142
248
|
}];
|
|
249
|
+
case 10: return [3 /*break*/, 12];
|
|
250
|
+
case 11:
|
|
251
|
+
e_3 = _c.sent();
|
|
252
|
+
logger("Something has gone wrong", e_3);
|
|
253
|
+
throw e_3;
|
|
254
|
+
case 12: return [2 /*return*/];
|
|
143
255
|
}
|
|
144
256
|
});
|
|
145
257
|
});
|
|
146
258
|
}
|
|
147
|
-
exports.deployContract = deployContract;
|
|
148
259
|
//# sourceMappingURL=blockchain.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockchain.js","sourceRoot":"","sources":["../../src/native/blockchain.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"blockchain.js","sourceRoot":"","sources":["../../src/native/blockchain.ts"],"names":[],"mappings":"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"}
|
package/dist/native/consts.js
CHANGED
package/dist/native/emulator.js
CHANGED
|
@@ -38,7 +38,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
38
38
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
39
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
40
|
};
|
|
41
|
-
exports
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
42
|
exports.invokeAuthAdmin = exports.startEmulator = exports.killEmulator = void 0;
|
|
43
43
|
var node_fetch_1 = __importDefault(require("node-fetch"));
|
|
44
44
|
var child_process_1 = require("child_process");
|
|
@@ -90,11 +90,11 @@ exports.killEmulator = killEmulator;
|
|
|
90
90
|
* @param args Check property typings for details
|
|
91
91
|
* @returns A promise that resolves when the emulator is ready or fails if the emulator couldn't start or be reached
|
|
92
92
|
*/
|
|
93
|
-
function startEmulator(
|
|
94
|
-
|
|
95
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
93
|
+
function startEmulator(args_1) {
|
|
94
|
+
return __awaiter(this, arguments, void 0, function (args, isRetry) {
|
|
96
95
|
var suiteId;
|
|
97
96
|
var _this = this;
|
|
97
|
+
if (isRetry === void 0) { isRetry = false; }
|
|
98
98
|
return __generator(this, function (_a) {
|
|
99
99
|
switch (_a.label) {
|
|
100
100
|
case 0:
|
|
@@ -115,8 +115,8 @@ function startEmulator(args, isRetry) {
|
|
|
115
115
|
process: (0, child_process_1.spawn)("firebase emulators:start -P ".concat(args.projectId, " ").concat(args.databaseToImport ? "--import ".concat(args.databaseToImport) : "", " ").concat(args.shouldSaveData ? "--export-on-exit" : "", " ").concat(args.only.length ? "--only=".concat(args.only.join(",")) : ""), {
|
|
116
116
|
cwd: undefined,
|
|
117
117
|
env: process.env,
|
|
118
|
-
shell: true
|
|
119
|
-
})
|
|
118
|
+
shell: true,
|
|
119
|
+
}),
|
|
120
120
|
};
|
|
121
121
|
/**
|
|
122
122
|
* This script exists so we can start an emulator from inside cypress
|
|
@@ -159,7 +159,7 @@ function startEmulator(args, isRetry) {
|
|
|
159
159
|
var failedWithUnavailablePort = unavailablePorts.length && e !== 0;
|
|
160
160
|
if (failedWithUnavailablePort) {
|
|
161
161
|
log("Killing ports", unavailablePorts, "detected from text", scriptOutput);
|
|
162
|
-
Promise.all(unavailablePorts.map(function (p) { return (0, kill_port_1
|
|
162
|
+
Promise.all(unavailablePorts.map(function (p) { return (0, kill_port_1.default)(p).catch(function () { }); })).then(function () {
|
|
163
163
|
if (isRetry === false)
|
|
164
164
|
return startEmulator(args, true);
|
|
165
165
|
else
|
|
@@ -178,7 +178,7 @@ function startEmulator(args, isRetry) {
|
|
|
178
178
|
case 2:
|
|
179
179
|
_a.trys.push([2, 4, , 5]);
|
|
180
180
|
log("Checking if emulator is up");
|
|
181
|
-
return [4 /*yield*/, (0, node_fetch_1
|
|
181
|
+
return [4 /*yield*/, (0, node_fetch_1.default)("http://".concat(consts_1.LOCALHOST_DOMAIN, ":").concat(args.UIPort))];
|
|
182
182
|
case 3:
|
|
183
183
|
_a.sent();
|
|
184
184
|
log("Emulator is up and ready");
|
|
@@ -206,18 +206,18 @@ function startEmulator(args, isRetry) {
|
|
|
206
206
|
}
|
|
207
207
|
exports.startEmulator = startEmulator;
|
|
208
208
|
function invokeAuthAdmin(_a) {
|
|
209
|
-
|
|
210
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
209
|
+
return __awaiter(this, arguments, void 0, function (_b) {
|
|
211
210
|
var app, func;
|
|
212
|
-
|
|
213
|
-
|
|
211
|
+
var projectId = _b.projectId, port = _b.port, functionName = _b.functionName, params = _b.params;
|
|
212
|
+
return __generator(this, function (_c) {
|
|
213
|
+
switch (_c.label) {
|
|
214
214
|
case 0: return [4 /*yield*/, _getAuthAdminInstance(projectId, port)];
|
|
215
215
|
case 1:
|
|
216
|
-
app =
|
|
216
|
+
app = _c.sent();
|
|
217
217
|
func = app[functionName];
|
|
218
218
|
return [4 /*yield*/, func.bind(app).apply(void 0, params)];
|
|
219
219
|
case 2:
|
|
220
|
-
|
|
220
|
+
_c.sent();
|
|
221
221
|
return [2 /*return*/, null];
|
|
222
222
|
}
|
|
223
223
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/native/emulator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAAmC;AACnC,+CAAoD;AACpD,wDAAiC;AACjC,mCAA4C;AAE5C,IAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,oCAAoC,CAAC,CAAC;AACnE,IAAI,WAKH,CAAC;AACF,SAAS,WAAW,CAAC,EAAQ;IAAR,mBAAA,EAAA,QAAQ;IAC3B,OAAO,IAAI,OAAO,CAAO,UAAC,CAAC;QACzB,UAAU,CAAC;YACT,CAAC,EAAE,CAAC;QACN,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAsB,YAAY;;;YAChC,IAAI,CAAC,WAAW;gBAAE,sBAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAC;YAC/C,sBAAO,IAAI,OAAO,CAAC,UAAC,CAAC,EAAE,GAAG;oBACxB,IAAI;
|
|
1
|
+
{"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/native/emulator.ts"],"names":[],"mappings":"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"}
|
package/dist/types/contract.js
CHANGED
|
@@ -14,7 +14,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
14
14
|
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
15
|
};
|
|
16
16
|
})();
|
|
17
|
-
exports
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
// @ts-nocheck
|
|
19
19
|
var web3_eth_contract_1 = require("web3-eth-contract");
|
|
20
20
|
var GenericContract = /** @class */ (function (_super) {
|
|
@@ -27,5 +27,5 @@ var GenericContract = /** @class */ (function (_super) {
|
|
|
27
27
|
};
|
|
28
28
|
return GenericContract;
|
|
29
29
|
}(web3_eth_contract_1.Contract));
|
|
30
|
-
exports
|
|
30
|
+
exports.default = GenericContract;
|
|
31
31
|
//# sourceMappingURL=contract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/types/contract.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,cAAc;AACd,uDAK2B;AAyG3B;IAGY,mCAAQ;IAElB,yBAAY,aAAgB,EAAE,OAAgB,EAAE,OAAyB;
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/types/contract.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,cAAc;AACd,uDAK2B;AAyG3B;IAGY,mCAAQ;IAElB,yBAAY,aAAgB,EAAE,OAAgB,EAAE,OAAyB;QACvE,OAAA,MAAK,YAAC,aAAqC,EAAE,OAAO,EAAE,OAAO,CAAC,SAAC;IACjE,CAAC;IAkBQ,uCAAa,GAAtB,UACE,KAAU,EACV,OAAa,EACb,QAAc;QAEd,OAAO,gBAAK,CAAC,aAAa,YAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAQ,CAAC;IAC9D,CAAC;IACH,sBAAC;AAAD,CAAC,AAhCD,CAGY,4BAAQ,GA6BnB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@muritavo/testing-toolkit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "A series of functions to help with testing",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"files": [
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
],
|
|
9
9
|
"scripts": {
|
|
10
10
|
"dev": "tsc --watch",
|
|
11
|
-
"prepack": "tsc"
|
|
11
|
+
"prepack": "tsc",
|
|
12
|
+
"test": "jest --watchAll"
|
|
12
13
|
},
|
|
13
14
|
"repository": {
|
|
14
15
|
"type": "git",
|
|
@@ -21,12 +22,16 @@
|
|
|
21
22
|
},
|
|
22
23
|
"homepage": "https://github.com/Muritavo/testing-toolkit#readme",
|
|
23
24
|
"devDependencies": {
|
|
25
|
+
"@nomiclabs/hardhat-ethers": "^2.2.3",
|
|
26
|
+
"@types/jest": "^29.5.12",
|
|
24
27
|
"firebase": "^9.10.0",
|
|
25
28
|
"firebase-admin": "^11.5.0",
|
|
26
|
-
"text2png": "^2.3.0",
|
|
27
|
-
"web3": "^1.8.0",
|
|
28
29
|
"ganache": "^7.8.0",
|
|
29
|
-
"hardhat": "^2.14.1"
|
|
30
|
+
"hardhat": "^2.14.1",
|
|
31
|
+
"jest": "^29.7.0",
|
|
32
|
+
"text2png": "^2.3.0",
|
|
33
|
+
"ts-jest": "^29.1.2",
|
|
34
|
+
"web3": "^1.8.0"
|
|
30
35
|
},
|
|
31
36
|
"dependencies": {
|
|
32
37
|
"@firebase/rules-unit-testing": "^2.0.4",
|
|
@@ -34,6 +39,6 @@
|
|
|
34
39
|
"@types/node-fetch": "^2.6.2",
|
|
35
40
|
"kill-port": "^2.0.1",
|
|
36
41
|
"node-fetch": "^1",
|
|
37
|
-
"typescript": "^4.
|
|
42
|
+
"typescript": "^5.4.2"
|
|
38
43
|
}
|
|
39
44
|
}
|