testeranto 0.129.0 → 0.134.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 (386) hide show
  1. package/.aider.chat.history.md +137197 -0
  2. package/.aider.input.history +334 -0
  3. package/.aider.tags.cache.v3/18/8b/7dfca822129dad10b5cacadf7728.val +0 -0
  4. package/.aider.tags.cache.v3/{ec/c0/161c249c35be853cc40cf11f9267.val → 62/f5/8af72140d93c58db2f6aa5bf3f1f.val} +0 -0
  5. package/.aider.tags.cache.v3/8d/fa/12860238755bcfab9af8a93c52ab.val +0 -0
  6. package/.aider.tags.cache.v3/{b7/e6/5be87b62aeaf2bc244ff41c1b61a.val → a7/97/6d37fce350ad2d588f36729db0cd.val} +0 -0
  7. package/.aider.tags.cache.v3/{e3/e6/3501625caf5d5eb171f0d248462e.val → ad/3c/10f2ab1397f6d544e613d2a6acaf.val} +0 -0
  8. package/.aider.tags.cache.v3/cache.db +0 -0
  9. package/.aider.tags.cache.v3/cache.db-shm +0 -0
  10. package/.aider.tags.cache.v3/cache.db-wal +0 -0
  11. package/.aider.tags.cache.v3/dd/5b/0ade824b0841c7c11e9352c5d2ca.val +0 -0
  12. package/README.md +333 -34
  13. package/bundle.js +8 -75
  14. package/dist/common/src/Init.js +6 -1
  15. package/dist/common/src/Node.js +6 -4
  16. package/dist/common/src/NodeSidecar.js +15 -0
  17. package/dist/common/src/PM/PM_WithEslintAndTsc.js +187 -0
  18. package/dist/common/src/PM/__tests__/nodeSidecar.testeranto.js +109 -0
  19. package/dist/common/src/PM/__tests__/pureSidecar.testeranto.js +94 -0
  20. package/dist/common/src/PM/__tests__/webSidecar.testeranto.js +94 -0
  21. package/dist/common/src/PM/base.js +33 -16
  22. package/dist/common/src/PM/main.js +484 -425
  23. package/dist/common/src/PM/node.js +44 -19
  24. package/dist/common/src/PM/nodeSidecar.js +65 -0
  25. package/dist/common/src/PM/pure.js +55 -47
  26. package/dist/common/src/PM/pureSidecar.js +48 -0
  27. package/dist/common/src/PM/sidecar.js +11 -0
  28. package/dist/common/src/PM/web.js +24 -6
  29. package/dist/common/src/PM/webSidecar.js +47 -0
  30. package/dist/common/src/PureSidecar.js +13 -0
  31. package/dist/common/src/SP__Polygon.test.js +10 -0
  32. package/dist/common/src/WebSidecar.js +14 -0
  33. package/dist/common/src/build.js +63 -10
  34. package/dist/common/src/defaultConfig.js +1 -0
  35. package/dist/common/src/esbuildConfigs/consoleDetectorPlugin.js +27 -0
  36. package/dist/common/src/esbuildConfigs/pure.js +15 -1
  37. package/dist/common/src/esbuildConfigs/web.js +10 -1
  38. package/dist/common/src/{SubPackages/react-dom/jsx/index.js → lib/Sidecar.js} +4 -0
  39. package/dist/common/src/lib/abstractBase.js +7 -5
  40. package/dist/common/src/lib/basebuilder.js +1 -3
  41. package/dist/common/src/lib/classBuilder.js +4 -17
  42. package/dist/common/src/lib/core.js +11 -6
  43. package/dist/common/src/lib/index.js +13 -4
  44. package/dist/common/src/lib/pmProxy.js +1 -1
  45. package/dist/common/src/mothership/index.js +16 -0
  46. package/dist/common/src/mothership/test.js +65 -0
  47. package/dist/common/src/utils/queue.js +36 -0
  48. package/dist/common/src/utils.js +34 -5
  49. package/dist/common/testeranto.config.js +77 -39
  50. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  51. package/dist/module/src/Init.js +6 -1
  52. package/dist/module/src/Node.js +6 -4
  53. package/dist/module/src/NodeSidecar.js +11 -0
  54. package/dist/module/src/PM/PM_WithEslintAndTsc.js +180 -0
  55. package/dist/module/src/PM/__tests__/nodeSidecar.testeranto.js +104 -0
  56. package/dist/module/src/PM/__tests__/pureSidecar.testeranto.js +89 -0
  57. package/dist/module/src/PM/__tests__/webSidecar.testeranto.js +89 -0
  58. package/dist/module/src/PM/base.js +33 -16
  59. package/dist/module/src/PM/main.js +485 -426
  60. package/dist/module/src/PM/node.js +44 -19
  61. package/dist/module/src/PM/nodeSidecar.js +58 -0
  62. package/dist/module/src/PM/pure.js +55 -44
  63. package/dist/module/src/PM/pureSidecar.js +41 -0
  64. package/dist/module/src/PM/sidecar.js +7 -0
  65. package/dist/module/src/PM/web.js +24 -6
  66. package/dist/module/src/PM/webSidecar.js +40 -0
  67. package/dist/module/src/Project.js +154 -75
  68. package/dist/module/src/PureSidecar.js +9 -0
  69. package/dist/module/src/ReportClient.js +132 -97
  70. package/dist/module/src/SP__Polygon.test.js +8 -0
  71. package/dist/module/src/TestReport.js +32 -14
  72. package/dist/module/src/WebSidecar.js +10 -0
  73. package/dist/module/src/build.js +63 -10
  74. package/dist/module/src/defaultConfig.js +1 -0
  75. package/dist/module/src/esbuildConfigs/consoleDetectorPlugin.js +24 -0
  76. package/dist/module/src/esbuildConfigs/pure.js +15 -1
  77. package/dist/module/src/esbuildConfigs/web.js +10 -1
  78. package/dist/module/src/lib/Sidecar.js +2 -0
  79. package/dist/module/src/lib/abstractBase.js +7 -5
  80. package/dist/module/src/lib/basebuilder.js +1 -3
  81. package/dist/module/src/lib/classBuilder.js +4 -17
  82. package/dist/module/src/lib/core.js +11 -6
  83. package/dist/module/src/lib/index.js +12 -4
  84. package/dist/module/src/lib/pmProxy.js +1 -1
  85. package/dist/module/src/mothership/index.js +11 -0
  86. package/dist/module/src/mothership/test.js +60 -0
  87. package/dist/module/src/utils/queue.js +32 -0
  88. package/dist/module/src/utils.js +34 -5
  89. package/dist/module/testeranto.config.js +77 -36
  90. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  91. package/dist/prebuild/Project.js +3288 -385
  92. package/dist/prebuild/ReportClient.js +0 -24638
  93. package/dist/prebuild/TestReport.js +14 -8
  94. package/dist/prebuild/build.mjs +159 -15
  95. package/dist/prebuild/init-docs.mjs +2 -5
  96. package/dist/prebuild/mothership/index.mjs +17 -0
  97. package/dist/prebuild/run.mjs +693 -412
  98. package/dist/types/src/NodeSidecar.d.ts +6 -0
  99. package/dist/types/src/PM/PM_WithEslintAndTsc.d.ts +23 -0
  100. package/dist/types/src/PM/__tests__/nodeSidecar.testeranto.d.ts +20 -0
  101. package/dist/types/src/PM/__tests__/pureSidecar.testeranto.d.ts +20 -0
  102. package/dist/types/src/PM/__tests__/webSidecar.testeranto.d.ts +20 -0
  103. package/dist/types/src/PM/base.d.ts +6 -5
  104. package/dist/types/src/PM/index.d.ts +5 -3
  105. package/dist/types/src/PM/main.d.ts +23 -26
  106. package/dist/types/src/PM/node.d.ts +8 -6
  107. package/dist/types/src/PM/nodeSidecar.d.ts +13 -0
  108. package/dist/types/src/PM/pure.d.ts +4 -3
  109. package/dist/types/src/PM/pureSidecar.d.ts +11 -0
  110. package/dist/types/src/PM/sidecar.d.ts +8 -0
  111. package/dist/types/src/PM/web.d.ts +18 -8
  112. package/dist/types/src/PM/webSidecar.d.ts +11 -0
  113. package/dist/types/src/PureSidecar.d.ts +8 -0
  114. package/dist/types/src/Types.d.ts +109 -43
  115. package/dist/types/src/WebSidecar.d.ts +8 -0
  116. package/dist/types/src/esbuildConfigs/consoleDetectorPlugin.d.ts +2 -0
  117. package/dist/types/src/lib/Sidecar.d.ts +5 -0
  118. package/dist/types/src/lib/abstractBase.d.ts +6 -6
  119. package/dist/types/src/lib/classBuilder.d.ts +7 -1
  120. package/dist/types/src/lib/core.d.ts +7 -1
  121. package/dist/types/src/lib/index.d.ts +10 -4
  122. package/dist/types/src/lib/types.d.ts +12 -2
  123. package/dist/types/src/mothership/index.d.ts +2 -0
  124. package/dist/types/src/mothership/test.d.ts +21 -0
  125. package/dist/types/src/utils/queue.d.ts +11 -0
  126. package/dist/types/src/utils.d.ts +4 -7
  127. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  128. package/package.json +19 -105
  129. package/src/Init.ts +6 -5
  130. package/src/Node.ts +7 -4
  131. package/src/NodeSidecar.ts +22 -0
  132. package/src/PM/PM_WithEslintAndTsc.ts +284 -0
  133. package/src/PM/__tests__/nodeSidecar.testeranto.ts +173 -0
  134. package/src/PM/__tests__/pureSidecar.testeranto.ts +157 -0
  135. package/src/PM/__tests__/webSidecar.testeranto.ts +157 -0
  136. package/src/PM/base.ts +38 -17
  137. package/src/PM/index.ts +9 -3
  138. package/src/PM/main.ts +608 -582
  139. package/src/PM/node.ts +67 -23
  140. package/src/PM/nodeSidecar.ts +73 -0
  141. package/src/PM/pure.ts +68 -58
  142. package/src/PM/pureSidecar.ts +56 -0
  143. package/src/PM/sidecar.ts +48 -0
  144. package/src/PM/web.ts +42 -11
  145. package/src/PM/webSidecar.ts +55 -0
  146. package/src/Project.tsx +312 -109
  147. package/src/Pure.ts +0 -2
  148. package/src/PureSidecar.ts +14 -0
  149. package/src/ReportClient.tsx +164 -170
  150. package/src/SP__Polygon.test.ts +13 -0
  151. package/src/TestReport.tsx +77 -6
  152. package/src/Types.ts +227 -122
  153. package/src/WebSidecar.ts +14 -0
  154. package/src/build.ts +101 -14
  155. package/src/defaultConfig.ts +1 -0
  156. package/src/esbuildConfigs/README.md +46 -0
  157. package/src/esbuildConfigs/consoleDetectorPlugin.ts +29 -0
  158. package/src/esbuildConfigs/pure.ts +22 -1
  159. package/src/esbuildConfigs/web.ts +13 -0
  160. package/src/lib/Sidecar.ts +6 -0
  161. package/src/lib/TEST_ADAPTER_RENAME.md +48 -0
  162. package/src/lib/abstractBase.ts +12 -9
  163. package/src/lib/basebuilder.ts +5 -4
  164. package/src/lib/classBuilder.ts +15 -18
  165. package/src/lib/core.ts +24 -11
  166. package/src/lib/index.ts +38 -18
  167. package/src/lib/pmProxy.ts +3 -1
  168. package/src/lib/types.ts +15 -2
  169. package/src/mothership/index.ts +15 -0
  170. package/src/mothership/test.ts +137 -0
  171. package/src/run.ts +0 -1
  172. package/src/utils/queue.ts +41 -0
  173. package/src/utils.ts +41 -15
  174. package/testeranto/bundles/node/mothership/chunk-PG6KUKNP.mjs +44 -0
  175. package/testeranto/bundles/node/mothership/chunk-V2EQEXU2.mjs +1032 -0
  176. package/testeranto/bundles/node/mothership/metafile.json +389 -0
  177. package/testeranto/bundles/node/mothership/src/PM/__tests__/nodeSidecar.testeranto.mjs +1219 -0
  178. package/testeranto/bundles/node/mothership/src/PM/__tests__/pureSidecar.testeranto.mjs +156 -0
  179. package/testeranto/bundles/node/mothership/src/PM/__tests__/sidecar.testeranto.mjs +1199 -0
  180. package/testeranto/bundles/node/mothership/src/PM/__tests__/webSidecar.testeranto.mjs +156 -0
  181. package/testeranto/bundles/node/mothership/src/mothership/test.mjs +24411 -0
  182. package/testeranto/bundles/pure/mothership/metafile.json +8 -0
  183. package/testeranto/bundles/web/mothership/metafile.json +8 -0
  184. package/testeranto/index.html +4 -4
  185. package/testeranto/reports/mothership/config.json +25 -0
  186. package/testeranto/reports/{redux → mothership}/index.html +8 -8
  187. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/console_log.txt +0 -0
  188. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/index.html +20 -0
  189. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/lint_errors.json +1564 -0
  190. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/log.txt +0 -0
  191. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/prompt.txt +22 -0
  192. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/type_errors.txt +35 -0
  193. package/testeranto/reports/mothership/src/PM/__tests__/pureSidecar.testeranto/node/index.html +20 -0
  194. package/testeranto/reports/mothership/src/PM/__tests__/pureSidecar.testeranto/node/lint_errors.json +80 -0
  195. package/testeranto/reports/mothership/src/PM/__tests__/pureSidecar.testeranto/node/prompt.txt +12 -0
  196. package/testeranto/reports/mothership/src/PM/__tests__/pureSidecar.testeranto/node/type_errors.txt +26 -0
  197. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/bdd_errors.txt +1 -0
  198. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/console_log.txt +0 -0
  199. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/index.html +20 -0
  200. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/lint_errors.json +1564 -0
  201. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/log.txt +0 -0
  202. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/prompt.txt +22 -0
  203. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/tests.json +56 -0
  204. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/type_errors.txt +29 -0
  205. package/testeranto/reports/mothership/src/PM/__tests__/webSidecar.testeranto/node/index.html +20 -0
  206. package/testeranto/reports/mothership/src/PM/__tests__/webSidecar.testeranto/node/lint_errors.json +80 -0
  207. package/testeranto/reports/mothership/src/PM/__tests__/webSidecar.testeranto/node/prompt.txt +12 -0
  208. package/testeranto/reports/mothership/src/PM/__tests__/webSidecar.testeranto/node/type_errors.txt +26 -0
  209. package/testeranto/reports/mothership/src/mothership/test/node/bdd_errors.txt +1 -0
  210. package/testeranto/reports/mothership/src/mothership/test/node/console_log.txt +4 -0
  211. package/testeranto/reports/mothership/src/mothership/test/node/index.html +20 -0
  212. package/testeranto/reports/mothership/src/mothership/test/node/lint_errors.json +1 -0
  213. package/testeranto/reports/mothership/src/mothership/test/node/log.txt +0 -0
  214. package/testeranto/reports/mothership/src/mothership/test/node/prompt.txt +12 -0
  215. package/testeranto/reports/mothership/src/mothership/test/node/tests.json +24 -0
  216. package/testeranto/reports/mothership/src/mothership/test/node/type_errors.txt +18 -0
  217. package/testeranto/reports/mothership/summary.json +9 -0
  218. package/testeranto.config.ts +82 -44
  219. package/tsc.log +78 -81
  220. package/dist/common/src/SubPackages/react/component/index.js +0 -20
  221. package/dist/common/src/SubPackages/react/component/node.js +0 -10
  222. package/dist/common/src/SubPackages/react/component/pure.js +0 -10
  223. package/dist/common/src/SubPackages/react/component/web.js +0 -10
  224. package/dist/common/src/SubPackages/react/jsx/index.js +0 -64
  225. package/dist/common/src/SubPackages/react/jsx/node.js +0 -10
  226. package/dist/common/src/SubPackages/react/jsx/pure.js +0 -10
  227. package/dist/common/src/SubPackages/react/jsx/web.js +0 -10
  228. package/dist/common/src/SubPackages/react-dom/component/dynamic.js +0 -61
  229. package/dist/common/src/SubPackages/react-dom/component/node.js +0 -10
  230. package/dist/common/src/SubPackages/react-dom/component/pure.js +0 -10
  231. package/dist/common/src/SubPackages/react-dom/component/static.js +0 -26
  232. package/dist/common/src/SubPackages/react-dom/component/web.js +0 -16
  233. package/dist/common/src/SubPackages/react-dom/jsx/dynamic.js +0 -31
  234. package/dist/common/src/SubPackages/react-dom/jsx/node.js +0 -10
  235. package/dist/common/src/SubPackages/react-dom/jsx/pure.js +0 -10
  236. package/dist/common/src/SubPackages/react-dom/jsx/static.js +0 -59
  237. package/dist/common/src/SubPackages/react-dom/jsx/web.js +0 -16
  238. package/dist/common/src/SubPackages/react-test-renderer/MemoExoticComponent/node.js +0 -54
  239. package/dist/common/src/SubPackages/react-test-renderer/component/index.js +0 -15
  240. package/dist/common/src/SubPackages/react-test-renderer/component/interface.js +0 -70
  241. package/dist/common/src/SubPackages/react-test-renderer/component/node.js +0 -8
  242. package/dist/common/src/SubPackages/react-test-renderer/component/pure.js +0 -8
  243. package/dist/common/src/SubPackages/react-test-renderer/component/test/implementation.js +0 -57
  244. package/dist/common/src/SubPackages/react-test-renderer/component/test/node.js +0 -10
  245. package/dist/common/src/SubPackages/react-test-renderer/component/test/pure.js +0 -10
  246. package/dist/common/src/SubPackages/react-test-renderer/component/test/web.js +0 -10
  247. package/dist/common/src/SubPackages/react-test-renderer/component/web.js +0 -8
  248. package/dist/common/src/SubPackages/react-test-renderer/fc/node.js +0 -60
  249. package/dist/common/src/SubPackages/react-test-renderer/fc/web.js +0 -60
  250. package/dist/common/src/SubPackages/react-test-renderer/jsx/index.js +0 -67
  251. package/dist/common/src/SubPackages/react-test-renderer/jsx/node.js +0 -10
  252. package/dist/common/src/SubPackages/react-test-renderer/jsx/pure.js +0 -10
  253. package/dist/common/src/SubPackages/react-test-renderer/jsx/web.js +0 -10
  254. package/dist/common/src/SubPackages/react-test-renderer/jsx-promised/index.js +0 -52
  255. package/dist/common/src/SubPackages/react-test-renderer/jsx-promised/node.js +0 -10
  256. package/dist/common/src/SubPackages/react-test-renderer/jsx-promised/web.js +0 -10
  257. package/dist/common/src/examples/react/component/index.js +0 -33
  258. package/dist/common/src/examples/react/component/test.js +0 -36
  259. package/dist/module/src/SubPackages/react/component/index.js +0 -13
  260. package/dist/module/src/SubPackages/react/component/node.js +0 -5
  261. package/dist/module/src/SubPackages/react/component/pure.js +0 -5
  262. package/dist/module/src/SubPackages/react/component/web.js +0 -5
  263. package/dist/module/src/SubPackages/react/jsx/index.js +0 -58
  264. package/dist/module/src/SubPackages/react/jsx/node.js +0 -5
  265. package/dist/module/src/SubPackages/react/jsx/pure.js +0 -5
  266. package/dist/module/src/SubPackages/react/jsx/web.js +0 -5
  267. package/dist/module/src/SubPackages/react-dom/component/dynamic.js +0 -54
  268. package/dist/module/src/SubPackages/react-dom/component/node.js +0 -5
  269. package/dist/module/src/SubPackages/react-dom/component/pure.js +0 -5
  270. package/dist/module/src/SubPackages/react-dom/component/static.js +0 -22
  271. package/dist/module/src/SubPackages/react-dom/component/web.js +0 -11
  272. package/dist/module/src/SubPackages/react-dom/jsx/dynamic.js +0 -27
  273. package/dist/module/src/SubPackages/react-dom/jsx/node.js +0 -5
  274. package/dist/module/src/SubPackages/react-dom/jsx/pure.js +0 -5
  275. package/dist/module/src/SubPackages/react-dom/jsx/static.js +0 -53
  276. package/dist/module/src/SubPackages/react-dom/jsx/web.js +0 -11
  277. package/dist/module/src/SubPackages/react-test-renderer/MemoExoticComponent/node.js +0 -16
  278. package/dist/module/src/SubPackages/react-test-renderer/component/index.js +0 -14
  279. package/dist/module/src/SubPackages/react-test-renderer/component/interface.js +0 -31
  280. package/dist/module/src/SubPackages/react-test-renderer/component/node.js +0 -3
  281. package/dist/module/src/SubPackages/react-test-renderer/component/pure.js +0 -3
  282. package/dist/module/src/SubPackages/react-test-renderer/component/test/implementation.js +0 -54
  283. package/dist/module/src/SubPackages/react-test-renderer/component/test/node.js +0 -5
  284. package/dist/module/src/SubPackages/react-test-renderer/component/test/pure.js +0 -5
  285. package/dist/module/src/SubPackages/react-test-renderer/component/test/web.js +0 -5
  286. package/dist/module/src/SubPackages/react-test-renderer/component/web.js +0 -3
  287. package/dist/module/src/SubPackages/react-test-renderer/fc/node.js +0 -22
  288. package/dist/module/src/SubPackages/react-test-renderer/fc/web.js +0 -22
  289. package/dist/module/src/SubPackages/react-test-renderer/jsx/index.js +0 -28
  290. package/dist/module/src/SubPackages/react-test-renderer/jsx/node.js +0 -5
  291. package/dist/module/src/SubPackages/react-test-renderer/jsx/pure.js +0 -5
  292. package/dist/module/src/SubPackages/react-test-renderer/jsx/web.js +0 -5
  293. package/dist/module/src/SubPackages/react-test-renderer/jsx-promised/index.js +0 -16
  294. package/dist/module/src/SubPackages/react-test-renderer/jsx-promised/node.js +0 -5
  295. package/dist/module/src/SubPackages/react-test-renderer/jsx-promised/web.js +0 -5
  296. package/dist/module/src/examples/react/component/index.js +0 -26
  297. package/dist/module/src/examples/react/component/test.js +0 -32
  298. package/dist/prebuild/ReportClient.css +0 -11342
  299. package/dist/tsconfig.tsbuildinfo +0 -1
  300. package/dist/types/src/SubPackages/react/component/index.d.ts +0 -4
  301. package/dist/types/src/SubPackages/react/component/node.d.ts +0 -4
  302. package/dist/types/src/SubPackages/react/component/pure.d.ts +0 -4
  303. package/dist/types/src/SubPackages/react/component/web.d.ts +0 -4
  304. package/dist/types/src/SubPackages/react/jsx/index.d.ts +0 -5
  305. package/dist/types/src/SubPackages/react/jsx/node.d.ts +0 -4
  306. package/dist/types/src/SubPackages/react/jsx/pure.d.ts +0 -4
  307. package/dist/types/src/SubPackages/react/jsx/web.d.ts +0 -4
  308. package/dist/types/src/SubPackages/react-dom/component/dynamic.d.ts +0 -20
  309. package/dist/types/src/SubPackages/react-dom/component/node.d.ts +0 -4
  310. package/dist/types/src/SubPackages/react-dom/component/pure.d.ts +0 -4
  311. package/dist/types/src/SubPackages/react-dom/component/static.d.ts +0 -9
  312. package/dist/types/src/SubPackages/react-dom/component/web.d.ts +0 -4
  313. package/dist/types/src/SubPackages/react-dom/jsx/dynamic.d.ts +0 -5
  314. package/dist/types/src/SubPackages/react-dom/jsx/index.d.ts +0 -6
  315. package/dist/types/src/SubPackages/react-dom/jsx/node.d.ts +0 -4
  316. package/dist/types/src/SubPackages/react-dom/jsx/pure.d.ts +0 -4
  317. package/dist/types/src/SubPackages/react-dom/jsx/static.d.ts +0 -5
  318. package/dist/types/src/SubPackages/react-dom/jsx/web.d.ts +0 -5
  319. package/dist/types/src/SubPackages/react-test-renderer/MemoExoticComponent/node.d.ts +0 -6
  320. package/dist/types/src/SubPackages/react-test-renderer/component/index.d.ts +0 -5
  321. package/dist/types/src/SubPackages/react-test-renderer/component/interface.d.ts +0 -3
  322. package/dist/types/src/SubPackages/react-test-renderer/component/node.d.ts +0 -4
  323. package/dist/types/src/SubPackages/react-test-renderer/component/pure.d.ts +0 -4
  324. package/dist/types/src/SubPackages/react-test-renderer/component/test/implementation.d.ts +0 -4
  325. package/dist/types/src/SubPackages/react-test-renderer/component/test/node.d.ts +0 -3
  326. package/dist/types/src/SubPackages/react-test-renderer/component/test/pure.d.ts +0 -4
  327. package/dist/types/src/SubPackages/react-test-renderer/component/test/web.d.ts +0 -3
  328. package/dist/types/src/SubPackages/react-test-renderer/component/web.d.ts +0 -4
  329. package/dist/types/src/SubPackages/react-test-renderer/fc/node.d.ts +0 -8
  330. package/dist/types/src/SubPackages/react-test-renderer/fc/web.d.ts +0 -9
  331. package/dist/types/src/SubPackages/react-test-renderer/jsx/index.d.ts +0 -11
  332. package/dist/types/src/SubPackages/react-test-renderer/jsx/node.d.ts +0 -4
  333. package/dist/types/src/SubPackages/react-test-renderer/jsx/pure.d.ts +0 -4
  334. package/dist/types/src/SubPackages/react-test-renderer/jsx/web.d.ts +0 -4
  335. package/dist/types/src/SubPackages/react-test-renderer/jsx-promised/index.d.ts +0 -15
  336. package/dist/types/src/SubPackages/react-test-renderer/jsx-promised/node.d.ts +0 -5
  337. package/dist/types/src/SubPackages/react-test-renderer/jsx-promised/web.d.ts +0 -5
  338. package/dist/types/src/examples/react/component/index.d.ts +0 -13
  339. package/dist/types/src/examples/react/component/test.d.ts +0 -17
  340. package/src/SubPackages/react/component/index.ts +0 -28
  341. package/src/SubPackages/react/component/node.ts +0 -17
  342. package/src/SubPackages/react/component/pure.ts +0 -17
  343. package/src/SubPackages/react/component/web.ts +0 -17
  344. package/src/SubPackages/react/jsx/index.ts +0 -75
  345. package/src/SubPackages/react/jsx/node.ts +0 -23
  346. package/src/SubPackages/react/jsx/pure.ts +0 -23
  347. package/src/SubPackages/react/jsx/web.ts +0 -24
  348. package/src/SubPackages/react-dom/component/dynamic.ts +0 -107
  349. package/src/SubPackages/react-dom/component/node.ts +0 -17
  350. package/src/SubPackages/react-dom/component/pure.ts +0 -17
  351. package/src/SubPackages/react-dom/component/static.ts +0 -41
  352. package/src/SubPackages/react-dom/component/web.ts +0 -32
  353. package/src/SubPackages/react-dom/jsx/dynamic.ts +0 -46
  354. package/src/SubPackages/react-dom/jsx/index.ts +0 -6
  355. package/src/SubPackages/react-dom/jsx/node.ts +0 -18
  356. package/src/SubPackages/react-dom/jsx/pure.ts +0 -18
  357. package/src/SubPackages/react-dom/jsx/static.ts +0 -87
  358. package/src/SubPackages/react-dom/jsx/web.ts +0 -26
  359. package/src/SubPackages/react-test-renderer/MemoExoticComponent/node.ts +0 -54
  360. package/src/SubPackages/react-test-renderer/component/index.ts +0 -32
  361. package/src/SubPackages/react-test-renderer/component/interface.ts +0 -43
  362. package/src/SubPackages/react-test-renderer/component/node.ts +0 -18
  363. package/src/SubPackages/react-test-renderer/component/pure.ts +0 -18
  364. package/src/SubPackages/react-test-renderer/component/test/implementation.ts +0 -63
  365. package/src/SubPackages/react-test-renderer/component/test/node.ts +0 -14
  366. package/src/SubPackages/react-test-renderer/component/test/pure.ts +0 -14
  367. package/src/SubPackages/react-test-renderer/component/test/web.ts +0 -14
  368. package/src/SubPackages/react-test-renderer/component/web.ts +0 -18
  369. package/src/SubPackages/react-test-renderer/fc/node.ts +0 -83
  370. package/src/SubPackages/react-test-renderer/fc/web.ts +0 -80
  371. package/src/SubPackages/react-test-renderer/jsx/index.ts +0 -61
  372. package/src/SubPackages/react-test-renderer/jsx/node.ts +0 -31
  373. package/src/SubPackages/react-test-renderer/jsx/pure.ts +0 -31
  374. package/src/SubPackages/react-test-renderer/jsx/web.ts +0 -32
  375. package/src/SubPackages/react-test-renderer/jsx-promised/index.ts +0 -73
  376. package/src/SubPackages/react-test-renderer/jsx-promised/node.ts +0 -36
  377. package/src/SubPackages/react-test-renderer/jsx-promised/web.ts +0 -36
  378. package/src/examples/react/component/index.tsx +0 -35
  379. package/src/examples/react/component/test.ts +0 -83
  380. package/testeranto/bundles/node/redux/metafile.json +0 -559
  381. package/testeranto/bundles/pure/redux/metafile.json +0 -554
  382. package/testeranto/bundles/web/redux/metafile.json +0 -504
  383. package/testeranto/bundles/web/redux/test/web.html +0 -19
  384. package/testeranto/reports/redux/config.json +0 -38
  385. package/testeranto/reports/redux/summary.json +0 -20
  386. /package/dist/{module/src/SubPackages/react-dom/jsx/index.js → types/src/SP__Polygon.test.d.ts} +0 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # testeranto
