@muritavo/testing-toolkit 0.4.1 → 0.5.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.
Files changed (39) hide show
  1. package/dist/client/blockchain.d.ts +2 -1
  2. package/dist/client/blockchain.js +104 -68
  3. package/dist/client/blockchain.js.map +1 -1
  4. package/dist/client/emulator.js +0 -1
  5. package/dist/client/emulator.js.map +1 -1
  6. package/dist/native/blockchain.d.ts +13 -3
  7. package/dist/native/blockchain.js +366 -52
  8. package/dist/native/blockchain.js.map +1 -1
  9. package/dist/native/emulator.d.ts +13 -0
  10. package/dist/native/emulator.js +45 -12
  11. package/dist/native/emulator.js.map +1 -1
  12. package/dist/src/client/blockchain.d.ts +13 -0
  13. package/dist/src/client/blockchain.js +149 -0
  14. package/dist/src/client/blockchain.js.map +1 -0
  15. package/dist/src/client/emulator.d.ts +65 -0
  16. package/dist/src/client/emulator.js +250 -0
  17. package/dist/src/client/emulator.js.map +1 -0
  18. package/dist/src/client/utility.d.ts +7 -0
  19. package/dist/src/client/utility.js +39 -0
  20. package/dist/src/client/utility.js.map +1 -0
  21. package/dist/src/native/blockchain.d.ts +50 -0
  22. package/dist/src/native/blockchain.js +649 -0
  23. package/dist/src/native/blockchain.js.map +1 -0
  24. package/dist/src/native/consts.d.ts +5 -0
  25. package/dist/src/native/consts.js +9 -0
  26. package/dist/src/native/consts.js.map +1 -0
  27. package/dist/src/native/emulator.d.ts +49 -0
  28. package/dist/src/native/emulator.js +274 -0
  29. package/dist/src/native/emulator.js.map +1 -0
  30. package/dist/src/types/contract.d.ts +79 -0
  31. package/dist/src/types/contract.js +31 -0
  32. package/dist/src/types/contract.js.map +1 -0
  33. package/dist/src/utility/index.d.ts +1 -0
  34. package/dist/src/utility/index.js +12 -0
  35. package/dist/src/utility/index.js.map +1 -0
  36. package/dist/test/hardhat-configs/hardhat-with-graphql/hardhat.config.d.ts +42 -0
  37. package/dist/test/hardhat-configs/hardhat-with-graphql/hardhat.config.js +76 -0
  38. package/dist/test/hardhat-configs/hardhat-with-graphql/hardhat.config.js.map +1 -0
  39. package/package.json +5 -2
@@ -0,0 +1 @@
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
+ Object.defineProperty(exports, "__esModule", { value: 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,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"}
@@ -0,0 +1,50 @@
1
+ import debug from "debug";
2
+ import GenericContract from "../types/contract";
3
+ import { PartialDeep } from "type-fest";
4
+ export declare const blockchainLogger: debug.Debugger;
5
+ export type Addresses = {
6
+ [wallet: string]: {
7
+ secretKey: string;
8
+ };
9
+ };
10
+ export declare function bindToBlockchain({ projectFolder, graphqlProject, hardhatConfigImportPromiseFactory, port, }: {
11
+ port: number;
12
+ projectFolder: string;
13
+ graphqlProject?: string;
14
+ hardhatConfigImportPromiseFactory: () => Promise<PartialDeep<typeof import("../../test/hardhat-configs/hardhat-with-graphql/hardhat.config")["default"]>>;
15
+ }): Promise<Addresses>;
16
+ export declare function startBlockchain({ projectRootFolder: projectFolder, port, graphqlProject, }: {
17
+ /** The NFT projects root folder so the contracts can be deployed from */
18
+ projectRootFolder: string;
19
+ /**
20
+ * This indicates the port the ganache server will run at
21
+ * @default 8545
22
+ * */
23
+ port?: number;
24
+ /**
25
+ * Adds support for graphql for listening to blockchain events and indexing information.
26
+ */
27
+ graphqlProject?: string;
28
+ }): Promise<Addresses>;
29
+ export declare function deriveWallet(index: number, hardhat: any): {
30
+ key: string;
31
+ address: string;
32
+ };
33
+ export declare function deployContract<const ABI extends any[] = []>({ contractAbi, contractName, args, }: {
34
+ contractAbi: ABI;
35
+ contractName: string;
36
+ args: any[];
37
+ }): Promise<{
38
+ address: string;
39
+ owner: string;
40
+ contract: GenericContract<ABI, "allEvents" | (ABI[number] extends infer T ? T extends ABI[number] ? T extends {
41
+ type: "event";
42
+ } ? T["name"] : never : never : never)>;
43
+ }>;
44
+ /**
45
+ * Takes a graph and deploys it into the graph-node
46
+ */
47
+ export declare function deployGraph(graphPath: string, contractAddresses: {
48
+ [deployedContractName: string]: string;
49
+ }, graphName: string, networkName: string): Promise<void>;
50
+ export declare function stopBlockchain(): Promise<void>;