testeranto 0.172.0 → 0.173.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 (193) hide show
  1. package/README.md +2 -4
  2. package/dist/common/src/PM/base.js +4 -0
  3. package/dist/common/src/PM/main.js +11 -4
  4. package/dist/common/src/PM/node.js +1 -1
  5. package/dist/common/src/PM/web.js +3 -3
  6. package/dist/common/src/ReportServer.js +2 -126
  7. package/dist/common/src/ReportServer.test.ts/index.js +78 -0
  8. package/dist/common/src/ReportServerLib.js +135 -0
  9. package/dist/common/src/components/pure/ProjectPageView.test/implementation.js +1 -1
  10. package/dist/common/src/lib/abstractBase.js +2 -0
  11. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +10 -9
  12. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.specification.js +7 -7
  13. package/dist/common/src/lib/basebuilder.js +8 -2
  14. package/dist/common/src/lib/pmProxy.js +54 -150
  15. package/dist/common/testeranto.config.js +35 -20
  16. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  17. package/dist/module/src/PM/base.js +4 -0
  18. package/dist/module/src/PM/main.js +11 -4
  19. package/dist/module/src/PM/node.js +1 -1
  20. package/dist/module/src/PM/web.js +3 -3
  21. package/dist/module/src/ReportServer.js +2 -123
  22. package/dist/module/src/ReportServer.test.ts/index.js +73 -0
  23. package/dist/module/src/ReportServerLib.js +128 -0
  24. package/dist/module/src/TestPage.js +29 -17
  25. package/dist/module/src/components/pure/ProjectPageView.test/implementation.js +1 -1
  26. package/dist/module/src/components/pure/TestPageView.js +29 -17
  27. package/dist/module/src/lib/abstractBase.js +2 -0
  28. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +10 -9
  29. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.specification.js +7 -7
  30. package/dist/module/src/lib/basebuilder.js +8 -2
  31. package/dist/module/src/lib/pmProxy.js +54 -150
  32. package/dist/module/testeranto.config.js +35 -20
  33. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  34. package/dist/prebuild/App.js +3 -3
  35. package/dist/prebuild/ReportServer.mjs +15 -9
  36. package/dist/prebuild/run.mjs +14 -4
  37. package/dist/types/src/PM/node.d.ts +1 -1
  38. package/dist/types/src/PM/web.d.ts +1 -1
  39. package/dist/types/src/ReportServer.test.ts/index.d.ts +29 -0
  40. package/dist/types/src/ReportServerLib.d.ts +2 -0
  41. package/dist/types/src/Types.d.ts +0 -1
  42. package/dist/types/src/components/pure/ProjectPageView.test/index.d.ts +2 -1
  43. package/dist/types/src/lib/abstractBase.d.ts +1 -1
  44. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.types.d.ts +7 -4
  45. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  46. package/package.json +2 -2
  47. package/src/PM/base.ts +5 -0
  48. package/src/PM/main.ts +12 -4
  49. package/src/PM/node.ts +1 -1
  50. package/src/PM/web.ts +3 -3
  51. package/src/ReportServer.test.ts/index.ts +194 -0
  52. package/src/ReportServer.ts +2 -132
  53. package/src/ReportServerLib.ts +144 -0
  54. package/src/TestPage.tsx +65 -5
  55. package/src/Types.ts +0 -1
  56. package/src/components/pure/ProjectPageView.test/implementation.tsx +1 -1
  57. package/src/components/pure/TestPageView.tsx +65 -5
  58. package/src/lib/abstractBase.ts +4 -1
  59. package/src/lib/baseBuilder.test/baseBuilder.test.implementation.ts +22 -10
  60. package/src/lib/baseBuilder.test/baseBuilder.test.specification.ts +9 -9
  61. package/src/lib/baseBuilder.test/baseBuilder.test.types.ts +7 -4
  62. package/src/lib/basebuilder.ts +7 -4
  63. package/src/lib/pmProxy.ts +78 -155
  64. package/testeranto/App.js +3 -3
  65. package/testeranto/bundles/node/allTests/metafile.json +38 -781
  66. package/testeranto/bundles/node/allTests/src/lib/baseBuilder.test/baseBuilder.test.node.mjs +983 -24
  67. package/testeranto/bundles/node/core/metafile.json +486 -0
  68. package/testeranto/bundles/{pure/allTests/chunk-VMUSFSZM.mjs → node/core/src/lib/baseBuilder.test/baseBuilder.test.node.mjs} +797 -412
  69. package/testeranto/bundles/node/staticSite/metafile.json +593 -0
  70. package/testeranto/bundles/node/staticSite/src/ReportServer.test.ts/index.mjs +1594 -0
  71. package/testeranto/bundles/pure/allTests/metafile.json +122 -550
  72. package/testeranto/bundles/pure/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure.mjs +740 -27
  73. package/testeranto/bundles/pure/core/metafile.json +626 -0
  74. package/testeranto/bundles/{node/allTests/chunk-E75CSRER.mjs → pure/core/src/lib/baseBuilder.test/baseBuilder.test.pure.mjs} +777 -483
  75. package/testeranto/bundles/pure/staticSite/metafile.json +8 -0
  76. package/testeranto/bundles/web/allTests/metafile.json +777 -22
  77. package/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.mjs +893 -45
  78. package/testeranto/bundles/web/core/metafile.json +780 -0
  79. package/testeranto/bundles/web/core/src/lib/baseBuilder.test/baseBuilder.test.web.html +19 -0
  80. package/testeranto/bundles/web/{allTests/chunk-U7AW26HL.mjs → core/src/lib/baseBuilder.test/baseBuilder.test.web.mjs} +506 -411
  81. package/testeranto/bundles/web/staticSite/metafile.json +8 -0
  82. package/testeranto/projects.json +2 -1
  83. package/testeranto/reports/allTests/config.json +0 -64
  84. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.txt +2 -0
  85. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/logs.txt +11 -13
  86. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/prompt.txt +10 -0
  87. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/suite-0/given-testInitialization/then-0/butThen/hello.txt +1 -0
  88. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/tests.json +10 -18
  89. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/type_errors.txt +25 -13
  90. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.txt +2 -0
  91. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/prompt.txt +8 -0
  92. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/type_errors.txt +24 -12
  93. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.txt +2 -0
  94. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/logs.txt +49 -55
  95. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/prompt.txt +12 -2
  96. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/suite-0/given-testInitialization/then-0/butThen/hello.txt +1 -0
  97. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/tests.json +10 -18
  98. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/type_errors.txt +24 -12
  99. package/testeranto/reports/allTests/summary.json +6 -62
  100. package/testeranto/reports/core/config.json +24 -0
  101. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.txt +2 -0
  102. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/logs.txt +32 -0
  103. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/message.txt +2 -0
  104. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/prompt.txt +26 -0
  105. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/suite-0/given-testInitialization/then-0/butThen/hello.txt +1 -0
  106. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/tests.json +69 -0
  107. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/type_errors.txt +74 -0
  108. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.txt +2 -0
  109. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/message.txt +2 -0
  110. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/prompt.txt +26 -0
  111. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/type_errors.txt +74 -0
  112. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.txt +2 -0
  113. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/logs.txt +61 -0
  114. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/message.txt +2 -0
  115. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/prompt.txt +26 -0
  116. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/suite-0/given-testInitialization/then-0/butThen/hello.txt +1 -0
  117. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/tests.json +69 -0
  118. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/type_errors.txt +74 -0
  119. package/testeranto/reports/core/summary.json +23 -0
  120. package/testeranto/reports/staticSite/config.json +24 -0
  121. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/lint_errors.txt +5 -0
  122. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/logs.txt +44 -0
  123. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/message.txt +2 -0
  124. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/prompt.txt +23 -0
  125. package/testeranto/reports/{allTests/src/lib/core.test/core.test → staticSite/src/ReportServer.test.ts/index}/node/type_errors.txt +21 -32
  126. package/testeranto/reports/staticSite/summary.json +9 -0
  127. package/testeranto/reportsnode_build_errors +8 -11
  128. package/testeranto.config.ts +37 -20
  129. package/testeranto/bundles/node/allTests/chunk-3EUGBAOM.mjs +0 -113
  130. package/testeranto/bundles/node/allTests/chunk-M6DO7VMB.mjs +0 -252
  131. package/testeranto/bundles/node/allTests/src/lib/BaseSuite.test/node.test.mjs +0 -323
  132. package/testeranto/bundles/node/allTests/src/lib/classBuilder.test/classBuilder.test.mjs +0 -411
  133. package/testeranto/bundles/node/allTests/src/lib/core.test/core.test.mjs +0 -528
  134. package/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs +0 -4752
  135. package/testeranto/bundles/pure/allTests/chunk-KHDVEHF7.mjs +0 -185
  136. package/testeranto/bundles/pure/allTests/src/Pure.test.mjs +0 -429
  137. package/testeranto/bundles/pure/allTests/src/lib/BaseSuite.test/pure.test.mjs +0 -425
  138. package/testeranto/bundles/web/allTests/chunk-HPYA4YZC.mjs +0 -2283
  139. package/testeranto/bundles/web/allTests/src/components/pure/ProjectPageView.test/index.html +0 -19
  140. package/testeranto/bundles/web/allTests/src/components/pure/ProjectPageView.test/index.mjs +0 -37524
  141. package/testeranto/bundles/web/allTests/src/lib/BaseSuite.test/web.test.html +0 -19
  142. package/testeranto/bundles/web/allTests/src/lib/BaseSuite.test/web.test.mjs +0 -440
  143. package/testeranto/reports/allTests/src/Pure.test/pure/lint_errors.txt +0 -0
  144. package/testeranto/reports/allTests/src/Pure.test/pure/message.txt +0 -2
  145. package/testeranto/reports/allTests/src/Pure.test/pure/prompt.txt +0 -13
  146. package/testeranto/reports/allTests/src/Pure.test/pure/type_errors.txt +0 -101
  147. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/lint_errors.txt +0 -13
  148. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/logs.txt +0 -50
  149. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/message.txt +0 -2
  150. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/prompt.txt +0 -17
  151. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/tests.json +0 -32
  152. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/type_errors.txt +0 -68
  153. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/lint_errors.txt +0 -0
  154. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/logs.txt +0 -52
  155. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/message.txt +0 -2
  156. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/prompt.txt +0 -13
  157. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/tests.json +0 -31
  158. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/type_errors.txt +0 -111
  159. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/bdd_errors.txt +0 -1
  160. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/lint_errors.txt +0 -0
  161. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/message.txt +0 -2
  162. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/prompt.txt +0 -14
  163. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/tests.json +0 -31
  164. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/type_errors.txt +0 -111
  165. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/bdd_errors.txt +0 -1
  166. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/lint_errors.txt +0 -0
  167. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/logs.txt +0 -108
  168. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/message.txt +0 -2
  169. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/prompt.txt +0 -14
  170. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/tests.json +0 -31
  171. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/type_errors.txt +0 -111
  172. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/bdd_errors.txt +0 -1
  173. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/lint_errors.txt +0 -0
  174. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/logs.txt +0 -700
  175. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/message.txt +0 -2
  176. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/prompt.txt +0 -16
  177. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/tests.json +0 -164
  178. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/type_errors.txt +0 -138
  179. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/lint_errors.txt +0 -21
  180. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/logs.txt +0 -7
  181. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/message.txt +0 -2
  182. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/prompt.txt +0 -18
  183. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/bdd_errors.txt +0 -1
  184. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/lint_errors.txt +0 -20
  185. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/logs.txt +0 -31
  186. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/message.txt +0 -2
  187. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/prompt.txt +0 -16
  188. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/tests.json +0 -134
  189. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/type_errors.txt +0 -76
  190. package/testeranto/reportspure_build_errors +0 -343
  191. package/testeranto/reportsweb_build_errors +0 -25
  192. /package/testeranto/reports/{allTests/src/components/pure/ProjectPageView.test/index/web → core/src/lib/baseBuilder.test/baseBuilder.test.node/node}/bdd_errors.txt +0 -0
  193. /package/testeranto/reports/{allTests/src/lib/BaseSuite.test/node.test/node → core/src/lib/baseBuilder.test/baseBuilder.test.web/web}/bdd_errors.txt +0 -0
