testeranto 0.200.0 → 0.202.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 (376) hide show
  1. package/README.md +26 -1
  2. package/bundle.js +3 -2
  3. package/design-editor/DesignEditor.tsx +40 -241
  4. package/dist/common/design-editor/DesignEditor.js +33 -198
  5. package/dist/common/src/App.js +158 -16
  6. package/dist/common/src/PM/PM_WithBuild.js +135 -0
  7. package/dist/common/src/PM/PM_WithEslintAndTsc.js +79 -67
  8. package/dist/common/src/PM/PM_WithGit.js +517 -0
  9. package/dist/common/src/PM/PM_WithProcesses.js +519 -0
  10. package/dist/common/src/PM/PM_WithWebSocket.js +535 -0
  11. package/dist/common/src/PM/base.js +62 -0
  12. package/dist/common/src/PM/main.js +533 -1676
  13. package/dist/common/src/PM/metafileOutputs.js +78 -0
  14. package/dist/common/src/PM/node.js +0 -6
  15. package/dist/common/src/PM/pure.js +0 -8
  16. package/dist/common/src/PM/types.js +1 -0
  17. package/dist/common/src/PM/utils.js +210 -0
  18. package/dist/common/src/PM/web.js +0 -6
  19. package/dist/common/src/ReportServer.js +0 -10
  20. package/dist/common/src/ReportServerLib.js +0 -140
  21. package/dist/common/src/components/pure/AppFrame.js +68 -56
  22. package/dist/common/src/components/pure/ArtifactTree.js +80 -0
  23. package/dist/common/src/components/pure/BuildLogViewer.js +106 -0
  24. package/dist/common/src/components/pure/DebugEnv.js +30 -0
  25. package/dist/common/src/components/pure/FileTree.js +34 -0
  26. package/dist/common/src/components/pure/FileTreeItem.js +29 -0
  27. package/dist/common/src/components/pure/GitHubLoginButton.js +18 -0
  28. package/dist/common/src/components/pure/GitIntegrationView.js +342 -0
  29. package/dist/common/src/components/pure/ProcessManager.js +1 -0
  30. package/dist/common/src/components/pure/ProcessManagerView.js +73 -74
  31. package/dist/common/src/components/pure/ProjectPageView.js +4 -117
  32. package/dist/common/src/components/pure/Settings.js +121 -0
  33. package/dist/common/src/components/pure/Settings.test.js +34 -0
  34. package/dist/common/src/components/pure/SignIn.js +22 -0
  35. package/dist/common/src/components/pure/SingleProcessView.js +166 -213
  36. package/dist/common/src/components/pure/TestPageView.js +113 -368
  37. package/dist/common/src/components/pure/TestPageView_utils.js +117 -0
  38. package/dist/common/src/components/pure/TestTable.js +33 -0
  39. package/dist/common/src/components/pure/ToastNotification.js +14 -0
  40. package/dist/common/src/components/pure/UserProfile.js +27 -0
  41. package/dist/common/src/components/stateful/AuthCallbackPage.js +51 -0
  42. package/dist/common/src/components/stateful/FeaturesReporter.js +2 -1
  43. package/dist/common/src/components/stateful/FileTree.js +58 -39
  44. package/dist/common/src/components/stateful/GitIntegrationPage.js +12 -0
  45. package/dist/common/src/components/stateful/ProcessManagerPage.js +13 -15
  46. package/dist/common/src/components/stateful/ProjectPage.js +6 -5
  47. package/dist/common/src/components/stateful/ProjectsPage.js +17 -19
  48. package/dist/common/src/components/stateful/SingleProcessPage.js +16 -26
  49. package/dist/common/src/components/stateful/TestPage.js +7 -5
  50. package/dist/common/src/hooks/useGitMode.js +21 -0
  51. package/dist/common/src/lib/BaseSuite.test/mock.js +15 -8
  52. package/dist/common/src/lib/BaseSuite.test/test.js +56 -80
  53. package/dist/common/src/lib/Tiposkripto.js +24 -0
  54. package/dist/common/src/lib/Tiposkripto.test/MockTiposkripto.js +154 -10
  55. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.adapter.js +6 -12
  56. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.implementation.js +63 -23
  57. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.specification.js +14 -6
  58. package/dist/common/src/lib/pmProxy.test/specification.js +167 -52
  59. package/dist/common/src/services/FileService.js +505 -0
  60. package/dist/common/src/services/GitHubAuthService.js +184 -0
  61. package/dist/common/src/testeranto.js +38 -97
  62. package/dist/common/src/utils/api.js +12 -8
  63. package/dist/common/src/utils/gitTest.js +27 -0
  64. package/dist/common/src/utils.js +23 -13
  65. package/dist/common/testeranto.config.js +21 -17
  66. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  67. package/dist/module/design-editor/DesignEditor.js +33 -199
  68. package/dist/module/src/App.js +121 -15
  69. package/dist/module/src/PM/PM_WithBuild.js +128 -0
  70. package/dist/module/src/PM/PM_WithEslintAndTsc.js +79 -67
  71. package/dist/module/src/PM/PM_WithGit.js +477 -0
  72. package/dist/module/src/PM/PM_WithProcesses.js +479 -0
  73. package/dist/module/src/PM/PM_WithWebSocket.js +528 -0
  74. package/dist/module/src/PM/base.js +62 -0
  75. package/dist/module/src/PM/main.js +533 -1676
  76. package/dist/module/src/PM/metafileOutputs.js +78 -0
  77. package/dist/module/src/PM/node.js +0 -6
  78. package/dist/module/src/PM/pure.js +0 -8
  79. package/dist/module/src/PM/types.js +1 -1
  80. package/dist/module/src/PM/utils.js +196 -0
  81. package/dist/module/src/PM/web.js +0 -6
  82. package/dist/module/src/ReportServer.js +1 -9
  83. package/dist/module/src/ReportServerLib.js +1 -134
  84. package/dist/module/src/components/pure/AppFrame.js +66 -24
  85. package/dist/module/src/components/pure/ArtifactTree.js +80 -0
  86. package/dist/module/src/components/pure/BuildLogViewer.js +99 -0
  87. package/dist/module/src/components/pure/DebugEnv.js +23 -0
  88. package/dist/module/src/components/pure/FileTree.js +27 -0
  89. package/dist/module/src/components/pure/FileTreeItem.js +22 -0
  90. package/dist/module/src/components/pure/GitHubLoginButton.js +11 -0
  91. package/dist/module/src/components/pure/GitIntegrationView.js +305 -0
  92. package/dist/module/src/components/pure/ProcessManager.js +1 -0
  93. package/dist/module/src/components/pure/ProcessManagerView.js +74 -75
  94. package/dist/module/src/components/pure/ProjectPageView.js +5 -118
  95. package/dist/module/src/components/pure/Settings.js +84 -0
  96. package/dist/module/src/components/pure/Settings.test.js +29 -0
  97. package/dist/module/src/components/pure/SignIn.js +15 -0
  98. package/dist/module/src/components/pure/SingleProcessView.js +130 -214
  99. package/dist/module/src/components/pure/TestPageView.js +97 -352
  100. package/dist/module/src/components/pure/TestPageView_utils.js +109 -0
  101. package/dist/module/src/components/pure/TestTable.js +26 -0
  102. package/dist/module/src/components/pure/ToastNotification.js +7 -0
  103. package/dist/module/src/components/pure/UserProfile.js +20 -0
  104. package/dist/module/src/components/stateful/AuthCallbackPage.js +14 -0
  105. package/dist/module/src/components/stateful/FeaturesReporter.js +2 -1
  106. package/dist/module/src/components/stateful/FileTree.js +59 -33
  107. package/dist/module/src/components/stateful/GitIntegrationPage.js +5 -0
  108. package/dist/module/src/components/stateful/ProcessManagerPage.js +13 -15
  109. package/dist/module/src/components/stateful/ProjectPage.js +6 -5
  110. package/dist/module/src/components/stateful/ProjectsPage.js +16 -18
  111. package/dist/module/src/components/stateful/SingleProcessPage.js +16 -26
  112. package/dist/module/src/components/stateful/TestPage.js +8 -6
  113. package/dist/module/src/hooks/useGitMode.js +17 -0
  114. package/dist/module/src/lib/BaseSuite.test/mock.js +15 -8
  115. package/dist/module/src/lib/BaseSuite.test/test.js +56 -80
  116. package/dist/module/src/lib/Tiposkripto.js +24 -0
  117. package/dist/module/src/lib/Tiposkripto.test/MockTiposkripto.js +154 -10
  118. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.adapter.js +6 -12
  119. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.implementation.js +63 -23
  120. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.specification.js +14 -6
  121. package/dist/module/src/lib/pmProxy.test/specification.js +167 -52
  122. package/dist/module/src/services/FileService.js +468 -0
  123. package/dist/module/src/services/GitHubAuthService.js +180 -0
  124. package/dist/module/src/testeranto.js +38 -97
  125. package/dist/module/src/utils/api.js +10 -7
  126. package/dist/module/src/utils/gitTest.js +23 -0
  127. package/dist/module/src/utils.js +21 -12
  128. package/dist/module/testeranto.config.js +21 -17
  129. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  130. package/dist/prebuild/App.css +94 -121
  131. package/dist/prebuild/App.js +44601 -11225
  132. package/dist/prebuild/testeranto.mjs +4106 -0
  133. package/dist/types/design-editor/DesignEditor.d.ts +1 -18
  134. package/dist/types/src/App.d.ts +18 -0
  135. package/dist/types/src/PM/PM_WithBuild.d.ts +13 -0
  136. package/dist/types/src/PM/PM_WithEslintAndTsc.d.ts +2 -4
  137. package/dist/types/src/PM/PM_WithGit.d.ts +27 -0
  138. package/dist/types/src/PM/PM_WithProcesses.d.ts +29 -0
  139. package/dist/types/src/PM/PM_WithWebSocket.d.ts +108 -0
  140. package/dist/types/src/PM/base.d.ts +1 -1
  141. package/dist/types/src/PM/index.d.ts +0 -2
  142. package/dist/types/src/PM/main.d.ts +6 -77
  143. package/dist/types/src/PM/metafileOutputs.d.ts +0 -0
  144. package/dist/types/src/PM/node.d.ts +0 -2
  145. package/dist/types/src/PM/pure.d.ts +0 -2
  146. package/dist/types/src/PM/types.d.ts +118 -0
  147. package/dist/types/src/PM/utils.d.ts +35 -0
  148. package/dist/types/src/PM/web.d.ts +0 -2
  149. package/dist/types/src/Pure.d.ts +6 -1
  150. package/dist/types/src/ReportServer.d.ts +0 -1
  151. package/dist/types/src/ReportServerLib.d.ts +0 -1
  152. package/dist/types/src/Types.d.ts +1 -0
  153. package/dist/types/src/components/pure/ArtifactTree.d.ts +0 -0
  154. package/dist/types/src/components/pure/BuildLogViewer.d.ts +7 -0
  155. package/dist/types/src/components/pure/DebugEnv.d.ts +2 -0
  156. package/dist/types/src/components/pure/FileTree.d.ts +6 -0
  157. package/dist/types/src/components/pure/FileTreeItem.d.ts +8 -0
  158. package/dist/types/src/components/pure/GitHubLoginButton.d.ts +8 -0
  159. package/dist/types/src/components/pure/GitIntegrationView.d.ts +1 -0
  160. package/dist/types/src/components/pure/Settings.d.ts +1 -0
  161. package/dist/types/src/components/pure/Settings.test.d.ts +1 -0
  162. package/dist/types/src/components/pure/SignIn.d.ts +1 -0
  163. package/dist/types/src/components/pure/SingleProcessView.d.ts +10 -0
  164. package/dist/types/src/components/pure/TestPageView.d.ts +2 -1
  165. package/dist/types/src/components/pure/TestPageView_utils.d.ts +23 -0
  166. package/dist/types/src/components/pure/TestTable.d.ts +16 -0
  167. package/dist/types/src/components/pure/ToastNotification.d.ts +6 -0
  168. package/dist/types/src/components/pure/UserProfile.d.ts +2 -0
  169. package/dist/types/src/components/stateful/AuthCallbackPage.d.ts +2 -0
  170. package/dist/types/src/components/stateful/FileTree.d.ts +0 -8
  171. package/dist/types/src/components/stateful/GitIntegrationPage.d.ts +1 -0
  172. package/dist/types/src/hooks/useGitMode.d.ts +7 -0
  173. package/dist/types/src/lib/BaseSuite.test/mock.d.ts +2 -2
  174. package/dist/types/src/lib/BaseSuite.test/test.d.ts +4 -3
  175. package/dist/types/src/lib/Tiposkripto.d.ts +2 -0
  176. package/dist/types/src/lib/Tiposkripto.test/MockTiposkripto.d.ts +3 -0
  177. package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.types.d.ts +5 -0
  178. package/dist/types/src/lib/index.d.ts +6 -0
  179. package/dist/types/src/services/FileService.d.ts +34 -0
  180. package/dist/types/src/services/GitHubAuthService.d.ts +32 -0
  181. package/dist/types/src/utils/api.d.ts +1 -0
  182. package/dist/types/src/utils/gitTest.d.ts +11 -0
  183. package/dist/types/src/utils.d.ts +3 -3
  184. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  185. package/example/__pycache__/Calculator.cpython-313.pyc +0 -0
  186. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/README.md +187 -0
  187. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_given.go +163 -0
  188. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_suite.go +85 -0
  189. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_then.go +21 -0
  190. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_when.go +21 -0
  191. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/golingvu.go +554 -0
  192. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/test_adapter.go +33 -0
  193. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/types.go +72 -0
  194. package/example/vendor/modules.txt +5 -0
  195. package/git-integration-plan.md +395 -0
  196. package/package.json +26 -14
  197. package/src/App.tsx +169 -18
  198. package/src/PM/PM_WithBuild.ts +171 -0
  199. package/src/PM/PM_WithEslintAndTsc.ts +109 -86
  200. package/src/PM/PM_WithGit.ts +585 -0
  201. package/src/PM/PM_WithProcesses.ts +639 -0
  202. package/src/PM/PM_WithWebSocket.ts +631 -0
  203. package/src/PM/base.ts +63 -1
  204. package/src/PM/index.ts +8 -5
  205. package/src/PM/main.ts +672 -2050
  206. package/src/PM/metafileOutputs.ts +90 -0
  207. package/src/PM/node.ts +18 -18
  208. package/src/PM/pure.ts +5 -13
  209. package/src/PM/types.ts +145 -0
  210. package/src/PM/utils.ts +256 -0
  211. package/src/PM/web.ts +8 -8
  212. package/src/README.md +122 -0
  213. package/src/ReportServer.ts +0 -12
  214. package/src/ReportServerLib.ts +0 -147
  215. package/src/Types.ts +1 -0
  216. package/src/app.scss +14 -164
  217. package/src/components/pure/AppFrame.tsx +237 -71
  218. package/src/components/pure/ArtifactTree.tsx +82 -0
  219. package/src/components/pure/BuildLogViewer.tsx +168 -0
  220. package/src/components/pure/DebugEnv.tsx +30 -0
  221. package/src/components/pure/FileTree.tsx +58 -0
  222. package/src/components/pure/FileTreeItem.tsx +49 -0
  223. package/src/components/pure/GitHubLoginButton.tsx +31 -0
  224. package/src/components/pure/GitIntegrationView.tsx +443 -0
  225. package/src/components/pure/ProcessManager.tsx +6 -5
  226. package/src/components/pure/ProcessManagerView.tsx +162 -166
  227. package/src/components/pure/ProjectPageView.tsx +6 -224
  228. package/src/components/pure/Settings.test.tsx +34 -0
  229. package/src/components/pure/Settings.tsx +163 -0
  230. package/src/components/pure/SignIn.tsx +33 -0
  231. package/src/components/pure/SingleProcessView.tsx +231 -235
  232. package/src/components/pure/TestPageView.test/specification.ts +1 -0
  233. package/src/components/pure/TestPageView.tsx +317 -826
  234. package/src/components/pure/TestPageView_utils.tsx +285 -0
  235. package/src/components/pure/TestTable.tsx +88 -0
  236. package/src/components/pure/ToastNotification.tsx +19 -0
  237. package/src/components/pure/UserProfile.tsx +44 -0
  238. package/src/components/stateful/AuthCallbackPage.tsx +21 -0
  239. package/src/components/stateful/FeaturesReporter.tsx +3 -1
  240. package/src/components/stateful/FileTree.tsx +58 -58
  241. package/src/components/stateful/GitIntegrationPage.tsx +8 -0
  242. package/src/components/stateful/ProcessManagerPage.tsx +13 -17
  243. package/src/components/stateful/ProjectPage.tsx +6 -5
  244. package/src/components/stateful/ProjectsPage.tsx +17 -19
  245. package/src/components/stateful/SVGEditor/CircleForm.tsx +68 -0
  246. package/src/components/stateful/SVGEditor/GroupForm.tsx +56 -0
  247. package/src/components/stateful/SVGEditor/RectForm.tsx +74 -0
  248. package/src/components/stateful/SVGEditor/SVGAttributeField.tsx +29 -0
  249. package/src/components/stateful/SVGEditor/SVGAttributesEditor.tsx +73 -0
  250. package/src/components/stateful/SVGEditor/SVGEditorControls.tsx +45 -0
  251. package/src/components/stateful/SVGEditor/SVGElementForm.tsx +45 -0
  252. package/src/components/stateful/SVGEditor/SVGPreview.tsx +225 -0
  253. package/src/components/stateful/SVGEditor/SVGTextEditor.tsx +166 -0
  254. package/src/components/stateful/SVGEditor/SVGTree.tsx +159 -0
  255. package/src/components/stateful/SVGEditor/SVGTypes.ts +36 -0
  256. package/src/components/stateful/SVGEditor/svg.xsd.xml +3038 -0
  257. package/src/components/stateful/SVGEditorPage.tsx +503 -0
  258. package/src/components/stateful/SingleProcessPage.tsx +18 -31
  259. package/src/components/stateful/TestPage.tsx +25 -22
  260. package/src/golingvu/golingvu.go +38 -2
  261. package/src/hooks/useGitMode.ts +20 -0
  262. package/src/lib/BaseSuite.test/mock.ts +16 -10
  263. package/src/lib/BaseSuite.test/test.ts +144 -103
  264. package/src/lib/Tiposkripto.test/MockTiposkripto.ts +178 -14
  265. package/src/lib/Tiposkripto.test/Tiposkripto.adapter.ts +9 -14
  266. package/src/lib/Tiposkripto.test/Tiposkripto.implementation.ts +78 -38
  267. package/src/lib/Tiposkripto.test/Tiposkripto.specification.ts +51 -9
  268. package/src/lib/Tiposkripto.test/Tiposkripto.types.ts +5 -0
  269. package/src/lib/Tiposkripto.ts +27 -0
  270. package/src/lib/index.ts +7 -0
  271. package/src/lib/pmProxy.test/specification.ts +168 -166
  272. package/src/pitono/PM/__pycache__/python.cpython-313.pyc +0 -0
  273. package/src/pitono/__pycache__/Pitono.cpython-313.pyc +0 -0
  274. package/src/pitono/__pycache__/__init__.cpython-313.pyc +0 -0
  275. package/src/pitono/__pycache__/base_given.cpython-313.pyc +0 -0
  276. package/src/pitono/__pycache__/base_suite.cpython-313.pyc +0 -0
  277. package/src/pitono/__pycache__/base_then.cpython-313.pyc +0 -0
  278. package/src/pitono/__pycache__/base_when.cpython-313.pyc +0 -0
  279. package/src/pitono/__pycache__/core_generator.cpython-313.pyc +0 -0
  280. package/src/pitono/__pycache__/simple_adapter.cpython-313.pyc +0 -0
  281. package/src/pitono/__pycache__/types.cpython-313.pyc +0 -0
  282. package/src/services/FileService.ts +542 -0
  283. package/src/services/GitHubAuthService.ts +240 -0
  284. package/src/testeranto.ts +62 -140
  285. package/src/utils/api.ts +15 -13
  286. package/src/utils/gitTest.ts +29 -0
  287. package/src/utils.ts +21 -12
  288. package/testeranto/App.css +94 -121
  289. package/testeranto/App.js +44601 -11225
  290. package/testeranto/bundles/golang/core/Calculator.golingvu.go +53 -0
  291. package/testeranto/bundles/golang/core/Calculator.golingvu.golingvu.go +53 -0
  292. package/testeranto/bundles/node/core/chunk-RIM6RECA.mjs +1170 -0
  293. package/testeranto/bundles/node/core/chunk-VXVF7WFO.mjs +4321 -0
  294. package/testeranto/bundles/node/core/example/Calculator.test.mjs +503 -0
  295. package/testeranto/bundles/node/core/src/lib/BaseSuite.test/node.test.mjs +94 -1231
  296. package/testeranto/bundles/node/core/src/lib/TipoSkripto.test/TipoSkripto.mjs +574 -0
  297. package/testeranto/bundles/node/core/src/lib/pmProxy.test/index.mjs +482 -0
  298. package/testeranto/bundles/pure/core/chunk-XYOCRDEQ.mjs +1080 -0
  299. package/testeranto/bundles/pure/core/src/Pure.test.mjs +410 -0
  300. package/testeranto/bundles/pure/core/src/lib/BaseSuite.test/pure.test.mjs +93 -1146
  301. package/testeranto/bundles/python/core/Calculator.pitono.test.py +24 -0
  302. package/testeranto/bundles/python/core/test_example.py +24 -0
  303. package/testeranto/bundles/web/core/MPLUSRounded1c-Black-O75GP5JI.ttf +0 -0
  304. package/testeranto/bundles/web/core/MPLUSRounded1c-Bold-R524Q5BH.ttf +0 -0
  305. package/testeranto/bundles/web/core/MPLUSRounded1c-ExtraBold-C6GRMYVT.ttf +0 -0
  306. package/testeranto/bundles/web/core/MPLUSRounded1c-Light-WKN65Y2C.ttf +0 -0
  307. package/testeranto/bundles/web/core/MPLUSRounded1c-Medium-ZC4DWL7C.ttf +0 -0
  308. package/testeranto/bundles/web/core/MPLUSRounded1c-Regular-DT6EKZ3S.ttf +0 -0
  309. package/testeranto/bundles/web/core/MPLUSRounded1c-Thin-YWDNVG6M.ttf +0 -0
  310. package/testeranto/bundles/web/core/chunk-DFRN4SYZ.mjs +2297 -0
  311. package/testeranto/bundles/web/core/chunk-JMDLMADH.mjs +27996 -0
  312. package/testeranto/bundles/web/core/chunk-LQMU5NCG.mjs +3082 -0
  313. package/testeranto/bundles/web/core/chunk-Q5TONB2Z.mjs +6874 -0
  314. package/testeranto/bundles/web/core/src/components/pure/FeaturesReporterView.test/index.mjs +164 -0
  315. package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.css +11697 -0
  316. package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.mjs +336 -0
  317. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.css +11697 -0
  318. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.mjs +517 -0
  319. package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.mjs +107 -1134
  320. package/testeranto/metafiles/golang/core.json +3 -3
  321. package/testeranto/metafiles/node/core.json +474 -31
  322. package/testeranto/metafiles/pure/core.json +144 -28
  323. package/testeranto/metafiles/python/core.json +11 -0
  324. package/testeranto/metafiles/web/core.json +15829 -45
  325. package/testeranto/reports/core/config.json +40 -0
  326. package/testeranto/reports/core/src/Pure.test/pure/exit.log +0 -0
  327. package/testeranto/reports/core/src/Pure.test/pure/lint_errors.txt +0 -0
  328. package/testeranto/reports/core/src/Pure.test/pure/prompt.txt +14 -0
  329. package/testeranto/reports/core/src/Pure.test/pure/type_errors.txt +73 -0
  330. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/debug.log +0 -0
  331. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/error.log +91 -0
  332. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/exit.log +1 -0
  333. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/info.log +2 -0
  334. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/tests.json +68 -0
  335. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/warn.log +0 -0
  336. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/debug.log +0 -0
  337. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/error.log +30 -0
  338. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/exit.log +1 -0
  339. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/info.log +2 -0
  340. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/tests.json +88 -0
  341. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/warn.log +0 -0
  342. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/lint_errors.txt +0 -6
  343. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/prompt.txt +0 -11
  344. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stdout.log +1 -0
  345. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/tests.json +1 -1
  346. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/type_errors.txt +35 -38
  347. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/lint_errors.txt +0 -2
  348. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/prompt.txt +0 -10
  349. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/type_errors.txt +40 -38
  350. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/tests.json +1 -1
  351. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/exit.log +1 -0
  352. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/lint_errors.txt +0 -0
  353. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/message.txt +17 -0
  354. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/prompt.txt +17 -0
  355. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/stderr.log +55 -0
  356. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/stdout.log +191 -0
  357. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/type_errors.txt +71 -0
  358. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/exit.log +1 -0
  359. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/lint_errors.txt +15 -0
  360. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/message.txt +17 -0
  361. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/prompt.txt +17 -0
  362. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stderr.log +20 -0
  363. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stdout.log +4 -0
  364. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/type_errors.txt +49 -0
  365. package/testeranto/reports/core/summary.json +34 -6
  366. package/testeranto.config.ts +26 -20
  367. package/tsc.log +141 -91
  368. package/tsconfig.json +6 -2
  369. package/dist/prebuild/ReportServer.mjs +0 -227
  370. package/dist/prebuild/mothership/index.mjs +0 -22
  371. package/dist/types/design-editor/server.d.ts +0 -1
  372. package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.html +0 -15
  373. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/lint_errors.txt +0 -2
  374. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/prompt.txt +0 -25
  375. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/type_errors.txt +0 -56
  376. /package/testeranto/reports/core/src/{lib/BaseSuite.test/web.test/web → Pure.test/pure}/message.txt +0 -0
