testeranto 0.172.0 → 0.177.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 (203) hide show
  1. package/README.md +2 -4
  2. package/dist/common/src/PM/base.js +5 -1
  3. package/dist/common/src/PM/main.js +57 -54
  4. package/dist/common/src/PM/node.js +4 -1
  5. package/dist/common/src/PM/pure.js +4 -1
  6. package/dist/common/src/PM/web.js +6 -3
  7. package/dist/common/src/Pure.js +0 -4
  8. package/dist/common/src/Pure.test.js +1 -1
  9. package/dist/common/src/ReportServer.js +2 -126
  10. package/dist/common/src/ReportServer.test.ts/index.js +78 -0
  11. package/dist/common/src/ReportServerLib.js +141 -0
  12. package/dist/common/src/components/pure/ProjectPageView.test/implementation.js +1 -1
  13. package/dist/common/src/esbuildConfigs/node.js +1 -3
  14. package/dist/common/src/lib/BaseSuite.js +13 -11
  15. package/dist/common/src/lib/abstractBase.js +39 -40
  16. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +10 -9
  17. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.specification.js +7 -7
  18. package/dist/common/src/lib/basebuilder.js +13 -2
  19. package/dist/common/src/lib/core.js +1 -0
  20. package/dist/common/src/lib/pmProxy.js +215 -201
  21. package/dist/common/src/lib/pmProxy.test/adapter.js +2 -2
  22. package/dist/common/src/lib/pmProxy.test/implementation.js +1 -1
  23. package/dist/common/testeranto.config.js +47 -32
  24. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  25. package/dist/module/src/PM/base.js +5 -1
  26. package/dist/module/src/PM/main.js +22 -19
  27. package/dist/module/src/PM/node.js +4 -1
  28. package/dist/module/src/PM/pure.js +4 -1
  29. package/dist/module/src/PM/web.js +6 -3
  30. package/dist/module/src/Pure.js +0 -4
  31. package/dist/module/src/Pure.test.js +1 -1
  32. package/dist/module/src/ReportServer.js +2 -123
  33. package/dist/module/src/ReportServer.test.ts/index.js +73 -0
  34. package/dist/module/src/ReportServerLib.js +134 -0
  35. package/dist/module/src/TestPage.js +29 -17
  36. package/dist/module/src/components/pure/ProjectPageView.test/implementation.js +1 -1
  37. package/dist/module/src/components/pure/TestPageView.js +29 -17
  38. package/dist/module/src/esbuildConfigs/node.js +1 -3
  39. package/dist/module/src/lib/BaseSuite.js +13 -11
  40. package/dist/module/src/lib/abstractBase.js +39 -40
  41. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +10 -9
  42. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.specification.js +7 -7
  43. package/dist/module/src/lib/basebuilder.js +13 -2
  44. package/dist/module/src/lib/core.js +1 -0
  45. package/dist/module/src/lib/pmProxy.js +215 -201
  46. package/dist/module/src/lib/pmProxy.test/adapter.js +2 -2
  47. package/dist/module/src/lib/pmProxy.test/implementation.js +1 -1
  48. package/dist/module/testeranto.config.js +47 -32
  49. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  50. package/dist/prebuild/App.js +3 -3
  51. package/dist/prebuild/ReportServer.mjs +21 -9
  52. package/dist/prebuild/build.mjs +1 -1
  53. package/dist/prebuild/run.mjs +27 -20
  54. package/dist/types/src/PM/base.d.ts +1 -1
  55. package/dist/types/src/PM/node.d.ts +1 -1
  56. package/dist/types/src/PM/pure.d.ts +1 -1
  57. package/dist/types/src/PM/web.d.ts +1 -1
  58. package/dist/types/src/ReportServer.test.ts/index.d.ts +29 -0
  59. package/dist/types/src/ReportServerLib.d.ts +1 -0
  60. package/dist/types/src/Types.d.ts +0 -1
  61. package/dist/types/src/components/pure/ProjectPageView.test/index.d.ts +2 -1
  62. package/dist/types/src/lib/BaseSuite.d.ts +2 -0
  63. package/dist/types/src/lib/abstractBase.d.ts +5 -7
  64. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.types.d.ts +7 -4
  65. package/dist/types/src/lib/pmProxy.d.ts +3 -3
  66. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  67. package/package.json +3 -3
  68. package/src/PM/base.ts +7 -5
  69. package/src/PM/main.ts +26 -21
  70. package/src/PM/node.ts +6 -1
  71. package/src/PM/pure.ts +6 -1
  72. package/src/PM/web.ts +7 -3
  73. package/src/Pure.test.ts +6 -6
  74. package/src/Pure.ts +0 -8
  75. package/src/ReportServer.test.ts/index.ts +194 -0
  76. package/src/ReportServer.ts +2 -132
  77. package/src/ReportServerLib.ts +147 -0
  78. package/src/TestPage.tsx +65 -5
  79. package/src/Types.ts +0 -1
  80. package/src/components/pure/ProjectPageView.test/implementation.tsx +1 -1
  81. package/src/components/pure/TestPageView.tsx +65 -5
  82. package/src/esbuildConfigs/node.ts +1 -1
  83. package/src/lib/BaseSuite.ts +16 -21
  84. package/src/lib/abstractBase.ts +59 -48
  85. package/src/lib/baseBuilder.test/baseBuilder.test.implementation.ts +22 -10
  86. package/src/lib/baseBuilder.test/baseBuilder.test.specification.ts +9 -9
  87. package/src/lib/baseBuilder.test/baseBuilder.test.types.ts +7 -4
  88. package/src/lib/basebuilder.ts +13 -4
  89. package/src/lib/core.ts +1 -0
  90. package/src/lib/pmProxy.test/adapter.ts +2 -2
  91. package/src/lib/pmProxy.test/implementation.ts +3 -3
  92. package/src/lib/pmProxy.test/types.ts +0 -2
  93. package/src/lib/pmProxy.ts +135 -80
  94. package/testeranto/App.js +3 -3
  95. package/testeranto/bundles/node/core/metafile.json +8 -0
  96. package/testeranto/bundles/pure/core/metafile.json +8 -0
  97. package/testeranto/bundles/web/core/metafile.json +15086 -0
  98. package/testeranto/bundles/web/{allTests → core}/src/components/pure/ProjectPageView.test/index.html +1 -1
  99. package/testeranto/bundles/web/{allTests → core}/src/components/pure/ProjectPageView.test/index.mjs +4109 -1642
  100. package/testeranto/projects.json +1 -1
  101. package/testeranto/reports/core/config.json +24 -0
  102. package/testeranto/reports/{allTests → core}/src/components/pure/ProjectPageView.test/index/web/lint_errors.txt +6 -1
  103. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/logs.txt +59 -0
  104. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/message.txt +2 -0
  105. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/prompt.txt +27 -0
  106. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/suite-0/given-basicRender/then-0/butThen/happyPath.png +0 -0
  107. package/testeranto/reports/{allTests → core}/src/components/pure/ProjectPageView.test/index/web/type_errors.txt +15 -33
  108. package/testeranto/reports/core/summary.json +9 -0
  109. package/testeranto.config.ts +49 -32
  110. package/tsc.log +78 -92
  111. package/testeranto/bundles/node/allTests/chunk-3EUGBAOM.mjs +0 -113
  112. package/testeranto/bundles/node/allTests/chunk-E75CSRER.mjs +0 -800
  113. package/testeranto/bundles/node/allTests/chunk-M6DO7VMB.mjs +0 -252
  114. package/testeranto/bundles/node/allTests/metafile.json +0 -1229
  115. package/testeranto/bundles/node/allTests/src/lib/BaseSuite.test/node.test.mjs +0 -323
  116. package/testeranto/bundles/node/allTests/src/lib/baseBuilder.test/baseBuilder.test.node.mjs +0 -223
  117. package/testeranto/bundles/node/allTests/src/lib/classBuilder.test/classBuilder.test.mjs +0 -411
  118. package/testeranto/bundles/node/allTests/src/lib/core.test/core.test.mjs +0 -528
  119. package/testeranto/bundles/node/allTests/src/lib/pmProxy.test/index.mjs +0 -4752
  120. package/testeranto/bundles/pure/allTests/chunk-KHDVEHF7.mjs +0 -185
  121. package/testeranto/bundles/pure/allTests/chunk-VMUSFSZM.mjs +0 -797
  122. package/testeranto/bundles/pure/allTests/metafile.json +0 -1054
  123. package/testeranto/bundles/pure/allTests/src/Pure.test.mjs +0 -429
  124. package/testeranto/bundles/pure/allTests/src/lib/BaseSuite.test/pure.test.mjs +0 -425
  125. package/testeranto/bundles/pure/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure.mjs +0 -381
  126. package/testeranto/bundles/web/allTests/chunk-HPYA4YZC.mjs +0 -2283
  127. package/testeranto/bundles/web/allTests/chunk-U7AW26HL.mjs +0 -997
  128. package/testeranto/bundles/web/allTests/metafile.json +0 -25
  129. package/testeranto/bundles/web/allTests/src/lib/BaseSuite.test/web.test.html +0 -19
  130. package/testeranto/bundles/web/allTests/src/lib/BaseSuite.test/web.test.mjs +0 -440
  131. package/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.html +0 -19
  132. package/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.mjs +0 -244
  133. package/testeranto/reports/allTests/config.json +0 -104
  134. package/testeranto/reports/allTests/src/Pure.test/pure/lint_errors.txt +0 -0
  135. package/testeranto/reports/allTests/src/Pure.test/pure/message.txt +0 -2
  136. package/testeranto/reports/allTests/src/Pure.test/pure/prompt.txt +0 -13
  137. package/testeranto/reports/allTests/src/Pure.test/pure/type_errors.txt +0 -101
  138. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/bdd_errors.txt +0 -1
  139. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/logs.txt +0 -50
  140. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/message.txt +0 -2
  141. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/prompt.txt +0 -17
  142. package/testeranto/reports/allTests/src/components/pure/ProjectPageView.test/index/web/tests.json +0 -32
  143. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/bdd_errors.txt +0 -1
  144. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/lint_errors.txt +0 -0
  145. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/logs.txt +0 -52
  146. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/message.txt +0 -2
  147. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/prompt.txt +0 -13
  148. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/tests.json +0 -31
  149. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/type_errors.txt +0 -111
  150. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/bdd_errors.txt +0 -1
  151. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/lint_errors.txt +0 -0
  152. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/message.txt +0 -2
  153. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/prompt.txt +0 -14
  154. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/tests.json +0 -31
  155. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/type_errors.txt +0 -111
  156. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/bdd_errors.txt +0 -1
  157. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/lint_errors.txt +0 -0
  158. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/logs.txt +0 -108
  159. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/message.txt +0 -2
  160. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/prompt.txt +0 -14
  161. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/tests.json +0 -31
  162. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/type_errors.txt +0 -111
  163. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/bdd_errors.txt +0 -1
  164. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.txt +0 -0
  165. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/logs.txt +0 -35
  166. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/message.txt +0 -2
  167. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/prompt.txt +0 -16
  168. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/tests.json +0 -77
  169. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/type_errors.txt +0 -62
  170. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.txt +0 -0
  171. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/message.txt +0 -2
  172. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/prompt.txt +0 -18
  173. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/type_errors.txt +0 -62
  174. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/bdd_errors.txt +0 -1
  175. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.txt +0 -0
  176. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/logs.txt +0 -69
  177. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/message.txt +0 -2
  178. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/prompt.txt +0 -16
  179. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/tests.json +0 -77
  180. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/type_errors.txt +0 -62
  181. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/bdd_errors.txt +0 -1
  182. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/lint_errors.txt +0 -0
  183. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/logs.txt +0 -700
  184. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/message.txt +0 -2
  185. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/prompt.txt +0 -16
  186. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/tests.json +0 -164
  187. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/type_errors.txt +0 -138
  188. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/lint_errors.txt +0 -21
  189. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/logs.txt +0 -7
  190. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/message.txt +0 -2
  191. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/prompt.txt +0 -18
  192. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/type_errors.txt +0 -63
  193. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/bdd_errors.txt +0 -1
  194. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/lint_errors.txt +0 -20
  195. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/logs.txt +0 -31
  196. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/message.txt +0 -2
  197. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/prompt.txt +0 -16
  198. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/tests.json +0 -134
  199. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/type_errors.txt +0 -76
  200. package/testeranto/reports/allTests/summary.json +0 -79
  201. package/testeranto/reportsnode_build_errors +0 -20
  202. package/testeranto/reportspure_build_errors +0 -343
  203. package/testeranto/reportsweb_build_errors +0 -25
