testeranto 0.49.10 → 0.70.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 (250) hide show
  1. package/.nvmrc +1 -0
  2. package/README.md +92 -9
  3. package/dist/cjs-shim.js +12 -0
  4. package/dist/common/Features.js +2 -3
  5. package/dist/common/Node.js +37 -62
  6. package/dist/common/NodeWriter.js +7 -9
  7. package/dist/common/Project.js +130 -627
  8. package/dist/common/SubPackages/puppeteer.js +19 -0
  9. package/dist/common/{subPackages → SubPackages}/react/component/node.js +4 -4
  10. package/dist/common/{subPackages → SubPackages}/react/component/web.js +4 -4
  11. package/dist/common/SubPackages/react/jsx/index.js +13 -0
  12. package/dist/common/SubPackages/react/jsx/node.js +10 -0
  13. package/dist/common/SubPackages/react/jsx/web.js +10 -0
  14. package/dist/common/{subPackages → SubPackages}/react-dom/component/node.js +6 -6
  15. package/dist/common/{subPackages → SubPackages}/react-dom/component/web.js +11 -12
  16. package/dist/common/SubPackages/react-dom/jsx/node.js +39 -0
  17. package/dist/common/{subPackages → SubPackages}/react-dom/jsx/web.js +19 -20
  18. package/dist/common/{subPackages → SubPackages}/react-test-renderer/MemoExoticComponent/node.js +3 -3
  19. package/dist/common/{subPackages → SubPackages}/react-test-renderer/component/index.js +25 -15
  20. package/dist/common/{subPackages/react-test-renderer/jsx → SubPackages/react-test-renderer/component}/node.js +3 -5
  21. package/dist/common/{subPackages/react-test-renderer/jsx → SubPackages/react-test-renderer/component}/web.js +3 -5
  22. package/dist/common/{subPackages → SubPackages}/react-test-renderer/fc/node.js +4 -4
  23. package/dist/common/{subPackages → SubPackages}/react-test-renderer/fc/web.js +4 -4
  24. package/dist/common/{subPackages → SubPackages}/react-test-renderer/jsx/index.js +8 -3
  25. package/dist/common/{subPackages/react-test-renderer/jsx-promised → SubPackages/react-test-renderer/jsx}/node.js +4 -4
  26. package/dist/common/{subPackages/react → SubPackages/react-test-renderer}/jsx/web.js +4 -4
  27. package/dist/common/{subPackages → SubPackages}/react-test-renderer/jsx-promised/index.js +3 -3
  28. package/dist/common/{subPackages/react/jsx → SubPackages/react-test-renderer/jsx-promised}/node.js +2 -2
  29. package/dist/common/Types.js +2 -0
  30. package/dist/common/Web.js +49 -113
  31. package/dist/common/electron.js +256 -42
  32. package/dist/common/esbuildConfigs/features.js +14 -0
  33. package/dist/common/esbuildConfigs/index.js +20 -0
  34. package/dist/common/esbuildConfigs/node.js +37 -0
  35. package/dist/common/esbuildConfigs/report.js +13 -0
  36. package/dist/common/esbuildConfigs/tests.js +13 -0
  37. package/dist/common/esbuildConfigs/web.js +53 -0
  38. package/dist/common/lib/abstractBase.js +200 -0
  39. package/dist/common/lib/basebuilder.js +86 -0
  40. package/dist/common/lib/classBuilder.js +40 -0
  41. package/dist/common/lib/core.js +81 -0
  42. package/dist/common/lib/index.js +21 -0
  43. package/dist/common/lib/types.js +2 -0
  44. package/dist/common/preload.js +15 -24
  45. package/dist/common/puppeteerConfiger.js +24 -0
  46. package/dist/common/report.html.js +31 -0
  47. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  48. package/dist/common/web.html.js +22 -0
  49. package/dist/module/Features.js +2 -3
  50. package/dist/module/Node.js +37 -62
  51. package/dist/module/NodeWriter.js +7 -9
  52. package/dist/module/Project.js +131 -605
  53. package/dist/module/SubPackages/puppeteer.js +14 -0
  54. package/dist/module/{subPackages → SubPackages}/react/component/node.js +3 -3
  55. package/dist/module/{subPackages → SubPackages}/react/component/web.js +3 -3
  56. package/dist/module/SubPackages/react/jsx/index.js +10 -0
  57. package/dist/module/SubPackages/react/jsx/node.js +5 -0
  58. package/dist/module/SubPackages/react/jsx/web.js +5 -0
  59. package/dist/module/{subPackages → SubPackages}/react-dom/component/node.js +7 -7
  60. package/dist/module/{subPackages → SubPackages}/react-dom/component/web.js +10 -11
  61. package/dist/module/SubPackages/react-dom/jsx/node.js +31 -0
  62. package/dist/module/{subPackages → SubPackages}/react-dom/jsx/web.js +20 -21
  63. package/dist/module/{subPackages → SubPackages}/react-test-renderer/MemoExoticComponent/node.js +3 -3
  64. package/dist/module/{subPackages → SubPackages}/react-test-renderer/component/index.js +22 -15
  65. package/dist/module/{subPackages → SubPackages}/react-test-renderer/component/node.js +2 -2
  66. package/dist/module/{subPackages → SubPackages}/react-test-renderer/component/web.js +2 -2
  67. package/dist/module/{subPackages → SubPackages}/react-test-renderer/fc/node.js +3 -3
  68. package/dist/module/{subPackages → SubPackages}/react-test-renderer/fc/web.js +3 -3
  69. package/dist/module/{subPackages → SubPackages}/react-test-renderer/jsx/index.js +8 -3
  70. package/dist/module/SubPackages/react-test-renderer/jsx/node.js +5 -0
  71. package/dist/module/SubPackages/react-test-renderer/jsx/web.js +5 -0
  72. package/dist/module/{subPackages → SubPackages}/react-test-renderer/jsx-promised/index.js +3 -3
  73. package/dist/module/{subPackages/react-test-renderer/jsx → SubPackages/react-test-renderer/jsx-promised}/node.js +1 -1
  74. package/dist/module/Types.js +2 -0
  75. package/dist/module/Web.js +49 -113
  76. package/dist/module/electron.js +257 -43
  77. package/dist/module/esbuildConfigs/features.js +12 -0
  78. package/dist/module/esbuildConfigs/index.js +18 -0
  79. package/dist/module/esbuildConfigs/node.js +32 -0
  80. package/dist/module/esbuildConfigs/report.js +11 -0
  81. package/dist/module/esbuildConfigs/tests.js +11 -0
  82. package/dist/module/esbuildConfigs/web.js +48 -0
  83. package/dist/module/lib/abstractBase.js +192 -0
  84. package/dist/module/lib/basebuilder.js +82 -0
  85. package/dist/module/lib/classBuilder.js +36 -0
  86. package/dist/module/lib/core.js +78 -0
  87. package/dist/module/lib/index.js +17 -0
  88. package/dist/module/lib/types.js +1 -0
  89. package/dist/module/preload.js +12 -24
  90. package/dist/module/puppeteerConfiger.js +19 -0
  91. package/dist/module/report.html.js +29 -0
  92. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  93. package/dist/module/web.html.js +20 -0
  94. package/dist/prebuild/Report.css +10326 -0
  95. package/dist/prebuild/Report.js +37456 -0
  96. package/dist/types/Features.d.ts +5 -5
  97. package/dist/types/Node.d.ts +5 -11
  98. package/dist/types/NodeWriter.d.ts +1 -1
  99. package/dist/types/Project.d.ts +2 -28
  100. package/dist/types/SubPackages/puppeteer.d.ts +6 -0
  101. package/dist/types/SubPackages/react/component/node.d.ts +7 -0
  102. package/dist/types/SubPackages/react/component/web.d.ts +7 -0
  103. package/dist/types/SubPackages/react/jsx/index.d.ts +15 -0
  104. package/dist/types/SubPackages/react/jsx/node.d.ts +4 -0
  105. package/dist/types/SubPackages/react/jsx/web.d.ts +4 -0
  106. package/dist/types/SubPackages/react-dom/component/node.d.ts +12 -0
  107. package/dist/types/SubPackages/react-dom/component/web.d.ts +5 -0
  108. package/dist/types/SubPackages/react-dom/jsx/node.d.ts +6 -0
  109. package/dist/types/SubPackages/react-dom/jsx/web.d.ts +5 -0
  110. package/dist/types/SubPackages/react-test-renderer/MemoExoticComponent/node.d.ts +5 -0
  111. package/dist/types/{subPackages → SubPackages}/react-test-renderer/component/index.d.ts +6 -6
  112. package/dist/types/{subPackages → SubPackages}/react-test-renderer/component/node.d.ts +4 -4
  113. package/dist/types/SubPackages/react-test-renderer/component/web.d.ts +4 -0
  114. package/dist/types/SubPackages/react-test-renderer/fc/node.d.ts +8 -0
  115. package/dist/types/SubPackages/react-test-renderer/fc/web.d.ts +8 -0
  116. package/dist/types/{subPackages → SubPackages}/react-test-renderer/jsx/index.d.ts +5 -4
  117. package/dist/types/SubPackages/react-test-renderer/jsx/node.d.ts +9 -0
  118. package/dist/types/SubPackages/react-test-renderer/jsx/web.d.ts +9 -0
  119. package/dist/types/{subPackages → SubPackages}/react-test-renderer/jsx-promised/index.d.ts +4 -4
  120. package/dist/types/SubPackages/react-test-renderer/jsx-promised/node.d.ts +5 -0
  121. package/dist/types/SubPackages/react-test-renderer/jsx-promised/web.d.ts +5 -0
  122. package/dist/types/Types.d.ts +49 -17
  123. package/dist/types/Web.d.ts +5 -11
  124. package/dist/types/esbuildConfigs/features.d.ts +4 -0
  125. package/dist/types/esbuildConfigs/index.d.ts +4 -0
  126. package/dist/types/esbuildConfigs/node.d.ts +4 -0
  127. package/dist/types/esbuildConfigs/report.d.ts +4 -0
  128. package/dist/types/esbuildConfigs/tests.d.ts +4 -0
  129. package/dist/types/esbuildConfigs/web.d.ts +4 -0
  130. package/dist/types/lib/abstractBase.d.ts +103 -0
  131. package/dist/types/lib/basebuilder.d.ts +25 -0
  132. package/dist/types/lib/classBuilder.d.ts +7 -0
  133. package/dist/types/lib/core.d.ts +8 -0
  134. package/dist/types/lib/index.d.ts +58 -0
  135. package/dist/types/lib/types.d.ts +70 -0
  136. package/dist/types/puppeteerConfiger.d.ts +4 -0
  137. package/dist/types/report.html.d.ts +2 -0
  138. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  139. package/dist/types/web.html.d.ts +2 -0
  140. package/electronBuild.ts +32 -0
  141. package/index.html +30 -0
  142. package/package.json +123 -87
  143. package/src/Features.ts +2 -4
  144. package/src/Node.ts +79 -155
  145. package/src/NodeWriter.ts +22 -22
  146. package/src/Project.ts +185 -783
  147. package/src/Report.tsx +30 -15
  148. package/src/SubPackages/puppeteer.ts +51 -0
  149. package/src/SubPackages/react/component/node.ts +43 -0
  150. package/src/SubPackages/react/component/web.ts +43 -0
  151. package/src/SubPackages/react/jsx/index.ts +32 -0
  152. package/src/SubPackages/react/jsx/node.ts +29 -0
  153. package/src/SubPackages/react/jsx/web.ts +30 -0
  154. package/src/{subPackages → SubPackages}/react-dom/component/node.ts +24 -44
  155. package/src/SubPackages/react-dom/component/web.ts +104 -0
  156. package/src/{subPackages → SubPackages}/react-dom/jsx/index.ts +0 -1
  157. package/src/SubPackages/react-dom/jsx/node.ts +68 -0
  158. package/src/SubPackages/react-dom/jsx/web.ts +102 -0
  159. package/src/SubPackages/react-test-renderer/MemoExoticComponent/node.ts +38 -0
  160. package/src/{subPackages → SubPackages}/react-test-renderer/component/index.ts +37 -49
  161. package/src/SubPackages/react-test-renderer/component/node.ts +16 -0
  162. package/src/SubPackages/react-test-renderer/component/web.ts +16 -0
  163. package/src/SubPackages/react-test-renderer/fc/node.ts +49 -0
  164. package/src/SubPackages/react-test-renderer/fc/web.ts +48 -0
  165. package/src/SubPackages/react-test-renderer/jsx/index.ts +49 -0
  166. package/src/SubPackages/react-test-renderer/jsx/node.ts +20 -0
  167. package/src/SubPackages/react-test-renderer/jsx/web.ts +20 -0
  168. package/src/{subPackages → SubPackages}/react-test-renderer/jsx-promised/index.ts +15 -26
  169. package/src/SubPackages/react-test-renderer/jsx-promised/node.ts +19 -0
  170. package/src/SubPackages/react-test-renderer/jsx-promised/web.ts +22 -0
  171. package/src/Types.ts +114 -17
  172. package/src/Web.ts +100 -225
  173. package/src/cjs-shim.js +12 -0
  174. package/src/electron.ts +303 -45
  175. package/src/esbuildConfigs/features.ts +17 -0
  176. package/src/esbuildConfigs/index.ts +22 -0
  177. package/src/esbuildConfigs/node.ts +60 -0
  178. package/src/esbuildConfigs/report.ts +15 -0
  179. package/src/esbuildConfigs/tests.ts +14 -0
  180. package/src/esbuildConfigs/web.ts +73 -0
  181. package/src/lib/abstractBase.ts +412 -0
  182. package/src/lib/basebuilder.ts +228 -0
  183. package/src/lib/classBuilder.ts +118 -0
  184. package/src/lib/core.ts +214 -0
  185. package/src/lib/index.ts +117 -0
  186. package/src/lib/types.ts +206 -0
  187. package/src/preload.ts +13 -27
  188. package/src/puppeteerConfiger.ts +26 -0
  189. package/src/report.html.ts +29 -0
  190. package/src/web.html.ts +20 -0
  191. package/tests/Rectangle.test.ts +189 -0
  192. package/tsconfig.json +19 -6
  193. package/tsconfig.module.json +15 -4
  194. package/tsconfig.types.json +14 -4
  195. package/yarn-error.log +3144 -0
  196. package/dist/common/core.js +0 -397
  197. package/dist/common/subPackages/react/jsx/index.js +0 -26
  198. package/dist/common/subPackages/react-dom/jsx/node.js +0 -95
  199. package/dist/common/subPackages/react-test-renderer/component/node.js +0 -8
  200. package/dist/common/subPackages/react-test-renderer/component/web.js +0 -8
  201. package/dist/module/Report.js +0 -186
  202. package/dist/module/core.js +0 -388
  203. package/dist/module/subPackages/react/jsx/index.js +0 -22
  204. package/dist/module/subPackages/react/jsx/node.js +0 -5
  205. package/dist/module/subPackages/react/jsx/web.js +0 -5
  206. package/dist/module/subPackages/react-dom/jsx/node.js +0 -87
  207. package/dist/module/subPackages/react-test-renderer/jsx/web.js +0 -5
  208. package/dist/module/subPackages/react-test-renderer/jsx-promised/node.js +0 -5
  209. package/dist/types/core.d.ts +0 -220
  210. package/dist/types/subPackages/react/component/node.d.ts +0 -12
  211. package/dist/types/subPackages/react/component/web.d.ts +0 -12
  212. package/dist/types/subPackages/react/jsx/index.d.ts +0 -15
  213. package/dist/types/subPackages/react/jsx/node.d.ts +0 -4
  214. package/dist/types/subPackages/react/jsx/web.d.ts +0 -4
  215. package/dist/types/subPackages/react-dom/component/node.d.ts +0 -14
  216. package/dist/types/subPackages/react-dom/component/web.d.ts +0 -19
  217. package/dist/types/subPackages/react-dom/jsx/node.d.ts +0 -8
  218. package/dist/types/subPackages/react-dom/jsx/web.d.ts +0 -5
  219. package/dist/types/subPackages/react-test-renderer/MemoExoticComponent/node.d.ts +0 -8
  220. package/dist/types/subPackages/react-test-renderer/component/web.d.ts +0 -9
  221. package/dist/types/subPackages/react-test-renderer/fc/node.d.ts +0 -9
  222. package/dist/types/subPackages/react-test-renderer/fc/web.d.ts +0 -9
  223. package/dist/types/subPackages/react-test-renderer/jsx/node.d.ts +0 -4
  224. package/dist/types/subPackages/react-test-renderer/jsx/web.d.ts +0 -4
  225. package/dist/types/subPackages/react-test-renderer/jsx-promised/node.d.ts +0 -4
  226. package/dist/types/subPackages/react-test-renderer/jsx-promised/web.d.ts +0 -4
  227. package/src/core.ts +0 -1399
  228. package/src/subPackages/react/component/node.ts +0 -75
  229. package/src/subPackages/react/component/web.ts +0 -80
  230. package/src/subPackages/react/jsx/index.ts +0 -64
  231. package/src/subPackages/react/jsx/node.ts +0 -29
  232. package/src/subPackages/react/jsx/web.ts +0 -29
  233. package/src/subPackages/react-dom/component/web.ts +0 -129
  234. package/src/subPackages/react-dom/jsx/node.ts +0 -145
  235. package/src/subPackages/react-dom/jsx/web.ts +0 -145
  236. package/src/subPackages/react-test-renderer/MemoExoticComponent/node.ts +0 -67
  237. package/src/subPackages/react-test-renderer/component/node.ts +0 -30
  238. package/src/subPackages/react-test-renderer/component/web.ts +0 -30
  239. package/src/subPackages/react-test-renderer/fc/node.ts +0 -77
  240. package/src/subPackages/react-test-renderer/fc/web.ts +0 -77
  241. package/src/subPackages/react-test-renderer/jsx/index.ts +0 -51
  242. package/src/subPackages/react-test-renderer/jsx/node.ts +0 -31
  243. package/src/subPackages/react-test-renderer/jsx/web.ts +0 -31
  244. package/src/subPackages/react-test-renderer/jsx-promised/node.ts +0 -31
  245. package/src/subPackages/react-test-renderer/jsx-promised/web.ts +0 -31
  246. /package/dist/common/{subPackages → SubPackages}/react-dom/jsx/index.js +0 -0
  247. /package/dist/common/{subPackages → SubPackages}/react-test-renderer/jsx-promised/web.js +0 -0
  248. /package/dist/module/{subPackages → SubPackages}/react-dom/jsx/index.js +0 -0
  249. /package/dist/module/{subPackages → SubPackages}/react-test-renderer/jsx-promised/web.js +0 -0
  250. /package/dist/types/{subPackages → SubPackages}/react-dom/jsx/index.d.ts +0 -0