@@ -0,0 +1,187 @@
1
+ # Golingvu - Testeranto Implementation for Go
2
+
3
+ ## Understanding the Build Process
4
+
5
+ The build process in Testeranto is inspired by esbuild's approach to bundling and metafile generation, adapted for multiple programming languages including Go, Python, and JavaScript variants.
6
+
7
+ ### Core Concepts
8
+
9
+ #### 1. Metafile Generation
10
+ Each language implementation generates a `core.json` metafile that tracks:
11
+ - **Inputs**: Source files with their dependencies (imports) and metadata
12
+ - **Outputs**: Generated/bundled files with their relationships to inputs
13
+ - **Signatures**: Unique identifiers to track changes and trigger rebuilds
14
+
15
+ #### 2. File Watching
16
+ Two separate watchers work in tandem:
17
+ 1. **Source Watcher**: Monitors source files for changes and triggers metafile regeneration
18
+ 2. **Bundle Watcher**: Monitors generated files and schedules test execution when signatures change
19
+
20
+ #### 3. Signature-based Change Detection
21
+ - Each output file contains a unique signature in a comment
22
+ - When source files change, new signatures are generated
23
+ - Bundle watcher detects signature changes to trigger test execution
24
+
25
+ ### How esbuild's Approach is Adapted
26
+
27
+ #### Original esbuild Flow:
28
+ 1. Parse entry points and resolve imports
29
+ 2. Bundle dependencies into output files
30
+ 3. Generate metafile with input/output relationships
31
+ 4. Watch for file changes and rebuild
32
+
33
+ #### Testeranto Adaptation:
34
+ 1. **For each language**: Parse entry points and track dependencies
35
+ 2. **Instead of bundling**: Generate wrapper files that import/run the original tests
36
+ 3. **Generate metafile**: Track relationships between source files and generated wrappers
37
+ 4. **Watch system**: Dual watchers for source changes and bundle updates
38
+
39
+ ### Implementation Pattern for New Languages
40
+
41
+ To add support for a new language (e.g., Rust, Java, C#), follow this pattern:
42
+
43
+ #### 1. Metafile Generator (`src/utils/[language]Metafile.ts`)
44
+ ```typescript
45
+ export async function generate[Language]Metafile(
46
+ testName: string,
47
+ entryPoints: string[]
48
+ ): Promise<[Language]Metafile> {
49
+ // Parse entry point files to find imports/dependencies
50
+ // Generate unique signature
51
+ // Return metafile structure with inputs and outputs
52
+ }
53
+
54
+ export function write[Language]Metafile(
55
+ testName: string,
56
+ metafile: [Language]Metafile
57
+ ): void {
58
+ // Write metafile to disk
59
+ // Generate output wrapper files with signatures
60
+ }
61
+ ```
62
+
63
+ #### 2. File Watcher (`src/utils/[language]Watcher.ts`)
64
+ ```typescript
65
+ export class [Language]Watcher {
66
+ async start() {
67
+ // Set up source file watcher
68
+ // Set up bundle file watcher
69
+ // Handle file change events
70
+ }
71
+
72
+ private async regenerateMetafile() {
73
+ // Regenerate metafile and output files
74
+ }
75
+ }
76
+ ```
77
+
78
+ #### 3. Language-specific Types (`src/[language]/types.[ext]`)
79
+ Define interfaces for:
80
+ - Test adapters
81
+ - Resource configurations
82
+ - Base test components (Given, When, Then)
83
+
84
+ #### 4. Process Manager (`src/[language]/PM/[language].go`)
85
+ Implement process communication for:
86
+ - Starting/stopping tests
87
+ - IPC communication
88
+ - Resource management
89
+
90
+ ### Key Implementation Details
91
+
92
+ #### Signature Handling
93
+ - Use timestamp-based or content-hash signatures
94
+ - Embed signatures in comments to avoid breaking code
95
+ - Ensure consistent output filenames for reliable watching
96
+
97
+ #### File Watching Strategy
98
+ - Use `chokidar` for Node.js-based watching
99
+ - Implement polling for reliability across filesystems
100
+ - Handle edge cases: file deletions, renames, permission changes
101
+
102
+ #### Metafile Structure
103
+ ```json
104
+ {
105
+ "errors": [],
106
+ "warnings": [],
107
+ "metafile": {
108
+ "inputs": {
109
+ "path/to/file.ext": {
110
+ "bytes": 1024,
111
+ "imports": ["dependency1", "dependency2"]
112
+ }
113
+ },
114
+ "outputs": {
115
+ "output/path/file.ext": {
116
+ "imports": [],
117
+ "exports": [],
118
+ "entryPoint": "original/file.ext",
119
+ "inputs": {
120
+ "original/file.ext": {
121
+ "bytesInOutput": 1024
122
+ }
123
+ },
124
+ "bytes": 1024,
125
+ "signature": "unique_id"
126
+ }
127
+ }
128
+ }
129
+ }
130
+ ```
131
+
132
+ ### Current Language Implementations
133
+
134
+ #### Go (Golingvu)
135
+ - **Entry points**: `.go` files with test functions
136
+ - **Output**: Wrapper files that run `go test`
137
+ - **Signature**: Timestamp in comments
138
+
139
+ #### Python (Pitono)
140
+ - **Entry points**: `.py` files with test cases
141
+ - **Output**: Python modules with test runners
142
+ - **Signature**: Content hash or timestamp
143
+
144
+ #### JavaScript/TypeScript
145
+ - **Entry points**: `.js`/`.ts` files
146
+ - **Output**: Bundled JavaScript with esbuild
147
+ - **Signature**: Integrated into build process
148
+
149
+ ### Common Challenges and Solutions
150
+
151
+ 1. **File Change Detection**
152
+ - Use polling with appropriate intervals
153
+ - Handle filesystem event limitations
154
+ - Implement manual fallback checks
155
+
156
+ 2. **Dependency Resolution**
157
+ - Parse language-specific import syntax
158
+ - Handle relative vs absolute imports
159
+ - Account for language-specific module systems
160
+
161
+ 3. **Cross-platform Compatibility**
162
+ - Normalize file paths
163
+ - Handle different line endings
164
+ - Account for filesystem case sensitivity
165
+
166
+ 4. **Performance**
167
+ - Debounce file change events
168
+ - Cache parsing results where possible
169
+ - Use efficient data structures for dependency tracking
170
+
171
+ ### Testing the Implementation
172
+
173
+ For each new language, verify:
174
+ 1. Source file changes trigger metafile regeneration
175
+ 2. Bundle file changes trigger test execution
176
+ 3. Signatures are properly updated and detected
177
+ 4. All file paths are handled consistently
178
+ 5. Error cases are properly handled (missing files, parse errors)
179
+
180
+ ### Future Considerations
181
+
182
+ - **Incremental builds**: Only rebuild changed portions
183
+ - **Dependency caching**: Store parsed dependencies to avoid re-parsing
184
+ - **Cross-language dependencies**: Handle cases where tests in one language depend on another
185
+ - **Remote execution**: Support running tests in containers or remote environments
186
+
187
+ This pattern allows Testeranto to maintain a consistent architecture while supporting multiple programming languages, each with their own unique characteristics and requirements.
@@ -0,0 +1,163 @@
1
+ package golingvu
2
+
3
+ import "fmt"
4
+
5
+ // BaseGiven represents a base Given condition
6
+ type BaseGiven struct {
7
+ Name string
8
+ Features []string
9
+ Whens []*BaseWhen
10
+ Thens []*BaseThen
11
+ Error error
12
+ Fail interface{}
13
+ Store interface{}
14
+ RecommendedFsPath string
15
+ GivenCB interface{}
16
+ InitialValues interface{}
17
+ Key string
18
+ Failed bool
19
+ Artifacts []string
20
+ GivenThatFunc func(subject, testResource, artifactory, initializer, initialValues, pm interface{}) (interface{}, error)
21
+ AfterEachFunc func(store interface{}, key string, artifactory, pm interface{}) (interface{}, error)
22
+ UberCatcherFunc func(func())
23
+ }
24
+
25
+ // AddArtifact adds an artifact path
26
+ func (bg *BaseGiven) AddArtifact(path string) {
27
+ // Normalize path separators
28
+ // For simplicity, we'll assume paths are already normalized
29
+ bg.Artifacts = append(bg.Artifacts, path)
30
+ }
31
+
32
+ // NewBaseGiven creates a new BaseGiven instance
33
+ func NewBaseGiven(name string, features []string, whens []*BaseWhen, thens []*BaseThen, givenCB, initialValues interface{}) *BaseGiven {
34
+ return &BaseGiven{
35
+ Name: name,
36
+ Features: features,
37
+ Whens: whens,
38
+ Thens: thens,
39
+ GivenCB: givenCB,
40
+ InitialValues: initialValues,
41
+ Artifacts: make([]string, 0),
42
+ }
43
+ }
44
+
45
+ // BeforeAll is called before all tests
46
+ func (bg *BaseGiven) BeforeAll(store interface{}) interface{} {
47
+ return store
48
+ }
49
+
50
+ // ToObj converts the instance to a map for serialization
51
+ func (bg *BaseGiven) ToObj() map[string]interface{} {
52
+ whenObjs := make([]map[string]interface{}, len(bg.Whens))
53
+ for i, w := range bg.Whens {
54
+ whenObjs[i] = w.ToObj()
55
+ }
56
+
57
+ thenObjs := make([]map[string]interface{}, len(bg.Thens))
58
+ for i, t := range bg.Thens {
59
+ thenObjs[i] = t.ToObj()
60
+ }
61
+
62
+ return map[string]interface{}{
63
+ "key": bg.Key,
64
+ "name": bg.Name,
65
+ "whens": whenObjs,
66
+ "thens": thenObjs,
67
+ "error": bg.Error,
68
+ "failed": bg.Failed,
69
+ "features": bg.Features,
70
+ "artifacts": bg.Artifacts,
71
+ }
72
+ }
73
+
74
+ // GivenThat is an abstract method to be implemented
75
+ func (bg *BaseGiven) GivenThat(subject, testResourceConfiguration, artifactory, givenCB, initialValues, pm interface{}) (interface{}, error) {
76
+ // To be implemented by concrete types
77
+ return nil, nil
78
+ }
79
+
80
+ // AfterEach is called after each test
81
+ func (bg *BaseGiven) AfterEach(store interface{}, key string, artifactory, pm interface{}) (interface{}, error) {
82
+ return store, nil
83
+ }
84
+
85
+ // UberCatcher handles errors
86
+ func (bg *BaseGiven) UberCatcher(e error) {
87
+ bg.Error = e
88
+ }
89
+
90
+ // Give executes the given condition
91
+ func (bg *BaseGiven) Give(
92
+ subject interface{},
93
+ key string,
94
+ testResourceConfiguration ITTestResourceConfiguration,
95
+ tester func(interface{}) bool,
96
+ artifactory func(string, interface{}),
97
+ tLog func(...string),
98
+ pm interface{},
99
+ suiteNdx int,
100
+ ) (interface{}, error) {
101
+ bg.Key = key
102
+ tLog("\n " + bg.Key)
103
+ tLog("\n Given: " + bg.Name)
104
+
105
+ // Setup
106
+ store, err := bg.GivenThat(
107
+ subject,
108
+ testResourceConfiguration,
109
+ artifactory,
110
+ bg.GivenCB,
111
+ bg.InitialValues,
112
+ pm,
113
+ )
114
+ if err != nil {
115
+ bg.Failed = true
116
+ bg.Error = err
117
+ return nil, err
118
+ }
119
+ bg.Store = store
120
+
121
+ // Process Whens
122
+ for whenNdx, when := range bg.Whens {
123
+ _, err := when.Test(
124
+ bg.Store,
125
+ testResourceConfiguration,
126
+ tLog,
127
+ pm,
128
+ fmt.Sprintf("suite-%d/given-%s/when/%d", suiteNdx, key, whenNdx),
129
+ )
130
+ if err != nil {
131
+ bg.Failed = true
132
+ bg.Error = err
133
+ return nil, err
134
+ }
135
+ }
136
+
137
+ // Process Thens
138
+ for thenNdx, then := range bg.Thens {
139
+ result, err := then.Test(
140
+ bg.Store,
141
+ testResourceConfiguration,
142
+ tLog,
143
+ pm,
144
+ fmt.Sprintf("suite-%d/given-%s/then-%d", suiteNdx, key, thenNdx),
145
+ )
146
+ if err != nil {
147
+ bg.Failed = true
148
+ bg.Error = err
149
+ return nil, err
150
+ }
151
+ tester(result)
152
+ }
153
+
154
+ // Cleanup
155
+ _, err = bg.AfterEach(bg.Store, bg.Key, artifactory, pm)
156
+ if err != nil {
157
+ bg.Failed = true
158
+ bg.Error = err
159
+ return nil, err
160
+ }
161
+
162
+ return bg.Store, nil
163
+ }
@@ -0,0 +1,85 @@
1
+ package golingvu
2
+
3
+ // BaseSuite represents a test suite
4
+ type BaseSuite struct {
5
+ Name string
6
+ Givens map[string]*BaseGiven
7
+ AfterAllFunc func(store interface{}, artifactory func(string, interface{}), pm interface{}) interface{}
8
+ AssertThatFunc func(t interface{}) bool
9
+ SetupFunc func(s interface{}, artifactory func(string, interface{}), tr ITTestResourceConfiguration, pm interface{}) interface{}
10
+ Store interface{}
11
+ TestResourceConfiguration ITTestResourceConfiguration
12
+ Index int
13
+ Failed bool
14
+ Fails int
15
+ Artifacts []string
16
+ }
17
+
18
+ // Run executes the test suite
19
+ func (bs *BaseSuite) Run(input interface{}, testResourceConfiguration ITTestResourceConfiguration, artifactory func(string, interface{}), tLog func(...string), pm interface{}) (*BaseSuite, error) {
20
+ bs.TestResourceConfiguration = testResourceConfiguration
21
+
22
+ // Setup
23
+ subject := bs.SetupFunc(input, artifactory, testResourceConfiguration, pm)
24
+
25
+ // Run each given
26
+ for gKey, g := range bs.Givens {
27
+ _, err := g.Give(
28
+ subject,
29
+ gKey,
30
+ testResourceConfiguration,
31
+ bs.AssertThatFunc,
32
+ artifactory,
33
+ tLog,
34
+ pm,
35
+ bs.Index,
36
+ )
37
+ if err != nil {
38
+ bs.Failed = true
39
+ bs.Fails++
40
+ return bs, err
41
+ }
42
+ }
43
+
44
+ // After all
45
+ bs.AfterAllFunc(bs.Store, artifactory, pm)
46
+
47
+ return bs, nil
48
+ }
49
+
50
+ // ToObj converts the suite to a serializable object
51
+ func (bs *BaseSuite) ToObj() map[string]interface{} {
52
+ givens := make([]map[string]interface{}, 0)
53
+ for _, given := range bs.Givens {
54
+ givens = append(givens, given.ToObj())
55
+ }
56
+
57
+ return map[string]interface{}{
58
+ "name": bs.Name,
59
+ "givens": givens,
60
+ "fails": bs.Fails,
61
+ "failed": bs.Failed,
62
+ "features": bs.Features(),
63
+ }
64
+ }
65
+
66
+ // Features returns the features covered by this suite
67
+ func (bs *BaseSuite) Features() []string {
68
+ features := make([]string, 0)
69
+ seen := make(map[string]bool)
70
+
71
+ for _, given := range bs.Givens {
72
+ for _, feature := range given.Features {
73
+ if !seen[feature] {
74
+ features = append(features, feature)
75
+ seen[feature] = true
76
+ }
77
+ }
78
+ }
79
+ return features
80
+ }
81
+
82
+ // AddArtifact adds an artifact to the suite
83
+ func (bs *BaseSuite) AddArtifact(path string) {
84
+ bs.Artifacts = append(bs.Artifacts, path)
85
+ }
@@ -0,0 +1,21 @@
1
+ package golingvu
2
+
3
+ // BaseThen represents a Then condition
4
+ type BaseThen struct {
5
+ Name string
6
+ ThenCB interface{}
7
+ ButThenFunc func(store, thenCB, testResource, pm interface{}) (interface{}, error)
8
+ }
9
+
10
+ // Test executes the Then condition
11
+ func (bt *BaseThen) Test(store interface{}, testResourceConfiguration ITTestResourceConfiguration, tLog func(...string), pm interface{}, path string) (interface{}, error) {
12
+ // Implementation would go here
13
+ return nil, nil
14
+ }
15
+
16
+ // ToObj converts the Then condition to a serializable object
17
+ func (bt *BaseThen) ToObj() map[string]interface{} {
18
+ return map[string]interface{}{
19
+ "name": bt.Name,
20
+ }
21
+ }
@@ -0,0 +1,21 @@
1
+ package golingvu
2
+
3
+ // BaseWhen represents a When condition
4
+ type BaseWhen struct {
5
+ Name string
6
+ WhenCB interface{}
7
+ AndWhenFunc func(store, whenCB, testResource, pm interface{}) (interface{}, error)
8
+ }
9
+
10
+ // Test executes the When condition
11
+ func (bw *BaseWhen) Test(store interface{}, testResourceConfiguration ITTestResourceConfiguration, tLog func(...string), pm interface{}, path string) (interface{}, error) {
12
+ // Implementation would go here
13
+ return nil, nil
14
+ }
15
+
16
+ // ToObj converts the When condition to a serializable object
17
+ func (bw *BaseWhen) ToObj() map[string]interface{} {
18
+ return map[string]interface{}{
19
+ "name": bw.Name,
20
+ }
21
+ }