@@ -1,425 +0,0 @@
1
- import { createRequire } from 'module';const require = createRequire(import.meta.url);
2
- import {
3
- Pure_default
4
- } from "../../../chunk-KHDVEHF7.mjs";
5
- import {
6
- BaseGiven,
7
- BaseSuite,
8
- BaseThen,
9
- BaseWhen
10
- } from "../../../chunk-VMUSFSZM.mjs";
11
-
12
- // src/lib/BaseSuite.test/mock.ts
13
- var MockGiven = class extends BaseGiven {
14
- constructor(name, features, whens, thens) {
15
- super(
16
- name,
17
- features,
18
- whens,
19
- thens,
20
- async () => ({ testStore: true, testSelection: false }),
21
- // givenCB
22
- {}
23
- // initialValues
24
- );
25
- }
26
- async givenThat() {
27
- return { testStore: true, testSelection: false };
28
- }
29
- uberCatcher(e) {
30
- console.error("Given error 2:", e);
31
- }
32
- };
33
- var MockWhen = class extends BaseWhen {
34
- async andWhen(store, whenCB, testResource, pm) {
35
- console.log(
36
- "[DEBUG] MockWhen - andWhen - input store:",
37
- JSON.stringify(store)
38
- );
39
- const newStore = {
40
- ...store,
41
- testSelection: true
42
- // Ensure testSelection is set for assertions
43
- };
44
- console.log("[DEBUG] MockWhen - andWhen - calling whenCB");
45
- const result = await whenCB(newStore);
46
- console.log("[DEBUG] MockWhen - andWhen - result:", JSON.stringify(result));
47
- return result;
48
- }
49
- addArtifact(name, content) {
50
- return this;
51
- }
52
- };
53
- var MockThen = class extends BaseThen {
54
- async butThen(store, thenCB, testResourceConfiguration, pm) {
55
- console.log(
56
- "[DEBUG] MockThen - butThen - input store:",
57
- JSON.stringify(store)
58
- );
59
- if (!store) {
60
- throw new Error("Store is undefined in butThen");
61
- }
62
- const testSelection = {
63
- name: store.name,
64
- index: store.index,
65
- testSelection: store.testSelection || false,
66
- error: store.error ? true : void 0
67
- };
68
- console.log(
69
- "[DEBUG] MockThen - passing testSelection:",
70
- JSON.stringify(testSelection)
71
- );
72
- try {
73
- const result = await thenCB(testSelection);
74
- console.log(
75
- "[DEBUG] MockThen - received result:",
76
- JSON.stringify(result)
77
- );
78
- if (!result || typeof result.testSelection === "undefined") {
79
- throw new Error(
80
- `Invalid test selection result: ${JSON.stringify(result)}`
81
- );
82
- }
83
- return result;
84
- } catch (e) {
85
- console.error("[ERROR] MockThen - butThen failed:", e);
86
- throw e;
87
- }
88
- }
89
- };
90
- var MockSuite = class extends BaseSuite {
91
- constructor(name, index) {
92
- if (!name) {
93
- throw new Error("MockSuite requires a non-empty name");
94
- }
95
- console.log("[DEBUG] Creating MockSuite with name:", name, "index:", index);
96
- const suiteName = name || "testSuite";
97
- super(suiteName, index, {
98
- testGiven: new MockGiven(
99
- "testGiven",
100
- ["testFeature"],
101
- [new MockWhen("testWhen", () => Promise.resolve({ testStore: true }))],
102
- [
103
- new MockThen(
104
- "testThen",
105
- async () => Promise.resolve({ testSelection: true })
106
- )
107
- ]
108
- )
109
- });
110
- console.log("[DEBUG] MockSuite created:", this.name, this.index);
111
- }
112
- };
113
-
114
- // src/lib/BaseSuite.test/test.ts
115
- var specification = (Suite, Given, When, Then) => [
116
- Suite.Default("BaseSuite Core Functionality Tests", {
117
- // Test initialization and basic properties
118
- initialization: Given.Default(
119
- ["BaseSuite should initialize with correct name and index"],
120
- [],
121
- [Then.SuiteNameMatches("testSuite"), Then.SuiteIndexMatches(0)]
122
- )
123
- // // Test execution flow
124
- // execution: Given.Default(
125
- // ["BaseSuite should execute all phases successfully"],
126
- // [When.RunSuite()],
127
- // [Then.StoreValid()]
128
- // ),
129
- // // Test multiple features
130
- // multipleFeatures: Given.Default(
131
- // ["BaseSuite should handle multiple features"],
132
- // [When.AddFeature("additionalFeature")],
133
- // [
134
- // Then.FeaturesIncludes("testFeature"),
135
- // Then.FeaturesIncludes("additionalFeature"),
136
- // Then.FeatureCountMatches(2),
137
- // ]
138
- // ),
139
- // // Test error handling
140
- // errorHandling: Given.Default(
141
- // ["BaseSuite should handle errors gracefully"],
142
- // [When.RunSuiteWithError()],
143
- // [Then.ErrorCountMatches(1), Then.FailedFlagSet()]
144
- // ),
145
- })
146
- // Suite.Default("Comprehensive Integration", {
147
- // fullStackTest: Given.Default(
148
- // ["All components should work together"],
149
- // [
150
- // When.addArtifact(Promise.resolve("test")),
151
- // When.modifySpecs((specs) => [...specs, "extra"]),
152
- // When.modifyJobs((jobs) => [...jobs, {}]),
153
- // ],
154
- // [
155
- // Then.specsModified(1),
156
- // Then.jobsModified(1),
157
- // Then.artifactsTracked(),
158
- // Then.testRunSuccessful(),
159
- // ]
160
- // ),
161
- // }),
162
- ];
163
- var implementation = {
164
- suites: {
165
- Default: "BaseSuite Comprehensive Test Suite"
166
- },
167
- givens: {
168
- Default: () => {
169
- const suite = new MockSuite("testSuite", 0);
170
- console.log("[DEBUG] Created test suite:", suite.name, suite.index);
171
- return suite;
172
- }
173
- },
174
- whens: {
175
- addArtifact: (artifact) => (suite) => {
176
- suite.artifacts.push(artifact);
177
- return suite;
178
- },
179
- modifySpecs: (modifier) => (suite) => {
180
- suite.specs = modifier(suite.specs);
181
- return suite;
182
- },
183
- modifyJobs: (modifier) => (suite) => {
184
- suite.testJobs = modifier(suite.testJobs);
185
- return suite;
186
- },
187
- RunSuite: () => async (suite) => {
188
- console.log("[DEBUG] Running RunSuite");
189
- const mockConfig = {
190
- name: "test",
191
- fs: "/tmp",
192
- ports: [3e3],
193
- environment: {},
194
- timeout: 5e3,
195
- retries: 3
196
- };
197
- const mockArtifactory = (key, value) => {
198
- };
199
- const mockTLog = (...args) => {
200
- };
201
- const mockPM = {
202
- server: null,
203
- testResourceConfiguration: mockConfig,
204
- start: async () => {
205
- },
206
- stop: async () => {
207
- },
208
- testArtiFactoryfileWriter: () => {
209
- },
210
- $: () => {
211
- },
212
- click: () => {
213
- },
214
- closePage: () => {
215
- },
216
- createWriteStream: async () => ""
217
- };
218
- return await suite.run(
219
- null,
220
- mockConfig,
221
- mockArtifactory,
222
- mockTLog,
223
- mockPM
224
- );
225
- },
226
- RunSuiteWithError: () => async (suite) => {
227
- try {
228
- await suite.run(
229
- null,
230
- {},
231
- // Invalid config
232
- () => {
233
- },
234
- () => {
235
- },
236
- {}
237
- );
238
- } catch (e) {
239
- }
240
- return suite;
241
- },
242
- AddFeature: (feature) => (suite) => {
243
- const firstGivenKey = Object.keys(suite.givens)[0];
244
- if (firstGivenKey) {
245
- suite.givens[firstGivenKey].features.push(feature);
246
- }
247
- return suite;
248
- }
249
- },
250
- thens: {
251
- SuiteNameMatches: (expectedName) => (suite) => {
252
- console.log(
253
- "[DEBUG] SuiteNameMatches - expected:",
254
- expectedName,
255
- "actual:",
256
- suite?.name
257
- );
258
- if (!suite?.name) {
259
- throw new Error(`Suite name is undefined. Expected: ${expectedName}`);
260
- }
261
- if (suite.name !== expectedName) {
262
- throw new Error(
263
- `Expected suite name '${expectedName}', got '${suite.name}'`
264
- );
265
- }
266
- return suite;
267
- },
268
- SuiteIndexMatches: (expectedIndex) => (suite) => {
269
- if (suite.index !== expectedIndex) {
270
- throw new Error(
271
- `Expected suite index ${expectedIndex}, got ${suite.index}`
272
- );
273
- }
274
- return suite;
275
- },
276
- FeaturesIncludes: (feature) => (suite) => {
277
- if (!suite.features().includes(feature)) {
278
- throw new Error(`Expected features to include ${feature}`);
279
- }
280
- return suite;
281
- },
282
- FeatureCountMatches: (expectedCount) => (suite) => {
283
- const actualCount = suite.features().length;
284
- if (actualCount !== expectedCount) {
285
- throw new Error(
286
- `Expected ${expectedCount} features, got ${actualCount}`
287
- );
288
- }
289
- return suite;
290
- },
291
- StoreValid: () => (suite) => {
292
- if (!suite.store?.testStore) {
293
- throw new Error("Expected valid store after execution");
294
- }
295
- return suite;
296
- },
297
- NoErrorsOccurred: () => (suite) => {
298
- if (suite.failed || suite.fails > 0) {
299
- throw new Error("Expected no errors to occur during execution");
300
- }
301
- return suite;
302
- },
303
- ErrorCountMatches: (expectedCount) => (suite) => {
304
- if (suite.fails !== expectedCount) {
305
- throw new Error(
306
- `Expected ${expectedCount} errors, got ${suite.fails}`
307
- );
308
- }
309
- return suite;
310
- },
311
- FailedFlagSet: () => (suite) => {
312
- if (!suite.failed) {
313
- throw new Error("Expected failed flag to be set after error");
314
- }
315
- return suite;
316
- },
317
- AllTestsCompleted: () => (suite) => {
318
- if (!suite.store) {
319
- throw new Error("Expected all tests to be completed");
320
- }
321
- return suite;
322
- },
323
- CleanExit: () => (suite) => {
324
- if (suite.failed && suite.fails === 0) {
325
- throw new Error("Expected clean exit state");
326
- }
327
- return suite;
328
- },
329
- specsModified: (expectedCount) => (suite) => {
330
- if (suite.specs.length !== expectedCount) {
331
- throw new Error(`Expected ${expectedCount} modified specs`);
332
- }
333
- return suite;
334
- },
335
- jobsModified: (expectedCount) => (suite) => {
336
- if (suite.testJobs.length !== expectedCount) {
337
- throw new Error(`Expected ${expectedCount} modified jobs`);
338
- }
339
- return suite;
340
- },
341
- artifactsTracked: () => (suite) => {
342
- if (suite.artifacts.length === 0) {
343
- throw new Error("Expected artifacts to be tracked");
344
- }
345
- return suite;
346
- },
347
- testRunSuccessful: () => (suite) => {
348
- if (suite.failed) {
349
- throw new Error("Expected test run to be successful");
350
- }
351
- return suite;
352
- }
353
- }
354
- };
355
- var testAdapter = {
356
- beforeEach: async (subject, initializer, testResource, initialValues, pm) => {
357
- console.log("[DEBUG] Running beforeEach with subject:", subject);
358
- try {
359
- const suite = await initializer();
360
- if (!suite) {
361
- throw new Error("Initializer returned undefined suite");
362
- }
363
- console.log("[DEBUG] beforeEach result:", {
364
- name: suite.name,
365
- index: suite.index,
366
- store: suite.store
367
- });
368
- return {
369
- name: suite.name,
370
- index: suite.index,
371
- testStore: true,
372
- testSelection: false,
373
- ...suite.store || {}
374
- };
375
- } catch (e) {
376
- console.error("Given error:", e);
377
- throw e;
378
- }
379
- },
380
- andWhen: async (store, whenCB, testResource, pm) => whenCB(store, pm),
381
- butThen: async (store, thenCB, testResource, pm) => {
382
- console.log(
383
- "[DEBUG] butThen - input store:",
384
- JSON.stringify(store, null, 2)
385
- );
386
- const testSelection = {
387
- testSelection: store.testSelection || false,
388
- error: store.error ? true : void 0
389
- };
390
- console.log(
391
- "[DEBUG] butThen - created testSelection:",
392
- JSON.stringify(testSelection, null, 2)
393
- );
394
- try {
395
- const result = await thenCB(testSelection);
396
- console.log("[DEBUG] butThen - result:", JSON.stringify(result, null, 2));
397
- if (!result || typeof result.testSelection === "undefined") {
398
- throw new Error(
399
- `Invalid test selection result: ${JSON.stringify(result)}`
400
- );
401
- }
402
- return result;
403
- } catch (e) {
404
- console.error("Then error:", e.toString());
405
- console.error("Full store state:", JSON.stringify(store, null, 2));
406
- throw e;
407
- }
408
- },
409
- afterEach: (store) => store,
410
- afterAll: (store, pm) => {
411
- },
412
- assertThis: (result) => !!result,
413
- beforeAll: async (input, testResource, pm) => input
414
- };
415
-
416
- // src/lib/BaseSuite.test/pure.test.ts
417
- var pure_test_default = Pure_default(
418
- BaseSuite,
419
- specification,
420
- implementation,
421
- testAdapter
422
- );
423
- export {
424
- pure_test_default as default
425
- };