@@ -0,0 +1,26 @@
1
+ import http from "http";
2
+
3
+ export default async (
4
+ port: string
5
+ ): Promise<{ webSocketDebuggerUrl: string }> =>
6
+ new Promise((resolve, reject) => {
7
+ let json = "";
8
+ const request = http.request(
9
+ {
10
+ host: "127.0.0.1",
11
+ path: "/json/version",
12
+ port,
13
+ },
14
+ (response) => {
15
+ response.on("error", reject);
16
+ response.on("data", (chunk: Buffer) => {
17
+ json += chunk.toString();
18
+ });
19
+ response.on("end", () => {
20
+ resolve(JSON.parse(json));
21
+ });
22
+ }
23
+ );
24
+ request.on("error", reject);
25
+ request.end();
26
+ });
@@ -0,0 +1,29 @@
1
+ export default () => `
2
+ <!DOCTYPE html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <meta name="description" content="Webpage description goes here" />
7
+ <meta charset="utf-8" />
8
+ <title>kokomoBay - testeranto</title>
9
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
10
+ <meta name="author" content="" />
11
+
12
+ <link rel="stylesheet" href="./Report.css">
13
+
14
+ <script type="importmap">
15
+ {
16
+ "imports": {
17
+ "features.test.js": "./features.test.js",
18
+ "testeranto.json": "./testeranto.json"
19
+ }
20
+ }
21
+ </script>
22
+
23
+ <script type="module" src="./Report.js"></script>
24
+ </head>
25
+
26
+ <body><div id="root">react is loading</div></body>
27
+
28
+ </html>
29
+ `;
@@ -0,0 +1,20 @@
1
+ export default (jsfilePath: string, htmlFilePath: string) => `
2
+ <!DOCTYPE html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <script type="module" src="${jsfilePath}"></script>
7
+
8
+ </head>
9
+
10
+ <body>
11
+ <h1>${htmlFilePath}</h1>
12
+ <div id="root">
13
+
14
+ </div>
15
+ </body>
16
+
17
+ <footer></footer>
18
+
19
+ </html>
20
+ `;
@@ -0,0 +1,189 @@
1
+
2
+ import { assert } from "chai";
3
+
4
+ import { ITestSpecification } from "../src/Types";
5
+ import { ITTestShape } from "../src/lib";
6
+
7
+ class Rectangle {
8
+ height: number;
9
+ width: number;
10
+
11
+ constructor(height = 2, width = 2) {
12
+ this.height = height;
13
+ this.width = width;
14
+ }
15
+
16
+ getHeight() {
17
+ return this.height;
18
+ }
19
+
20
+ getWidth() {
21
+ return this.width;
22
+ }
23
+
24
+ setHeight(height: number) {
25
+ this.height = height;
26
+ }
27
+
28
+ setWidth(width: number) {
29
+ this.width = width;
30
+ }
31
+
32
+ area(): number {
33
+ return this.width * this.height;
34
+ }
35
+
36
+ circumference(): number {
37
+ return this.width * 2 + this.height * 2;
38
+ }
39
+ }
40
+
41
+ //////////////////////////////////////////////////////////////////////////////////
42
+
43
+ export type IRectangleTestShape = {
44
+ suites: {
45
+ Default: string;
46
+ },
47
+ givens: {
48
+ Default;
49
+ WidthOfOneAndHeightOfOne;
50
+ WidthAndHeightOf: [number, number];
51
+ },
52
+ whens: {
53
+ HeightIsPubliclySetTo: [number];
54
+ WidthIsPubliclySetTo: [number];
55
+ setWidth: [number];
56
+ setHeight: [number];
57
+ },
58
+ thens: {
59
+ AreaPlusCircumference: [number];
60
+ circumference: [number];
61
+ getWidth: [number];
62
+ getHeight: [number];
63
+ area: [number];
64
+ prototype: [string];
65
+ },
66
+ checks: {
67
+ Default;
68
+ WidthOfOneAndHeightOfOne;
69
+ WidthAndHeightOf: [number, number];
70
+ }
71
+ } & ITTestShape;
72
+
73
+ export const RectangleTesterantoBaseInterface = {};
74
+
75
+ export type WhenShape = any;
76
+ export type ThenShape = any;
77
+ export type GivenShape = any;
78
+ export type Input = Rectangle;
79
+ export type IRuntime = { runtime: "just node", entrypoint: "./Rect" };
80
+ export const RectangleTesterantoBasePrototype = Rectangle.prototype;
81
+
82
+
83
+ export const RectangleTesterantoBaseTestSpecification: ITestSpecification<
84
+ IRectangleTestShape,
85
+ Input,
86
+ Input,
87
+ WhenShape,
88
+ ThenShape,
89
+ GivenShape
90
+ > =
91
+ (Suite, Given, When, Then, Check) => {
92
+ return [
93
+ Suite.Default(
94
+ "Testing the Rectangle class",
95
+ {
96
+ "test0": Given.Default(
97
+ [`hello`],
98
+ [When.setWidth(4), When.setHeight(9)],
99
+ [Then.getWidth(4), Then.getHeight(9)]
100
+ ),
101
+ "test1": Given.Default(
102
+ [`hello`],
103
+ [When.setWidth(4), When.setHeight(5)],
104
+ [
105
+ Then.getWidth(4),
106
+ Then.getHeight(5),
107
+ Then.area(20),
108
+ Then.AreaPlusCircumference(38),
109
+ ]
110
+ ),
111
+ "test2": Given.Default(
112
+ [`hello`],
113
+ [When.setHeight(4), When.setWidth(3)],
114
+ [Then.area(12)]
115
+ ),
116
+ "test3": Given.Default(
117
+ [`hello`],
118
+ [When.setHeight(5), When.setWidth(5)],
119
+ [Then.area(25)]
120
+ )
121
+ },
122
+ []
123
+ // Check.Default(
124
+ // "imperative style",
125
+ // async ({ PostToAdd }, { TheNumberIs }) => {
126
+ // const a = await PostToAdd(2);
127
+ // const b = parseInt(await PostToAdd(3));
128
+ // await TheNumberIs(b);
129
+ // await PostToAdd(2);
130
+ // await TheNumberIs(7);
131
+ // await PostToAdd(3);
132
+ // await TheNumberIs(10);
133
+ // assert.equal(await PostToAdd(-15), -5);
134
+ // await TheNumberIs(-5);
135
+ // }
136
+ // ),
137
+ // ]
138
+ ),
139
+ ];
140
+ };
141
+
142
+ export const RectangleTesterantoBaseTestImplementation = {
143
+ Suites: {
144
+ Default: "a default suite",
145
+ },
146
+
147
+ Givens: {
148
+ Default: () => new Rectangle(),
149
+ WidthOfOneAndHeightOfOne: () => new Rectangle(1, 1),
150
+ WidthAndHeightOf: (width, height) => new Rectangle(width, height),
151
+ },
152
+
153
+ Whens: {
154
+ HeightIsPubliclySetTo: (height) => (rectangle) =>
155
+ (rectangle.height = height),
156
+ WidthIsPubliclySetTo: (width) => (rectangle) => (rectangle.width = width),
157
+ setWidth: (width) => (rectangle) => rectangle.setWidth(width),
158
+ setHeight: (height) => (rectangle) => {
159
+ console.log("SET HEIGHT", rectangle, height);
160
+ rectangle.setHeight(height);
161
+ },
162
+ },
163
+
164
+ Thens: {
165
+ AreaPlusCircumference: (combined) => (rectangle) => {
166
+ assert.equal(rectangle.area() + rectangle.circumference(), combined);
167
+ },
168
+ getWidth: (width) => (rectangle) => assert.equal(rectangle.width, width),
169
+
170
+ getHeight: (height) => (rectangle) =>
171
+ assert.equal(rectangle.height, height),
172
+
173
+ area: (area) => (rectangle) => assert.equal(rectangle.area(), area),
174
+
175
+ prototype: (name) => (rectangle) => assert.equal(1, 1),
176
+ // throw new Error("Function not implemented.")
177
+
178
+ circumference: (circumference) => (rectangle) =>
179
+ assert.equal(rectangle.circumference(), circumference),
180
+ },
181
+
182
+ Checks: {
183
+ /* @ts-ignore:next-line */
184
+ AnEmptyState: () => {
185
+ return {};
186
+ },
187
+ },
188
+ };
189
+
package/tsconfig.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "ts-node": {
3
3
  "compilerOptions": {
4
- "module": "esnext"
4
+ "module": "esnext",
5
+ "allowSyntheticDefaultImports": true,
5
6
  }
6
7
  },
