testeranto 0.49.9 → 0.62.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 (241) hide show
  1. package/.nvmrc +1 -0
  2. package/README.md +71 -9
  3. package/dist/cjs-shim.js +12 -0
  4. package/dist/common/Features.js +2 -3
  5. package/dist/common/Node.js +53 -61
  6. package/dist/common/Project.js +272 -606
  7. package/dist/common/SubPackages/puppeteer.js +19 -0
  8. package/dist/common/{subPackages → SubPackages}/react/component/node.js +4 -4
  9. package/dist/common/{subPackages → SubPackages}/react/component/web.js +4 -4
  10. package/dist/common/SubPackages/react/jsx/index.js +13 -0
  11. package/dist/common/SubPackages/react/jsx/node.js +10 -0
  12. package/dist/common/SubPackages/react/jsx/web.js +10 -0
  13. package/dist/common/{subPackages → SubPackages}/react-dom/component/node.js +6 -6
  14. package/dist/common/{subPackages → SubPackages}/react-dom/component/web.js +11 -12
  15. package/dist/common/SubPackages/react-dom/jsx/node.js +39 -0
  16. package/dist/common/{subPackages → SubPackages}/react-dom/jsx/web.js +6 -27
  17. package/dist/common/{subPackages → SubPackages}/react-test-renderer/MemoExoticComponent/node.js +2 -2
  18. package/dist/common/{subPackages → SubPackages}/react-test-renderer/component/index.js +26 -15
  19. package/dist/common/{subPackages/react-test-renderer/jsx → SubPackages/react-test-renderer/component}/node.js +3 -5
  20. package/dist/common/{subPackages/react-test-renderer/jsx → SubPackages/react-test-renderer/component}/web.js +3 -5
  21. package/dist/common/{subPackages → SubPackages}/react-test-renderer/fc/node.js +4 -4
  22. package/dist/common/{subPackages → SubPackages}/react-test-renderer/fc/web.js +4 -4
  23. package/dist/common/{subPackages → SubPackages}/react-test-renderer/jsx/index.js +8 -2
  24. package/dist/common/{subPackages/react-test-renderer/jsx-promised → SubPackages/react-test-renderer/jsx}/node.js +4 -4
  25. package/dist/common/{subPackages/react → SubPackages/react-test-renderer}/jsx/web.js +4 -4
  26. package/dist/common/{subPackages → SubPackages}/react-test-renderer/jsx-promised/index.js +2 -2
  27. package/dist/common/{subPackages/react/jsx → SubPackages/react-test-renderer/jsx-promised}/node.js +2 -2
  28. package/dist/common/Types.js +32 -0
  29. package/dist/common/Web.js +41 -112
  30. package/dist/common/electron.js +188 -44
  31. package/dist/common/esbuildConfigs/features.js +14 -0
  32. package/dist/common/esbuildConfigs/index.js +20 -0
  33. package/dist/common/esbuildConfigs/node.js +35 -0
  34. package/dist/common/esbuildConfigs/report.js +48 -0
  35. package/dist/common/esbuildConfigs/tests.js +14 -0
  36. package/dist/common/esbuildConfigs/web.js +50 -0
  37. package/dist/common/lib/abstractBase.js +193 -0
  38. package/dist/common/lib/basebuilder.js +86 -0
  39. package/dist/common/lib/browser.js +26 -0
  40. package/dist/common/lib/classBuilder.js +41 -0
  41. package/dist/common/lib/core.js +52 -0
  42. package/dist/common/lib/index.js +19 -0
  43. package/dist/common/nodeWriterElectron.js +55 -0
  44. package/dist/common/preload.js +22 -21
  45. package/dist/common/report.html.js +31 -0
  46. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  47. package/dist/common/web.html.js +22 -0
  48. package/dist/module/Features.js +2 -3
  49. package/dist/module/Node.js +53 -61
  50. package/dist/module/Project.js +272 -583
  51. package/dist/module/SubPackages/puppeteer.js +14 -0
  52. package/dist/module/{subPackages → SubPackages}/react/component/node.js +3 -3
  53. package/dist/module/{subPackages → SubPackages}/react/component/web.js +3 -3
  54. package/dist/module/SubPackages/react/jsx/index.js +10 -0
  55. package/dist/module/SubPackages/react/jsx/node.js +5 -0
  56. package/dist/module/SubPackages/react/jsx/web.js +5 -0
  57. package/dist/module/{subPackages → SubPackages}/react-dom/component/node.js +5 -5
  58. package/dist/module/{subPackages → SubPackages}/react-dom/component/web.js +10 -11
  59. package/dist/module/SubPackages/react-dom/jsx/node.js +31 -0
  60. package/dist/module/{subPackages → SubPackages}/react-dom/jsx/web.js +5 -26
  61. package/dist/module/{subPackages → SubPackages}/react-test-renderer/MemoExoticComponent/node.js +2 -2
  62. package/dist/module/{subPackages → SubPackages}/react-test-renderer/component/index.js +23 -15
  63. package/dist/module/{subPackages → SubPackages}/react-test-renderer/component/node.js +2 -2
  64. package/dist/module/{subPackages → SubPackages}/react-test-renderer/component/web.js +2 -2
  65. package/dist/module/{subPackages → SubPackages}/react-test-renderer/fc/node.js +3 -3
  66. package/dist/module/{subPackages → SubPackages}/react-test-renderer/fc/web.js +3 -3
  67. package/dist/module/{subPackages → SubPackages}/react-test-renderer/jsx/index.js +8 -2
  68. package/dist/module/SubPackages/react-test-renderer/jsx/node.js +5 -0
  69. package/dist/module/SubPackages/react-test-renderer/jsx/web.js +5 -0
  70. package/dist/module/{subPackages → SubPackages}/react-test-renderer/jsx-promised/index.js +2 -2
  71. package/dist/module/{subPackages/react-test-renderer/jsx → SubPackages/react-test-renderer/jsx-promised}/node.js +1 -1
  72. package/dist/module/Types.js +30 -1
  73. package/dist/module/Web.js +41 -112
  74. package/dist/module/electron.js +189 -45
  75. package/dist/module/esbuildConfigs/features.js +12 -0
  76. package/dist/module/esbuildConfigs/index.js +18 -0
  77. package/dist/module/esbuildConfigs/node.js +30 -0
  78. package/dist/module/esbuildConfigs/report.js +48 -0
  79. package/dist/module/esbuildConfigs/tests.js +12 -0
  80. package/dist/module/esbuildConfigs/web.js +45 -0
  81. package/dist/module/lib/abstractBase.js +185 -0
  82. package/dist/module/lib/basebuilder.js +82 -0
  83. package/dist/module/lib/browser.js +22 -0
  84. package/dist/module/lib/classBuilder.js +37 -0
  85. package/dist/module/lib/core.js +49 -0
  86. package/dist/module/lib/index.js +15 -0
  87. package/dist/module/nodeWriterElectron.js +52 -0
  88. package/dist/module/preload.js +22 -21
  89. package/dist/module/report.html.js +29 -0
  90. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  91. package/dist/module/web.html.js +20 -0
  92. package/dist/prebuild/Report.css +10326 -0
  93. package/dist/prebuild/Report.js +37456 -0
  94. package/dist/types/Features.d.ts +5 -5
  95. package/dist/types/Node.d.ts +4 -11
  96. package/dist/types/NodeWriter.d.ts +1 -1
  97. package/dist/types/Project.d.ts +2 -27
  98. package/dist/types/SubPackages/puppeteer.d.ts +6 -0
  99. package/dist/types/SubPackages/react/component/node.d.ts +7 -0
  100. package/dist/types/SubPackages/react/component/web.d.ts +7 -0
  101. package/dist/types/SubPackages/react/jsx/index.d.ts +15 -0
  102. package/dist/types/SubPackages/react/jsx/node.d.ts +4 -0
  103. package/dist/types/SubPackages/react/jsx/web.d.ts +4 -0
  104. package/dist/types/{subPackages → SubPackages}/react-dom/component/node.d.ts +2 -4
  105. package/dist/types/SubPackages/react-dom/component/web.d.ts +5 -0
  106. package/dist/types/{subPackages → SubPackages}/react-dom/jsx/index.d.ts +3 -3
  107. package/dist/types/SubPackages/react-dom/jsx/node.d.ts +6 -0
  108. package/dist/types/SubPackages/react-dom/jsx/web.d.ts +5 -0
  109. package/dist/types/SubPackages/react-test-renderer/MemoExoticComponent/node.d.ts +5 -0
  110. package/dist/types/{subPackages → SubPackages}/react-test-renderer/component/index.d.ts +6 -6
  111. package/dist/types/SubPackages/react-test-renderer/component/node.d.ts +9 -0
  112. package/dist/types/SubPackages/react-test-renderer/component/web.d.ts +4 -0
  113. package/dist/types/SubPackages/react-test-renderer/fc/node.d.ts +8 -0
  114. package/dist/types/SubPackages/react-test-renderer/fc/web.d.ts +8 -0
  115. package/dist/types/{subPackages → SubPackages}/react-test-renderer/jsx/index.d.ts +5 -4
  116. package/dist/types/SubPackages/react-test-renderer/jsx/node.d.ts +9 -0
  117. package/dist/types/SubPackages/react-test-renderer/jsx/web.d.ts +9 -0
  118. package/dist/types/{subPackages → SubPackages}/react-test-renderer/jsx-promised/index.d.ts +4 -4
  119. package/dist/types/SubPackages/react-test-renderer/jsx-promised/node.d.ts +5 -0
  120. package/dist/types/SubPackages/react-test-renderer/jsx-promised/web.d.ts +5 -0
  121. package/dist/types/Types.d.ts +116 -3
  122. package/dist/types/Web.d.ts +4 -11
  123. package/dist/types/esbuildConfigs/features.d.ts +4 -0
  124. package/dist/types/esbuildConfigs/index.d.ts +4 -0
  125. package/dist/types/esbuildConfigs/node.d.ts +4 -0
  126. package/dist/types/esbuildConfigs/report.d.ts +0 -0
  127. package/dist/types/esbuildConfigs/tests.d.ts +4 -0
  128. package/dist/types/esbuildConfigs/web.d.ts +4 -0
  129. package/dist/types/lib/abstractBase.d.ts +102 -0
  130. package/dist/types/lib/basebuilder.d.ts +24 -0
  131. package/dist/types/lib/browser.d.ts +6 -0
  132. package/dist/types/lib/classBuilder.d.ts +6 -0
  133. package/dist/types/lib/core.d.ts +7 -0
  134. package/dist/types/lib/index.d.ts +57 -0
  135. package/dist/types/nodeWriterElectron.d.ts +2 -0
  136. package/dist/types/report.html.d.ts +2 -0
  137. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  138. package/dist/types/web.html.d.ts +2 -0
  139. package/electronBuild.ts +32 -0
  140. package/index.html +30 -0
  141. package/package.json +120 -85
  142. package/src/Features.ts +2 -4
  143. package/src/Node.ts +114 -160
  144. package/src/NodeWriter.ts +1 -4
  145. package/src/Project.ts +610 -753
  146. package/src/Report.tsx +30 -15
  147. package/src/SubPackages/puppeteer.ts +46 -0
  148. package/src/{subPackages → SubPackages}/react/component/node.ts +12 -32
  149. package/src/SubPackages/react/component/web.ts +53 -0
  150. package/src/SubPackages/react/jsx/index.ts +43 -0
  151. package/src/SubPackages/react/jsx/node.ts +29 -0
  152. package/src/SubPackages/react/jsx/web.ts +28 -0
  153. package/src/{subPackages → SubPackages}/react-dom/component/node.ts +11 -25
  154. package/src/{subPackages → SubPackages}/react-dom/component/web.ts +27 -32
  155. package/src/{subPackages → SubPackages}/react-dom/jsx/index.ts +3 -5
  156. package/src/SubPackages/react-dom/jsx/node.ts +68 -0
  157. package/src/{subPackages → SubPackages}/react-dom/jsx/web.ts +19 -62
  158. package/src/{subPackages → SubPackages}/react-test-renderer/MemoExoticComponent/node.ts +9 -28
  159. package/src/{subPackages → SubPackages}/react-test-renderer/component/index.ts +31 -29
  160. package/src/SubPackages/react-test-renderer/component/node.ts +22 -0
  161. package/src/SubPackages/react-test-renderer/component/web.ts +22 -0
  162. package/src/{subPackages → SubPackages}/react-test-renderer/fc/node.ts +14 -28
  163. package/src/{subPackages → SubPackages}/react-test-renderer/fc/web.ts +9 -25
  164. package/src/{subPackages → SubPackages}/react-test-renderer/jsx/index.ts +19 -16
  165. package/src/SubPackages/react-test-renderer/jsx/node.ts +24 -0
  166. package/src/SubPackages/react-test-renderer/jsx/web.ts +20 -0
  167. package/src/{subPackages → SubPackages}/react-test-renderer/jsx-promised/index.ts +7 -15
  168. package/src/SubPackages/react-test-renderer/jsx-promised/node.ts +19 -0
  169. package/src/SubPackages/react-test-renderer/jsx-promised/web.ts +22 -0
  170. package/src/Types.ts +334 -3
  171. package/src/Web.ts +104 -230
  172. package/src/cjs-shim.js +12 -0
  173. package/src/electron.ts +237 -46
  174. package/src/esbuildConfigs/features.ts +18 -0
  175. package/src/esbuildConfigs/index.ts +22 -0
  176. package/src/esbuildConfigs/node.ts +59 -0
  177. package/src/esbuildConfigs/report.ts +51 -0
  178. package/src/esbuildConfigs/tests.ts +20 -0
  179. package/src/esbuildConfigs/web.ts +73 -0
  180. package/src/lib/abstractBase.ts +459 -0
  181. package/src/lib/basebuilder.ts +253 -0
  182. package/src/lib/browser.ts +34 -0
  183. package/src/lib/classBuilder.ts +137 -0
  184. package/src/lib/core.ts +182 -0
  185. package/src/lib/index.ts +116 -0
  186. package/src/nodeWriterElectron.ts +71 -0
  187. package/src/preload.ts +23 -21
  188. package/src/report.html.ts +29 -0
  189. package/src/web.html.ts +20 -0
  190. package/tests/Rectangle.test.ts +189 -0
  191. package/tsconfig.json +19 -6
  192. package/tsconfig.module.json +15 -4
  193. package/tsconfig.types.json +14 -4
  194. package/yarn-error.log +3144 -0
  195. package/dist/common/core.js +0 -397
  196. package/dist/common/subPackages/react/jsx/index.js +0 -26
  197. package/dist/common/subPackages/react-dom/jsx/node.js +0 -95
  198. package/dist/common/subPackages/react-test-renderer/component/node.js +0 -8
  199. package/dist/common/subPackages/react-test-renderer/component/web.js +0 -8
  200. package/dist/module/Report.js +0 -186
  201. package/dist/module/core.js +0 -388
  202. package/dist/module/subPackages/react/jsx/index.js +0 -22
  203. package/dist/module/subPackages/react/jsx/node.js +0 -5
  204. package/dist/module/subPackages/react/jsx/web.js +0 -5
  205. package/dist/module/subPackages/react-dom/jsx/node.js +0 -87
  206. package/dist/module/subPackages/react-test-renderer/jsx/web.js +0 -5
  207. package/dist/module/subPackages/react-test-renderer/jsx-promised/node.js +0 -5
  208. package/dist/types/core.d.ts +0 -220
  209. package/dist/types/subPackages/react/component/node.d.ts +0 -12
  210. package/dist/types/subPackages/react/component/web.d.ts +0 -12
  211. package/dist/types/subPackages/react/jsx/index.d.ts +0 -15
  212. package/dist/types/subPackages/react/jsx/node.d.ts +0 -4
  213. package/dist/types/subPackages/react/jsx/web.d.ts +0 -4
  214. package/dist/types/subPackages/react-dom/component/web.d.ts +0 -19
  215. package/dist/types/subPackages/react-dom/jsx/node.d.ts +0 -8
  216. package/dist/types/subPackages/react-dom/jsx/web.d.ts +0 -5
  217. package/dist/types/subPackages/react-test-renderer/MemoExoticComponent/node.d.ts +0 -8
  218. package/dist/types/subPackages/react-test-renderer/component/node.d.ts +0 -9
  219. package/dist/types/subPackages/react-test-renderer/component/web.d.ts +0 -9
  220. package/dist/types/subPackages/react-test-renderer/fc/node.d.ts +0 -9
  221. package/dist/types/subPackages/react-test-renderer/fc/web.d.ts +0 -9
  222. package/dist/types/subPackages/react-test-renderer/jsx/node.d.ts +0 -4
  223. package/dist/types/subPackages/react-test-renderer/jsx/web.d.ts +0 -4
  224. package/dist/types/subPackages/react-test-renderer/jsx-promised/node.d.ts +0 -4
  225. package/dist/types/subPackages/react-test-renderer/jsx-promised/web.d.ts +0 -4
  226. package/src/core.ts +0 -1399
  227. package/src/subPackages/react/component/web.ts +0 -80
  228. package/src/subPackages/react/jsx/index.ts +0 -64
  229. package/src/subPackages/react/jsx/node.ts +0 -29
  230. package/src/subPackages/react/jsx/web.ts +0 -29
  231. package/src/subPackages/react-dom/jsx/node.ts +0 -146
  232. package/src/subPackages/react-test-renderer/component/node.ts +0 -30
  233. package/src/subPackages/react-test-renderer/component/web.ts +0 -30
  234. package/src/subPackages/react-test-renderer/jsx/node.ts +0 -31
  235. package/src/subPackages/react-test-renderer/jsx/web.ts +0 -31
  236. package/src/subPackages/react-test-renderer/jsx-promised/node.ts +0 -31
  237. package/src/subPackages/react-test-renderer/jsx-promised/web.ts +0 -31
  238. /package/dist/common/{subPackages → SubPackages}/react-dom/jsx/index.js +0 -0
  239. /package/dist/common/{subPackages → SubPackages}/react-test-renderer/jsx-promised/web.js +0 -0
  240. /package/dist/module/{subPackages → SubPackages}/react-dom/jsx/index.js +0 -0
  241. /package/dist/module/{subPackages → SubPackages}/react-test-renderer/jsx-promised/web.js +0 -0
