testeranto 0.140.2 → 0.146.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 (204) hide show
  1. package/.aider.chat.history.md +11006 -0
  2. package/.aider.input.history +441 -0
  3. package/.aider.tags.cache.v3/06/1a/1ec9fd1f595d4b36094caef45894.val +0 -0
  4. package/.aider.tags.cache.v3/0f/f6/f42b5108253d75de3cb6286df7f6.val +0 -0
  5. package/.aider.tags.cache.v3/{ad/3c/10f2ab1397f6d544e613d2a6acaf.val → 3d/81/8b6f0e9b98ec2952cdb8968ac386.val} +0 -0
  6. package/.aider.tags.cache.v3/cache.db +0 -0
  7. package/.aider.tags.cache.v3/{a7/97/6d37fce350ad2d588f36729db0cd.val → d6/7d/1820c2d4b9330eab7017da4515e7.val} +0 -0
  8. package/README.md +15 -16
  9. package/dist/tsconfig.tsbuildinfo +1 -1
  10. package/docs/aiderTest.sh +1 -0
  11. package/docs/index.md +45 -33
  12. package/docs/testing.ai.txt +98 -0
  13. package/docs/testing.prompt.txt +8 -0
  14. package/package.json +3 -3
  15. package/src/Node.ts +17 -13
  16. package/src/PM/PM_WithEslintAndTsc.ts +83 -67
  17. package/src/PM/main.ts +182 -92
  18. package/src/PM/node.ts +1 -15
  19. package/src/PM/nodeSidecar.ts +0 -1
  20. package/src/Pure.test.ts +299 -0
  21. package/src/Pure.ts +20 -2
  22. package/src/Types.ts +5 -5
  23. package/src/Web.ts +1 -1
  24. package/src/build.ts +0 -1
  25. package/src/esbuildConfigs/consoleDetectorPlugin.ts +28 -14
  26. package/src/esbuildConfigs/nativeImportDetectorPlugin.ts +26 -0
  27. package/src/esbuildConfigs/pure.ts +3 -1
  28. package/src/esbuildConfigs/rebuildPlugin.ts +1 -4
  29. package/src/lib/BaseSuite.test/node.test.ts +12 -0
  30. package/src/lib/BaseSuite.test/pure.test.ts +12 -0
  31. package/src/lib/{BaseSuite.test.ts → BaseSuite.test/test.ts} +36 -27
  32. package/src/lib/BaseSuite.test/web.test.ts +12 -0
  33. package/src/lib/BaseSuite.ts +17 -15
  34. package/src/lib/abstractBase.test/MockGiven.ts +31 -0
  35. package/src/lib/abstractBase.test/MockThen.ts +20 -0
  36. package/src/lib/abstractBase.test/MockWhen.ts +17 -0
  37. package/src/lib/abstractBase.test/implementation.ts +51 -0
  38. package/src/lib/abstractBase.test/index.ts +19 -0
  39. package/src/lib/abstractBase.test/interface.ts +12 -0
  40. package/src/lib/abstractBase.test/specification.ts +49 -0
  41. package/src/lib/abstractBase.test/types.ts +19 -0
  42. package/src/lib/abstractBase.ts +0 -2
  43. package/src/lib/baseBuilder.test/TestBaseBuilder.ts +83 -0
  44. package/src/lib/baseBuilder.test/baseBuilder.test.implementation.ts +134 -0
  45. package/src/lib/baseBuilder.test/baseBuilder.test.interface.ts +18 -0
  46. package/src/lib/baseBuilder.test/baseBuilder.test.node.ts +14 -0
  47. package/src/lib/baseBuilder.test/baseBuilder.test.pure.ts +14 -0
  48. package/src/lib/baseBuilder.test/baseBuilder.test.specification.ts +35 -0
  49. package/src/lib/baseBuilder.test/baseBuilder.test.types.ts +36 -0
  50. package/src/lib/baseBuilder.test/baseBuilder.test.web.ts +14 -0
  51. package/src/lib/basebuilder.ts +2 -1
  52. package/src/lib/classBuilder.test/TestClassBuilder.ts +88 -0
  53. package/src/lib/classBuilder.test/classBuilder.test.implementation.ts +204 -0
  54. package/src/lib/classBuilder.test/classBuilder.test.interface.ts +18 -0
  55. package/src/lib/classBuilder.test/classBuilder.test.specification.ts +113 -0
  56. package/src/lib/classBuilder.test/classBuilder.test.ts +14 -0
  57. package/src/lib/classBuilder.test/classBuilder.test.types.ts +84 -0
  58. package/src/lib/core.test/MockCore.ts +49 -0
  59. package/src/lib/core.test/core.test.implementation.ts +129 -0
  60. package/src/lib/core.test/core.test.interface.ts +18 -0
  61. package/src/lib/core.test/core.test.specification.ts +99 -0
  62. package/src/lib/core.test/core.test.ts +15 -0
  63. package/src/lib/core.test/core.test.types.ts +68 -0
  64. package/src/lib/core.ts +1 -11
  65. package/src/lib/pmProxy.test/implementation.ts +104 -0
  66. package/src/lib/pmProxy.test/index.ts +19 -0
  67. package/src/lib/pmProxy.test/interface.ts +46 -0
  68. package/src/lib/pmProxy.test/mockPM.ts +38 -0
  69. package/src/lib/pmProxy.test/mockPMBase.ts +136 -0
  70. package/src/lib/pmProxy.test/specification.ts +123 -0
  71. package/src/lib/pmProxy.test/types.ts +45 -0
  72. package/src/lib/pmProxy.ts +40 -193
  73. package/src/run.ts +7 -7
  74. package/testeranto/bundles/node/allTests/chunk-NQBTLMSG.mjs +254 -0
  75. package/testeranto/bundles/node/allTests/chunk-RF3LIUSG.mjs +765 -0
  76. package/testeranto/bundles/node/allTests/chunk-YZWFKYY3.mjs +171 -0
  77. package/testeranto/bundles/node/allTests/metafile.json +628 -3567
  78. package/testeranto/bundles/node/allTests/src/lib/BaseSuite.test/node.test.mjs +325 -0
  79. package/testeranto/bundles/node/allTests/src/lib/baseBuilder.test/baseBuilder.test.node.mjs +226 -0
  80. package/testeranto/bundles/node/allTests/src/lib/classBuilder.test/classBuilder.test.mjs +408 -0
  81. package/testeranto/bundles/node/allTests/src/lib/core.test/core.test.mjs +279 -0
  82. package/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs +4587 -0
  83. package/testeranto/bundles/{node/allTests/chunk-4PJCC2XT.mjs → pure/allTests/chunk-W22WOQNK.mjs} +208 -326
  84. package/testeranto/bundles/pure/allTests/metafile.json +732 -3
  85. package/testeranto/bundles/pure/allTests/src/Pure.test.mjs +369 -0
  86. package/testeranto/bundles/{node/allTests/src/lib/BaseSuite.test.mjs → pure/allTests/src/lib/BaseSuite.test/pure.test.mjs} +26 -8
  87. package/testeranto/bundles/pure/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure.mjs +224 -0
  88. package/testeranto/bundles/web/allTests/chunk-FIZ3WLUB.mjs +943 -0
  89. package/testeranto/bundles/web/allTests/metafile.json +1133 -2
  90. package/testeranto/bundles/web/allTests/src/lib/BaseSuite.test/web.test.html +19 -0
  91. package/testeranto/bundles/web/allTests/src/lib/BaseSuite.test/web.test.mjs +322 -0
  92. package/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.html +19 -0
  93. package/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.mjs +10964 -0
  94. package/testeranto/index.html +1 -1
  95. package/testeranto/reports/allTests/config.json +50 -11
  96. package/testeranto/reports/allTests/index.html +1 -1
  97. package/testeranto/reports/allTests/src/Pure.test/pure/lint_errors.json +1539 -0
  98. package/testeranto/reports/allTests/src/Pure.test/pure/logs.txt +11 -0
  99. package/testeranto/reports/allTests/src/Pure.test/pure/message +1 -0
  100. package/testeranto/reports/allTests/src/Pure.test/pure/prompt.txt +8 -0
  101. package/testeranto/reports/allTests/src/{PM/__tests__/pureSidecar.testeranto/node → Pure.test/pure}/type_errors.txt +18 -14
  102. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/lint_errors.json +620 -0
  103. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/logs.txt +12 -0
  104. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/message +1 -0
  105. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/prompt.txt +8 -0
  106. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/type_errors.txt +94 -0
  107. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/index.html +21 -0
  108. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/lint_errors.json +620 -0
  109. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/logs.txt +11 -0
  110. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/message +1 -0
  111. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/prompt.txt +8 -0
  112. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/type_errors.txt +104 -0
  113. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/dev.html +21 -0
  114. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/index.html +21 -0
  115. package/testeranto/reports/allTests/src/lib/BaseSuite.test/{node → web.test/web}/lint_errors.json +69 -57
  116. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/logs.txt +10 -0
  117. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/message +1 -0
  118. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/prompt.txt +8 -0
  119. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/type_errors.txt +95 -0
  120. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/dev.html +21 -0
  121. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/index.html +21 -0
  122. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.json +966 -0
  123. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/message +1 -0
  124. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/prompt.txt +11 -0
  125. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/type_errors.txt +57 -0
  126. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/bdd_errors.txt +1 -0
  127. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/dev.html +21 -0
  128. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/index.html +21 -0
  129. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.json +966 -0
  130. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/log.txt +0 -0
  131. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/message +1 -0
  132. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/prompt.txt +11 -0
  133. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/tests.json +57 -0
  134. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/type_errors.txt +57 -0
  135. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/bdd_errors.txt +1 -0
  136. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/dev.html +21 -0
  137. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/index.html +21 -0
  138. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.json +966 -0
  139. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/log.txt +0 -0
  140. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/logs.txt +0 -0
  141. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/message +1 -0
  142. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/prompt.txt +11 -0
  143. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/tests.json +57 -0
  144. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/type_errors.txt +48 -0
  145. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/dev.html +21 -0
  146. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/index.html +21 -0
  147. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/lint_errors.json +791 -0
  148. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/logs.txt +12 -0
  149. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/message +1 -0
  150. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/prompt.txt +11 -0
  151. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/type_errors.txt +55 -0
  152. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/dev.html +21 -0
  153. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/index.html +21 -0
  154. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/lint_errors.json +416 -0
  155. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/logs.txt +17 -0
  156. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/message +1 -0
  157. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/prompt.txt +11 -0
  158. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/type_errors.txt +65 -0
  159. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/dev.html +21 -0
  160. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/index.html +21 -0
  161. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/lint_errors.json +1724 -0
  162. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/log.txt +0 -0
  163. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/logs.txt +30 -0
  164. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/message +1 -0
  165. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/prompt.txt +11 -0
  166. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/type_errors.txt +64 -0
  167. package/testeranto/reports/allTests/summary.json +59 -24
  168. package/testeranto.config.ts +37 -12
  169. package/tsc.log +273 -27
  170. package/testeranto/bundles/node/allTests/chunk-PG6KUKNP.mjs +0 -44
  171. package/testeranto/bundles/node/allTests/src/PM/__tests__/nodeSidecar.testeranto.mjs +0 -187
  172. package/testeranto/bundles/node/allTests/src/PM/__tests__/pureSidecar.testeranto.mjs +0 -156
  173. package/testeranto/bundles/node/allTests/src/PM/__tests__/webSidecar.testeranto.mjs +0 -156
  174. package/testeranto/bundles/node/allTests/src/mothership/test.mjs +0 -24411
  175. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/index.html +0 -21
  176. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/lint_errors.json +0 -80
  177. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/message +0 -1
  178. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/prompt.txt +0 -8
  179. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/type_errors.txt +0 -28
  180. package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/index.html +0 -21
  181. package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/lint_errors.json +0 -80
  182. package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/message +0 -1
  183. package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/prompt.txt +0 -8
  184. package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/index.html +0 -21
  185. package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/lint_errors.json +0 -80
  186. package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/message +0 -1
  187. package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/prompt.txt +0 -8
  188. package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/type_errors.txt +0 -32
  189. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/console_log.txt +0 -35
  190. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/index.html +0 -21
  191. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/message +0 -1
  192. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/prompt.txt +0 -7
  193. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/type_errors.txt +0 -68
  194. package/testeranto/reports/allTests/src/mothership/test/node/index.html +0 -21
  195. package/testeranto/reports/allTests/src/mothership/test/node/lint_errors.json +0 -1
  196. package/testeranto/reports/allTests/src/mothership/test/node/message +0 -1
  197. package/testeranto/reports/allTests/src/mothership/test/node/prompt.txt +0 -8
  198. package/testeranto/reports/allTests/src/mothership/test/node/type_errors.txt +0 -24
  199. /package/testeranto/reports/allTests/src/{PM/__tests__/nodeSidecar.testeranto/node → Pure.test/pure}/dev.html +0 -0
  200. /package/testeranto/reports/allTests/src/{PM/__tests__/pureSidecar.testeranto/node/dev.html → Pure.test/pure/index.html} +0 -0
  201. /package/testeranto/reports/allTests/src/{PM/__tests__/webSidecar.testeranto → lib/BaseSuite.test/node.test}/node/dev.html +0 -0
  202. /package/testeranto/reports/allTests/src/lib/BaseSuite.test/{node/dev.html → node.test/node/index.html} +0 -0
  203. /package/testeranto/reports/allTests/src/{mothership/test/node → lib/BaseSuite.test/pure.test/pure}/dev.html +0 -0
  204. /package/testeranto/reports/allTests/src/lib/{BaseSuite.test/node/log.txt → baseBuilder.test/baseBuilder.test.node/node/logs.txt} +0 -0