7
8
  "declaration": true,
@@ -13,12 +14,16 @@
13
14
  "allowSyntheticDefaultImports": true,
14
15
  "noImplicitAny": false,
15
16
  "module": "esnext",
16
- "target": "es2017",
17
+ "target": "ES2022",
17
18
  "allowJs": true,
18
19
  "jsx": "react",
19
20
  "resolveJsonModule": true,
20
21
  "strictNullChecks": true,
21
- "lib": ["dom", "dom.iterable", "esnext"],
22
+ "lib": [
23
+ "dom",
24
+ "dom.iterable",
25
+ "esnext"
26
+ ],
22
27
  "skipLibCheck": true,
23
28
  "strict": false,
24
29
  "forceConsistentCasingInFileNames": true,
@@ -30,6 +35,14 @@
30
35
  "outDir": "dist",
31
36
  "alwaysStrict": true
32
37
  },
33
- "include": ["src/**/*.*ts", "src/**/*.*tsx", "index.d.ts"],
34
- "exclude": ["node_modules", "trash"]
35
- }
38
+ "include": [
39
+ "src/**/*.*ts",
40
+ "src/**/*.*tsx",
41
+ "index.d.ts",
42
+ "electronBuild.ts"
43
+ ],
44
+ "exclude": [
45
+ "node_modules",
46
+ "trash"
47
+ ]
48
+ }
@@ -18,7 +18,11 @@
18
18
  "jsx": "react",