@@ -1,411 +0,0 @@
1
- import { createRequire } from 'module';const require = createRequire(import.meta.url);
2
- import {
3
- MockSuite
4
- } from "../../../chunk-3EUGBAOM.mjs";
5
- import {
6
- Node_default
7
- } from "../../../chunk-M6DO7VMB.mjs";
8
- import {
9
- ClassBuilder
10
- } from "../../../chunk-E75CSRER.mjs";
11
-
12
- // src/lib/classBuilder.test/mock.ts
13
- var TestClassBuilderMock = class extends ClassBuilder {
14
- constructor(testImplementation, testSpecification, input, suiteKlasser, givenKlasser, whenKlasser, thenKlasser, testResourceRequirement) {
15
- super(
16
- testImplementation,
17
- testSpecification,
18
- input,
19
- suiteKlasser,
20
- givenKlasser,
21
- whenKlasser,
22
- thenKlasser,
23
- testResourceRequirement
24
- );
25
- this.testJobs = [];
26
- this.specs = [];
27
- this.artifacts = [];
28
- this.summary = {};
29
- }
30
- // async runTests(puppetMaster: any): Promise<any> {
31
- // this.summary = {
32
- // [puppetMaster.testResourceConfiguration.name]: {
33
- // typeErrors: 0,
34
- // staticErrors: 0,
35
- // runTimeError: "",
36
- // prompt: "",
37
- // failingFeatures: {},
38
- // },
39
- // };
40
- // return {
41
- // failed: false,
42
- // fails: 0,
43
- // artifacts: this.artifacts,
44
- // logPromise: Promise.resolve(),
45
- // features: [],
46
- // };
47
- // }
48
- // protected async executeTestJob(job: any): Promise<any> {
49
- // return job();
50
- // }
51
- // protected createArtifact(name: string, content: any): void {
52
- // this.artifacts.push({ name, content });
53
- // }
54
- };
55
-
56
- // src/lib/classBuilder.test/classBuilder.test.implementation.ts
57
- var implementation = {
58
- suites: {
59
- Default: "ClassBuilder test suite",
60
- ExtendedSuite: "Extended ClassBuilder test suite"
61
- },
62
- givens: {
63
- Default: () => {
64
- console.log("Creating default test builder instance");
65
- const builder = new TestClassBuilderMock(
66
- implementation,
67
- // Use the current implementation
68
- specification,
69
- // Use the current specification
70
- {},
71
- // Default input
72
- MockSuite,
73
- class {
74
- },
75
- // givenKlasser
76
- class {
77
- },
78
- // whenKlasser
79
- class {
80
- },
81
- // thenKlasser
82
- { ports: [] }
83
- // Default resource requirements
84
- );
85
- console.log("Builder created:", builder);
86
- return builder;
87
- },
88
- WithCustomInput: (input) => {
89
- return new TestClassBuilderMock(
90
- implementation,
91
- specification,
92
- input,
93
- class {
94
- },
95
- class {
96
- },
97
- class {
98
- },
99
- class {
100
- },
101
- class {
102
- },
103
- { ports: [] }
104
- );
105
- },
106
- WithResourceRequirements: (requirements) => {
107
- return new TestClassBuilderMock(
108
- implementation,
109
- specification,
110
- {},
111
- class {
112
- },
113
- class {
114
- },
115
- class {
116
- },
117
- class {
118
- },
119
- class {
120
- },
121
- requirements
122
- );
123
- },
124
- WithCustomImplementation: (impl) => {
125
- return new TestClassBuilderMock(
126
- impl,
127
- specification,
128
- {},
129
- class {
130
- },
131
- class {
132
- },
133
- class {
134
- },
135
- class {
136
- },
137
- class {
138
- },
139
- { ports: [] }
140
- );
141
- },
142
- WithCustomSpecification: (spec) => {
143
- return new TestClassBuilderMock(
144
- implementation,
145
- spec,
146
- {},
147
- class {
148
- },
149
- class {
150
- },
151
- class {
152
- },
153
- class {
154
- },
155
- class {
156
- },
157
- { ports: [] }
158
- );
159
- }
160
- },
161
- whens: {
162
- addArtifact: (artifact) => (builder) => {
163
- builder.artifacts.push(artifact);
164
- return builder;
165
- },
166
- setTestJobs: (jobs) => (builder) => {
167
- builder.testJobs = jobs;
168
- return builder;
169
- },
170
- modifySpecs: (modifier) => (builder) => {
171
- builder.specs = modifier(builder.specs || []);
172
- return builder;
173
- },
174
- modifyJobs: (modifier) => (builder) => {
175
- builder.testJobs = modifier(builder.testJobs || []);
176
- return builder;
177
- },
178
- triggerError: (message) => (builder) => {
179
- throw new Error(message);
180
- }
181
- },
182
- thens: {
183
- initializedProperly: () => (builder) => {
184
- console.log("Checking builder initialization:", {
185
- builder,
186
- isMock: builder instanceof TestClassBuilderMock,
187
- constructor: builder?.constructor?.name,
188
- props: Object.keys(builder)
189
- });
190
- if (!builder) {
191
- throw new Error("Builder is undefined");
192
- }
193
- if (!(builder instanceof TestClassBuilderMock)) {
194
- throw new Error(
195
- `Builder was not properly initialized. Expected mock instance but got ${builder?.constructor?.name}`
196
- );
197
- }
198
- const requiredProps = ["specs", "testJobs", "artifacts"];
199
- for (const prop of requiredProps) {
200
- if (!(prop in builder)) {
201
- throw new Error(`Missing required property: ${prop}`);
202
- }
203
- }
204
- return builder;
205
- },
206
- specsGenerated: () => (builder) => {
207
- if (!Array.isArray(builder.specs)) {
208
- throw new Error("Specs were not generated");
209
- }
210
- return builder;
211
- },
212
- jobsCreated: () => (builder) => {
213
- if (!Array.isArray(builder.testJobs)) {
214
- throw new Error("Test jobs were not created");
215
- }
216
- return builder;
217
- },
218
- artifactsTracked: () => (builder) => {
219
- if (!Array.isArray(builder.artifacts)) {
220
- throw new Error("Artifacts array not initialized");
221
- }
222
- return builder;
223
- },
224
- resourceRequirementsSet: () => (builder) => {
225
- if (!builder.testResourceRequirement) {
226
- throw new Error("Resource requirements not set");
227
- }
228
- return builder;
229
- },
230
- suitesOverridesConfigured: () => (builder) => {
231
- if (!builder.suitesOverrides) {
232
- throw new Error("Suites overrides not configured");
233
- }
234
- return builder;
235
- },
236
- givensOverridesConfigured: () => (builder) => {
237
- if (!builder.givenOverides) {
238
- throw new Error("Givens overrides not configured");
239
- }
240
- return builder;
241
- },
242
- whensOverridesConfigured: () => (builder) => {
243
- if (!builder.whenOverides) {
244
- throw new Error("Whens overrides not configured");
245
- }
246
- return builder;
247
- },
248
- thensOverridesConfigured: () => (builder) => {
249
- if (!builder.thenOverides) {
250
- throw new Error("Thens overrides not configured");
251
- }
252
- return builder;
253
- },
254
- specsModified: (expectedCount) => (builder) => {
255
- if (builder.specs.length <= expectedCount) {
256
- throw new Error(`Expected at least ${expectedCount} modified specs`);
257
- }
258
- return builder;
259
- },
260
- jobsModified: (expectedCount) => (builder) => {
261
- if (builder.testJobs.length <= expectedCount) {
262
- throw new Error(`Expected at least ${expectedCount} modified jobs`);
263
- }
264
- return builder;
265
- },
266
- errorThrown: (expectedMessage) => (builder) => {
267
- return builder;
268
- },
269
- testRunSuccessful: () => async (builder) => {
270
- try {
271
- await builder.testRun({
272
- testResourceConfiguration: {
273
- name: "test",
274
- fs: "/tmp",
275
- ports: []
276
- }
277
- });
278
- return builder;
279
- } catch (e) {
280
- throw new Error(`Test run failed: ${e.message}`);
281
- }
282
- }
283
- }
284
- };
285
-
286
- // src/lib/classBuilder.test/classBuilder.test.specification.ts
287
- var specification = (Suite, Given, When, Then) => {
288
- return [
289
- Suite.Default("Basic ClassBuilder Functionality", {
290
- // Basic initialization tests
291
- initialization: Given.Default(
292
- ["ClassBuilder should initialize with default values"],
293
- [],
294
- [Then.initializedProperly()]
295
- ),
296
- customInput: Given.WithCustomInput(
297
- { custom: "input" },
298
- [],
299
- [Then.initializedProperly()]
300
- ),
301
- resourceRequirements: Given.WithResourceRequirements(
302
- { ports: [3e3, 3001] },
303
- [],
304
- [Then.resourceRequirementsSet()]
305
- ),
306
- // Core functionality tests
307
- specGeneration: Given.Default(
308
- ["Should generate specs from test specification"],
309
- [],
310
- [Then.specsGenerated()]
311
- ),
312
- jobCreation: Given.Default(
313
- ["Should create test jobs from specs"],
314
- [],
315
- [Then.jobsCreated()]
316
- ),
317
- artifactTracking: Given.Default(
318
- ["Should track artifacts"],
319
- [When.addArtifact(Promise.resolve("test"))],
320
- [Then.artifactsTracked()]
321
- ),
322
- // Configuration tests
323
- overridesConfiguration: Given.Default(
324
- ["Should properly configure all overrides"],
325
- [],
326
- [
327
- Then.suitesOverridesConfigured(),
328
- Then.givensOverridesConfigured(),
329
- Then.whensOverridesConfigured(),
330
- Then.thensOverridesConfigured()
331
- ]
332
- )
333
- }),
334
- Suite.ExtendedSuite(
335
- "Advanced ClassBuilder Functionality",
336
- {
337
- // Custom implementations
338
- customImplementation: Given.WithCustomImplementation(
339
- implementation,
340
- [],
341
- [Then.specsGenerated(), Then.jobsCreated()]
342
- ),
343
- customSpecification: Given.WithCustomSpecification(
344
- specification,
345
- [],
346
- [Then.specsGenerated(), Then.jobsCreated()]
347
- ),
348
- // Dynamic modification tests
349
- modifySpecs: Given.Default(
350
- ["Should allow modifying specs"],
351
- [When.modifySpecs((specs) => [...specs, "extra"])],
352
- [Then.specsModified(1)]
353
- ),
354
- modifyJobs: Given.Default(
355
- ["Should allow modifying jobs"],
356
- [When.modifyJobs((jobs) => [...jobs, {}])],
357
- [Then.jobsModified(1)]
358
- ),
359
- // Error handling
360
- errorHandling: Given.Default(
361
- ["Should properly handle errors"],
362
- [When.triggerError("test error")],
363
- [Then.errorThrown("test error")]
364
- ),
365
- // Full test run
366
- testRun: Given.Default(
367
- ["Should complete a full test run successfully"],
368
- [],
369
- [Then.testRunSuccessful()]
370
- )
371
- },
372
- []
373
- )
374
- ];
375
- };
376
-
377
- // src/lib/classBuilder.test/classBuilder.test.adapter.ts
378
- var testAdapter = {
379
- beforeAll: async () => {
380
- },
381
- beforeEach: async (subject, initializer) => {
382
- console.log("Running beforeEach with initializer:", initializer);
383
- const result = await initializer();
384
- console.log("Initializer returned:", result);
385
- return result;
386
- },
387
- andWhen: async (store, whenCB, testResource, utils) => {
388
- return whenCB(store, utils);
389
- },
390
- butThen: async (store, thenCB, testResource, pm) => {
391
- return thenCB(store, pm);
392
- },
393
- afterEach: (store) => store,
394
- afterAll: () => {
395
- },
396
- assertThis: (x) => {
397
- }
398
- };
399
-
400
- // src/lib/classBuilder.test/classBuilder.test.ts
401
- var classBuilder_test_default = Node_default(
402
- ClassBuilder.prototype,
403
- specification,
404
- implementation,
405
- testAdapter,
406
- { ports: 1 }
407
- // Add resource requirements
408
- );
409
- export {
410
- classBuilder_test_default as default
411
- };