@@ -994,3 +994,444 @@
994
994
 
995
995
  # 2025-07-15 08:47:43.658057
996
996
  +testeranto/reports/allTests/src/lib/BaseSuite.test/node/message
997
+
998
+ # 2025-07-15 10:11:14.342950
999
+ +/read index.md
1000
+ +/read docs/index.md
1001
+ +/read src/CoreTypes.ts
1002
+ +
1003
+ +/add src/lib/baseBuilder.ts
1004
+ +
1005
+ +create a testeranto test of baseBuilder. Follow the examples given in the docs. Use the types in CoreTypes rigorously
1006
+
1007
+ # 2025-07-15 10:11:32.770369
1008
+ +/read index.md
1009
+
1010
+ # 2025-07-15 10:11:45.046678
1011
+ +/read README.md
1012
+
1013
+ # 2025-07-15 10:11:50.706133
1014
+ +/read docs/index.md
1015
+ +/read src/CoreTypes.ts
1016
+
1017
+ # 2025-07-15 10:11:56.853874
1018
+ +/read docs/index.md src/CoreTypes.ts
1019
+
1020
+ # 2025-07-15 10:12:03.664197
1021
+ +/add src/lib/baseBuilder.ts
1022
+
1023
+ # 2025-07-15 10:12:10.079841
1024
+ +create a testeranto test of baseBuilder. Follow the examples given in the docs. Use the types in CoreTypes rigorously
1025
+
1026
+ # 2025-07-15 10:13:40.986563
1027
+ +y
1028
+
1029
+ # 2025-07-15 10:13:50.487568
1030
+ +n
1031
+
1032
+ # 2025-07-15 10:25:55.680954
1033
+ +BaseBuilder is an abstract class, which cannot be instantiated. Create an implementation of this class to be used only for testing purpose.
1034
+
1035
+ # 2025-07-15 10:26:24.952051
1036
+ +/read src/lib/baseBuilder.test/
1037
+
1038
+ # 2025-07-15 10:26:29.123376
1039
+ +BaseBuilder is an abstract class, which cannot be instantiated. Create an implementation of this class to be used only for testing purpose.
1040
+
1041
+ # 2025-07-15 10:27:21.295368
1042
+ +y
1043
+
1044
+ # 2025-07-15 10:32:53.941367
1045
+ +/Users/adam/Code/testeranto/src/PM/PM_WithEslintAndTsc.ts:231
1046
+ + this.summary[src].typeErrors = "?";
1047
+ + ^
1048
+ +
1049
+ +
1050
+ +TypeError: Cannot set properties of undefined (setting 'typeErrors')
1051
+ + at PM_Main.typeCheckIsRunning (/Users/adam/Code/testeranto/src/PM/PM_WithEslintAndTsc.ts:231:23)
1052
+ + at PM_Main.tscCheck (/Users/adam/Code/testeranto/src/PM/PM_WithEslintAndTsc.ts:64:10)
1053
+ + at <anonymous> (/Users/adam/Code/testeranto/src/PM/main.ts:463:16)
1054
+
1055
+ # 2025-07-15 10:33:02.534776
1056
+ +"/Users/adam/Code/testeranto/src/PM/PM_WithEslintAndTsc.ts:231
1057
+ + this.summary[src].typeErrors = "?";
1058
+ + ^
1059
+ +
1060
+ +
1061
+ +TypeError: Cannot set properties of undefined (setting 'typeErrors')
1062
+ + at PM_Main.typeCheckIsRunning (/Users/adam/Code/testeranto/src/PM/PM_WithEslintAndTsc.ts:231:23)
1063
+ + at PM_Main.tscCheck (/Users/adam/Code/testeranto/src/PM/PM_WithEslintAndTsc.ts:64:10)
1064
+ + at <anonymous> (/Users/adam/Code/testeranto/src/PM/main.ts:463:16)"
1065
+
1066
+ # 2025-07-15 10:34:43.019926
1067
+ +try again
1068
+
1069
+ # 2025-07-15 10:35:02.940975
1070
+ +try again but don't make changes before i confirm them
1071
+
1072
+ # 2025-07-15 10:37:29.007021
1073
+ +/add src/PM/main.ts dist/module/src/PM/PM_WithEslintAndTsc.js
1074
+
1075
+ # 2025-07-15 10:38:20.281708
1076
+ +/add src/PM/index.ts src/PM/base.ts src/PM/PM_WithEslintAndTsc.ts
1077
+
1078
+ # 2025-07-15 10:38:26.549659
1079
+ +/drop dist
1080
+
1081
+ # 2025-07-15 10:38:52.988067
1082
+ +no change. look at these files and formulate a plan
1083
+
1084
+ # 2025-07-15 10:40:31.666535
1085
+ +yes
1086
+
1087
+ # 2025-07-15 10:43:20.253342
1088
+ +add more comprehensive specifications
1089
+
1090
+ # 2025-07-15 10:55:49.055155
1091
+ +/add docs/index.md
1092
+ +/add README.md
1093
+ +/add src/CoreTypes.ts
1094
+ +
1095
+ +
1096
+
1097
+ # 2025-07-15 10:56:02.736129
1098
+ +/add docs/index.md README.md src/CoreTypes.ts
1099
+ +
1100
+ +
1101
+
1102
+ # 2025-07-15 10:56:14.513648
1103
+ +/add src/lib/
1104
+
1105
+ # 2025-07-15 10:56:26.859359
1106
+ +/drop src/lib/TEST_ADAPTER_RENAME.md
1107
+
1108
+ # 2025-07-15 10:56:53.447310
1109
+ +/drop src/lib/core.ts
1110
+
1111
+ # 2025-07-15 10:57:01.265926
1112
+ +/drop src/lib/pmProxy.ts
1113
+
1114
+ # 2025-07-15 10:57:46.114410
1115
+ +create a testeranto test for `ClassBuilder` . Try to re-use as much code as possible.
1116
+
1117
+ # 2025-07-15 10:59:13.267765
1118
+ +n
1119
+
1120
+ # 2025-07-15 10:59:42.569050
1121
+ +one change: Basebuilder is abstract, you must create a dummy implementation to test against.
1122
+
1123
+ # 2025-07-15 11:00:37.529188
1124
+ +y
1125
+
1126
+ # 2025-07-15 11:01:04.219362
1127
+ +n
1128
+
1129
+ # 2025-07-15 11:02:32.835327
1130
+ +create the rest of the test files
1131
+
1132
+ # 2025-07-15 11:04:13.669194
1133
+ +y
1134
+
1135
+ # 2025-07-15 11:04:22.738122
1136
+ +n
1137
+
1138
+ # 2025-07-15 11:06:05.929640
1139
+ +create classBuilder.test.types and populate it with the types I, O, and M. the other classbuilder test files should use these types
1140
+
1141
+ # 2025-07-15 11:07:17.058023
1142
+ +y
1143
+
1144
+ # 2025-07-15 11:08:27.519231
1145
+ +add some more comprehensive tests
1146
+
1147
+ # 2025-07-15 11:15:20.916901
1148
+ +n
1149
+
1150
+ # 2025-07-15 11:16:01.516683
1151
+ +I have made some alterations to you work. PLease try to understand them and record whatever notes you need to remind you in docs/testing.ai.md
1152
+
1153
+ # 2025-07-15 11:16:09.813924
1154
+ +I have made some alterations to you work. PLease try to understand them and record whatever notes you need to remind you in docs/testing.ai.txt
1155
+
1156
+ # 2025-07-15 11:16:24.287328
1157
+ +/read docs/testing.ai.txt
1158
+
1159
+ # 2025-07-15 11:16:35.805812
1160
+ +I have made some alterations to you work. PLease try to understand them and record whatever notes you need to remind you in docs/testing.ai.txt
1161
+
1162
+ # 2025-07-15 11:17:32.861466
1163
+ +y
1164
+
1165
+ # 2025-07-15 11:42:47.446827
1166
+ +/add src/lib/core.ts
1167
+
1168
+ # 2025-07-15 11:43:55.406815
1169
+ +create a testeranto test of the class in core.ts. Re-use as much code as you can from other tests. You will need to create a concrete implementation to test against, because the test subject is an abstract class.
1170
+
1171
+ # 2025-07-15 11:48:04.809321
1172
+ +y
1173
+
1174
+ # 2025-07-15 11:48:29.144359
1175
+ +n
1176
+
1177
+ # 2025-07-15 11:48:59.730504
1178
+ +this is the shell command to launch tests "yarn run t-build allTests once && yarn run t-run allTests once"
1179
+
1180
+ # 2025-07-15 11:53:44.658545
1181
+ +n
1182
+
1183
+ # 2025-07-15 11:56:26.602409
1184
+ +/add src/lib/pmProxy.ts
1185
+
1186
+ # 2025-07-15 11:56:47.675599
1187
+ +write a testeranto test of the functions in pmProxy
1188
+
1189
+ # 2025-07-15 11:56:53.727422
1190
+ +n
1191
+
1192
+ # 2025-07-15 11:58:56.083859
1193
+ +/read src/lib/pmProxy.ts
1194
+
1195
+ # 2025-07-15 11:59:20.605050
1196
+ +create a testeranto test of the functions in pmProxy
1197
+
1198
+ # 2025-07-15 12:00:48.404968
1199
+ +create a folder called src/lib/pmProxy.test and put all the related files there. then proceed with option 3
1200
+
1201
+ # 2025-07-15 12:02:31.653475
1202
+ +y
1203
+
1204
+ # 2025-07-15 12:02:36.881891
1205
+ +/run mkdir -p src/lib/pmProxy.test
1206
+
1207
+ # 2025-07-15 12:02:36.882097
1208
+ +/run mkdir -p src/lib/pmProxy.test
1209
+
1210
+ # 2025-07-15 12:02:39.685895
1211
+ +y
1212
+
1213
+ # 2025-07-15 12:02:42.632803
1214
+ +n
1215
+
1216
+ # 2025-07-15 12:22:58.866239
1217
+ +/add src/PM/base.ts
1218
+
1219
+ # 2025-07-15 12:23:15.978122
1220
+ +create a mock `implementation` of PM_Base
1221
+
1222
+ # 2025-07-15 12:24:50.288888
1223
+ +y
1224
+
1225
+ # 2025-07-15 12:26:20.288993
1226
+ +/add src/PM/index.ts
1227
+
1228
+ # 2025-07-15 12:26:41.032891
1229
+ +create a mock `implementation` of PM
1230
+
1231
+ # 2025-07-15 12:27:27.124849
1232
+ +don't overwrite the other mock PM. I want implementations of both. Try to re-use code
1233
+
1234
+ # 2025-07-15 12:29:53.541883
1235
+ +y
1236
+
1237
+ # 2025-07-15 13:19:27.107611
1238
+ +stdout > mark2 butThen {
1239
+ + beforeEachProxy: MockPMBase { calls: {}, testResourceConfiguration: {}, configs: {} }
1240
+ +} async (s) => {
1241
+ + tLog(" Then!!!:", this.name);
1242
+ + if (typeof this.thenCB === "function") {
1243
+ + return await this.thenCB(s);
1244
+ + } else {
1245
+ + return this.thenCB;
1246
+ + }
1247
+ + }
1248
+ +mark1
1249
+ +undefined undefined undefined
1250
+ +test failed 3 TypeError: Cannot read properties of undefined (reading 'butThenProxy')
1251
+ + at Then.thenCB (file:///Users/adam/Code/testeranto/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs:1016:23)
1252
+ + at file:///Users/adam/Code/testeranto/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs:335:29
1253
+ + at Object.butThen (file:///Users/adam/Code/testeranto/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs:5153:12)
1254
+ + at Then.butThen (file:///Users/adam/Code/testeranto/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs:717:42)
1255
+ + at Then.test (file:///Users/adam/Code/testeranto/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs:330:17)
1256
+ + at Given.give (file:///Users/adam/Code/testeranto/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs:261:34)
1257
+ + at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
1258
+ + at async TesterantoCore.constructor.run (file:///Users/adam/Code/testeranto/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs:621:20)
1259
+ + at async file:///Users/adam/Code/testeranto/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs:410:19
1260
+ + at async Object.receiveTestResourceConfig (file:///Users/adam/Code/testeranto/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs:438:29)
1261
+
1262
+ # 2025-07-15 13:37:19.816910
1263
+ +/add src/Pure.ts
1264
+
1265
+ # 2025-07-15 13:38:02.793642
1266
+ +create a testeranto test of PureTesteranto. Rigorously apply types and reuse of existing test code.
1267
+
1268
+ # 2025-07-15 13:39:11.592975
1269
+ +y
1270
+
1271
+ # 2025-07-15 13:39:13.822048
1272
+ +n
1273
+
1274
+ # 2025-07-15 13:40:56.647291
1275
+ +create some more comprhensive specifications
1276
+
1277
+ # 2025-07-15 13:43:16.850747
1278
+ +n
1279
+
1280
+ # 2025-07-15 13:43:31.230236
1281
+ +create some more comprhensive specifications for PureTesteranto
1282
+
1283
+ # 2025-07-15 13:45:56.322053
1284
+ +n
1285
+
1286
+ # 2025-07-15 13:46:50.056472
1287
+ +/add src/lib
1288
+
1289
+ # 2025-07-15 13:47:07.639884
1290
+ +/drop src/lib/TEST_ADAPTER_RENAME.md
1291
+
1292
+ # 2025-07-15 13:48:50.253398
1293
+ +Since the tests seem to be up and working, I want you to take a second look at all the tests, and how they interact. Make any changes you think are warranted.
1294
+
1295
+ # 2025-07-15 13:49:26.068699
1296
+ +n
1297
+
1298
+ # 2025-07-15 13:49:50.822421
1299
+ +/add src/lib
1300
+
1301
+ # 2025-07-15 13:50:13.415663
1302
+ +/add src/Pure src/Pure.test.ts
1303
+
1304
+ # 2025-07-15 13:50:16.798014
1305
+ +n
1306
+
1307
+ # 2025-07-15 13:50:22.077390
1308
+ +/add src/Pure.ts src/Pure.test.ts
1309
+
1310
+ # 2025-07-15 13:50:57.461486
1311
+ +I want you to take a final look at all the tests at once. Consider how they interact. Add any specifications you think are warranted.
1312
+
1313
+ # 2025-07-15 13:54:19.829020
1314
+ +create testeranto tests for BaseGiven, BaseWhen and BaseThen. You will need to implement concrete mock to test against for all 3. Integrate these new tests with existing tests.
1315
+
1316
+ # 2025-07-15 13:56:03.250448
1317
+ +y
1318
+
1319
+ # 2025-07-15 13:56:13.753585
1320
+ +n
1321
+
1322
+ # 2025-07-15 14:00:13.455117
1323
+ +Testeranto is now nearly entirely self-tested. 1) Take one more look at the tests 2) Give me you opinion of what we should do next 3) Write down any notes in docs/testing.ai.txt that will help you do better next time
1324
+
1325
+ # 2025-07-15 14:00:55.318659
1326
+ +y
1327
+
1328
+ # 2025-07-15 14:06:29.045555
1329
+ +Write me blog post describing our latest work. It should appeal to other programmers, web developers and AI enthusiats. I want you to "hype up" the project- I want other to be excited to try testeranto for themselves. Make sure to leave kudos to the maker of Aider, without which this would not have been possible. Emphasize that 1) testeranto is now self-testing 2) The benfits of testeranto's BDD interface 3) the benifits of testerantos bundling process- esbuild produces a bundle and ametafile, which contains a list of the files which were included in the bundling, which means that you can fit all the relevant files, and only the relevant files, into an LLMs context. Emphasis the value proposition of testeranto- tests that write themselves and which fit into an LLMs context. The latest version of testeranto is 0.143.0
1330
+
1331
+ # 2025-07-15 14:07:23.788565
1332
+ +n
1333
+
1334
+ # 2025-07-15 17:30:57.825360
1335
+ +/add README.md
1336
+
1337
+ # 2025-07-15 17:31:13.423287
1338
+ +check README.md for gramatical errors and mispellings
1339
+
1340
+ # 2025-07-15 17:32:58.684258
1341
+ +make those changes
1342
+
1343
+ # 2025-07-15 17:35:35.565399
1344
+ +y
1345
+
1346
+ # 2025-07-15 17:35:38.026324
1347
+ +d
1348
+
1349
+ # 2025-07-15 17:35:39.509126
1350
+ +n
1351
+
1352
+ # 2025-07-15 17:35:48.802666
1353
+ +make those changes directly in the readme
1354
+
1355
+ # 2025-07-15 17:49:04.623486
1356
+ +Make the changes to README. Don
1357
+
1358
+ # 2025-07-15 17:49:14.010060
1359
+ +Make the changes to README. Don't save as blocks- edit README
1360
+
1361
+ # 2025-07-15 17:51:12.324771
1362
+ +n
1363
+
1364
+ # 2025-07-15 17:52:28.829475
1365
+ +lets try again. Edit README.md by fixing any gramatical or spelling errors.
1366
+
1367
+ # 2025-07-15 17:53:34.081803
1368
+ +n
1369
+
1370
+ # 2025-07-15 17:55:12.783162
1371
+ +ok. one more time. I want you to edit README.md, fixing gramatical errors. Don't try to execute it- it is not code, even though it has code samples.
1372
+
1373
+ # 2025-07-15 18:00:10.073272
1374
+ +can you look at README.md and confirm if your changes have been made?
1375
+
1376
+ # 2025-07-15 18:00:36.545410
1377
+ +n
1378
+
1379
+ # 2025-07-15 18:00:51.241339
1380
+ +/add README.md
1381
+
1382
+ # 2025-07-15 18:01:16.166071
1383
+ +/add README.md
1384
+
1385
+ # 2025-07-15 18:01:33.441839
1386
+ +find and fix any grammatical or spelling mistakes
1387
+
1388
+ # 2025-07-15 18:05:09.746853
1389
+ +https://raw.githubusercontent.com/Prinzhorn/skrollr/refs/heads/master/src/skrollr.js
1390
+
1391
+ # 2025-07-15 18:05:11.985806
1392
+ +y
1393
+
1394
+ # 2025-07-15 18:05:14.241580
1395
+ +n
1396
+
1397
+ # 2025-07-15 18:06:25.115070
1398
+ +/add scripts/compile-docs.js
1399
+
1400
+ # 2025-07-15 18:06:30.692038
1401
+ +/read index.html
1402
+
1403
+ # 2025-07-15 18:06:44.332376
1404
+ +/add style.css
1405
+
1406
+ # 2025-07-15 18:08:34.262594
1407
+ +1) Understand that index.html is a generated file. don't edit it directly. Make the change in scripts/compile-docs.js 2) I want you to use skrollr to create a parallax effect. Make a very simple imnplementation first and then I will give you more details
1408
+
1409
+ # 2025-07-15 18:09:28.272256
1410
+ +y
1411
+
1412
+ # 2025-07-15 18:09:28.279182
1413
+ +/run node scripts/compile-docs.js
1414
+
1415
+ # 2025-07-15 18:09:28.279392
1416
+ +/run node scripts/compile-docs.js
1417
+
1418
+ # 2025-07-15 18:09:36.807723
1419
+ +y
1420
+
1421
+ # 2025-07-15 18:15:39.388229
1422
+ +can you make the parallax effect more pronounced?
1423
+
1424
+ # 2025-07-15 18:16:42.881158
1425
+ +n
1426
+
1427
+ # 2025-07-15 18:28:52.392618
1428
+ +/read docs/style.md
1429
+
1430
+ # 2025-07-15 18:29:58.959766
1431
+ +I have stubbed out an implementation of skrollr in compile-docs on the body tag. I want you to update these gradients 1) With our color pallete 2) a gentle parallax effect so the the background moves slower thant the foreground
1432
+
1433
+ # 2025-07-15 18:31:30.828935
1434
+ +n
1435
+
1436
+ # 2025-07-15 18:35:52.490100
1437
+ +you need to edit compile-docs. You must directly interpolate our official color. Use string values, not css vars. css vars are not available in this context
Binary file
package/README.md CHANGED
@@ -13,13 +13,13 @@
13
13
 
