@muritavo/testing-toolkit 0.0.1 → 0.1.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.
@@ -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: firebase.firestore.Firestore) => Promise<void>) => 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
@@ -56,7 +56,7 @@ declare const FirebaseConfigEmulatorsShapeExample: {
56
56
  readonly port: number;
57
57
  };
58
58
  readonly ui: {
59
- readonly enabled: true;
59
+ readonly enabled: boolean;
60
60
  readonly port: number;
61
61
  };
62
62
  };
@@ -63,7 +63,7 @@ exports.deleteCollection = deleteCollection;
63
63
  * @param projectId The current project id of the emulator instance
64
64
  * @param cb The callback to be executed
65
65
  */
66
- var setupEmulator = function (projectId, cb) { return __awaiter(void 0, void 0, void 0, function () {
66
+ var setupEmulator = function (projectId, cb, storageBucket) { return __awaiter(void 0, void 0, void 0, function () {
67
67
  var testEnv;
68
68
  return __generator(this, function (_a) {
69
69
  switch (_a.label) {
@@ -72,6 +72,10 @@ var setupEmulator = function (projectId, cb) { return __awaiter(void 0, void 0,
72
72
  firestore: {
73
73
  host: "localhost",
74
74
  port: _getPort("firestore")
75
+ },
76
+ storage: {
77
+ host: "localhost",
78
+ port: _getPort("storage")
75
79
  }
76
80
  })];
77
81
  case 1:
@@ -82,7 +86,7 @@ var setupEmulator = function (projectId, cb) { return __awaiter(void 0, void 0,
82
86
  case 0: return [4 /*yield*/, cb(ctx.firestore({
83
87
  experimentalForceLongPolling: true,
84
88
  merge: true
85
- }))];
89
+ }), ctx.storage(storageBucket))];
86
90
  case 1:
87
91
  _a.sent();
88
92
  return [2 /*return*/];
@@ -1 +1 @@
1
- {"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/client/emulator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/client/emulator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Generates an random colored image with specified width, height and quality
3
+ * @param width width of the image
4
+ * @param height height of the image
5
+ * @param quality quality of the image
6
+ */
7
+ export declare const generateImage: (cols: number, rows: number, strRandom: string, orientation?: "vertical" | "horizontal") => any;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.generateImage = void 0;
4
+ var text2png = require("text2png");
5
+ var firstEmoji = 0x1f604;
6
+ var emojisCount = 0x1f64f - firstEmoji;
7
+ /**
8
+ * Generates an random colored image with specified width, height and quality
9
+ * @param width width of the image
10
+ * @param height height of the image
11
+ * @param quality quality of the image
12
+ */
13
+ var generateImage = function (cols, rows, strRandom, orientation) {
14
+ if (orientation === void 0) { orientation = "vertical"; }
15
+ strRandom =
16
+ orientation === "vertical" ? strRandom : "".concat(strRandom).concat(orientation);
17
+ var numFromStr = strRandom
18
+ .split("")
19
+ .reduce(function (r, char) { return r + char.charCodeAt(0); }, 0);
20
+ var rest = numFromStr % emojisCount;
21
+ var e = function (i) { return String.fromCodePoint(firstEmoji + rest + i); };
22
+ var template = "";
23
+ for (var i = 0; i < rows; i++) {
24
+ for (var c = 0; c < cols; c++) {
25
+ template += e(cols * i + c);
26
+ }
27
+ template += "\n";
28
+ }
29
+ var instance = text2png(template, {
30
+ output: "dataURL",
31
+ padding: 10,
32
+ font: "50px monospace",
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, ")")
35
+ });
36
+ return instance;
37
+ };
38
+ exports.generateImage = generateImage;
39
+ //# sourceMappingURL=utility.js.map
@@ -0,0 +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;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC7B,QAAQ,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;SAC7B;QACD,QAAQ,IAAI,IAAI,CAAC;KAClB;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"}
@@ -116,7 +116,7 @@ function startEmulator(args) {
116
116
  * This script exists so we can start an emulator from inside cypress
117
117
  */
118
118
  return [2 /*return*/, new Promise(function (r, rej) { return __awaiter(_this, void 0, void 0, function () {
119
- var breakLoop, timeout, e_1;
119
+ var breakLoop, timeout, scriptOutput, e_1;
120
120
  return __generator(this, function (_a) {
121
121
  switch (_a.label) {
122
122
  case 0:
@@ -141,10 +141,15 @@ function startEmulator(args) {
141
141
  });
142
142
  spawnResult.process.on("close", function (e) {
143
143
  clearTimeout(timeout);
144
- log("Emulator closed with", e);
145
- rej(new Error("Emulator closed with code ".concat(e, ". Check the firebse-debug.log for more details")));
144
+ log("Emulator closed with", e, "and data", scriptOutput);
145
+ rej(new Error("Emulator closed with code ".concat(e, ". Check the firebase-debug.log for more details")));
146
146
  spawnResult = undefined;
147
147
  });
148
+ scriptOutput = "";
149
+ spawnResult.process.stdout.on("data", function (data) {
150
+ data = data.toString();
151
+ scriptOutput += data;
152
+ });
148
153
  _a.label = 1;
149
154
  case 1:
150
155
  if (!!breakLoop) return [3 /*break*/, 7];
@@ -1 +1 @@
1
- {"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/native/emulator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emulator.js","sourceRoot":"","sources":["../../src/native/emulator.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,23 @@
1
1
  import { Contract, ContractOptions, EventData, PastEventOptions } from "web3-eth-contract";
2
- declare type ExtractMethods<A extends any[number]> = A extends {
2
+ export declare type AllABIs = readonly any[];
3
+ declare type ExtractMethods<A extends AllABIs[number]> = A extends {
3
4
  type: "function";
4
5
  } ? A["name"] : never;
5
- declare type ExtractEvents<A extends any[number]> = A extends {
6
+ declare type ExtractEvents<A extends AllABIs[number]> = A extends {
6
7
  type: "event";
7
8
  } ? A["name"] : never;
8
- declare type TypeOrInternalType<T> = T["internalType"] extends unknown ? T["type"] : T["internalType"];
9
- declare type MapTypeToJS<L, C> = L extends "address" | "uint256" | "uint128" | "uint8" | "string" | "bytes32" ? string : L extends "bool" ? boolean : L extends "tuple" ? TuplifyUnion<C[number], C[number]["name"]> : unknown;
10
- declare type ExtractFromObj<R extends any[number] & {
9
+ declare type TypeOrInternalType<T> = T['internalType'] extends unknown ? T['type'] : T['internalType'];
10
+ declare type MapTypeToJS<L, C> = L extends "tuple[]" ? TuplifyUnion<C[number], C[number]['name']>[] : L extends "address" | "uint256" | "uint128" | "uint8" | "string" | "bytes32" ? string : L extends "uint256[]" | "string[]" ? string[] : L extends "bool" ? boolean : L extends 'tuple' ? TuplifyUnion<C[number], C[number]['name']> : unknown;
11
+ declare type ExtractFromObj<R extends (AllABIs[number] & {
11
12
  type: "function";
12
- }> = {
13
- [K in R["outputs"][number]["name"]]: MapTypeToJS<TypeOrInternalType<R["outputs"][number] & {
13
+ })> = {
14
+ [K in R["outputs"][number]["name"]]: MapTypeToJS<TypeOrInternalType<(R["outputs"][number] & {
14
15
  name: K;
15
- }>, (R["outputs"][number] & {
16
+ })>, (R["outputs"][number] & {
16
17
  name: K;
17
18
  })["components"]>;
18
19
  };
19
- export declare type ExtractMethodDefinition<A extends any, N extends (any[number] & {
20
+ export declare type ExtractMethodDefinition<A extends AllABIs, N extends (AllABIs[number] & {
20
21
  type: "function";
21
22
  })["name"], R = A[number] & {
22
23
  type: "function";
@@ -32,7 +33,7 @@ export declare type ExtractMethodDefinition<A extends any, N extends (any[number
32
33
  outputs: {
33
34
  length: 1;
34
35
  };
35
- } ? MapTypeToJS<TypeOrInternalType<R["outputs"][0]>, R["outputs"][0]["components"]> : R extends {
36
+ } ? MapTypeToJS<TypeOrInternalType<R["outputs"][0]>, R["outputs"][0]['components']> : R extends {
36
37
  outputs: any;
37
38
  } ? ExtractFromObj<R> : void>;
38
39
  send: (prop: {
@@ -45,12 +46,12 @@ export declare type ExtractMethodDefinition<A extends any, N extends (any[number
45
46
  declare type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
46
47
  declare type LastOf<T> = UnionToIntersection<T extends any ? () => T : never> extends () => infer R ? R : never;
47
48
  declare type Push<T extends any[], V> = [...T, V];
48
- export declare type TuplifyUnion<FUNCS, T, L = LastOf<T>, N = [T] extends [never] ? true : false> = true extends N ? [] : Push<TuplifyUnion<FUNCS, Exclude<T, L>>, MapTypeToJS<TypeOrInternalType<FUNCS & {
49
+ export declare type TuplifyUnion<FUNCS, T, L = LastOf<T>, N = [T] extends [never] ? true : false> = true extends N ? [] : Push<TuplifyUnion<FUNCS, Exclude<T, L>>, MapTypeToJS<TypeOrInternalType<(FUNCS & {
49
50
  name: L;
50
- }>, (FUNCS & {
51
+ })>, (FUNCS & {
51
52
  name: L;
52
- })["components"]>>;
53
- export declare class GenericContract<A extends any = any, E extends string = ExtractEvents<A[number]> | "allEvents"> extends Contract {
53
+ })['components']>>;
54
+ export default class GenericContract<A extends AllABIs = AllABIs, E extends string = ExtractEvents<A[number]> | "allEvents"> extends Contract {
54
55
  events: Exclude<E, "allEvents">;
55
56
  constructor(jsonInterface: A, address?: string, options?: ContractOptions);
56
57
  methods: {
@@ -61,11 +62,11 @@ export declare class GenericContract<A extends any = any, E extends string = Ext
61
62
  getPastEvents(event: E, options: PastEventOptions): Promise<GenericEventData<A>[]>;
62
63
  getPastEvents(event: E, callback: (error: Error, event: EventData) => void): Promise<GenericEventData<A>[]>;
63
64
  }
64
- export declare type GenericEventData<E extends any> = EventData & GenericEvent<E>;
65
- declare type ABIEvent = any[number] & {
65
+ export declare type GenericEventData<E extends AllABIs> = EventData & GenericEvent<E>;
66
+ declare type ABIEvent = AllABIs[number] & {
66
67
  type: "event";
67
68
  };
68
- declare type GenericEvent<ABI extends any, E extends string = ExtractEvents<ABI[number]>> = {
69
+ declare type GenericEvent<ABI extends AllABIs, E extends string = ExtractEvents<ABI[number]>> = {
69
70
  event: E;
70
71
  returnValues: ExtractReturnValues<ABIEvent & {
71
72
  name: E;
@@ -73,6 +74,6 @@ declare type GenericEvent<ABI extends any, E extends string = ExtractEvents<ABI[
73
74
  };
74
75
  declare type ExtractReturnValues<E extends ABIEvent> = ExtractInputType<E["inputs"][number]>;
75
76
  declare type ExtractInputType<I extends ABIEvent["inputs"][number]> = {
76
- [k in I["name"]]: MapTypeToJS<TypeOrInternalType<I>, I["components"]>;
77
+ [k in I["name"]]: MapTypeToJS<TypeOrInternalType<I>, I['components']>;
77
78
  };
78
79
  export {};
@@ -15,7 +15,6 @@ var __extends = (this && this.__extends) || (function () {
15
15
  };
16
16
  })();
17
17
  exports.__esModule = true;
18
- exports.GenericContract = void 0;
19
18
  // @ts-nocheck
20
19
  var web3_eth_contract_1 = require("web3-eth-contract");
21
20
  var GenericContract = /** @class */ (function (_super) {
@@ -28,5 +27,5 @@ var GenericContract = /** @class */ (function (_super) {
28
27
  };
29
28
  return GenericContract;
30
29
  }(web3_eth_contract_1.Contract));
31
- exports.GenericContract = GenericContract;
30
+ exports["default"] = GenericContract;
32
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;AAkH3B;IAGU,mCAAQ;IAEhB,yBAAY,aAAgB,EAAE,OAAgB,EAAE,OAAyB;eACvE,kBAAM,aAAqC,EAAE,OAAO,EAAE,OAAO,CAAC;IAChE,CAAC;IAkBQ,uCAAa,GAAtB,UACE,KAAU,EACV,OAAa,EACb,QAAc;QAEd,OAAO,iBAAM,aAAa,YAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAQ,CAAC;IAC9D,CAAC;IACH,sBAAC;AAAD,CAAC,AAhCD,CAGU,4BAAQ,GA6BjB;AAhCY,0CAAe"}
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;eACvE,kBAAM,aAAqC,EAAE,OAAO,EAAE,OAAO,CAAC;IAChE,CAAC;IAkBQ,uCAAa,GAAtB,UACE,KAAU,EACV,OAAa,EACb,QAAc;QAEd,OAAO,iBAAM,aAAa,YAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAQ,CAAC;IAC9D,CAAC;IACH,sBAAC;AAAD,CAAC,AAhCD,CAGY,4BAAQ,GA6BnB"}
package/package.json CHANGED
@@ -1,9 +1,11 @@
1
1
  {
2
2
  "name": "@muritavo/testing-toolkit",
3
- "version": "0.0.1",
3
+ "version": "0.1.0",
4
4
  "description": "A series of functions to help with testing",
5
5
  "main": "index.js",
6
- "files": ["./dist"],
6
+ "files": [
7
+ "./dist"
8
+ ],
7
9
  "scripts": {
8
10
  "dev": "tsc --watch",
9
11
  "prepack": "tsc"
@@ -20,6 +22,8 @@
20
22
  "homepage": "https://github.com/Muritavo/testing-toolkit#readme",
21
23
  "devDependencies": {
22
24
  "firebase": "^9.10.0",
25
+ "firebase-admin": "^11.5.0",
26
+ "text2png": "^2.3.0",
23
27
  "web3": "^1.8.0"
24
28
  },
25
29
  "dependencies": {