testeranto 0.177.0 → 0.197.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 (546) hide show
  1. package/ALL_LICENSES.txt +11246 -0
  2. package/LICENSE +21 -0
  3. package/README.md +24 -4
  4. package/default-project.json +44 -0
  5. package/design-editor/DesignEditor.tsx +247 -0
  6. package/design-editor/index.ts +2 -0
  7. package/design-editor/server.ts +121 -0
  8. package/design-editor/types.ts +16 -0
  9. package/designs/default-project.json +210 -0
  10. package/dist/common/design-editor/DesignEditor.js +239 -0
  11. package/dist/common/design-editor/index.js +18 -0
  12. package/dist/common/design-editor/server.js +98 -0
  13. package/dist/common/design-editor/types.js +2 -0
  14. package/dist/common/src/App.js +53 -0
  15. package/dist/common/src/Node.js +4 -8
  16. package/dist/common/src/PM/PM_WithEslintAndTsc.js +10 -34
  17. package/dist/common/src/PM/base.js +1 -1
  18. package/dist/common/src/PM/main.js +581 -113
  19. package/dist/common/src/PM/node.js +4 -2
  20. package/dist/common/src/PM/nodeSidecar.js +1 -0
  21. package/dist/common/src/PM/pure.js +20 -57
  22. package/dist/common/src/PM/pureSidecar.js +1 -1
  23. package/dist/common/src/PM/types.js +1 -0
  24. package/dist/common/src/PM/web.js +7 -4
  25. package/dist/common/src/Pure.js +1 -1
  26. package/dist/common/src/Pure.test.js +49 -79
  27. package/dist/common/src/ReportServer.js +8 -2
  28. package/dist/common/src/build.js +31 -40
  29. package/dist/common/src/components/DesignEditorPage.js +169 -0
  30. package/dist/common/src/components/SunriseAnimation.js +291 -0
  31. package/dist/common/src/components/SunriseAnimation.test/interface.js +67 -0
  32. package/dist/common/src/components/SunriseAnimation.test/types.js +2 -0
  33. package/dist/common/src/components/TestStatusBadge.js +1 -21
  34. package/dist/common/src/components/pure/AppFrame.js +69 -0
  35. package/dist/common/src/components/pure/AppFrame.test/implementation.js +63 -0
  36. package/dist/common/src/components/pure/AppFrame.test/index.js +14 -0
  37. package/dist/common/src/components/pure/AppFrame.test/specification.js +25 -0
  38. package/dist/common/src/components/pure/AppFrame.test/types.js +3 -0
  39. package/dist/common/src/components/pure/FeaturesReporterView.js +23 -0
  40. package/dist/common/src/components/pure/FeaturesReporterView.test/implementation.js +84 -0
  41. package/dist/common/src/components/pure/FeaturesReporterView.test/index.js +14 -0
  42. package/dist/common/src/components/pure/FeaturesReporterView.test/specification.js +27 -0
  43. package/dist/common/src/components/pure/FeaturesReporterView.test/types.js +2 -0
  44. package/dist/common/src/components/pure/ModalContent.js +86 -0
  45. package/dist/common/src/components/pure/ModalContent.test/implementation.js +35 -0
  46. package/dist/common/src/components/pure/ModalContent.test/index.js +58 -0
  47. package/dist/common/src/components/pure/ModalContent.test/specification.js +19 -0
  48. package/dist/common/src/components/pure/ModalContent.test/types.js +4 -0
  49. package/dist/common/src/{NavBar.js → components/pure/NavBar.js} +9 -10
  50. package/dist/common/src/components/pure/ProcessManager.js +112 -0
  51. package/dist/common/src/components/pure/ProcessManagerView.js +237 -0
  52. package/dist/common/src/components/pure/ProjectPageView.js +53 -76
  53. package/dist/common/src/components/pure/ProjectPageView.test/implementation.js +167 -54
  54. package/dist/common/src/components/pure/ProjectPageView.test/index.js +5 -1
  55. package/dist/common/src/components/pure/ProjectPageView.test/specification.js +15 -2
  56. package/dist/common/src/components/pure/ProjectPageView.test/types.js +2 -0
  57. package/dist/common/src/components/pure/ProjectsPageView.js +72 -0
  58. package/dist/common/src/components/pure/SettingsButton.js +13 -0
  59. package/dist/common/src/components/pure/SingleProcessView.js +214 -0
  60. package/dist/common/src/components/pure/TestPageView.js +513 -0
  61. package/dist/common/src/components/pure/TestPageView.test/implementation.js +157 -0
  62. package/dist/common/src/components/pure/TestPageView.test/index.js +15 -0
  63. package/dist/common/src/components/pure/TestPageView.test/specification.js +26 -0
  64. package/dist/common/src/components/pure/TestPageView.test/types.js +4 -0
  65. package/dist/common/src/components/pure/ThemeCard.js +15 -0
  66. package/dist/common/src/components/stateful/FeaturesReporter.js +59 -0
  67. package/dist/common/src/components/stateful/FileTree.js +40 -0
  68. package/dist/common/src/components/stateful/ProcessManagerPage.js +112 -0
  69. package/dist/common/src/components/stateful/ProjectPage.js +101 -0
  70. package/dist/common/src/components/stateful/ProjectsPage.js +118 -0
  71. package/dist/common/src/components/stateful/SettingsPage.js +72 -0
  72. package/dist/common/src/components/stateful/SingleProcessPage.js +147 -0
  73. package/dist/common/src/components/stateful/TestPage.js +229 -0
  74. package/dist/common/src/components/stateful/TextEditorPage.js +154 -0
  75. package/dist/common/src/defaultConfig.js +1 -0
  76. package/dist/common/src/esbuildConfigs/inputFilesPlugin.js +3 -4
  77. package/dist/common/src/esbuildConfigs/web.js +1 -1
  78. package/dist/common/src/lib/BaseSuite.js +7 -3
  79. package/dist/common/src/lib/BaseSuite.test/mock.js +17 -41
  80. package/dist/common/src/lib/BaseSuite.test/test.js +33 -42
  81. package/dist/common/src/lib/Sidecar.js +1 -0
  82. package/dist/common/src/lib/abstractBase.js +40 -13
  83. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.adapter.js +12 -12
  84. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +15 -13
  85. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.mock.js +28 -17
  86. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.pure.js +2 -2
  87. package/dist/common/src/lib/basebuilder.js +29 -35
  88. package/dist/common/src/lib/classBuilder.js +5 -3
  89. package/dist/common/src/lib/core.js +3 -6
  90. package/dist/common/src/lib/core.test/MockCore.js +0 -14
  91. package/dist/common/src/lib/core.test/core.test.adapter.js +2 -9
  92. package/dist/common/src/lib/core.test/core.test.implementation.js +3 -7
  93. package/dist/common/src/lib/index.js +13 -14
  94. package/dist/common/src/lib/pmProxy.js +37 -16
  95. package/dist/common/src/lib/pmProxy.test/adapter.js +20 -4
  96. package/dist/common/src/lib/pmProxy.test/implementation.js +93 -34
  97. package/dist/common/src/lib/pmProxy.test/mockPMBase.js +9 -0
  98. package/dist/common/src/lib/pmProxy.test/specification.js +3 -0
  99. package/dist/common/src/mothership/index.js +5 -0
  100. package/dist/common/src/mothership/test.js +44 -25
  101. package/dist/common/src/types/features.js +34 -0
  102. package/dist/common/src/utils/api.js +57 -27
  103. package/dist/common/src/utils/featureUtils.js +29 -0
  104. package/dist/common/src/utils/logFiles.js +51 -0
  105. package/dist/common/src/utils/makePrompt.js +116 -0
  106. package/dist/common/src/web.html.js +2 -6
  107. package/dist/common/testeranto.config.js +54 -24
  108. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  109. package/dist/module/design-editor/DesignEditor.js +203 -0
  110. package/dist/module/design-editor/index.js +2 -0
  111. package/dist/module/design-editor/server.js +92 -0
  112. package/dist/module/design-editor/types.js +1 -0
  113. package/dist/module/src/App.js +19 -17
  114. package/dist/module/src/Node.js +4 -8
  115. package/dist/module/src/PM/PM_WithEslintAndTsc.js +11 -35
  116. package/dist/module/src/PM/base.js +1 -1
  117. package/dist/module/src/PM/main.js +577 -109
  118. package/dist/module/src/PM/node.js +4 -2
  119. package/dist/module/src/PM/nodeSidecar.js +1 -0
  120. package/dist/module/src/PM/pure.js +20 -57
  121. package/dist/module/src/PM/pureSidecar.js +1 -1
  122. package/dist/module/src/PM/types.js +1 -0
  123. package/dist/module/src/PM/web.js +7 -4
  124. package/dist/module/src/Pure.js +1 -1
  125. package/dist/module/src/Pure.test.js +49 -79
  126. package/dist/module/src/ReportServer.js +8 -2
  127. package/dist/module/src/build.js +26 -38
  128. package/dist/module/src/components/DesignEditorPage.js +132 -0
  129. package/dist/module/src/components/SunriseAnimation.test/interface.js +32 -1
  130. package/dist/module/src/components/SunriseAnimation.test/types.js +1 -0
  131. package/dist/module/src/components/TestStatusBadge.js +1 -21
  132. package/dist/module/src/components/pure/AppFrame.js +32 -0
  133. package/dist/module/src/components/pure/AppFrame.test/implementation.js +57 -0
  134. package/dist/module/src/components/pure/AppFrame.test/index.js +9 -0
  135. package/dist/module/src/components/pure/AppFrame.test/specification.js +21 -0
  136. package/dist/module/src/components/pure/AppFrame.test/types.js +2 -0
  137. package/dist/module/src/components/pure/FeaturesReporterView.js +16 -0
  138. package/dist/module/src/components/pure/FeaturesReporterView.test/implementation.js +81 -0
  139. package/dist/module/src/components/pure/FeaturesReporterView.test/index.js +9 -0
  140. package/dist/module/src/components/pure/FeaturesReporterView.test/specification.js +23 -0
  141. package/dist/module/src/components/pure/FeaturesReporterView.test/types.js +1 -0
  142. package/dist/module/src/components/pure/ModalContent.js +79 -0
  143. package/dist/module/src/components/pure/ModalContent.test/implementation.js +32 -0
  144. package/dist/module/src/components/pure/ModalContent.test/index.js +53 -0
  145. package/dist/module/src/components/pure/ModalContent.test/specification.js +15 -0
  146. package/dist/module/src/components/pure/ModalContent.test/types.js +3 -0
  147. package/dist/module/src/{NavBar.js → components/pure/NavBar.js} +10 -11
  148. package/dist/module/src/components/pure/ProcessManager.js +75 -0
  149. package/dist/module/src/components/pure/ProcessManagerView.js +200 -0
  150. package/dist/module/src/components/pure/ProjectPageView.js +54 -77
  151. package/dist/module/src/components/pure/ProjectPageView.test/implementation.js +167 -54
  152. package/dist/module/src/components/pure/ProjectPageView.test/index.js +5 -1
  153. package/dist/module/src/components/pure/ProjectPageView.test/specification.js +15 -2
  154. package/dist/module/src/components/pure/ProjectPageView.test/types.js +2 -0
  155. package/dist/module/src/components/pure/ProjectsPageView.js +21 -14
  156. package/dist/module/src/components/pure/SettingsButton.js +6 -0
  157. package/dist/module/src/components/pure/SingleProcessView.js +214 -0
  158. package/dist/module/src/components/pure/TestPageView.js +470 -142
  159. package/dist/module/src/components/pure/TestPageView.test/implementation.js +121 -0
  160. package/dist/module/src/components/pure/TestPageView.test/index.js +10 -0
  161. package/dist/module/src/components/pure/TestPageView.test/specification.js +22 -0
  162. package/dist/module/src/components/pure/TestPageView.test/types.js +3 -0
  163. package/dist/module/src/components/pure/ThemeCard.js +8 -0
  164. package/dist/module/src/components/stateful/FeaturesReporter.js +22 -0
  165. package/dist/module/src/components/stateful/FileTree.js +33 -0
  166. package/dist/module/src/components/stateful/ProcessManagerPage.js +75 -0
  167. package/dist/module/src/components/stateful/ProjectPage.js +7 -6
  168. package/dist/module/src/components/stateful/ProjectsPage.js +32 -6
  169. package/dist/module/src/components/stateful/SettingsPage.js +35 -0
  170. package/dist/module/src/components/stateful/SingleProcessPage.js +110 -0
  171. package/dist/module/src/components/stateful/TestPage.js +123 -13
  172. package/dist/module/src/components/stateful/TextEditorPage.js +117 -0
  173. package/dist/module/src/defaultConfig.js +1 -0
  174. package/dist/module/src/esbuildConfigs/inputFilesPlugin.js +3 -4
  175. package/dist/module/src/esbuildConfigs/web.js +1 -1
  176. package/dist/module/src/lib/BaseSuite.js +7 -3
  177. package/dist/module/src/lib/BaseSuite.test/mock.js +17 -41
  178. package/dist/module/src/lib/BaseSuite.test/test.js +33 -42
  179. package/dist/module/src/lib/Sidecar.js +1 -0
  180. package/dist/module/src/lib/abstractBase.js +40 -13
  181. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.adapter.js +12 -12
  182. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +15 -13
  183. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.mock.js +28 -17
  184. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.pure.js +1 -1
  185. package/dist/module/src/lib/basebuilder.js +29 -35
  186. package/dist/module/src/lib/classBuilder.js +5 -3
  187. package/dist/module/src/lib/core.js +3 -6
  188. package/dist/module/src/lib/core.test/MockCore.js +0 -14
  189. package/dist/module/src/lib/core.test/core.test.adapter.js +2 -9
  190. package/dist/module/src/lib/core.test/core.test.implementation.js +3 -7
  191. package/dist/module/src/lib/index.js +13 -14
  192. package/dist/module/src/lib/pmProxy.js +37 -16
  193. package/dist/module/src/lib/pmProxy.test/adapter.js +20 -4
  194. package/dist/module/src/lib/pmProxy.test/implementation.js +93 -34
  195. package/dist/module/src/lib/pmProxy.test/mockPMBase.js +9 -0
  196. package/dist/module/src/lib/pmProxy.test/specification.js +3 -0
  197. package/dist/module/src/mothership/index.js +5 -0
  198. package/dist/module/src/mothership/test.js +44 -25
  199. package/dist/module/src/types/features.js +31 -0
  200. package/dist/module/src/utils/api.js +56 -25
  201. package/dist/module/src/utils/featureUtils.js +24 -0
  202. package/dist/module/src/utils/logFiles.js +46 -0
  203. package/dist/module/src/utils/makePrompt.js +109 -0
  204. package/dist/module/src/web.html.js +2 -6
  205. package/dist/module/testeranto.config.js +54 -24
  206. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  207. package/dist/prebuild/App.css +53 -80
  208. package/dist/prebuild/App.js +15520 -4397
  209. package/dist/prebuild/ReportServer.mjs +104 -6
  210. package/dist/prebuild/build.mjs +95 -108
  211. package/dist/prebuild/mothership/index.mjs +5 -0
  212. package/dist/prebuild/run.mjs +704 -221
  213. package/dist/types/design-editor/DesignEditor.d.ts +18 -0
  214. package/dist/types/design-editor/server.d.ts +1 -0
  215. package/dist/types/src/App.d.ts +1 -0
  216. package/dist/types/src/PM/index.d.ts +1 -1
  217. package/dist/types/src/PM/main.d.ts +37 -3
  218. package/dist/types/src/PM/pure.d.ts +10 -7
  219. package/dist/types/src/PM/web.d.ts +1 -1
  220. package/dist/types/src/Pure.test.d.ts +13 -1
  221. package/dist/types/src/Types.d.ts +1 -0
  222. package/dist/types/src/components/DesignEditorPage.d.ts +1 -0
  223. package/dist/types/src/components/SunriseAnimation.d.ts +5 -0
  224. package/dist/types/src/components/SunriseAnimation.test/interface.d.ts +11 -0
  225. package/dist/types/src/components/SunriseAnimation.test/types.d.ts +39 -0
  226. package/dist/types/src/components/pure/AppFrame.d.ts +11 -0
  227. package/dist/types/src/components/pure/AppFrame.test/implementation.d.ts +3 -0
  228. package/dist/types/src/components/pure/AppFrame.test/index.d.ts +5 -0
  229. package/dist/types/src/components/pure/AppFrame.test/specification.d.ts +3 -0
  230. package/dist/types/src/components/pure/AppFrame.test/types.d.ts +33 -0
  231. package/dist/types/src/components/pure/FeaturesReporterView.d.ts +7 -0
  232. package/dist/types/src/components/pure/FeaturesReporterView.test/implementation.d.ts +3 -0
  233. package/dist/types/src/components/pure/FeaturesReporterView.test/index.d.ts +2 -0
  234. package/dist/types/src/components/pure/FeaturesReporterView.test/specification.d.ts +3 -0
  235. package/dist/types/src/components/pure/FeaturesReporterView.test/types.d.ts +54 -0
  236. package/dist/types/src/components/pure/ModalContent.d.ts +7 -0
  237. package/dist/types/src/components/pure/ModalContent.test/implementation.d.ts +3 -0
  238. package/dist/types/src/components/pure/ModalContent.test/index.d.ts +3 -0
  239. package/dist/types/src/components/pure/ModalContent.test/specification.d.ts +3 -0
  240. package/dist/types/src/components/pure/ModalContent.test/types.d.ts +45 -0
  241. package/dist/types/src/{NavBar.d.ts → components/pure/NavBar.d.ts} +4 -0
  242. package/dist/types/src/components/pure/ProcessManager.d.ts +8 -0
  243. package/dist/types/src/components/pure/ProcessManagerView.d.ts +20 -0
  244. package/dist/types/src/components/pure/ProjectPageView.d.ts +7 -7
  245. package/dist/types/src/components/pure/ProjectPageView.test/index.d.ts +1 -2
  246. package/dist/types/src/components/pure/ProjectPageView.test/types.d.ts +29 -11
  247. package/dist/types/src/components/pure/ProjectsPageView.d.ts +29 -0
  248. package/dist/types/src/components/pure/SettingsButton.d.ts +2 -0
  249. package/dist/types/src/components/pure/SingleProcessView.d.ts +0 -0
  250. package/dist/types/src/components/pure/TestPageView.d.ts +15 -0
  251. package/dist/types/src/components/pure/TestPageView.test/implementation.d.ts +12 -0
  252. package/dist/types/src/components/pure/TestPageView.test/index.d.ts +3 -0
  253. package/dist/types/src/components/pure/TestPageView.test/specification.d.ts +11 -0
  254. package/dist/types/src/components/pure/TestPageView.test/types.d.ts +65 -0
  255. package/dist/types/src/components/pure/ThemeCard.d.ts +9 -0
  256. package/dist/types/src/components/stateful/FeaturesReporter.d.ts +2 -0
  257. package/dist/types/src/components/stateful/FileTree.d.ts +8 -0
  258. package/dist/types/src/components/stateful/ProcessManagerPage.d.ts +2 -0
  259. package/dist/types/src/components/stateful/ProjectPage.d.ts +1 -0
  260. package/dist/types/src/components/stateful/ProjectsPage.d.ts +1 -0
  261. package/dist/types/src/components/stateful/SettingsPage.d.ts +2 -0
  262. package/dist/types/src/components/stateful/SingleProcessPage.d.ts +2 -0
  263. package/dist/types/src/components/stateful/TestPage.d.ts +1 -0
  264. package/dist/types/src/components/stateful/TextEditorPage.d.ts +1 -0
  265. package/dist/types/src/lib/BaseSuite.test/mock.d.ts +3 -3
  266. package/dist/types/src/lib/abstractBase.d.ts +1 -1
  267. package/dist/types/src/lib/abstractBase.test/MockGiven.d.ts +1 -1
  268. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.pure.d.ts +1 -1
  269. package/dist/types/src/lib/basebuilder.d.ts +1 -1
  270. package/dist/types/src/lib/index.d.ts +8 -8
  271. package/dist/types/src/lib/pmProxy.test/mockPMBase.d.ts +1 -1
  272. package/dist/types/src/types/features.d.ts +7 -0
  273. package/dist/types/src/utils/api.d.ts +1 -5
  274. package/dist/types/src/utils/featureUtils.d.ts +6 -0
  275. package/dist/types/src/utils/logFiles.d.ts +71 -0
  276. package/dist/types/src/utils/makePrompt.d.ts +2 -0
  277. package/dist/types/src/web.html.d.ts +1 -1
  278. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  279. package/docs/index.md +17 -0
  280. package/docs/test-page-components.md +91 -0
  281. package/docs/testing.prompt.txt +1 -3
  282. package/index.d.ts +38 -13
  283. package/marketing.md +166 -0
  284. package/package.json +38 -11
  285. package/src/App.tsx +22 -25
  286. package/src/Node.ts +6 -9
  287. package/src/PM/PM_WithEslintAndTsc.ts +16 -97
  288. package/src/PM/__tests__/nodeSidecar.testeranto.ts +2 -0
  289. package/src/PM/base.ts +1 -3
  290. package/src/PM/index.ts +1 -1
  291. package/src/PM/main.ts +673 -128
  292. package/src/PM/node.ts +5 -2
  293. package/src/PM/nodeSidecar.ts +1 -0
  294. package/src/PM/pure.ts +28 -72
  295. package/src/PM/pureSidecar.ts +1 -1
  296. package/src/PM/types.ts +0 -0
  297. package/src/PM/web.ts +9 -4
  298. package/src/Pure.test.ts +66 -101
  299. package/src/Pure.ts +1 -1
  300. package/src/README.md +85 -0
  301. package/src/ReportServer.ts +10 -3
  302. package/src/Types.ts +1 -0
  303. package/src/app.scss +169 -0
  304. package/src/build.ts +33 -55
  305. package/src/components/DesignEditorPage.tsx +169 -0
  306. package/src/components/{pure/ProjectPageView.test/index.ts → SunriseAnimation.test/index.tsx} +7 -4
  307. package/src/components/SunriseAnimation.test/interface.ts +49 -0
  308. package/src/components/SunriseAnimation.test/types.ts +53 -0
  309. package/src/components/TestStatusBadge.tsx +2 -23
  310. package/src/components/pure/AppFrame.test/implementation.tsx +72 -0
  311. package/src/components/pure/AppFrame.test/index.tsx +22 -0
  312. package/src/components/pure/AppFrame.test/specification.ts +35 -0
  313. package/src/components/pure/AppFrame.test/types.ts +65 -0
  314. package/src/components/pure/AppFrame.tsx +134 -0
  315. package/src/components/pure/FeaturesReporterView.test/implementation.tsx +106 -0
  316. package/src/components/pure/FeaturesReporterView.test/index.tsx +18 -0
  317. package/src/components/pure/FeaturesReporterView.test/specification.ts +39 -0
  318. package/src/components/pure/FeaturesReporterView.test/types.ts +77 -0
  319. package/src/components/pure/FeaturesReporterView.tsx +37 -0
  320. package/src/components/pure/ModalContent.test/implementation.tsx +45 -0
  321. package/src/components/pure/ModalContent.test/index.tsx +67 -0
  322. package/src/components/pure/ModalContent.test/specification.ts +27 -0
  323. package/src/components/pure/ModalContent.test/types.ts +72 -0
  324. package/src/components/pure/ModalContent.tsx +182 -0
  325. package/src/{NavBar.tsx → components/pure/NavBar.tsx} +31 -15
  326. package/src/components/pure/ProcessManager.tsx +117 -0
  327. package/src/components/pure/ProcessManagerView.tsx +414 -0
  328. package/src/components/pure/ProjectPageView.test/implementation.tsx +186 -57
  329. package/src/components/pure/ProjectPageView.test/index.tsx +18 -0
  330. package/src/components/pure/ProjectPageView.test/specification.ts +15 -2
  331. package/src/components/pure/ProjectPageView.test/types.ts +57 -13
  332. package/src/components/pure/ProjectPageView.tsx +155 -121
  333. package/src/components/pure/ProjectsPageView.tsx +73 -32
  334. package/src/components/pure/SettingsButton.md +1 -0
  335. package/src/components/pure/SettingsButton.tsx +11 -0
  336. package/src/components/pure/SingleProcessView.tsx +235 -0
  337. package/src/components/pure/TestPageView.test/implementation.ts +162 -0
  338. package/src/components/pure/TestPageView.test/index.tsx +20 -0
  339. package/src/components/pure/TestPageView.test/specification.ts +58 -0
  340. package/src/components/pure/TestPageView.test/types.ts +92 -0
  341. package/src/components/pure/TestPageView.tsx +1009 -299
  342. package/src/components/pure/ThemeCard.tsx +34 -0
  343. package/src/components/stateful/FeaturesReporter.tsx +24 -0
  344. package/src/components/stateful/FileTree.tsx +66 -0
  345. package/src/components/stateful/ProcessManagerPage.tsx +108 -0
  346. package/src/components/stateful/ProjectPage.tsx +10 -8
  347. package/src/components/stateful/ProjectsPage.tsx +36 -7
  348. package/src/components/stateful/SettingsPage.tsx +82 -0
  349. package/src/components/stateful/SingleProcessPage.tsx +155 -0
  350. package/src/components/stateful/TestPage.tsx +147 -30
  351. package/src/components/stateful/TextEditorPage.tsx +170 -0
  352. package/src/defaultConfig.ts +1 -0
  353. package/src/esbuildConfigs/inputFilesPlugin.ts +3 -4
  354. package/src/esbuildConfigs/web.ts +2 -1
  355. package/src/lib/BaseSuite.test/mock.ts +21 -68
  356. package/src/lib/BaseSuite.test/test.ts +39 -65
  357. package/src/lib/BaseSuite.ts +9 -3
  358. package/src/lib/Sidecar.ts +2 -0
  359. package/src/lib/abstractBase.test/MockGiven.ts +1 -1
  360. package/src/lib/abstractBase.ts +47 -20
  361. package/src/lib/baseBuilder.test/baseBuilder.test.adapter.ts +14 -13
  362. package/src/lib/baseBuilder.test/baseBuilder.test.implementation.ts +17 -14
  363. package/src/lib/baseBuilder.test/baseBuilder.test.mock.ts +27 -17
  364. package/src/lib/baseBuilder.test/baseBuilder.test.pure.ts +1 -1
  365. package/src/lib/basebuilder.ts +48 -54
  366. package/src/lib/classBuilder.ts +11 -10
  367. package/src/lib/core.test/MockCore.ts +0 -23
  368. package/src/lib/core.test/core.test.adapter.ts +6 -12
  369. package/src/lib/core.test/core.test.implementation.ts +7 -10
  370. package/src/lib/core.ts +5 -20
  371. package/src/lib/index.ts +28 -27
  372. package/src/lib/pmProxy.test/adapter.ts +18 -4
  373. package/src/lib/pmProxy.test/implementation.ts +130 -46
  374. package/src/lib/pmProxy.test/mockPMBase.ts +12 -1
  375. package/src/lib/pmProxy.test/specification.ts +11 -0
  376. package/src/lib/pmProxy.ts +42 -17
  377. package/src/lib/types.ts +2 -0
  378. package/src/mothership/index.ts +6 -0
  379. package/src/mothership/test.ts +53 -26
  380. package/src/style.md +2 -0
  381. package/src/style.scss +3 -486
  382. package/src/templates/frontpage.html +331 -0
  383. package/src/templates/frontpage.md +79 -0
  384. package/src/themes.scss +48 -16
  385. package/src/types/features.ts +38 -0
  386. package/src/utils/api.ts +66 -33
  387. package/src/utils/featureUtils.tsx +42 -0
  388. package/src/utils/logFiles.ts +60 -0
  389. package/src/utils/makePrompt.ts +149 -0
  390. package/src/web.html.ts +6 -6
  391. package/stargazers.txt +15 -0
  392. package/stargzers.js +68 -0
  393. package/testeranto/App.css +53 -80
  394. package/testeranto/App.js +15520 -4397
  395. package/testeranto/bundles/node/core/chunk-4CSH4UJE.mjs +872 -0
  396. package/testeranto/bundles/node/core/chunk-4JTDLQVA.mjs +253 -0
  397. package/testeranto/bundles/node/core/chunk-C3APFDUV.mjs +70 -0
  398. package/testeranto/bundles/node/core/src/lib/BaseSuite.test/node.test.mjs +295 -0
  399. package/testeranto/bundles/node/core/src/lib/baseBuilder.test/baseBuilder.test.node.mjs +243 -0
  400. package/testeranto/bundles/node/core/src/lib/classBuilder.test/classBuilder.test.mjs +411 -0
  401. package/testeranto/bundles/node/core/src/lib/core.test/core.test.mjs +494 -0
  402. package/testeranto/bundles/node/core/src/lib/pmProxy.test/index.mjs +4755 -0
  403. package/testeranto/bundles/pure/core/chunk-62UVCSQC.mjs +1022 -0
  404. package/testeranto/bundles/pure/core/src/Pure.test.mjs +410 -0
  405. package/testeranto/bundles/pure/core/src/lib/BaseSuite.test/pure.test.mjs +352 -0
  406. package/testeranto/bundles/pure/core/src/lib/baseBuilder.test/baseBuilder.test.pure.mjs +241 -0
  407. package/testeranto/bundles/web/core/src/components/pure/FeaturesReporterView.test/index.html +15 -0
  408. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.html +1 -5
  409. package/testeranto/bundles/web/core/src/components/pure/TestPageView.test/index.html +15 -0
  410. package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.html +15 -0
  411. package/testeranto/bundles/web/core/src/lib/baseBuilder.test/baseBuilder.test.web.html +15 -0
  412. package/testeranto/metafiles/node/core.json +2906 -0
  413. package/testeranto/metafiles/pure/core.json +860 -0
  414. package/testeranto/metafiles/web/core.json +546 -0
  415. package/testeranto/reports/core/config.json +103 -2
  416. package/testeranto/reports/core/src/Pure.test/pure/exit.log +0 -0
  417. package/testeranto/reports/core/src/Pure.test/pure/lint_errors.txt +0 -0
  418. package/testeranto/reports/core/src/Pure.test/pure/message.txt +17 -0
  419. package/testeranto/reports/core/src/Pure.test/pure/prompt.txt +14 -0
  420. package/testeranto/reports/core/src/Pure.test/pure/type_errors.txt +71 -0
  421. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/debug.log +0 -0
  422. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/error.log +3 -0
  423. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/exit.log +1 -0
  424. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/info.log +0 -0
  425. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/warn.log +0 -0
  426. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/debug.log +0 -0
  427. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/error.log +3 -0
  428. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/exit.log +1 -0
  429. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/info.log +0 -0
  430. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/warn.log +0 -0
  431. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/debug.log +0 -0
  432. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/error.log +3 -0
  433. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/exit.log +1 -0
  434. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/info.log +0 -0
  435. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/warn.log +0 -0
  436. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/exit.log +1 -0
  437. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/lint_errors.txt +0 -0
  438. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/message.txt +17 -0
  439. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/prompt.txt +14 -0
  440. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stderr.log +0 -0
  441. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stdout.log +0 -0
  442. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/tests.json +31 -0
  443. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/type_errors.txt +61 -0
  444. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/exit.log +0 -0
  445. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/lint_errors.txt +0 -0
  446. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/message.txt +17 -0
  447. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/prompt.txt +15 -0
  448. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/type_errors.txt +61 -0
  449. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/debug.log +0 -0
  450. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/error.log +3 -0
  451. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/exit.log +1 -0
  452. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/info.log +0 -0
  453. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/warn.log +0 -0
  454. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/exit.log +1 -0
  455. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.txt +10 -0
  456. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/message.txt +17 -0
  457. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/prompt.txt +17 -0
  458. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/stderr.log +0 -0
  459. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/stdout.log +6 -0
  460. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/suite-0/given-testInitialization/then-0/butThen/hello.txt +1 -0
  461. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/suite-0/given-testInitialization/then-1/butThen/artifact_test.txt +1 -0
  462. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/tests.json +71 -0
  463. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/type_errors.txt +42 -0
  464. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/exit.log +0 -0
  465. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.txt +10 -0
  466. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/message.txt +17 -0
  467. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/prompt.txt +17 -0
  468. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/type_errors.txt +42 -0
  469. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/debug.log +0 -0
  470. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/error.log +3 -0
  471. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/exit.log +1 -0
  472. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/info.log +0 -0
  473. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/warn.log +0 -0
  474. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/exit.log +1 -0
  475. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/lint_errors.txt +0 -0
  476. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/message.txt +17 -0
  477. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/prompt.txt +17 -0
  478. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/stderr.log +0 -0
  479. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/stdout.log +619 -0
  480. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/tests.json +165 -0
  481. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/type_errors.txt +88 -0
  482. package/testeranto/reports/core/src/lib/core.test/core.test/node/exit.log +1 -0
  483. package/testeranto/reports/core/src/lib/core.test/core.test/node/lint_errors.txt +21 -0
  484. package/testeranto/reports/core/src/lib/core.test/core.test/node/message.txt +17 -0
  485. package/testeranto/reports/core/src/lib/core.test/core.test/node/prompt.txt +19 -0
  486. package/testeranto/reports/core/src/lib/core.test/core.test/node/stderr.log +0 -0
  487. package/testeranto/reports/core/src/lib/core.test/core.test/node/stdout.log +0 -0
  488. package/testeranto/reports/core/src/lib/core.test/core.test/node/type_errors.txt +45 -0
  489. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/exit.log +1 -0
  490. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/lint_errors.txt +15 -0
  491. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/message.txt +17 -0
  492. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/prompt.txt +17 -0
  493. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stderr.log +88 -0
  494. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stdout.log +10 -0
  495. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/tests.json +152 -0
  496. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/type_errors.txt +52 -0
  497. package/testeranto/reports/core/summary.json +74 -5
  498. package/testeranto/reportsweb_build_errors +546 -0
  499. package/testeranto.config.ts +58 -25
  500. package/tsc.log +378 -211
  501. package/tsconfig.common.json +4 -2
  502. package/tsconfig.json +9 -6
  503. package/tsconfig.module.json +3 -2
  504. package/tsconfig.types.json +3 -1
  505. package/dist/common/src/components/pure/ProjectPageView.test/adapter.js +0 -20
  506. package/dist/common/src/lib/dailyAnimation.js +0 -130
  507. package/dist/module/src/Footer.js +0 -5
  508. package/dist/module/src/ProjectPage.js +0 -319
  509. package/dist/module/src/ProjectsPage.js +0 -1
  510. package/dist/module/src/SettingsButton.js +0 -157
  511. package/dist/module/src/TestPage.js +0 -271
  512. package/dist/module/src/TestReport.js +0 -368
  513. package/dist/module/src/components/pure/ProjectPageView.test/adapter.js +0 -17
  514. package/dist/module/src/lib/dailyAnimation.js +0 -130
  515. package/dist/types/src/components/pure/ProjectPageView.test/adapter.d.ts +0 -3
  516. package/dist/types/testeranto.config.d.ts +0 -3
  517. package/docs/testing.ai.txt +0 -106
  518. package/docs.html +0 -572
  519. package/example.css +0 -351
  520. package/index.html +0 -284
  521. package/scripts/compile-docs.js +0 -140
  522. package/src/App.scss +0 -132
  523. package/src/Footer.tsx +0 -8
  524. package/src/Project.scss +0 -1
  525. package/src/ProjectPage.tsx +0 -459
  526. package/src/ProjectsPage.tsx +0 -1
  527. package/src/ReportApp.scss +0 -1
  528. package/src/SettingsButton.tsx +0 -268
  529. package/src/TestPage.tsx +0 -476
  530. package/src/TestReport.scss +0 -24
  531. package/src/TestReport.tsx +0 -411
  532. package/src/components/pure/ProjectPageView.test/adapter.ts +0 -21
  533. package/src/fonts.scss +0 -55
  534. package/src/lib/dailyAnimation.ts +0 -147
  535. package/style.css +0 -12156
  536. package/testeranto/bundles/node/core/metafile.json +0 -8
  537. package/testeranto/bundles/pure/core/metafile.json +0 -8
  538. package/testeranto/bundles/web/core/metafile.json +0 -15086
  539. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.mjs +0 -39991
  540. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/lint_errors.txt +0 -18
  541. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/logs.txt +0 -59
  542. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/message.txt +0 -2
  543. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/prompt.txt +0 -27
  544. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/suite-0/given-basicRender/then-0/butThen/happyPath.png +0 -0
  545. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/type_errors.txt +0 -50
  546. /package/dist/types/src/{lib/dailyAnimation.d.ts → PM/types.d.ts} +0 -0