package/package.json CHANGED
@@ -1,102 +1,118 @@
1
1
  {
2
2
  "name": "testeranto",
3
3
  "description": "teeny tiny tightly-typed typescript tests",
4
- "version": "0.49.9",
4
+ "version": "0.62.0",
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.mts",
7
7
  "module": "dist/module/index.js",
8
8
  "exports": {
9
- "./src/subPackages/react/jsx/index": {
10
- "import": "./dist/module/subPackages/react/jsx/index.js",
11
- "require": "./dist/common/subPackages/react/jsx/index.js"
9
+ "./src/cjs-shim.ts": {
10
+ "import": "./dist/cjs-shim.js",
11
+ "require": "./dist/cjs-shim.js"
12
12
  },
13
- "./src/subPackages/react/jsx/web": {
14
- "import": "./dist/module/subPackages/react/jsx/web.js",
15
- "require": "./dist/common/subPackages/react/jsx/web.js"
13
+ "./src/SubPackages/puppeteer": {
14
+ "import": "./dist/module/SubPackages/puppeteer.js",
15
+ "require": "./dist/common/SubPackages/puppeteer.js"
16
16
  },
17
- "./src/subPackages/react/jsx/node": {
18
- "import": "./dist/module/subPackages/react/jsx/node.js",
19
- "require": "./dist/common/subPackages/react/jsx/node.js"
17
+ "./src/SubPackages/react/jsx/index": {
18
+ "import": "./dist/module/SubPackages/react/jsx/index.js",
19
+ "require": "./dist/common/SubPackages/react/jsx/index.js"
20
20
  },
21
- "./src/subPackages/react/component/index": {
22
- "import": "./dist/module/subPackages/react/component/index.js",
23
- "require": "./dist/common/subPackages/react/component/index.js"
21
+ "./src/SubPackages/react/jsx/web": {
22
+ "import": "./src/SubPackages/react/jsx/web.ts",
23
+ "require": "./src/SubPackages/react/jsx/web.ts"
24
24
  },
25
- "./src/subPackages/react/component/web": {
26
- "import": "./dist/module/subPackages/react/component/web.js",
27
- "require": "./dist/common/subPackages/react/component/web.js"
25
+ "./src/SubPackages/react/jsx/node": {
26
+ "import": "./dist/module/SubPackages/react/jsx/node.js",
27
+ "require": "./dist/common/SubPackages/react/jsx/node.js"
28
28
  },
29
- "./src/subPackages/react/component/node": {
30
- "import": "./dist/module/subPackages/react/component/node.js",
31
- "require": "./dist/common/subPackages/react/component/node.js"
29
+ "./src/SubPackages/react/component/index": {
30
+ "import": "./dist/module/SubPackages/react/component/index.js",
31
+ "require": "./dist/common/SubPackages/react/component/index.js"
32
32
  },
33
- "./src/subPackages/react-test-renderer/component/index": {
34
- "import": "./dist/module/subPackages/react-test-renderer/component/index.js",
35
- "require": "./dist/common/subPackages/react-test-renderer/component/index.js"
33
+ "./src/SubPackages/react/component/web": {
34
+ "import": "./dist/module/SubPackages/react/component/web.js",
35
+ "require": "./dist/common/SubPackages/react/component/web.js"
36
36
  },
37
- "./src/subPackages/react-test-renderer/component/web": {
38
- "import": "./dist/module/subPackages/react-test-renderer/component/web.js",
39
- "require": "./dist/common/subPackages/react-test-renderer/component/web.js"
37
+ "./src/SubPackages/react/component/node": {
38
+ "import": "./dist/module/SubPackages/react/component/node.js",
39
+ "require": "./dist/common/SubPackages/react/component/node.js"
40
40
  },
41
- "./src/subPackages/react-test-renderer/component/node": {
42
- "import": "./dist/module/subPackages/react-test-renderer/component/node.js",
43
- "require": "./dist/common/subPackages/react-test-renderer/component/node.js"
41
+ "./src/SubPackages/react-test-renderer/component/index.ts": {
42
+ "import": "./src/SubPackages/react-test-renderer/component/index.ts",
43
+ "require": "./src/SubPackages/react-test-renderer/component/index.ts"
44
44
  },
45
- "./src/subPackages/react-test-renderer/jsx/index": {
46
- "import": "./dist/module/subPackages/react-test-renderer/jsx/index.js",
47
- "require": "./dist/common/subPackages/react-test-renderer/jsx/index.js"
45
+ "./src/SubPackages/react-test-renderer/component/index": {
46
+ "import": "./src/SubPackages/react-test-renderer/component/index.ts",
47
+ "require": "./src/SubPackages/react-test-renderer/component/index.ts"
48
48
  },
49
- "./src/subPackages/react-test-renderer/jsx/web": {
50
- "import": "./dist/module/subPackages/react-test-renderer/jsx/web.js",
51
- "require": "./dist/common/subPackages/react-test-renderer/jsx/web.js"
49
+ "./src/SubPackages/react-test-renderer/component/web": {
50
+ "import": "./dist/module/SubPackages/react-test-renderer/component/web.js",
51
+ "require": "./dist/common/SubPackages/react-test-renderer/component/web.js"
52
52
  },
53
- "./src/subPackages/react-test-renderer/jsx/node": {
54
- "import": "./dist/module/subPackages/react-test-renderer/jsx/node.js",
55
- "require": "./dist/common/subPackages/react-test-renderer/jsx/node.js"
53
+ "./src/SubPackages/react-test-renderer/component/node": {
54
+ "import": "./dist/module/SubPackages/react-test-renderer/component/node.js",
55
+ "require": "./dist/common/SubPackages/react-test-renderer/component/node.js"
56
56
  },
57
- "./src/subPackages/react-test-renderer/jsx-promised/index": {
58
- "import": "./dist/module/subPackages/react-test-renderer/jsx-promised/index.js",
59
- "require": "./dist/common/subPackages/react-test-renderer/jsx-promised/index.js"
57
+ "./src/SubPackages/react-test-renderer/jsx/index.js": {
58
+ "import": "./dist/module/src/SubPackages/react-test-renderer/jsx/index.js",
59
+ "require": "./dist/common/SubPackages/react-test-renderer/jsx/index.js"
60
60
  },
61
- "./src/subPackages/react-test-renderer/jsx-promised/web": {
62
- "import": "./dist/module/subPackages/react-test-renderer/jsx-promised/web.js",
63
- "require": "./dist/common/subPackages/react-test-renderer/jsx-promised/web.js"
61
+ "./src/SubPackages/react-test-renderer/jsx/web.js": {
62
+ "import": "./dist/module/SubPackages/react-test-renderer/jsx/web.js",
63
+ "require": "./dist/common/SubPackages/react-test-renderer/jsx/web.js"
64
64
  },
65
- "./src/subPackages/react-test-renderer/jsx-promised/node": {
66
- "import": "./dist/module/subPackages/react-test-renderer/jsx-promised/node.js",
67
- "require": "./dist/common/subPackages/react-test-renderer/jsx-promised/node.js"
65
+ "./src/SubPackages/react-test-renderer/jsx/node.js": {
66
+ "import": "./dist/module/SubPackages/react-test-renderer/jsx/node.js",
67
+ "require": "./dist/common/SubPackages/react-test-renderer/jsx/node.js"
68
68
  },
69
- "./src/subPackages/react-test-renderer/fc/node": {
70
- "import": "./dist/module/subPackages/react-test-renderer/fc/node.js",
71
- "require": "./dist/common/subPackages/react-test-renderer/fc/node.js"
69
+ "./src/SubPackages/react-test-renderer/jsx-promised/index": {
70
+ "import": "./dist/module/SubPackages/react-test-renderer/jsx-promised/index.js",
71
+ "require": "./dist/common/SubPackages/react-test-renderer/jsx-promised/index.js"
72
72
  },
73
- "./src/subPackages/react-test-renderer/MemoExoticComponent/node": {
74
- "import": "./dist/module/subPackages/react-test-renderer/MemoExoticComponent/node.js",
75
- "require": "./dist/common/subPackages/react-test-renderer/MemoExoticComponent/node.js"
73
+ "./src/SubPackages/react-test-renderer/jsx-promised/web": {
74
+ "import": "./dist/module/SubPackages/react-test-renderer/jsx-promised/web.js",
75
+ "require": "./dist/common/SubPackages/react-test-renderer/jsx-promised/web.js"
76
76
  },
77
- "./src/subPackages/react-dom/jsx/web": {
78
- "import": "./dist/module/subPackages/react-dom/jsx/web.js",
79
- "require": "./dist/common/subPackages/react-dom/jsx/web.js"
77
+ "./src/SubPackages/react-test-renderer/jsx-promised/node": {
78
+ "import": "./dist/module/SubPackages/react-test-renderer/jsx-promised/node.js",
79
+ "require": "./dist/common/SubPackages/react-test-renderer/jsx-promised/node.js"
80
80
  },
81
- "./src/subPackages/react-dom/jsx/node": {
82
- "import": "./dist/module/subPackages/react-dom/jsx/node.js",
83
- "require": "./dist/common/subPackages/react-dom/jsx/node.js"
81
+ "./src/SubPackages/react-test-renderer/fc/node": {
82
+ "import": "./dist/module/SubPackages/react-test-renderer/fc/node.js",
83
+ "require": "./dist/common/SubPackages/react-test-renderer/fc/node.js"
84
84
  },
85
- "./src/subPackages/react-dom/jsx/index": {
86
- "import": "./dist/module/subPackages/react-dom/jsx/index.js",
87
- "require": "./dist/common/subPackages/react-dom/jsx/index.js"
85
+ "./src/SubPackages/react-test-renderer/MemoExoticComponent/node": {
86
+ "import": "./dist/module/SubPackages/react-test-renderer/MemoExoticComponent/node.js",
87
+ "require": "./dist/common/SubPackages/react-test-renderer/MemoExoticComponent/node.js"
88
88
  },
89
- "./src/subPackages/react-dom/component/web": {
90
- "import": "./dist/module/subPackages/react-dom/component/web.js",
91
- "require": "./dist/common/subPackages/react-dom/component/web.js"
89
+ "./src/SubPackages/react-dom/jsx/web": {
90
+ "import": "./dist/module/SubPackages/react-dom/jsx/web.js",
91
+ "require": "./dist/common/SubPackages/react-dom/jsx/web.js"
92
92
  },
93
- "./src/subPackages/react-dom/component/node": {
94
- "import": "./dist/module/subPackages/react-dom/component/node.js",
95
- "require": "./dist/common/subPackages/react-dom/component/node.js"
93
+ "./src/SubPackages/react-dom/jsx/node": {
94
+ "import": "./dist/module/SubPackages/react-dom/jsx/node.js",
95
+ "require": "./dist/common/SubPackages/react-dom/jsx/node.js"
96
+ },
97
+ "./src/SubPackages/react-dom/jsx/index": {
98
+ "import": "./dist/module/SubPackages/react-dom/jsx/index.js",
99
+ "require": "./dist/common/SubPackages/react-dom/jsx/index.js"
100
+ },
101
+ "./src/SubPackages/react-dom/component/web": {
102
+ "import": "./dist/module/SubPackages/react-dom/component/web.js",
103
+ "require": "./dist/common/SubPackages/react-dom/component/web.js"
104
+ },
105
+ "./src/SubPackages/react-dom/component/node": {
106
+ "import": "./dist/module/SubPackages/react-dom/component/node.js",
107
+ "require": "./dist/common/SubPackages/react-dom/component/node.js"
96
108
  },
97
109
  "./src/Types": {
98
- "import": "./dist/module/Types.js",
99
- "require": "./dist/common/Types.js"
110
+ "import": "./src/Types.ts",
111
+ "require": "./src/Types.ts"
112
+ },
113
+ "./src/lib": {
114
+ "import": "./src/lib.ts",
115
+ "require": "./src/lib.ts"
100
116
  },
101
117
  "./src/Features": {
102
118
  "import": "./dist/module/Features.js",
@@ -115,24 +131,32 @@
115
131
  "require": "./dist/common/Web.js"
116
132
  },
117
133
  "./src/Node": {
118
- "import": "./dist/module/Node.js",
119
- "require": "./dist/common/Node.js"
134
+ "import": "./src/Node.ts",
135
+ "require": "./src/Node.ts"
120
136
  },
121
137
  "./src/electron": {
122
138
  "import": "./dist/module/electron.js",
123
139
  "require": "./dist/common/electron.js"
124
140
  },
125
- "./src/core": {
126
- "import": "./dist/module/core.js",
127
- "require": "./dist/common/core.js"
128
- },
129
141
  "./src/preload": {
130
142
  "import": "./dist/module/preload.js",
131
143
  "require": "./dist/common/preload.js"
132
144
  },
133
- "./dist/module/core": {
134
- "import": "./dist/module/core.js",
135
- "require": "./dist/common/core.js"
145
+ "./dist/module/lib/core": {
146
+ "import": "./dist/module/lib/core.js",
147
+ "require": "./dist/common/lib/core.js"
148
+ },
149
+ "./dist/module/lib/abstractBase": {
150
+ "import": "./dist/module/lib/abstractBase.js",
151
+ "require": "./dist/common/lib/abstractBase.js"
152
+ },
153
+ "./dist/module/lib/baseBuilder": {
154
+ "import": "./dist/module/lib/baseBuilder.js",
155
+ "require": "./dist/common/lib/baseBuilder.js"
156
+ },
157
+ "./dist/module/lib/classBuilder": {
158
+ "import": "./dist/module/lib/classBuilder.js",
159
+ "require": "./dist/common/lib/classBuilder.js"
136
160
  },
137
161
  "./dist/module/NodeWriter": {
138
162
  "import": "./dist/module/NodeWriter.js",
@@ -150,8 +174,14 @@
150
174
  "ATDD"
151
175
  ],
152
176
  "scripts": {
153
- "build": "sh prebuild.sh; tsc -p tsconfig.module.json; tsc -p tsconfig.common.json; tsc -p tsconfig.types.json; sh postBuild.sh",
154
- "dev": "tsc -p tsconfig.module.json --watch & tsc -p tsconfig.common.json --watch & tsc -p tsconfig.types.json --watch"
177
+ "doit": "rm -rf node_modules && yarn install && yarn build",
178
+ "build": "sh prebuild.sh; cp ./src/cjs-shim.js ./dist/cjs-shim.js; tsc -p tsconfig.module.json; tsc -p tsconfig.common.json; tsc -p tsconfig.types.json; yarn esbuild src/Report.tsx --outfile=dist/prebuild/Report.js --bundle --external:testeranto.json --external:features.test.js --external:tests.json; sh postBuild.sh; ",
179
+ "commit": "yarn build; git add --all && git commit -m 'stash'",
180
+ "dev": "cp ./src/cjs-shim.js ./dist/cjs-shim.js && tsc -p tsconfig.module.json --watch & tsc -p tsconfig.common.json --watch & tsc -p tsconfig.types.json --watch & yarn esbuild src/Report.tsx --outfile=dist/prebuild/Report.js --bundle --external:testeranto.json --external:features.test.js --external:tests.json --watch",
181
+ "build-module": "tsc -p tsconfig.module.json",
182
+ "build-common": "tsc -p tsconfig.common.json",
183
+ "build-types": "tsc -p tsconfig.types.json",
184
+ "build-electron": "ts-node-esm electronBuild.ts"
155
185
  },
156
186
  "peerDependencies": {
157
187
  "@types/react": "^18.2.66",
@@ -164,7 +194,7 @@
164
194
  },
165
195
  "devDependencies": {
166
196
  "@swc/core": "^1.3.26",
167
- "@types/node": "^18.14.0",
197
+ "@types/node": "^22.7.5",
168
198
  "@types/react": "18.2.55",
169
199
  "@types/react-bootstrap": "^0.32.32",
170
200
  "@types/react-dom": "18.2.23",
@@ -178,9 +208,10 @@
178
208
  "typescript": "4.8.2"
179
209
  },
180
210
  "dependencies": {
211
+ "@electron/remote": "^2.1.2",
181
212
  "babel-loader": "^8.2.5",
182
213
  "bootstrap": "^5.2.3",
183
- "electron": "^24.2.0",
214
+ "electron": "28.0.0",
184
215
  "esbuild": "0.17.5",
185
216
  "esbuild-plugin-external-package": "^1.0.0",
186
217
  "esbuild-plugin-import-map": "^2.1.0",
@@ -194,12 +225,16 @@
194
225
  "graphology-types": "^0.24.5",
195
226
  "html": "^1.0.0",
196
227
  "ipc": "^0.0.1",
228
+ "jsonc": "^2.0.0",
197
229
  "npm-watch": "^0.11.0",
198
- "pm2": "^5.2.2",
199
- "puppeteer": "18.1.0",
230
+ "puppeteer": "19.2.2",
231
+ "puppeteer-core": "19.2.2",
232
+ "puppeteer-in-electron": "^3.0.5",
200
233
  "react-bootstrap": "^2.7.0",
201
234
  "react-sigma": "^1.2.35",
202
235
  "react-test-renderer": "18.2.0",
236
+ "selenium-webdriver": "^4.25.0",
237
+ "url": "^0.11.4",
203
238
  "ws": "^8.16.0"
204
239
  }
205
- }
240
+ }
package/src/Features.ts CHANGED
@@ -1,8 +1,6 @@
1
- import Graph from "graphology";
2
- import pkg from "graphology";
1
+ import Graph from "graphology/dist/graphology.umd.js";
3
2
 
4
- /* @ts-ignore:next-line */
5
- const { DirectedGraph, UndirectedGraph } = pkg;
3
+ const { DirectedGraph, UndirectedGraph } = Graph;
6
4
 
7
5
  abstract class TesterantoGraph {
8
6
  name: string;
package/src/Node.ts CHANGED
@@ -1,174 +1,128 @@
1
+ import http from "http";
2
+ import puppeteer from "puppeteer-core";
3
+
4
+ import Testeranto from "./lib/core.js";
1
5
  import {
6
+ defaultTestResourceRequirement,
7
+ ITestJob,
2
8
  ITTestResourceConfiguration,
3
9
  ITTestResourceRequest,
4
- ITTestShape,
5
- ITestArtificer,
6
- ITestJob,
7
- ITestSpecification,
8
- defaultTestResourceRequirement,
9
- } from "./core.js";
10
- import TesterantoLevelTwo from "./core.js";
10
+ } from "./lib/index.js";
11
11
  import { NodeWriter } from "./NodeWriter.js";
12
+ import type {
13
+ IBaseTest,
14
+ INodeTestInterface,
15
+ ITestImplementation,
16
+ ITestInterface,
17
+ ITestSpecification,
18
+ } from "./Types.js";
12
19
 
13
- const receiveTestResourceConfigUnscheduled = async (t, testresource) => {
14
- const {
15
- failed,
16
- artifacts,
17
- logPromise
18
- } = await t.receiveTestResourceConfig(testresource);
19
-
20
- Promise.all([...artifacts, logPromise]).then(async () => {
21
- process.exit(await failed ? 1 : 0);
22
- })
23
- }
24
-
25
- const receiveTestResourceConfigScheduled = async (t, testresource) => {
26
- const {
27
- failed,
28
- artifacts,
29
- logPromise
30
- } = await t.receiveTestResourceConfig(testresource);
31
-
32
- /* @ts-ignore:next-line */
33
- process.send(
34
- {
35
- type: "testeranto:adios",
36
- data: {
37
- failed,
38
- testResourceConfiguration:
39
- t.test.testResourceConfiguration,
40
- results: t.toObj(),
41
- },
42
- },
43
- async (err) => {
44
- if (!err) {
45
- Promise.all([...artifacts, logPromise]).then(async () => {
46
- process.exit(await failed ? 1 : 0);
47
- })
48
- } else {
49
- console.error(err);
50
- process.exit(1);
51
- }
52
- });
53
- }
54
-
55
- export default async <
56
- TestShape extends ITTestShape,
57
- IInput,
58
- ISubject,
59
- IStore,
60
- ISelection,
61
- IWhenShape,
62
- IThenShape,
63
- IState
64
- >(
65
- input: IInput,
66
- testSpecification: ITestSpecification<
67
- TestShape,
68
- ISubject,
69
- IStore,
70
- ISelection,
71
- IThenShape
72
- >,
73
- testImplementation,
74
- testInterface: {
75
- actionHandler?: (b: (...any) => any) => any;
76
- andWhen: (
77
- store: IStore,
78
- actioner,
79
- testResource: ITTestResourceConfiguration
80
- ) => Promise<ISelection>;
81
- butThen?: (
82
- store: IStore,
83
- callback,
84
- testResource: ITTestResourceConfiguration
85
- ) => Promise<ISelection>;
86
- assertioner?: (t: IThenShape) => any;
87
-
88
- afterAll?: (store: IStore, artificer: ITestArtificer) => any;
89
- afterEach?: (
90
- store: IStore,
91
- key: string,
92
- artificer: ITestArtificer
93
- ) => Promise<unknown>;
94
- beforeAll?: (input: IInput, artificer: ITestArtificer) => Promise<ISubject>;
95
- beforeEach?: (
96
- subject: ISubject,
97
- initialValues,
98
- testResource: ITTestResourceConfiguration,
99
- artificer: ITestArtificer
100
- ) => Promise<IStore>;
101
- },
102
- testResourceRequirement: ITTestResourceRequest = defaultTestResourceRequirement,
103
- ) => {
20
+ import {
21
+ TBrowser,
22
+ } from "./Types.js";
104
23
 
105
- const mrt = new TesterantoLevelTwo(
106
- input,
107
- testSpecification,
108
- testImplementation,
109
- testInterface,
110
- testResourceRequirement,
111
- testInterface.assertioner || (async (t) => t as any),
112
- testInterface.beforeEach || async function (subject: ISubject, initialValues: any, testResource: any) {
113
- return subject as any;
114
- },
115
- testInterface.afterEach || (async (s) => s),
116
- testInterface.afterAll || ((store: IStore) => undefined),
117
- testInterface.butThen || (async (a) => a as any),
118
- testInterface.andWhen,
119
- testInterface.actionHandler ||
120
- function (b: (...any: any[]) => any) {
121
- return b;
24
+
25
+ const readJson = async (port: string): Promise<any> => new Promise((resolve, reject) => {
26
+ let json = "";
27
+ const request = http.request(
28
+ {
29
+ host: "127.0.0.1",
30
+ path: "/json/version",
31
+ port,
122
32
  },
123
- NodeWriter
33
+ (response) => {
34
+ response.on("error", reject);
35
+ response.on("data", (chunk: Buffer) => {
36
+ json += chunk.toString();
37
+ });
38
+ response.on("end", () => {
39
+ resolve(JSON.parse(json))
40
+ });
41
+ }
124
42
  );
43
+ request.on("error", reject);
44
+ request.end();
45
+ });
125
46
 
126
- const tl2: TesterantoLevelTwo<any, any, any, any, any, any, any, any> = mrt;
127
- const t: ITestJob = tl2.testJobs[0];
128
- const testResourceArg = process.argv[2] || `{}`;
129
-
130
- try {
131
- const partialTestResource = JSON.parse(
132
- testResourceArg
133
- ) as ITTestResourceConfiguration;
134
-
135
- if (partialTestResource.scheduled) {
136
- console.log("test is scheduled", partialTestResource);
137
-
138
- console.log(
139
- "requesting test resources via IPC ...",
140
- testResourceRequirement
141
- );
142
- /* @ts-ignore:next-line */
143
- process.send({
144
- type: "testeranto:hola",
145
- data: {
146
- requirement: {
147
- ...testResourceRequirement,
148
- name: partialTestResource.name
149
- }
150
- },
151
- });
47
+ class NodeTesteranto<TestShape extends IBaseTest> extends Testeranto<TestShape> {
48
+ constructor(
49
+ input: TestShape["iinput"],
50
+ testSpecification: ITestSpecification<TestShape>,
51
+ testImplementation: ITestImplementation<TestShape, object>,
52
+ testResourceRequirement: ITTestResourceRequest,
53
+ testInterface: Partial<ITestInterface<TestShape>>,
54
+ ) {
55
+ super(
56
+ input,
57
+ testSpecification,
58
+ testImplementation,
59
+ testResourceRequirement,
60
+ NodeWriter,
61
+ testInterface,
62
+
63
+ );
64
+
65
+ if (process.argv[2]) {
66
+ const testResourceArg = process.argv[2];
67
+
68
+ try {
69
+ const partialTestResource = JSON.parse(
70
+ testResourceArg
71
+ ) as ITTestResourceConfiguration;
72
+
73
+ this.receiveTestResourceConfig(this.testJobs[0], partialTestResource);
152
74
 
153
- console.log("awaiting test resources via IPC...");
154
- process.on(
155
- "message",
156
- async function (packet: { data: { testResourceConfiguration } }) {
157
- const resourcesFromPm2 = packet.data.testResourceConfiguration;
158
- const secondTestResource = {
159
- fs: ".",
160
- ...JSON.parse(JSON.stringify(partialTestResource)),
161
- ...JSON.parse(JSON.stringify(resourcesFromPm2)),
162
- } as ITTestResourceConfiguration;
163
- receiveTestResourceConfigScheduled(t, secondTestResource);
164
-
165
- }
166
- );
75
+ } catch (e) {
76
+ console.error(e);
77
+ // process.exit(-1);
78
+ }
167
79
  } else {
168
- receiveTestResourceConfigUnscheduled(t, partialTestResource);
80
+ // no-op
169
81
  }
170
- } catch (e) {
171
- console.error(e);
172
- process.exit(-1);
173
82
  }
83
+
84
+ async receiveTestResourceConfig(
85
+ t: ITestJob,
86
+ partialTestResource: ITTestResourceConfiguration
87
+ ) {
88
+
89
+ const browser = await readJson("2999").then(async (json) => {
90
+ const b = await puppeteer.connect({
91
+ browserWSEndpoint: json.webSocketDebuggerUrl,
92
+ defaultViewport: null,
93
+ });
94
+ console.log("connected!", b.isConnected());
95
+ return b
96
+ })
97
+
98
+ const {
99
+ failed,
100
+ artifacts,
101
+ logPromise
102
+ } = await t.receiveTestResourceConfig(
103
+ partialTestResource,
104
+ new TBrowser(browser)
105
+ );
106
+
107
+ Promise.all([...artifacts, logPromise]).then(async () => {
108
+ // process.exit(await failed ? 1 : 0);
109
+ })
110
+ }
111
+
112
+ };
113
+
114
+ export default async <ITestShape extends IBaseTest>(
115
+ input: ITestShape['iinput'],
116
+ testSpecification: ITestSpecification<ITestShape>,
117
+ testImplementation: ITestImplementation<ITestShape, object>,
118
+ testInterface: Partial<INodeTestInterface<ITestShape>>,
119
+ testResourceRequirement: ITTestResourceRequest = defaultTestResourceRequirement,
120
+ ): Promise<Testeranto<ITestShape>> => {
121
+ return new NodeTesteranto<ITestShape>(
122
+ input,
123
+ testSpecification,
124
+ testImplementation,
125
+ testResourceRequirement,
126
+ testInterface,
127
+ )
174
128
  };
package/src/NodeWriter.ts CHANGED
@@ -2,10 +2,7 @@ import fs from "fs";
2
2
  import path from "path";
3
3
  import { PassThrough } from "stream";
4
4
 
5
- import {
6
- ILogWriter,
7
- ITLog
8
- } from "./core";
5
+ import { ILogWriter, ITLog } from "./lib/index.js";
9
6
 
10
7
  type IFPaths = string[];
11
8
  const fPaths: IFPaths = [];