19
19
  "resolveJsonModule": true,
20
20
  "strictNullChecks": true,
21
- "lib": ["dom", "dom.iterable", "esnext"],
21
+ "lib": [
22
+ "dom",
23
+ "dom.iterable",
24
+ "esnext"
25
+ ],
22
26
  "skipLibCheck": true,
23
27
  "strict": false,
24
28
  "forceConsistentCasingInFileNames": true,
@@ -30,6 +34,13 @@
30
34
  "outDir": "dist/module/",
31
35
  "alwaysStrict": true
32
36
  },
33
- "include": ["src/**/*.*ts", "src/**/*.*tsx", "index.d.ts"],
34
- "exclude": ["node_modules"]
35
- }
37
+ "include": [
38
+ "src/**/*.*ts",
39
+ "src/**/*.*tsx",
40
+ "index.d.ts"
41
+ ],
42
+ "exclude": [
43
+ "node_modules",
44
+ "src/Report.tsx"
45
+ ]
46
+ }
@@ -18,7 +18,11 @@
18
18
  "jsx": "react",
19
19
  "resolveJsonModule": true,
20
20
  "strictNullChecks": true,
21
- "lib": ["dom", "dom.iterable", "esnext"],
21
+ "lib": [
22
+ "dom",
23
+ "dom.iterable",
24
+ "esnext"
25
+ ],
22
26
  "skipLibCheck": true,
23
27
  "strict": false,
24
28
  "forceConsistentCasingInFileNames": true,
@@ -31,6 +35,12 @@
31
35
  "outDir": "dist/types/",
32
36
  "alwaysStrict": true
33
37
  },
34
- "include": ["src/**/*.*ts", "index.d.ts"],
35
- "exclude": ["node_modules"]
36
- }
38
+ "include": [
39
+ "src/**/*.*ts",
40
+ "index.d.ts"
41
+ ],
42
+ "exclude": [
43
+ "node_modules",
44
+ "src/Report.tsx"
45
+ ]
46
+ }