2
2
 
3
- ## the AI powered BDD test framework for typescript projects
3
+ ## The AI-powered BDD test framework for TypeScript projects
4
4
 
5
5
  🚧 WARNING: Testeranto is still under development and is not ready for production yet. 🚧
6
6
 
@@ -12,11 +12,7 @@ npm: [npmjs.com/package/testeranto](https://www.npmjs.com/package/testeranto)
12
12
 
13
13
  dev: [github.dev/adamwong246/testeranto](https://github.dev/adamwong246/testeranto)
14
14
 
15
- example test report: [chromapdx.github.io/kokomoBay](https://chromapdx.github.io/kokomoBay/testeranto/index.html)
16
-
17
- example repo: [kokomo bay](https://github.com/ChromaPDX/kokomoBay)
18
-
19
- example repo V2: [testeranto-starter](https://github.com/adamwong246/testeranto-starter)
15
+ example repo: [testeranto-starter](https://github.com/adamwong246/testeranto-starter)
20
16
 
21
17
  ## What is testeranto?
22
18
 
@@ -27,28 +23,146 @@ example repo V2: [testeranto-starter](https://github.com/adamwong246/testeranto-
27
23
  - Testeranto connects "features" to "tests". This allows the AI to read feature documentation from external systems, like Jira.
28
24
  - Testeranto generates test results into static a website which can be deployed to github pages easily.
29
25
 
30
- ## tech of note
26
+ ## Key Technologies
27
+
28
+ Testeranto builds on modern JavaScript/TypeScript tooling:
29
+
30
+ | Technology | Purpose |
31
+ | ---------- | -------------------------------------- |
32
+ | TypeScript | Strongly-typed test definitions |
33
+ | Puppeteer | Cross-runtime testing (Node & Browser) |
34
+ | esbuild | Fast test bundling |
35
+ | Aider.ai | AI-powered test fixing |
36
+ | ESLint | Static analysis of test files |
37
+ | tsc | Type checking of test files |
38
+ | Markdown | Feature documentation format |
39
+
40
+ ## Quick Start
41
+
42
+ 1. Install testeranto:
43
+
44
+ ```bash
45
+ npm install testeranto
46
+ ```
47
+
48
+ 2. Create a test file (e.g., `rectangle.test.ts`):
49
+
50
+ ```typescript
51
+ import { Given, When, Then } from "testeranto";
52
+
53
+ type Rectangle = { width: number; height: number };
54
+
55
+ const RectangleSpec = (Suite, Given, When, Then) => [
56
+ Suite.Default("Rectangle tests", {
57
+ test1: Given.Default(
58
+ ["Basic rectangle operations"],
59
+ [When.setWidth(5), When.setHeight(10)],
60
+ [Then.getWidth(5), Then.getHeight(10)]
61
+ ),
62
+ }),
63
+ ];
64
+ ```
65
+
66
+ 3. Run your tests in two separate terminals:
67
+
68
+ ```bash
69
+ # Terminal 1 - Build in watch mode
70
+ yarn t-build rectangle.test.ts dev
71
+
72
+ # Terminal 2 - Run in watch mode
73
+ yarn t-run rectangle.test.ts dev
74
+ ```
75
+
76
+ ## Architecture Overview
77
+
78
+ ```mermaid
79
+ flowchart TD
80
+ subgraph ThreePillars["Testeranto Core"]
81
+ Builder[Test Builder]
82
+ Runner[Test Runner]
83
+ Aider[AI Integration]
84
+ end
85
+
86
+ subgraph BuilderComponents[" "]
87
+ Specification[Specification]
88
+ Implementation[Implementation]
89
+ Interface[Interface]
90
+ end
91
+
92
+ subgraph Runtimes[" "]
93
+ Node[Node]
94
+ Web[Browser]
95
+ Pure[JS]
96
+ end
97
+
98
+ Builder --> Runner
99
+ Runner --> Aider
100
+ Aider --> Builder
101
+
102
+ Builder --> BuilderComponents
103
+ Runner --> Runtimes
104
+
105
+ style ThreePillars fill:none,stroke:#586e75
106
+ style Builder fill:#268bd2,stroke:#586e75,color:#fdf6e3
107
+ style Runner fill:#268bd2,stroke:#586e75,color:#fdf6e3
108
+ style Aider fill:#b58900,stroke:#586e75,color:#002b36
109
+ style BuilderComponents fill:#002b36,stroke:#586e75,color:#eee8d5
110
+ style Runtimes fill:#073642,stroke:#586e75,color:#eee8d5
111
+ style Specification fill:#2aa198,stroke:#586e75,color:#002b36
112
+ style Implementation fill:#2aa198,stroke:#586e75,color:#002b36
113
+ style Interface fill:#2aa198,stroke:#586e75,color:#002b36
114
+ style Node fill:#859900,stroke:#586e75,color:#002b36
115
+ style Web fill:#859900,stroke:#586e75,color:#002b36
116
+ style Pure fill:#859900,stroke:#586e75,color:#002b36
117
+ ```
118
+
119
+ ## Runtime Platforms
120
+
121
+ Testeranto runs tests in multiple runtime environments, each suited for different testing scenarios:
31
122
 
32
- - esm - Testeranto uses modern js
33
- - typescript - tests are functions with type parameters
34
- - puppeteer - provides access to both node and chrome runtimes
35
- - esbuild - used to quickly generate test bundles
36
- - aider - AI to automatically fix broken tests
37
- - eslint - runs upon the input files to generate a file of static analysis errors
38
- - tsc - runs upon the input files to generate a file of type errors
39
- - markdown - Markdown is used record feature files
123
+ | Runtime | Description | When To Use | Key Characteristics |
124
+ | -------- | ------------------------------------------------- | ---------------------------------------------------------------------- | ------------------------------------------------------- |
125
+ | **Node** | Full IO access with Node.js built-in modules | Testing backend code, Node APIs, or anything needing filesystem access | Runs in Node v8 via fork, has access to fs, crypto, etc |
126
+ | **Web** | DOM API access with browser capabilities | Testing frontend code, UI interactions, or visual regression | Runs in Chrome page, can take screenshots/recordings |
127
+ | **Pure** | Isolated JS runtime without external dependencies | Fast unit tests that don't need external resources | Dynamically imported into main thread, no IO access |
40
128
 
41
- ## scripts
129
+ **Key Considerations:**
42
130
 
43
- `yarn t-init`: startup a new testeranto project
131
+ - Use **Node** for testing backend services, file operations, or anything requiring Node.js APIs
132
+ - Use **Web** when testing browser-specific code that references `document` or `window`
133
+ - Use **Pure** for fast, isolated unit tests where you don't need console output or external resources
44
134
 
45
- `yarn t-build <someTest> <once|dev>`: build the "someTest" project once, or continuously
135
+ ## CLI Commands
46
136
 
47
- `yarn t-run <someTest> <once|dev>`: run the "someTest" project once, or continuously
137
+ | Command | Description |
138
+ | ------------------------------------- | --------------------------------------------- |
139
+ | `yarn t-init` | Create a new testeranto project |
140
+ | `yarn t-build <YOUR_TESTS> dev\|once` | Build test bundles (watch or single-run mode) |
141
+ | `yarn t-run <YOUR_TESTS> dev\|once` | Run tests (watch or single-run mode) |
142
+ | `yarn t-report` | Launch test report server |
143
+ | `yarn t-aider` | Fix failing tests with AI |
48
144
 
49
- `yarn t-report` Run the report server
145
+ Example workflow:
50
146
 
51
- `yarn t-aider PATH_TO_PROMPT_FILE`: Execute a generated prompt file to fix broken tests.
147
+ ```bash
148
+ # Initialize project
149
+ yarn t-init
150
+
151
+ # Write tests in test/*.test.ts
152
+
153
+ # In terminal 1 - Build tests (watch mode)
154
+ yarn t-build test/rectangle.test.ts dev
155
+
156
+ # In terminal 2 - Run tests (watch mode)
157
+ yarn t-run test/rectangle.test.ts dev
158
+
159
+ # Or for single-run mode:
160
+ yarn t-build test/rectangle.test.ts once
161
+ yarn t-run test/rectangle.test.ts once
162
+
163
+ # Get AI help with failures
164
+ yarn t-aider
165
+ ```
52
166
 
53
167
  ## AI
54
168
 
@@ -74,17 +188,202 @@ Testeranto generates a "prompt" alongside test results. This prompt is passed to
74
188
 
75
189
  Testeranto connects "features" to tests. The features may be simple strings, but they can also take the form of local markdown files, or remote URLs to external feature tracking systems. For instance, this could be a jira ticket or a github issue. These features are used to inform the AI context.
76
190
 
77
- ## Platforms
191
+ ```ts
192
+ import someMarkdownFile from "someMarkdownFile.md";
193
+
194
+ ...
195
+
196
+ test0: Given.Default(
197
+ [
198
+ "https://api.github.com/repos/adamwong246/testeranto/issues/8",
199
+ "you can set the width and height of a Rectangle",
200
+ someMarkdownFile
201
+ ],
202
+
203
+ [When.setWidth(4), When.setHeight(19)],
204
+ [Then.getWidth(4), Then.getHeight(19)]
205
+ ),
206
+ ...
207
+
208
+ ```
209
+
210
+ ## Core Concepts
211
+
212
+ Testeranto's type system provides a rigorous framework for Behavior-Driven Development (BDD) testing. Let's break down the key components using a Rectangle class example.
213
+
214
+ ### 1. Test Subject
215
+
216
+ First, define the class you want to test:
217
+
218
+ ```typescript
219
+ class Rectangle {
220
+ constructor(public width: number, public height: number) {}
221
+
222
+ setWidth(w: number) {
223
+ this.width = w;
224
+ }
225
+ setHeight(h: number) {
226
+ this.height = h;
227
+ }
228
+ getArea() {
229
+ return this.width * this.height;
230
+ }
231
+ }
232
+ ```
233
+
234
+ ### 2. Test Interface Types
235
+
236
+ Testeranto uses a powerful type system to ensure your tests match your implementation:
237
+
238
+ ```typescript
239
+ type IRectangle = Ibdd_in<
240
+ null, // No special initialization needed
241
+ null, // No special cleanup needed
242
+ Rectangle, // The test subject type
243
+ Rectangle, // State type between test steps
244
+ Rectangle, // Final state type
245
+ (n: number) => (r: Rectangle) => void, // When functions signature
246
+ (r: Rectangle) => number // Then functions signature
247
+ >;
248
+ ```
249
+
250
+ This type definition ensures:
251
+
252
+ - Type safety throughout the test lifecycle
253
+ - Clear separation of test phases (setup, execution, verification)
254
+ - Proper function signatures for test steps
255
+
256
+ ### 3. Test Specification
257
+
258
+ Define your BDD-style tests with full type checking:
259
+
260
+ ```typescript
261
+ const RectangleSpec: ITestSpecification<IRectangle> = (
262
+ Suite,
263
+ Given,
264
+ When,
265
+ Then
266
+ ) => [
267
+ Suite.Default("Rectangle Operations", {
268
+ // Test case 1: Basic dimension setting
269
+ basicDimensions: Given.Default(
270
+ ["Validate basic rectangle operations"],
271
+ [When.setWidth(5), When.setHeight(10)], // Actions
272
+ [Then.getWidth(5), Then.getHeight(10)] // Assertions
273
+ ),
274
+
275
+ // Test case 2: Area calculation
276
+ areaCalculation: Given.Default(
277
+ ["Validate area calculation"],
278
+ [When.setWidth(3), When.setHeight(4)],
279
+ [(r) => r.getArea() === 12] // Custom assertion
280
+ ),
281
+ }),
282
+ ];
283
+ ```
284
+
285
+ ### Development Workflow
286
+
287
+ ```mermaid
288
+
289
+
290
+
291
+
292
+ flowchart LR
293
+
294
+ subgraph hh["humans"]
295
+ direction LR
296
+ Human[🧑💻 ]
297
+ end
298
+
299
+ subgraph bb["AI"]
300
+ direction LR
301
+ Bot[🤖🧠 aider]
302
+ end
303
+
304
+
305
+ tests ---> L
306
+ subgraph tests
307
+ direction LR
308
+ A[Test Specification]
309
+ B[Test Interface]
310
+ C[Test Implementation]
311
+ K[application code]
312
+ end
313
+
314
+ subgraph buildSystem
315
+ direction TB
316
+ L["t-build"]
317
+ M[t-run]
318
+ L ---> M
319
+
320
+ M ---> N
321
+ M --->O
322
+ M --->P
323
+ N["BDD tests"]
324
+ O["Static analysis"]
325
+ P["Type checking"]
326
+
327
+ Q["reports"]
328
+ N ---> Q
329
+ O ---> Q
330
+ P ---> Q
331
+
332
+
333
+
334
+ end
335
+
336
+ Q ---> bb
337
+
338
+ buildSystem ---> bb
339
+ bb ---> tests
340
+ hh ---> tests
341
+
342
+
343
+
344
+
345
+
346
+
347
+ %% Styling
348
+ style Human fill:#268bd2,stroke:#586e75,color:#fdf6e3
349
+ style Bot fill:#d33682,stroke:#586e75,color:#fdf6e3
350
+
351
+ %% Layout tweaks
352
+ classDef column margin-right:20px
353
+
354
+ ```
355
+
356
+ **Key Components:**
357
+
358
+ 1. **Specification** - BDD test definitions (Given/When/Then)
359
+ 2. **Implementation** - Concrete test logic and assertions
360
+ 3. **Interface** - Test lifecycle hooks (before/after each)
361
+
362
+ **Rapid Development Loop:**
363
+
364
+ 1. `t-build` continuously type-checks and bundles tests
365
+ 2. `t-run` executes tests as they change
366
+ 3. Aider analyzes failures and suggests fixes
367
+ 4. Developer iterates based on feedback
368
+
369
+ The workflow creates a tight feedback loop where:
370
+
371
+ - Type errors are caught immediately during build
372
+ - Test failures trigger AI-assisted fixes
373
+ - Changes propagate instantly through the system
78
374
 
79
- Testeranto runs tests in multiple runtimes. You can run the same test (more or less) in multiple contexts, but depending on your test subject, not all may be applicable. For instance, if you are testing an http node server, you'll can't use the web runtime. If your code references `document` or `window`, you must use the web style. And if you wish to capture console.logs in a node context, you should use the `pure` runtime.
375
+ 2. **Autocomplete** - IDE support for test steps
376
+ 3. **Refactoring safety** - Changes to implementation trigger type errors in tests
377
+ 4. **Documentation** - Types serve as living documentation
80
378
 
81
- 1. Node - the test is run in node v8 via fork.
82
- 2. Web - the test is run in chrome, in a page.
83
- 3. Pure - the test is dynamically imported into the main thread. It will not have access to IO (console.log, etc) but it is more performant.
379
+ ### The Testing Lifecycle
84
380
 
85
- ## Concepts
381
+ 1. **Given** - Set up initial state
382
+ 2. **When** - Perform actions on the subject
383
+ 3. **Then** - Verify outcomes
384
+ 4. **Check** - Imperative-style validations (optional)
86
385
 
87
- Testeranto tests take some piece of javascript as input, and wraps it in testing apparatus, and then executes that test on the given platform. You must provide this apparatus in the following form:
386
+ Each phase is type-checked against your interface definition, ensuring tests remain valid as your code evolves.
88
387
 
89
388
  ```js
90
389
  export default async <I extends IT, O extends OT, M>(
@@ -112,7 +411,7 @@ export default async <I extends IT, O extends OT, M>(
112
411
 
113
412
  Practically speaking, for each thing you test, you will need to implement 3 types and 4 objects.
114
413
 
115
- ### type I
414
+ #### type I
116
415
 
117
416
  this type describes the shape of the BDD test
118
417
 
@@ -128,7 +427,7 @@ export type I = Ibdd_in<
128
427
  >;
129
428
  ```
130
429
 
131
- ### type O
430
+ #### type O
132
431
 
133
432
  this type describes the shape of the "interface"
134
433
 
@@ -169,7 +468,7 @@ export type O = Ibdd_out<
169
468
  >;
170
469
  ```
171
470
 
172
- ### type M (optional)
471
+ #### type M (optional)
173
472
 
174
473
  this type describes the modifications to the shape of the "specification". It can be used to make your BDD tests DRYer but is not necessary
175
474
 
@@ -191,7 +490,7 @@ export type M = {
191
490
  };
192
491
  ```
193
492
 
194
- ### the "specification" aka ITestSpecification<I, O>
493
+ #### the "specification" aka ITestSpecification<I, O>
195
494
 
196
495
  The test specification is the BDD tests logic. The specification implements BDD directives "Given", "When", and Then"
197
496
 
@@ -229,7 +528,7 @@ export const RectangleTesterantoBaseTestSpecification: ITestSpecification<
229
528
  };
230
529
  ```
231
530
 
232
- ### the "interface" aka testInterface: Partial<IWebTestInterface<I>>
531
+ #### the "interface" aka testInterface: Partial<IWebTestInterface<I>>
233
532
 
234
533
  The test interface is code which is NOT BDD steps. The interface implements "before all", "after all", "before each", and "after each", all of which are optional. f
235
534
 
@@ -247,7 +546,7 @@ export const RectangleTesterantoBaseInterface: IPartialInterface<I> = {
247
546
  };
248
547
  ```
249
548
 
250
- ## the "test resource requirement" aka ITTestResourceRequest (optional)
549
+ #### the "test resource requirement" aka ITTestResourceRequest (optional)
251
550
 
252
551
  The test resource requirement describes things that the test needs to run, namely network ports. It is optional, but you should add this argument if your test needs to rely upon network ports
253
552
 
package/bundle.js CHANGED
@@ -2,11 +2,17 @@ import * as esbuild from 'esbuild'
2
2
 
3
3
  await esbuild.build({
4
4
  outExtension: { '.js': '.mjs' },
5
- entryPoints: ['src/build.ts', 'src/run.ts', 'src/init-docs.ts', 'src/ReportServer.ts', 'src/esbuildConfigs/eslint-formatter-testeranto.ts'],
5
+ entryPoints: [
6
+ 'src/build.ts',
7
+ 'src/run.ts',
8
+ 'src/init-docs.ts',
9
+ 'src/ReportServer.ts',
10
+ 'src/esbuildConfigs/eslint-formatter-testeranto.ts',
11
+ 'src/mothership/index.ts'
12
+ ],
6
13
  bundle: true,
7
14
  format: "esm",
8
15
  platform: "node",
9
- // outfile: 'dist/prebuild/cli.mjs'
10
16
  outdir: 'dist/prebuild',
11
17
  packages: "external",
12
18
  supported: {
@@ -18,79 +24,6 @@ await esbuild.build({
18
24
  },
19
25
  })
20
26
 
21
- // await esbuild.build({
22
- // entryPoints: ['src/init-docs.ts'],
23
- // bundle: true,
24
- // format: "esm",
25
- // platform: "node",
26
- // // format: "node",
27
- // outfile: 'dist/prebuild/init-docs.mjs',
28
- // // external: ['crypto', 'os'],
29
- // supported: {
30
- // "dynamic-import": true,
31
- // },
32
-
33
- // banner: {
34
- // js: `import { createRequire } from 'module';const require = createRequire(import.meta.url);`,
35
- // },
36
- // })
37
-
38
-
39
-
40
- // await esbuild.build({
41
- // entryPoints: ['src/cli2.ts'],
42
- // bundle: true,
43
- // format: "esm",
44
- // platform: "node",
45
- // outfile: 'dist/prebuild/cli2.mjs',
46
- // packages: "external",
47
- // supported: {
48
- // "dynamic-import": true,
49
- // },
50
-
51
- // banner: {
52
- // js: `import { createRequire } from 'module';const require = createRequire(import.meta.url);`,
53
- // },
54
- // })
55
-
56
-
57
-
58
-
59
- // await esbuild.build({
60
- // entryPoints: ['src/ReportServer.ts'],
61
- // bundle: true,
62
- // format: "esm",
63
- // platform: "node",
64
- // outfile: 'dist/prebuild/ReportServer.mjs',
65
- // packages: "external",
66
- // // supported: {
67
- // // "dynamic-import": true,
68
- // // },
69
-
70
- // // banner: {
71
- // // js: `import { createRequire } from 'module';const require = createRequire(import.meta.url);`,
72
- // // },
73
- // })
74
-
75
- // await esbuild.build({
76
- // entryPoints: ['src/esbuildConfigs/eslint-formatter-testeranto.ts'],
77
- // bundle: true,
78
- // format: "esm",
79
- // platform: "node",
80
- // outfile: 'dist/prebuild/eslint-formatter-testeranto.mjs',
81
- // packages: "external",
82
- // // supported: {
83
- // // "dynamic-import": true,
84
- // // },
85
-
86
- // // banner: {
87
- // // js: `import { createRequire } from 'module';const require = createRequire(import.meta.url);`,
88
- // // },
89
- // })
90
-
91
-
92
- /////////////////////////
93
-
94
27
  await esbuild.build({
95
28
  entryPoints: ['src/ReportClient.tsx', 'src/TestReport.tsx', 'src/Project.tsx'],
96
29
  bundle: true,
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ /* eslint-disable @typescript-eslint/no-unused-vars */
6
7
  const fs_1 = __importDefault(require("fs"));
7
8
  exports.default = async () => {
8
9
  [
@@ -14,6 +15,7 @@ exports.default = async () => {
14
15
  `testeranto/reports`,
15
16
  `testeranto/reports/`,
16
17
  `testeranto/features/`,
18
+ `testeranto/externalTests/`,
17
19
  ].forEach((f) => {
18
20
  try {
19
21
  fs_1.default.mkdirSync(`${process.cwd()}/${f}`);
@@ -25,7 +27,10 @@ exports.default = async () => {
25
27
  fs_1.default.copyFileSync(`node_modules/testeranto/dist/prebuild/Project.js`, `testeranto/Project.js`);
26
28
  fs_1.default.copyFileSync(`node_modules/testeranto/dist/prebuild/ReportClient.js`, `testeranto/ReportClient.js`);
27
29
  fs_1.default.copyFileSync(`node_modules/testeranto/dist/prebuild/Project.css`, `testeranto/Project.css`);
28
- fs_1.default.copyFileSync(`node_modules/testeranto/dist/prebuild/ReportClient.css`, `testeranto/ReportClient.css`);
30
+ // fs.copyFileSync(
31
+ // `node_modules/testeranto/dist/prebuild/ReportClient.css`,
32
+ // `testeranto/ReportClient.css`
33
+ // );
29
34
  fs_1.default.copyFileSync(`node_modules/testeranto/dist/prebuild/TestReport.js`, `testeranto/TestReport.js`);
30
35
  fs_1.default.copyFileSync(`node_modules/testeranto/dist/prebuild/TestReport.css`, `testeranto/TestReport.css`);
31
36
  };
@@ -7,6 +7,7 @@ exports.NodeTesteranto = void 0;
7
7
  const core_js_1 = __importDefault(require("./lib/core.js"));
8
8
  const index_js_1 = require("./lib/index.js");
9
9
  const node_js_1 = require("./PM/node.js");
10
+ let ipcfile;
10
11
  class NodeTesteranto extends core_js_1.default {
11
12
  constructor(input, testSpecification, testImplementation, testResourceRequirement, testInterface) {
12
13
  super(input, testSpecification, testImplementation, testResourceRequirement, testInterface, () => {
@@ -15,7 +16,7 @@ class NodeTesteranto extends core_js_1.default {
15
16
  }
16
17
  async receiveTestResourceConfig(partialTestResource) {
17
18
  const t = JSON.parse(partialTestResource);
18
- const pm = new node_js_1.PM_Node(t);
19
+ const pm = new node_js_1.PM_Node(t, ipcfile);
19
20
  return await this.testJobs[0].receiveTestResourceConfig(pm);
20
21
  // const { failed, artifacts, logPromise, features } =
21
22
  // await this.testJobs[0].receiveTestResourceConfig(pm);
@@ -29,15 +30,16 @@ const testeranto = async (input, testSpecification, testImplementation, testInte
29
30
  process.on("unhandledRejection", (reason, promise) => {
30
31
  console.error("Unhandled Rejection at:", promise, "reason:", reason);
31
32
  // Optionally, terminate the process or perform cleanup
33
+ // t.registerUncaughtPromise(reason, promise);
32
34
  });
33
35
  try {
34
- console.log(process.argv);
36
+ ipcfile = process.argv[3];
35
37
  const f = await t.receiveTestResourceConfig(process.argv[2]);
36
- console.error("goodbye node error", f.fails);
38
+ console.error("goodbye node with failures", f.fails);
37
39
  process.exit(f.fails);
38
40
  }
39
41
  catch (e) {
40
- console.error("goodbye node error", e);
42
+ console.error("goodbye node with caught error", e);
41
43
  process.exit(-1);
42
44
  // fs.writeFileSync(`tests.json`, JSON.stringify(t.,
43
45
  // null, 2));
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NodeSidecar = void 0;
4
+ const Sidecar_1 = require("./lib/Sidecar");
5
+ const nodeSidecar_1 = require("./PM/nodeSidecar");
6
+ class NodeSidecar extends Sidecar_1.Sidecar {
7
+ constructor(t) {
8
+ super();
9
+ this.pm = new nodeSidecar_1.PM_Node_Sidecar(t);
10
+ this.pm.start(this.stop).then(() => {
11
+ this.start(JSON.parse(process.argv[2]));
12
+ });
13
+ }
14
+ }
15
+ exports.NodeSidecar = NodeSidecar;