@@ -0,0 +1,1022 @@
1
+ import { createRequire } from 'module';const require = createRequire(import.meta.url);
2
+
3
+ // src/lib/pmProxy.ts
4
+ var baseProxy = function(pm, mappings) {
5
+ return new Proxy(pm, {
6
+ get: (target, prop, receiver) => {
7
+ for (const mapping of mappings) {
8
+ const method = mapping[0];
9
+ const arger = mapping[1];
10
+ if (prop === method) {
11
+ return (...x) => {
12
+ const modifiedArgs = arger(...x);
13
+ return target[prop](...modifiedArgs);
14
+ };
15
+ }
16
+ }
17
+ return (...x) => {
18
+ return target[prop](...x);
19
+ };
20
+ }
21
+ });
22
+ };
23
+ var butThenProxy = (pm, filepath, addArtifact) => {
24
+ return baseProxy(pm, [
25
+ [
26
+ "screencast",
27
+ (opts, p) => {
28
+ const path = `${filepath}/butThen/${opts.path}`;
29
+ addArtifact(path);
30
+ return [
31
+ {
32
+ ...opts,
33
+ path
34
+ },
35
+ p
36
+ ];
37
+ }
38
+ ],
39
+ [
40
+ "createWriteStream",
41
+ (fp) => {
42
+ const path = `${filepath}/butThen/${fp}`;
43
+ addArtifact(path);
44
+ return [path];
45
+ }
46
+ ],
47
+ [
48
+ "writeFileSync",
49
+ (fp, contents, testName) => {
50
+ console.log(
51
+ `[DEBUG] butThenProxy writeFileSync: fp="${fp}" (type: ${typeof fp}), contents="${contents}" (type: ${typeof contents}), testName="${testName}" (type: ${typeof testName})`
52
+ );
53
+ if (typeof fp !== "string") {
54
+ console.log(`[ERROR] fp is not a string:`, fp);
55
+ if (Array.isArray(fp)) {
56
+ fp = fp.join("");
57
+ console.log(`[DEBUG] Converted array to string: "${fp}"`);
58
+ } else {
59
+ fp = String(fp);
60
+ console.log(`[DEBUG] Converted to string: "${fp}"`);
61
+ }
62
+ }
63
+ const path = `${filepath}/butThen/${fp}`;
64
+ console.log(`[DEBUG] Generated path: "${path}"`);
65
+ addArtifact(path);
66
+ return [path, contents, testName];
67
+ }
68
+ ],
69
+ [
70
+ "customScreenShot",
71
+ (opts, p) => {
72
+ const path = `${filepath}/butThen/${opts.path}`;
73
+ addArtifact(path);
74
+ return [
75
+ {
76
+ ...opts,
77
+ path
78
+ },
79
+ p
80
+ ];
81
+ }
82
+ ]
83
+ ]);
84
+ };
85
+ var andWhenProxy = (pm, filepath, addArtifact) => {
86
+ return baseProxy(pm, [
87
+ [
88
+ "screencast",
89
+ (opts, p) => {
90
+ const path = `${filepath}/andWhen/${opts.path}`;
91
+ addArtifact(path);
92
+ return [
93
+ {
94
+ ...opts,
95
+ path
96
+ },
97
+ p
98
+ ];
99
+ }
100
+ ],
101
+ [
102
+ "createWriteStream",
103
+ (fp) => {
104
+ const path = `${filepath}/andWhen/${fp}`;
105
+ addArtifact(path);
106
+ return [path];
107
+ }
108
+ ],
109
+ [
110
+ "writeFileSync",
111
+ (fp, contents, testName) => {
112
+ const path = `${filepath}/andWhen/${fp}`;
113
+ addArtifact(path);
114
+ return [path, contents, testName];
115
+ }
116
+ ],
117
+ [
118
+ "customScreenShot",
119
+ (opts, p) => {
120
+ const path = `${filepath}/andWhen/${opts.path}`;
121
+ addArtifact(path);
122
+ return [
123
+ {
124
+ ...opts,
125
+ path
126
+ },
127
+ p
128
+ ];
129
+ }
130
+ ]
131
+ ]);
132
+ };
133
+ var afterEachProxy = (pm, suite, given, addArtifact) => {
134
+ return baseProxy(pm, [
135
+ [
136
+ "screencast",
137
+ (opts, p) => {
138
+ const path = `suite-${suite}/given-${given}/afterEach/${opts.path}`;
139
+ addArtifact(path);
140
+ return [
141
+ {
142
+ ...opts,
143
+ path
144
+ },
145
+ p
146
+ ];
147
+ }
148
+ ],
149
+ [
150
+ "createWriteStream",
151
+ (fp) => {
152
+ const path = `suite-${suite}/afterEach/${fp}`;
153
+ addArtifact(path);
154
+ return [path];
155
+ }
156
+ ],
157
+ [
158
+ "writeFileSync",
159
+ (fp, contents, testName) => {
160
+ const path = `suite-${suite}/given-${given}/afterEach/${fp}`;
161
+ addArtifact(path);
162
+ return [path, contents, testName];
163
+ }
164
+ ],
165
+ [
166
+ "customScreenShot",
167
+ (opts, p) => {
168
+ const path = `suite-${suite}/given-${given}/afterEach/${opts.path}`;
169
+ addArtifact(path);
170
+ return [
171
+ {
172
+ ...opts,
173
+ path
174
+ },
175
+ p
176
+ ];
177
+ }
178
+ ]
179
+ ]);
180
+ };
181
+ var beforeEachProxy = (pm, suite, addArtifact) => {
182
+ return baseProxy(pm, [
183
+ [
184
+ "screencast",
185
+ (opts, p) => {
186
+ const path = `suite-${suite}/beforeEach/${opts.path}`;
187
+ addArtifact(path);
188
+ return [
189
+ {
190
+ ...opts,
191
+ path
192
+ },
193
+ p
194
+ ];
195
+ }
196
+ ],
197
+ [
198
+ "writeFileSync",
199
+ (fp, contents, testName) => {
200
+ const path = `suite-${suite}/beforeEach/${fp}`;
201
+ addArtifact(path);
202
+ return [path, contents, testName];
203
+ }
204
+ ],
205
+ [
206
+ "customScreenShot",
207
+ (opts, p) => {
208
+ const path = `suite-${suite}/beforeEach/${opts.path}`;
209
+ addArtifact(path);
210
+ return [
211
+ {
212
+ ...opts,
213
+ path
214
+ },
215
+ p
216
+ ];
217
+ }
218
+ ],
219
+ [
220
+ "createWriteStream",
221
+ (fp) => {
222
+ const path = `suite-${suite}/beforeEach/${fp}`;
223
+ addArtifact(path);
224
+ return [path];
225
+ }
226
+ ]
227
+ ]);
228
+ };
229
+ var beforeAllProxy = (pm, suite, addArtifact) => {
230
+ return baseProxy(pm, [
231
+ [
232
+ "writeFileSync",
233
+ (fp, contents, testName) => {
234
+ const path = `suite-${suite}/beforeAll/${fp}`;
235
+ addArtifact(path);
236
+ return [path, contents, testName];
237
+ }
238
+ ],
239
+ [
240
+ "customScreenShot",
241
+ (opts, p) => {
242
+ const path = `suite-${suite}/beforeAll/${opts.path}`;
243
+ addArtifact(path);
244
+ return [
245
+ {
246
+ ...opts,
247
+ path
248
+ },
249
+ p
250
+ ];
251
+ }
252
+ ],
253
+ [
254
+ "createWriteStream",
255
+ (fp) => {
256
+ const path = `suite-${suite}/beforeAll/${fp}`;
257
+ addArtifact(path);
258
+ return [path];
259
+ }
260
+ ]
261
+ ]);
262
+ };
263
+ var afterAllProxy = (pm, suite, addArtifact) => {
264
+ return baseProxy(pm, [
265
+ [
266
+ "createWriteStream",
267
+ (fp) => {
268
+ const path = `suite-${suite}/afterAll/${fp}`;
269
+ addArtifact(path);
270
+ return [path];
271
+ }
272
+ ],
273
+ [
274
+ "writeFileSync",
275
+ (fp, contents, testName) => {
276
+ const path = `suite-${suite}/afterAll/${fp}`;
277
+ addArtifact(path);
278
+ return [path, contents, testName];
279
+ }
280
+ ],
281
+ [
282
+ "customScreenShot",
283
+ (opts, p) => {
284
+ const path = `suite-${suite}/afterAll/${opts.path}`;
285
+ addArtifact(path);
286
+ return [
287
+ {
288
+ ...opts,
289
+ path
290
+ },
291
+ p
292
+ ];
293
+ }
294
+ ]
295
+ ]);
296
+ };
297
+
298
+ // src/lib/BaseSuite.ts
299
+ var BaseSuite = class {
300
+ constructor(name, index, givens = {}) {
301
+ this.artifacts = [];
302
+ const suiteName = name || "testSuite";
303
+ if (!suiteName) {
304
+ throw new Error("BaseSuite requires a non-empty name");
305
+ }
306
+ this.name = suiteName;
307
+ this.index = index;
308
+ this.givens = givens;
309
+ this.fails = 0;
310
+ }
311
+ addArtifact(path) {
312
+ const normalizedPath = path.replace(/\\/g, "/");
313
+ this.artifacts.push(normalizedPath);
314
+ }
315
+ features() {
316
+ try {
317
+ const features = Object.keys(this.givens).map((k) => this.givens[k].features).flat().filter((value, index, array) => {
318
+ return array.indexOf(value) === index;
319
+ });
320
+ return features || [];
321
+ } catch (e) {
322
+ console.error("[ERROR] Failed to extract features:", JSON.stringify(e));
323
+ return [];
324
+ }
325
+ }
326
+ toObj() {
327
+ const givens = Object.keys(this.givens).map((k) => this.givens[k].toObj());
328
+ return {
329
+ name: this.name,
330
+ givens,
331
+ fails: this.fails,
332
+ failed: this.failed,
333
+ features: this.features()
334
+ };
335
+ }
336
+ setup(s, artifactory, tr, pm) {
337
+ return new Promise((res) => res(s));
338
+ }
339
+ assertThat(t) {
340
+ return !!t;
341
+ }
342
+ afterAll(store, artifactory, pm) {
343
+ return store;
344
+ }
345
+ async run(input, testResourceConfiguration, artifactory, tLog, pm) {
346
+ this.testResourceConfiguration = testResourceConfiguration;
347
+ const suiteArtifactory = (fPath, value) => artifactory(`suite-${this.index}-${this.name}/${fPath}`, value);
348
+ const sNdx = this.index;
349
+ const addArtifact = this.addArtifact.bind(this);
350
+ const proxiedPm = beforeAllProxy(pm, sNdx.toString(), addArtifact);
351
+ const subject = await this.setup(
352
+ input,
353
+ suiteArtifactory,
354
+ testResourceConfiguration,
355
+ proxiedPm
356
+ );
357
+ for (const [gKey, g] of Object.entries(this.givens)) {
358
+ const giver = this.givens[gKey];
359
+ this.store = await giver.give(
360
+ subject,
361
+ gKey,
362
+ testResourceConfiguration,
363
+ this.assertThat,
364
+ suiteArtifactory,
365
+ tLog,
366
+ pm,
367
+ sNdx
368
+ ).catch((e) => {
369
+ this.failed = true;
370
+ this.fails = this.fails + 1;
371
+ throw e;
372
+ });
373
+ }
374
+ try {
375
+ const addArtifact2 = this.addArtifact.bind(this);
376
+ const afterAllPm = afterAllProxy(pm, sNdx.toString(), addArtifact2);
377
+ this.afterAll(this.store, artifactory, afterAllPm);
378
+ } catch (e) {
379
+ console.error(JSON.stringify(e));
380
+ }
381
+ return this;
382
+ }
383
+ };
384
+
385
+ // src/lib/index.ts
386
+ var BaseAdapter = () => ({
387
+ beforeAll: async (input, testResource, pm) => {
388
+ return input;
389
+ },
390
+ beforeEach: async function(subject, initializer, testResource, initialValues, pm) {
391
+ return subject;
392
+ },
393
+ afterEach: async (store, key, pm) => Promise.resolve(store),
394
+ afterAll: (store, pm) => void 0,
395
+ butThen: async (store, thenCb, testResource, pm) => {
396
+ return thenCb(store, pm);
397
+ },
398
+ andWhen: async (store, whenCB, testResource, pm) => {
399
+ return whenCB(store, pm);
400
+ },
401
+ assertThis: (x) => x
402
+ });
403
+ var DefaultAdapter = (p) => {
404
+ const base = BaseAdapter();
405
+ return {
406
+ ...base,
407
+ ...p
408
+ };
409
+ };
410
+ var defaultTestResourceRequirement = {
411
+ ports: 0
412
+ };
413
+
414
+ // src/lib/abstractBase.ts
415
+ var BaseGiven = class {
416
+ constructor(name, features, whens, thens, givenCB, initialValues) {
417
+ this.artifacts = [];
418
+ this.name = name;
419
+ this.features = features;
420
+ this.whens = whens;
421
+ this.thens = thens;
422
+ this.givenCB = givenCB;
423
+ this.initialValues = initialValues;
424
+ }
425
+ addArtifact(path) {
426
+ const normalizedPath = path.replace(/\\/g, "/");
427
+ this.artifacts.push(normalizedPath);
428
+ }
429
+ beforeAll(store) {
430
+ return store;
431
+ }
432
+ toObj() {
433
+ return {
434
+ key: this.key,
435
+ name: this.name,
436
+ whens: this.whens.map((w) => {
437
+ if (w && w.toObj)
438
+ return w.toObj();
439
+ console.error("w is not as expected!", JSON.stringify(w));
440
+ return {};
441
+ }),
442
+ thens: this.thens.map((t) => t.toObj()),
443
+ error: this.error ? [this.error, this.error.stack] : null,
444
+ failed: this.failed,
445
+ features: this.features,
446
+ artifacts: this.artifacts
447
+ };
448
+ }
449
+ async afterEach(store, key, artifactory, pm) {
450
+ return store;
451
+ }
452
+ async give(subject, key, testResourceConfiguration, tester, artifactory, tLog, pm, suiteNdx) {
453
+ this.key = key;
454
+ tLog(`
455
+ ${this.key}`);
456
+ tLog(`
457
+ Given: ${this.name}`);
458
+ const givenArtifactory = (fPath, value) => artifactory(`given-${key}/${fPath}`, value);
459
+ this.uberCatcher((e) => {
460
+ console.error(e.toString());
461
+ this.error = e.error;
462
+ tLog(e.stack);
463
+ });
464
+ try {
465
+ const addArtifact = this.addArtifact.bind(this);
466
+ const proxiedPm = beforeEachProxy(pm, suiteNdx.toString(), addArtifact);
467
+ this.store = await this.givenThat(
468
+ subject,
469
+ testResourceConfiguration,
470
+ givenArtifactory,
471
+ this.givenCB,
472
+ this.initialValues,
473
+ proxiedPm
474
+ );
475
+ } catch (e) {
476
+ this.failed = true;
477
+ this.error = e.stack;
478
+ }
479
+ try {
480
+ for (const [whenNdx, whenStep] of this.whens.entries()) {
481
+ await whenStep.test(
482
+ this.store,
483
+ testResourceConfiguration,
484
+ tLog,
485
+ pm,
486
+ `suite-${suiteNdx}/given-${key}/when/${whenNdx}`
487
+ );
488
+ }
489
+ for (const [thenNdx, thenStep] of this.thens.entries()) {
490
+ const t = await thenStep.test(
491
+ this.store,
492
+ testResourceConfiguration,
493
+ tLog,
494
+ pm,
495
+ `suite-${suiteNdx}/given-${key}/then-${thenNdx}`
496
+ );
497
+ tester(t);
498
+ }
499
+ } catch (e) {
500
+ this.error = e.stack;
501
+ this.failed = true;
502
+ } finally {
503
+ try {
504
+ const addArtifact = this.addArtifact.bind(this);
505
+ const proxiedPm = afterEachProxy(
506
+ pm,
507
+ suiteNdx.toString(),
508
+ key,
509
+ addArtifact
510
+ );
511
+ await this.afterEach(this.store, this.key, givenArtifactory, proxiedPm);
512
+ } catch (e) {
513
+ this.failed = e;
514
+ throw e;
515
+ }
516
+ }
517
+ return this.store;
518
+ }
519
+ };
520
+ var BaseWhen = class {
521
+ constructor(name, whenCB) {
522
+ this.artifacts = [];
523
+ this.name = name;
524
+ this.whenCB = whenCB;
525
+ }
526
+ addArtifact(path) {
527
+ const normalizedPath = path.replace(/\\/g, "/");
528
+ this.artifacts.push(normalizedPath);
529
+ }
530
+ toObj() {
531
+ const obj = {
532
+ name: this.name,
533
+ error: this.error ? `${this.error.name}: ${this.error.message}
534
+ ${this.error.stack}` : null,
535
+ artifacts: this.artifacts || []
536
+ };
537
+ console.log(
538
+ `[TOOBJ] Serializing ${this.constructor.name} with artifacts:`,
539
+ obj.artifacts
540
+ );
541
+ return obj;
542
+ }
543
+ async test(store, testResourceConfiguration, tLog, pm, filepath) {
544
+ try {
545
+ const addArtifact = this.addArtifact.bind(this);
546
+ const proxiedPm = andWhenProxy(pm, filepath, addArtifact);
547
+ const result = await this.andWhen(
548
+ store,
549
+ this.whenCB,
550
+ testResourceConfiguration,
551
+ proxiedPm
552
+ );
553
+ return result;
554
+ } catch (e) {
555
+ console.error(
556
+ "[ERROR] When step failed:",
557
+ this.name.toString(),
558
+ e.toString()
559
+ );
560
+ this.error = e;
561
+ throw e;
562
+ }
563
+ }
564
+ };
565
+ var BaseThen = class {
566
+ constructor(name, thenCB) {
567
+ this.artifacts = [];
568
+ this.name = name;
569
+ this.thenCB = thenCB;
570
+ this.error = false;
571
+ this.artifacts = [];
572
+ }
573
+ addArtifact(path) {
574
+ const normalizedPath = path.replace(/\\/g, "/");
575
+ this.artifacts.push(normalizedPath);
576
+ }
577
+ toObj() {
578
+ const obj = {
579
+ name: this.name,
580
+ error: this.error,
581
+ artifacts: this.artifacts
582
+ };
583
+ return obj;
584
+ }
585
+ async test(store, testResourceConfiguration, tLog, pm, filepath) {
586
+ const addArtifact = this.addArtifact.bind(this);
587
+ const proxiedPm = butThenProxy(pm, filepath, addArtifact);
588
+ return this.butThen(
589
+ store,
590
+ async (s) => {
591
+ try {
592
+ if (typeof this.thenCB === "function") {
593
+ const wrappedPm = new Proxy(proxiedPm, {
594
+ get: (target, prop, receiver) => {
595
+ if (prop === "writeFileSync") {
596
+ return (...args) => {
597
+ console.log(
598
+ `[DEBUG] writeFileSync called with args:`,
599
+ args
600
+ );
601
+ return target[prop](...args);
602
+ };
603
+ }
604
+ return target[prop];
605
+ }
606
+ });
607
+ const result = await this.thenCB(s, wrappedPm);
608
+ return result;
609
+ } else {
610
+ return this.thenCB;
611
+ }
612
+ } catch (e) {
613
+ console.error(e.stack);
614
+ }
615
+ },
616
+ testResourceConfiguration,
617
+ proxiedPm
618
+ ).catch((e) => {
619
+ this.error = e.stack;
620
+ });
621
+ }
622
+ };
623
+
624
+ // src/lib/basebuilder.ts
625
+ var BaseBuilder = class {
626
+ constructor(input, suitesOverrides, givenOverides, whenOverides, thenOverides, testResourceRequirement, testSpecification) {
627
+ this.artifacts = [];
628
+ this.artifacts = [];
629
+ this.testResourceRequirement = testResourceRequirement;
630
+ this.suitesOverrides = suitesOverrides;
631
+ this.givenOverides = givenOverides;
632
+ this.whenOverides = whenOverides;
633
+ this.thenOverides = thenOverides;
634
+ this.testSpecification = testSpecification;
635
+ this.specs = testSpecification(
636
+ this.Suites(),
637
+ this.Given(),
638
+ this.When(),
639
+ this.Then()
640
+ );
641
+ this.testJobs = this.specs.map((suite) => {
642
+ const suiteRunner = (suite2) => async (puppetMaster, tLog) => {
643
+ try {
644
+ const x = await suite2.run(
645
+ input,
646
+ puppetMaster.testResourceConfiguration,
647
+ (fPath, value) => puppetMaster.testArtiFactoryfileWriter(
648
+ tLog,
649
+ (p) => {
650
+ this.artifacts.push(p);
651
+ }
652
+ )(
653
+ puppetMaster.testResourceConfiguration.fs + "/" + fPath,
654
+ value
655
+ ),
656
+ tLog,
657
+ puppetMaster
658
+ );
659
+ return x;
660
+ } catch (e) {
661
+ console.error(e.stack);
662
+ }
663
+ };
664
+ const runner = suiteRunner(suite);
665
+ return {
666
+ test: suite,
667
+ toObj: () => {
668
+ return suite.toObj();
669
+ },
670
+ runner,
671
+ receiveTestResourceConfig: async function(puppetMaster) {
672
+ const tLog = async (...l) => {
673
+ };
674
+ try {
675
+ const suiteDone = await runner(puppetMaster, tLog);
676
+ const fails = suiteDone.fails;
677
+ await puppetMaster.writeFileSync(
678
+ `tests.json`,
679
+ JSON.stringify(this.toObj(), null, 2),
680
+ "test"
681
+ );
682
+ return {
683
+ failed: fails > 0,
684
+ fails,
685
+ artifacts: this.artifacts || [],
686
+ features: suiteDone.features()
687
+ };
688
+ } catch (e) {
689
+ console.error(e.stack);
690
+ return {
691
+ failed: true,
692
+ fails: -1,
693
+ artifacts: this.artifacts || [],
694
+ features: []
695
+ };
696
+ }
697
+ }
698
+ };
699
+ });
700
+ }
701
+ // testsJson() {
702
+ // puppetMaster.writeFileSync(
703
+ // `tests.json`,
704
+ // JSON.stringify({ features: suiteDone.features() }, null, 2)
705
+ // );
706
+ // }
707
+ Specs() {
708
+ return this.specs;
709
+ }
710
+ Suites() {
711
+ return this.suitesOverrides;
712
+ }
713
+ Given() {
714
+ return this.givenOverides;
715
+ }
716
+ When() {
717
+ return this.whenOverides;
718
+ }
719
+ Then() {
720
+ return this.thenOverides;
721
+ }
722
+ };
723
+
724
+ // src/lib/classBuilder.ts
725
+ var ClassBuilder = class extends BaseBuilder {
726
+ constructor(testImplementation, testSpecification, input, suiteKlasser, givenKlasser, whenKlasser, thenKlasser, testResourceRequirement) {
727
+ const classySuites = Object.entries(testImplementation.suites).reduce(
728
+ (a, [key], index) => {
729
+ a[key] = (somestring, givens) => {
730
+ return new suiteKlasser.prototype.constructor(
731
+ somestring,
732
+ index,
733
+ givens
734
+ );
735
+ };
736
+ return a;
737
+ },
738
+ {}
739
+ );
740
+ const classyGivens = Object.entries(testImplementation.givens).reduce(
741
+ (a, [key, g]) => {
742
+ a[key] = (features, whens, thens, ...initialValues) => {
743
+ return new givenKlasser.prototype.constructor(
744
+ key,
745
+ features,
746
+ whens,
747
+ thens,
748
+ testImplementation.givens[key],
749
+ initialValues
750
+ );
751
+ };
752
+ return a;
753
+ },
754
+ {}
755
+ );
756
+ const classyWhens = Object.entries(testImplementation.whens).reduce(
757
+ (a, [key, whEn]) => {
758
+ a[key] = (...payload) => {
759
+ return new whenKlasser.prototype.constructor(
760
+ `${key}: ${payload && payload.toString()}`,
761
+ whEn(...payload)
762
+ );
763
+ };
764
+ return a;
765
+ },
766
+ {}
767
+ );
768
+ const classyThens = Object.entries(testImplementation.thens).reduce(
769
+ (a, [key, thEn]) => {
770
+ a[key] = (...args) => {
771
+ return new thenKlasser.prototype.constructor(
772
+ `${key}: ${args && args.toString()}`,
773
+ thEn(...args)
774
+ );
775
+ };
776
+ return a;
777
+ },
778
+ {}
779
+ );
780
+ super(
781
+ input,
782
+ classySuites,
783
+ classyGivens,
784
+ classyWhens,
785
+ classyThens,
786
+ testResourceRequirement,
787
+ testSpecification
788
+ );
789
+ }
790
+ };
791
+
792
+ // src/lib/core.ts
793
+ var TesterantoCore = class extends ClassBuilder {
794
+ constructor(input, testSpecification, testImplementation, testResourceRequirement = defaultTestResourceRequirement, testAdapter, uberCatcher) {
795
+ const fullAdapter = DefaultAdapter(testAdapter);
796
+ super(
797
+ testImplementation,
798
+ testSpecification,
799
+ input,
800
+ class extends BaseSuite {
801
+ afterAll(store, artifactory, pm) {
802
+ return fullAdapter.afterAll(store, pm);
803
+ }
804
+ assertThat(t) {
805
+ return fullAdapter.assertThis(t);
806
+ }
807
+ async setup(s, artifactory, tr, pm) {
808
+ return fullAdapter.beforeAll?.(s, tr, pm) ?? s;
809
+ }
810
+ },
811
+ class Given extends BaseGiven {
812
+ constructor() {
813
+ super(...arguments);
814
+ this.uberCatcher = uberCatcher;
815
+ }
816
+ async givenThat(subject, testResource, artifactory, initializer, initialValues, pm) {
817
+ return fullAdapter.beforeEach(
818
+ subject,
819
+ initializer,
820
+ testResource,
821
+ initialValues,
822
+ pm
823
+ );
824
+ }
825
+ afterEach(store, key, artifactory, pm) {
826
+ return Promise.resolve(fullAdapter.afterEach(store, key, pm));
827
+ }
828
+ },
829
+ class When extends BaseWhen {
830
+ async andWhen(store, whenCB, testResource, pm) {
831
+ return await fullAdapter.andWhen(store, whenCB, testResource, pm);
832
+ }
833
+ },
834
+ class Then extends BaseThen {
835
+ async butThen(store, thenCB, testResource, pm) {
836
+ return await fullAdapter.butThen(store, thenCB, testResource, pm);
837
+ }
838
+ },
839
+ testResourceRequirement
840
+ );
841
+ }
842
+ };
843
+
844
+ // src/PM/index.ts
845
+ var PM = class {
846
+ };
847
+
848
+ // src/PM/pure.ts
849
+ var PM_Pure = class extends PM {
850
+ constructor(t) {
851
+ super();
852
+ this.server = {};
853
+ this.testResourceConfiguration = t;
854
+ }
855
+ getInnerHtml(selector, page) {
856
+ throw new Error("pure.ts getInnerHtml not implemented");
857
+ }
858
+ stopSideCar(uid) {
859
+ throw new Error("pure.ts stopSideCar not implemented");
860
+ }
861
+ trackCall(method, args) {
862
+ }
863
+ start() {
864
+ return new Promise((r) => r());
865
+ }
866
+ stop() {
867
+ return new Promise((r) => r());
868
+ }
869
+ async createWriteStream(filepath, testName) {
870
+ throw new Error("pure.ts createWriteStream not implemented");
871
+ return "";
872
+ }
873
+ launchSideCar(n) {
874
+ return globalThis["launchSideCar"](n, this.testResourceConfiguration.name);
875
+ }
876
+ pages() {
877
+ return globalThis["pages"]();
878
+ }
879
+ waitForSelector(p, s) {
880
+ return globalThis["waitForSelector"](p, s);
881
+ }
882
+ closePage(p) {
883
+ return globalThis["closePage"](p);
884
+ }
885
+ goto(cdpPage, url) {
886
+ return globalThis["goto"](cdpPage.mainFrame()._id, url);
887
+ }
888
+ newPage() {
889
+ return globalThis["newPage"]();
890
+ }
891
+ $(selector) {
892
+ return globalThis["$"](selector);
893
+ }
894
+ isDisabled(selector) {
895
+ return globalThis["isDisabled"](selector);
896
+ }
897
+ getAttribute(selector, attribute) {
898
+ return globalThis["getAttribute"](selector, attribute);
899
+ }
900
+ getValue(selector) {
901
+ return globalThis["getValue"](selector);
902
+ }
903
+ focusOn(selector) {
904
+ return globalThis["focusOn"](selector);
905
+ }
906
+ typeInto(selector, value) {
907
+ return globalThis["typeInto"](selector, value);
908
+ }
909
+ page() {
910
+ return globalThis["page"]();
911
+ }
912
+ click(selector) {
913
+ return globalThis["click"](selector);
914
+ }
915
+ screencast(opts, page) {
916
+ return globalThis["screencast"](
917
+ {
918
+ ...opts,
919
+ path: this.testResourceConfiguration.fs + "/" + opts.path
920
+ },
921
+ page,
922
+ this.testResourceConfiguration.name
923
+ );
924
+ }
925
+ screencastStop(p) {
926
+ return globalThis["screencastStop"](p);
927
+ }
928
+ customScreenShot(opts, page) {
929
+ return globalThis["customScreenShot"](
930
+ {
931
+ ...opts,
932
+ path: this.testResourceConfiguration.fs + "/" + opts.path
933
+ },
934
+ page,
935
+ this.testResourceConfiguration.name
936
+ );
937
+ }
938
+ // TODO: fix these
939
+ existsSync(destFolder) {
940
+ return Promise.resolve(true);
941
+ }
942
+ mkdirSync() {
943
+ return true;
944
+ }
945
+ write(uid, contents) {
946
+ return Promise.resolve(true);
947
+ }
948
+ writeFileSync() {
949
+ return Promise.resolve(true);
950
+ }
951
+ /////////////////////////////////////////////////////
952
+ end(uid) {
953
+ return globalThis["end"](uid);
954
+ }
955
+ customclose() {
956
+ globalThis["customclose"](
957
+ this.testResourceConfiguration.fs,
958
+ this.testResourceConfiguration.name
959
+ );
960
+ }
961
+ testArtiFactoryfileWriter(tLog, callback) {
962
+ return (fPath, value) => {
963
+ this.trackCall("testArtiFactoryfileWriter", { fPath, value });
964
+ callback(Promise.resolve());
965
+ };
966
+ }
967
+ // startPuppeteer(options?: any): any {
968
+ // // return puppeteer.connect(options).then((b) => {
969
+ // // this.browser = b;
970
+ // // });
971
+ // }
972
+ };
973
+
974
+ // src/Pure.ts
975
+ var PureTesteranto = class extends TesterantoCore {
976
+ constructor(input, testSpecification, testImplementation, testResourceRequirement, testAdapter) {
977
+ super(
978
+ input,
979
+ testSpecification,
980
+ testImplementation,
981
+ testResourceRequirement,
982
+ testAdapter,
983
+ () => {
984
+ }
985
+ );
986
+ }
987
+ async receiveTestResourceConfig(partialTestResource) {
988
+ const t = JSON.parse(partialTestResource);
989
+ const pm = new PM_Pure(t);
990
+ try {
991
+ const result = this.testJobs[0].receiveTestResourceConfig(pm);
992
+ return result;
993
+ } catch (e) {
994
+ console.error("[ERROR] Test job failed:", e);
995
+ return {
996
+ failed: true,
997
+ fails: -1,
998
+ artifacts: [],
999
+ // logPromise: Promise.resolve(),
1000
+ features: []
1001
+ };
1002
+ }
1003
+ }
1004
+ };
1005
+ var Pure_default = async (input, testSpecification, testImplementation, testAdapter, testResourceRequirement = defaultTestResourceRequirement) => {
1006
+ return new PureTesteranto(
1007
+ input,
1008
+ testSpecification,
1009
+ testImplementation,
1010
+ testResourceRequirement,
1011
+ testAdapter
1012
+ );
1013
+ };
1014
+
1015
+ export {
1016
+ BaseGiven,
1017
+ BaseWhen,
1018
+ BaseThen,
1019
+ BaseBuilder,
1020
+ BaseSuite,
1021
+ Pure_default
1022
+ };