14
14
  ## What is testeranto?
15
15
 
16
- - Testeranto produces test results which can be fed to Aider.ai to automatically fix failing tests.
17
- - Testeranto tests are specified in a strongly-typed gherkin-like syntax. Rather than testing your code directly, Testeranto requires you wrap your code with a semantic interface which is based on TS type signatures.
18
- - Testeranto can run tests in the frontend or the backend, or both.
16
+ - Testeranto produces test results that can be fed to Aider.ai to automatically fix failing tests.
17
+ - Testeranto tests are specified in a strongly-typed gherkin-like syntax. Rather than testing your code directly, Testeranto requires you to wrap your code with a semantic interface that is based on TS type signatures.
18
+ - Testeranto can run tests in the frontend, the backend, or both.
19
19
  - Testeranto can be used to test anything that can be bundled with esbuild.
20
20
  - Testeranto connects "features" to "tests". This allows the AI to read feature documentation from external systems, like Jira.
21
- - Testeranto generates test results into static a website which can be deployed to github pages easily.
22
- - Testeranto uses esbuild to bundle it's tests. The result is used to refine the list of files added to the context of the AI. **The consequence of this is that you can fit all relevant files, and ONLY the relevant files, into the LLMs context.**
21
+ - Testeranto generates test results as a static website that can be easily deployed to GitHub Pages.
22
+ - Testeranto uses esbuild to bundle its tests. The result is used to refine the list of files added to the AI's context. **The consequence of this is that you can fit all relevant files, and only the relevant files, into the LLM's context.**
23
23
 
