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
@@ -0,0 +1,19 @@
1
+
2
+ <!DOCTYPE html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <script type="module" src="./web.test.mjs"></script>
7
+
8
+ </head>
9
+
10
+ <body>
11
+ <h1>/Users/adam/Code/testeranto/testeranto/bundles/web/allTests/src/lib/BaseSuite.test/web.test.html</h1>
12
+ <div id="root">
13
+
14
+ </div>
15
+ </body>
16
+
17
+ <footer></footer>
18
+
19
+ </html>
@@ -0,0 +1,322 @@
1
+ import {
2
+ BaseCheck,
3
+ BaseGiven,
4
+ BaseSuite,
5
+ BaseThen,
6
+ BaseWhen,
7
+ Web_default
8
+ } from "../../../chunk-FIZ3WLUB.mjs";
9
+
10
+ // src/lib/BaseSuite.test/test.ts
11
+ var MockGiven = class extends BaseGiven {
12
+ constructor(name, features, whens, thens) {
13
+ super(
14
+ name,
15
+ features,
16
+ whens,
17
+ thens,
18
+ async () => ({ testStore: true }),
19
+ // givenCB
20
+ {}
21
+ // initialValues
22
+ );
23
+ }
24
+ async givenThat(subject, testResourceConfiguration, artifactory, givenCB, initialValues, pm) {
25
+ return { testStore: true };
26
+ }
27
+ uberCatcher(e) {
28
+ console.error("Given error 2:", e);
29
+ }
30
+ };
31
+ var MockWhen = class extends BaseWhen {
32
+ async andWhen(store, whenCB, testResource, pm) {
33
+ return { ...store, testStore: true };
34
+ }
35
+ };
36
+ var MockThen = class extends BaseThen {
37
+ async butThen(store, thenCB, testResourceConfiguration, pm) {
38
+ return { testSelection: true };
39
+ }
40
+ };
41
+ var MockCheck = class extends BaseCheck {
42
+ async checkThat(subject, testResourceConfiguration, artifactory, initializer, initialValues, pm) {
43
+ return { testStore: true };
44
+ }
45
+ };
46
+ var TestableSuite = class extends BaseSuite {
47
+ constructor(name, index) {
48
+ super(
49
+ name,
50
+ index,
51
+ {
52
+ testGiven: new MockGiven(
53
+ "testGiven",
54
+ ["testFeature"],
55
+ [
56
+ new MockWhen(
57
+ "testWhen",
58
+ () => Promise.resolve({ testStore: true })
59
+ )
60
+ ],
61
+ [
62
+ new MockThen(
63
+ "testThen",
64
+ async () => Promise.resolve({ testSelection: true })
65
+ )
66
+ ]
67
+ )
68
+ },
69
+ [
70
+ new MockCheck(
71
+ "testCheck",
72
+ ["testFeature"],
73
+ () => Promise.resolve({ testStore: true }),
74
+ null,
75
+ () => {
76
+ }
77
+ )
78
+ ]
79
+ );
80
+ }
81
+ };
82
+ var specification = (Suite, Given, When, Then, Check) => [
83
+ Suite.Default(
84
+ "BaseSuite Core Functionality Tests",
85
+ {
86
+ // Test initialization and basic properties
87
+ initialization: Given.Default(
88
+ ["BaseSuite should initialize with correct name and index"],
89
+ [],
90
+ [
91
+ Then.SuiteNameMatches("testSuite"),
92
+ Then.SuiteIndexMatches(0),
93
+ Then.FeaturesIncludes("testFeature")
94
+ ]
95
+ ),
96
+ // Test execution flow
97
+ execution: Given.Default(
98
+ ["BaseSuite should execute all phases successfully"],
99
+ [When.RunSuite()],
100
+ [Then.StoreValid(), Then.NoErrorsOccurred(), Then.AllChecksCompleted()]
101
+ ),
102
+ // Test multiple features
103
+ multipleFeatures: Given.Default(
104
+ ["BaseSuite should handle multiple features"],
105
+ [When.AddFeature("additionalFeature")],
106
+ [
107
+ Then.FeaturesIncludes("testFeature"),
108
+ Then.FeaturesIncludes("additionalFeature"),
109
+ Then.FeatureCountMatches(2)
110
+ ]
111
+ ),
112
+ // Test error handling
113
+ errorHandling: Given.Default(
114
+ ["BaseSuite should handle errors gracefully"],
115
+ [When.RunSuiteWithError()],
116
+ [
117
+ Then.ErrorCountMatches(1)
118
+ // Then.FailedFlagSet(),
119
+ ]
120
+ )
121
+ },
122
+ [
123
+ // Additional validation checks
124
+ // Check.Default(
125
+ // ["Verify suite state after all tests"],
126
+ // [],
127
+ // [
128
+ // Then.AllTestsCompleted(),
129
+ // Then.CleanExit()
130
+ // ]
131
+ // )
132
+ ]
133
+ ),
134
+ Suite.Default("Comprehensive Integration", {
135
+ fullStackTest: Given.Default(
136
+ ["All components should work together"],
137
+ [
138
+ When.addArtifact(Promise.resolve("test")),
139
+ When.modifySpecs((specs) => [...specs, "extra"]),
140
+ When.modifyJobs((jobs) => [...jobs, {}])
141
+ ],
142
+ [
143
+ Then.specsModified(1),
144
+ Then.jobsModified(1),
145
+ Then.artifactsTracked(),
146
+ Then.testRunSuccessful()
147
+ ]
148
+ )
149
+ })
150
+ ];
151
+ var implementation = {
152
+ suites: {
153
+ Default: "BaseSuite Comprehensive Test Suite"
154
+ },
155
+ givens: {
156
+ Default: () => new TestableSuite("testSuite", 0)
157
+ },
158
+ whens: {
159
+ RunSuite: () => async (suite) => {
160
+ const mockConfig = {
161
+ name: "test",
162
+ fs: "/tmp",
163
+ ports: [3e3],
164
+ environment: {},
165
+ timeout: 5e3,
166
+ retries: 3
167
+ };
168
+ const mockArtifactory = (key, value) => {
169
+ };
170
+ const mockTLog = (...args) => {
171
+ };
172
+ const mockPM = {
173
+ server: null,
174
+ testResourceConfiguration: mockConfig,
175
+ start: async () => {
176
+ },
177
+ stop: async () => {
178
+ },
179
+ testArtiFactoryfileWriter: () => {
180
+ },
181
+ $: () => {
182
+ },
183
+ click: () => {
184
+ },
185
+ closePage: () => {
186
+ },
187
+ createWriteStream: async () => ""
188
+ };
189
+ return await suite.run(
190
+ null,
191
+ mockConfig,
192
+ mockArtifactory,
193
+ mockTLog,
194
+ mockPM
195
+ );
196
+ },
197
+ RunSuiteWithError: () => async (suite) => {
198
+ try {
199
+ await suite.run(
200
+ null,
201
+ {},
202
+ // Invalid config
203
+ () => {
204
+ },
205
+ () => {
206
+ },
207
+ {}
208
+ );
209
+ } catch (e) {
210
+ }
211
+ return suite;
212
+ },
213
+ AddFeature: (feature) => (suite) => {
214
+ const firstGivenKey = Object.keys(suite.givens)[0];
215
+ if (firstGivenKey) {
216
+ suite.givens[firstGivenKey].features.push(feature);
217
+ }
218
+ return suite;
219
+ }
220
+ },
221
+ thens: {
222
+ SuiteNameMatches: (expectedName) => (suite) => {
223
+ if (suite.name !== expectedName) {
224
+ throw new Error(
225
+ `Expected suite name '${expectedName}', got '${suite.name}'`
226
+ );
227
+ }
228
+ return suite;
229
+ },
230
+ SuiteIndexMatches: (expectedIndex) => (suite) => {
231
+ if (suite.index !== expectedIndex) {
232
+ throw new Error(
233
+ `Expected suite index ${expectedIndex}, got ${suite.index}`
234
+ );
235
+ }
236
+ return suite;
237
+ },
238
+ FeaturesIncludes: (feature) => (suite) => {
239
+ if (!suite.features().includes(feature)) {
240
+ throw new Error(`Expected features to include ${feature}`);
241
+ }
242
+ return suite;
243
+ },
244
+ FeatureCountMatches: (expectedCount) => (suite) => {
245
+ const actualCount = suite.features().length;
246
+ if (actualCount !== expectedCount) {
247
+ throw new Error(
248
+ `Expected ${expectedCount} features, got ${actualCount}`
249
+ );
250
+ }
251
+ return suite;
252
+ },
253
+ StoreValid: () => (suite) => {
254
+ if (!suite.store?.testStore) {
255
+ throw new Error("Expected valid store after execution");
256
+ }
257
+ return suite;
258
+ },
259
+ NoErrorsOccurred: () => (suite) => {
260
+ if (suite.failed || suite.fails > 0) {
261
+ throw new Error("Expected no errors to occur during execution");
262
+ }
263
+ return suite;
264
+ },
265
+ ErrorCountMatches: (expectedCount) => (suite) => {
266
+ if (suite.fails !== expectedCount) {
267
+ throw new Error(
268
+ `Expected ${expectedCount} errors, got ${suite.fails}`
269
+ );
270
+ }
271
+ return suite;
272
+ },
273
+ FailedFlagSet: () => (suite) => {
274
+ if (!suite.failed) {
275
+ throw new Error("Expected failed flag to be set after error");
276
+ }
277
+ return suite;
278
+ },
279
+ AllChecksCompleted: () => (suite) => {
280
+ if (suite.checks.some((check) => !check.key)) {
281
+ throw new Error("Expected all checks to be completed");
282
+ }
283
+ return suite;
284
+ },
285
+ AllTestsCompleted: () => (suite) => {
286
+ if (!suite.store) {
287
+ throw new Error("Expected all tests to be completed");
288
+ }
289
+ return suite;
290
+ },
291
+ CleanExit: () => (suite) => {
292
+ if (suite.failed && suite.fails === 0) {
293
+ throw new Error("Expected clean exit state");
294
+ }
295
+ return suite;
296
+ }
297
+ },
298
+ checks: {
299
+ Default: () => new TestableSuite("testCheck", 1)
300
+ }
301
+ };
302
+ var testInterface = {
303
+ beforeEach: async (subject, initializer) => initializer(),
304
+ andWhen: async (store, whenCB, testResource, pm) => whenCB(store, pm),
305
+ butThen: async (store, thenCB, testResource, pm) => thenCB(store, pm),
306
+ afterEach: (store) => store,
307
+ afterAll: (store, pm) => {
308
+ },
309
+ assertThis: (result) => !!result,
310
+ beforeAll: async (input, testResource, pm) => input
311
+ };
312
+
313
+ // src/lib/BaseSuite.test/web.test.ts
314
+ var web_test_default = Web_default(
315
+ BaseSuite,
316
+ specification,
317
+ implementation,
318
+ testInterface
319
+ );
320
+ export {
321
+ web_test_default as default
322
+ };
@@ -0,0 +1,19 @@
1
+
2
+ <!DOCTYPE html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <script type="module" src="./baseBuilder.test.web.mjs"></script>
7
+
8
+ </head>
9
+
10
+ <body>
11
+ <h1>/Users/adam/Code/testeranto/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.html</h1>
12
+ <div id="root">
13
+
14
+ </div>
15
+ </body>
16
+
17
+ <footer></footer>
18
+
19
+ </html>