24
24
  ## Key Technologies
25
25
 
@@ -32,7 +32,6 @@
32
32
  | Aider.ai | AI-powered test fixing |
33
33
  | ESLint | Static analysis of test files |
34
34
  | tsc | Type checking of test files |
35
- | Markdown | Feature documentation format |
36
35
 
37
36
  ## Quick Start
38
37
 
@@ -80,11 +79,11 @@ yarn t-build rectangle.test.ts yourProject once && yarn t-run rectangle.test.ts
80
79
 
81
80
  ## Runtime Platforms
82
81
 
83
- | | Runs on | You should use this runtime for... | Important differences |
84
- | -------- | ----------------------------- | ------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
85
- | **Node** | node V8 with fork | testing backend code, Node APIs (like `fs` and `crypto`), or anything needing filesystem access | has access to the filesystem and io |
86
- | **Web** | chrome browser | testing frontend code, anything that uses `document` or `window`, UI interactions, or visual regression | can take screenshots/recordings |
87
- | **Pure** | node v8, dynamically imported | testing code which can run on both node-v8 and the the browser | Very similar to "Node" but has no IO access and thus, no console.log. This runtime is theoretically faster. |
82
+ | | You should use this runtime for... | Important differences |
83
+ | ---------------------------------------- | ------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
84
+ | **Node** : node V8 with fork | testing backend code, Node APIs (like `fs` and `crypto`), or anything needing filesystem access | has access to the filesystem and io |
85
+ | **Web** : chrome browser | testing frontend code, anything that uses `document` or `window`, UI interactions, or visual regression | can take screenshots/recordings |
86
+ | **Pure** : node v8, dynamically imported | testing code that can run on both node-v8 and the browser | Very similar to "Node" but has no IO access and thus no console.log. This runtime is theoretically faster. |
88
87
 
89
88
  ## CLI Commands
90
89
 
@@ -123,7 +122,7 @@ yarn t-aider
123
122
  Testeranto generates a "prompt" alongside test results. This prompt is passed to aider as input.
124
123
 
125
124
  ```
126
- // input src files which can be edited by aider
125
+ // input src files that can be edited by Aider
127
126
  /add test/node.ts
128
127
 
129
128
  // test report files that inform aider but should not be edited
@@ -163,11 +162,11 @@ test0: Given.Default(
163
162
 
164
163
  ## Sidecars (COMING SOON)
165
164
 
166
- Along side your test, you can include a number of "sidecars" which are other bundled javascript assets upon which your test depends. For example, suppose you have an app with a frontend and backend component. You could run a react test in the web and include the node http server as a sidecar.
165
+ Alongside your test, you can include a number of "sidecars" - other bundled JavaScript assets upon which your test depends. For example, suppose you have an app with frontend and backend components. You could run a React test in the web and include the Node HTTP server as a sidecar.
167
166
 
168
167
  ## `eslint` and `tsc`
169
168
 
170
- Alongside the bdd tests, testeranto runs eslint and tsc upon the input files to generate a list of static analysis errors and a list of type errors, respectively.
169
+ Alongside the BDD tests, Testeranto runs ESLint and tsc on the input files to generate a list of static analysis errors and type errors, respectively.
171
170
 
172
171
  ## Subprojects
173
172
 
@@ -179,11 +178,11 @@ Test a solidity contract. Also included is an example of deploying a contrct to
179
178
 
180
179
  ### testeranto-reduxtoolkit
181
180
 
182
- Test a redux store.
181
+ Tests a Redux store.
183
182
 
184
183
  ### testeranto-http
185
184
 
186
- Test a node http server.
185
+ Tests a Node HTTP server.
187
186
 
188
187
  ### testeranto-react (COMING SOON)
189
188