testeranto 0.146.2 → 0.146.5

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 (215) hide show
  1. package/dist/common/src/Node.js +9 -6
  2. package/dist/common/src/PM/PM_WithEslintAndTsc.js +75 -58
  3. package/dist/common/src/PM/main.js +131 -79
  4. package/dist/common/src/PM/node.js +1 -14
  5. package/dist/common/src/PM/nodeSidecar.js +0 -1
  6. package/dist/common/src/Pure.js +17 -1
  7. package/dist/common/src/Pure.test.js +172 -0
  8. package/dist/common/src/build.js +0 -1
  9. package/dist/common/src/esbuildConfigs/consoleDetectorPlugin.js +22 -11
  10. package/dist/common/src/esbuildConfigs/nativeImportDetectorPlugin.js +24 -0
  11. package/dist/common/src/esbuildConfigs/pure.js +2 -1
  12. package/dist/common/src/esbuildConfigs/rebuildPlugin.js +1 -4
  13. package/dist/common/src/lib/BaseSuite.js +89 -0
  14. package/dist/common/src/lib/BaseSuite.test/node.test.js +9 -0
  15. package/dist/common/src/lib/BaseSuite.test/pure.test.js +9 -0
  16. package/dist/common/src/lib/BaseSuite.test/test.js +232 -0
  17. package/dist/common/src/lib/BaseSuite.test/web.test.js +9 -0
  18. package/dist/common/src/lib/abstractBase.js +1 -90
  19. package/dist/common/src/lib/abstractBase.test/MockGiven.js +17 -0
  20. package/dist/common/src/lib/abstractBase.test/MockThen.js +13 -0
  21. package/dist/common/src/lib/abstractBase.test/MockWhen.js +13 -0
  22. package/dist/common/src/lib/abstractBase.test/implementation.js +42 -0
  23. package/dist/common/src/lib/abstractBase.test/index.js +17 -0
  24. package/dist/common/src/lib/abstractBase.test/interface.js +12 -0
  25. package/dist/common/src/lib/abstractBase.test/specification.js +19 -0
  26. package/dist/common/src/lib/abstractBase.test/types.js +2 -0
  27. package/dist/common/src/lib/baseBuilder.test/TestBaseBuilder.js +36 -0
  28. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +97 -0
  29. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.interface.js +17 -0
  30. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.node.js +11 -0
  31. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.pure.js +11 -0
  32. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.specification.js +13 -0
  33. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.types.js +2 -0
  34. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.web.js +11 -0
  35. package/dist/common/src/lib/basebuilder.js +2 -20
  36. package/dist/common/src/lib/classBuilder.test/TestClassBuilder.js +41 -0
  37. package/dist/common/src/lib/classBuilder.test/classBuilder.test.implementation.js +182 -0
  38. package/dist/common/src/lib/classBuilder.test/classBuilder.test.interface.js +17 -0
  39. package/dist/common/src/lib/classBuilder.test/classBuilder.test.js +11 -0
  40. package/dist/common/src/lib/classBuilder.test/classBuilder.test.specification.js +41 -0
  41. package/dist/common/src/lib/classBuilder.test/classBuilder.test.types.js +2 -0
  42. package/dist/common/src/lib/core.js +4 -13
  43. package/dist/common/src/lib/core.test/MockCore.js +25 -0
  44. package/dist/common/src/lib/core.test/core.test.implementation.js +102 -0
  45. package/dist/common/src/lib/core.test/core.test.interface.js +18 -0
  46. package/dist/common/src/lib/core.test/core.test.js +17 -0
  47. package/dist/common/src/lib/core.test/core.test.specification.js +33 -0
  48. package/dist/common/src/lib/core.test/core.test.types.js +2 -0
  49. package/dist/common/src/lib/pmProxy.js +9 -166
  50. package/dist/common/src/lib/pmProxy.test/implementation.js +76 -0
  51. package/dist/common/src/lib/pmProxy.test/index.js +15 -0
  52. package/dist/common/src/lib/pmProxy.test/interface.js +37 -0
  53. package/dist/common/src/lib/pmProxy.test/mockPM.js +34 -0
  54. package/dist/common/src/lib/pmProxy.test/mockPMBase.js +115 -0
  55. package/dist/common/src/lib/pmProxy.test/specification.js +39 -0
  56. package/dist/common/src/lib/pmProxy.test/types.js +2 -0
  57. package/dist/common/src/run.js +6 -6
  58. package/dist/common/testeranto.config.js +33 -18
  59. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  60. package/dist/module/src/Node.js +9 -6
  61. package/dist/module/src/PM/PM_WithEslintAndTsc.js +75 -58
  62. package/dist/module/src/PM/main.js +131 -79
  63. package/dist/module/src/PM/node.js +1 -14
  64. package/dist/module/src/PM/nodeSidecar.js +0 -1
  65. package/dist/module/src/Pure.js +17 -1
  66. package/dist/module/src/Pure.test.js +167 -0
  67. package/dist/module/src/build.js +0 -1
  68. package/dist/module/src/esbuildConfigs/consoleDetectorPlugin.js +19 -11
  69. package/dist/module/src/esbuildConfigs/nativeImportDetectorPlugin.js +21 -0
  70. package/dist/module/src/esbuildConfigs/pure.js +2 -1
  71. package/dist/module/src/esbuildConfigs/rebuildPlugin.js +1 -4
  72. package/dist/module/src/lib/BaseSuite.js +85 -0
  73. package/dist/module/src/lib/BaseSuite.test/node.test.js +4 -0
  74. package/dist/module/src/lib/BaseSuite.test/pure.test.js +4 -0
  75. package/dist/module/src/lib/BaseSuite.test/test.js +227 -0
  76. package/dist/module/src/lib/BaseSuite.test/web.test.js +4 -0
  77. package/dist/module/src/lib/abstractBase.js +1 -89
  78. package/dist/module/src/lib/abstractBase.test/MockGiven.js +13 -0
  79. package/dist/module/src/lib/abstractBase.test/MockThen.js +9 -0
  80. package/dist/module/src/lib/abstractBase.test/MockWhen.js +9 -0
  81. package/dist/module/src/lib/abstractBase.test/implementation.js +39 -0
  82. package/dist/module/src/lib/abstractBase.test/index.js +12 -0
  83. package/dist/module/src/lib/abstractBase.test/interface.js +9 -0
  84. package/dist/module/src/lib/abstractBase.test/specification.js +15 -0
  85. package/dist/module/src/lib/abstractBase.test/types.js +1 -0
  86. package/dist/module/src/lib/baseBuilder.test/TestBaseBuilder.js +32 -0
  87. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +94 -0
  88. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.interface.js +14 -0
  89. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.node.js +6 -0
  90. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.pure.js +6 -0
  91. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.specification.js +9 -0
  92. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.types.js +1 -0
  93. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.web.js +6 -0
  94. package/dist/module/src/lib/basebuilder.js +2 -20
  95. package/dist/module/src/lib/classBuilder.test/TestClassBuilder.js +37 -0
  96. package/dist/module/src/lib/classBuilder.test/classBuilder.test.implementation.js +179 -0
  97. package/dist/module/src/lib/classBuilder.test/classBuilder.test.interface.js +14 -0
  98. package/dist/module/src/lib/classBuilder.test/classBuilder.test.js +6 -0
  99. package/dist/module/src/lib/classBuilder.test/classBuilder.test.specification.js +37 -0
  100. package/dist/module/src/lib/classBuilder.test/classBuilder.test.types.js +1 -0
  101. package/dist/module/src/lib/core.js +3 -12
  102. package/dist/module/src/lib/core.test/MockCore.js +18 -0
  103. package/dist/module/src/lib/core.test/core.test.implementation.js +99 -0
  104. package/dist/module/src/lib/core.test/core.test.interface.js +15 -0
  105. package/dist/module/src/lib/core.test/core.test.js +12 -0
  106. package/dist/module/src/lib/core.test/core.test.specification.js +29 -0
  107. package/dist/module/src/lib/core.test/core.test.types.js +1 -0
  108. package/dist/module/src/lib/pmProxy.js +9 -166
  109. package/dist/module/src/lib/pmProxy.test/implementation.js +73 -0
  110. package/dist/module/src/lib/pmProxy.test/index.js +10 -0
  111. package/dist/module/src/lib/pmProxy.test/interface.js +34 -0
  112. package/dist/module/src/lib/pmProxy.test/mockPM.js +30 -0
  113. package/dist/module/src/lib/pmProxy.test/mockPMBase.js +111 -0
  114. package/dist/module/src/lib/pmProxy.test/specification.js +35 -0
  115. package/dist/module/src/lib/pmProxy.test/types.js +1 -0
  116. package/dist/module/src/run.js +6 -6
  117. package/dist/module/testeranto.config.js +33 -18
  118. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  119. package/dist/prebuild/Project.js +16 -15
  120. package/dist/prebuild/TestReport.js +14 -12
  121. package/dist/prebuild/build.mjs +34 -34
  122. package/dist/prebuild/run.mjs +259 -173
  123. package/dist/tsconfig.tsbuildinfo +1 -1
  124. package/dist/types/src/PM/PM_WithEslintAndTsc.d.ts +2 -1
  125. package/dist/types/src/PM/main.d.ts +5 -2
  126. package/dist/types/src/Pure.d.ts +2 -2
  127. package/dist/types/src/Pure.test.d.ts +36 -0
  128. package/dist/types/src/Types.d.ts +7 -6
  129. package/dist/types/src/Web.d.ts +1 -1
  130. package/dist/types/src/esbuildConfigs/consoleDetectorPlugin.d.ts +1 -1
  131. package/dist/types/src/esbuildConfigs/nativeImportDetectorPlugin.d.ts +2 -0
  132. package/dist/types/src/lib/BaseSuite.d.ts +39 -0
  133. package/dist/types/src/lib/BaseSuite.test/node.test.d.ts +3 -0
  134. package/dist/types/src/lib/BaseSuite.test/pure.test.d.ts +3 -0
  135. package/dist/types/src/lib/BaseSuite.test/test.d.ts +42 -0
  136. package/dist/types/src/lib/BaseSuite.test/web.test.d.ts +3 -0
  137. package/dist/types/src/lib/abstractBase.d.ts +1 -36
  138. package/dist/types/src/lib/abstractBase.test/MockGiven.d.ts +7 -0
  139. package/dist/types/src/lib/abstractBase.test/MockThen.d.ts +6 -0
  140. package/dist/types/src/lib/abstractBase.test/MockWhen.d.ts +6 -0
  141. package/dist/types/src/lib/abstractBase.test/implementation.d.ts +3 -0
  142. package/dist/types/src/lib/abstractBase.test/index.d.ts +3 -0
  143. package/dist/types/src/lib/abstractBase.test/interface.d.ts +3 -0
  144. package/dist/types/src/lib/abstractBase.test/specification.d.ts +3 -0
  145. package/dist/types/src/lib/abstractBase.test/types.d.ts +39 -0
  146. package/dist/types/src/lib/baseBuilder.test/TestBaseBuilder.d.ts +15 -0
  147. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.implementation.d.ts +3 -0
  148. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.interface.d.ts +3 -0
  149. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.node.d.ts +3 -0
  150. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.pure.d.ts +3 -0
  151. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.specification.d.ts +3 -0
  152. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.types.d.ts +20 -0
  153. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.web.d.ts +3 -0
  154. package/dist/types/src/lib/classBuilder.test/TestClassBuilder.d.ts +21 -0
  155. package/dist/types/src/lib/classBuilder.test/classBuilder.test.d.ts +3 -0
  156. package/dist/types/src/lib/classBuilder.test/classBuilder.test.implementation.d.ts +3 -0
  157. package/dist/types/src/lib/classBuilder.test/classBuilder.test.interface.d.ts +3 -0
  158. package/dist/types/src/lib/classBuilder.test/classBuilder.test.specification.d.ts +3 -0
  159. package/dist/types/src/lib/classBuilder.test/classBuilder.test.types.d.ts +56 -0
  160. package/dist/types/src/lib/core.d.ts +1 -1
  161. package/dist/types/src/lib/core.test/MockCore.d.ts +10 -0
  162. package/dist/types/src/lib/core.test/core.test.d.ts +3 -0
  163. package/dist/types/src/lib/core.test/core.test.implementation.d.ts +3 -0
  164. package/dist/types/src/lib/core.test/core.test.interface.d.ts +3 -0
  165. package/dist/types/src/lib/core.test/core.test.specification.d.ts +3 -0
  166. package/dist/types/src/lib/core.test/core.test.types.d.ts +46 -0
  167. package/dist/types/src/lib/index.d.ts +2 -1
  168. package/dist/types/src/lib/pmProxy.d.ts +11 -6
  169. package/dist/types/src/lib/pmProxy.test/implementation.d.ts +3 -0
  170. package/dist/types/src/lib/pmProxy.test/index.d.ts +7 -0
  171. package/dist/types/src/lib/pmProxy.test/interface.d.ts +3 -0
  172. package/dist/types/src/lib/pmProxy.test/mockPM.d.ts +10 -0
  173. package/dist/types/src/lib/pmProxy.test/mockPMBase.d.ts +39 -0
  174. package/dist/types/src/lib/pmProxy.test/specification.d.ts +3 -0
  175. package/dist/types/src/lib/pmProxy.test/types.d.ts +42 -0
  176. package/dist/types/src/lib/types.d.ts +2 -1
  177. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  178. package/docs.html +35 -33
  179. package/index.html +23 -30
  180. package/package.json +8 -18
  181. package/src/lib/basebuilder.ts +0 -24
  182. package/testeranto/Project.css +1 -26
  183. package/testeranto/Project.js +3337 -385
  184. package/testeranto/TestReport.css +1 -26
  185. package/testeranto/TestReport.js +43 -16
  186. package/testeranto/bundles/node/allTests/metafile.json +1 -1
  187. package/testeranto/bundles/pure/allTests/metafile.json +1 -1
  188. package/testeranto/bundles/web/allTests/metafile.json +1 -1
  189. package/testeranto/index.html +1 -1
  190. package/testeranto/reports/allTests/index.html +1 -1
  191. package/testeranto/reports/allTests/src/Pure.test/pure/index.html +1 -1
  192. package/testeranto/reports/allTests/src/Pure.test/pure/lint_errors.json +137 -1539
  193. package/testeranto/reports/allTests/src/Pure.test/pure/logs.txt +2 -2
  194. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/index.html +1 -1
  195. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/lint_errors.json +58 -620
  196. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/index.html +1 -1
  197. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/lint_errors.json +58 -620
  198. package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/logs.txt +2 -2
  199. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/index.html +1 -1
  200. package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/lint_errors.json +58 -620
  201. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/index.html +1 -1
  202. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.json +104 -966
  203. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/index.html +1 -1
  204. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.json +104 -966
  205. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/index.html +1 -1
  206. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.json +104 -966
  207. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/index.html +1 -1
  208. package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/lint_errors.json +63 -791
  209. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/index.html +1 -1
  210. package/testeranto/reports/allTests/src/lib/core.test/core.test/node/lint_errors.json +39 -416
  211. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/index.html +1 -1
  212. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/lint_errors.json +156 -1724
  213. package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/logs.txt +3 -3
  214. package/testeranto.config.ts +1 -1
  215. package/tsc.log +36 -38
@@ -2,95 +2,8 @@
2
2
  /* eslint-disable @typescript-eslint/no-unused-vars */
3
3
  /* eslint-disable @typescript-eslint/no-explicit-any */
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.BaseCheck = exports.BaseThen = exports.BaseWhen = exports.BaseGiven = exports.BaseSuite = void 0;
5
+ exports.BaseCheck = exports.BaseThen = exports.BaseWhen = exports.BaseGiven = void 0;
6
6
  const pmProxy_js_1 = require("./pmProxy.js");
7
- class BaseSuite {
8
- constructor(name, index, givens = {}, checks = []) {
9
- this.name = name;
10
- this.index = index;
11
- this.givens = givens;
12
- this.checks = checks;
13
- this.fails = 0;
14
- }
15
- features() {
16
- const features = Object.keys(this.givens)
17
- .map((k) => this.givens[k].features)
18
- .flat()
19
- .filter((value, index, array) => {
20
- return array.indexOf(value) === index;
21
- });
22
- return features || [];
23
- }
24
- toObj() {
25
- const givens = Object.keys(this.givens).map((k) => this.givens[k].toObj());
26
- const checks = Object.keys(this.checks).map((k) => this.checks[k].toObj());
27
- return {
28
- name: this.name,
29
- givens,
30
- checks,
31
- fails: this.fails,
32
- failed: this.failed,
33
- features: this.features(),
34
- };
35
- }
36
- setup(s, artifactory, tr, pm) {
37
- return new Promise((res) => res(s));
38
- }
39
- assertThat(t) {
40
- return !!t;
41
- }
42
- afterAll(store, artifactory, pm) {
43
- return store;
44
- }
45
- async run(input, testResourceConfiguration, artifactory, tLog, pm) {
46
- this.testResourceConfiguration = testResourceConfiguration;
47
- // tLog("test resources: ", JSON.stringify(testResourceConfiguration));
48
- const suiteArtifactory = (fPath, value) => artifactory(`suite-${this.index}-${this.name}/${fPath}`, value);
49
- // console.log("\nSuite:", this.index, this.name);
50
- tLog("\nSuite:", this.index, this.name);
51
- const sNdx = this.index;
52
- // const sName = this.name;
53
- const subject = await this.setup(input, suiteArtifactory, testResourceConfiguration, (0, pmProxy_js_1.beforeAllProxy)(pm, sNdx.toString()));
54
- for (const [gKey, g] of Object.entries(this.givens)) {
55
- const giver = this.givens[gKey];
56
- try {
57
- this.store = await giver.give(subject, gKey, testResourceConfiguration, this.assertThat, suiteArtifactory, tLog, pm, sNdx);
58
- }
59
- catch (e) {
60
- this.failed = true;
61
- this.fails = this.fails + 1;
62
- console.error(e);
63
- // this.fails.push(giver);
64
- // return this;
65
- }
66
- }
67
- for (const [ndx, thater] of this.checks.entries()) {
68
- await thater.check(subject, thater.name, testResourceConfiguration, this.assertThat, suiteArtifactory, tLog, pm);
69
- }
70
- try {
71
- this.afterAll(this.store, artifactory, (0, pmProxy_js_1.afterAllProxy)(pm, sNdx.toString()));
72
- }
73
- catch (e) {
74
- console.error(e);
75
- // this.fails.push(this);
76
- // return this;
77
- }
78
- // @TODO fix me
79
- // for (const k of Object.keys(this.givens)) {
80
- // const giver = this.givens[k];
81
- // try {
82
- // giver.afterAll(this.store, artifactory, pm);
83
- // } catch (e) {
84
- // console.error(e);
85
- // this.fails.push(giver);
86
- // return this;
87
- // }
88
- // }
89
- ////////////////
90
- return this;
91
- }
92
- }
93
- exports.BaseSuite = BaseSuite;
94
7
  class BaseGiven {
95
8
  constructor(name, features, whens, thens, givenCB, initialValues) {
96
9
  this.name = name;
@@ -188,7 +101,6 @@ class BaseWhen {
188
101
  async test(store, testResourceConfiguration, tLog, pm, filepath) {
189
102
  tLog(" When:", this.name);
190
103
  return await this.andWhen(store, this.whenCB, testResourceConfiguration, (0, pmProxy_js_1.andWhenProxy)(pm, filepath)).catch((e) => {
191
- console.log("MARK9", e);
192
104
  this.error = e;
193
105
  throw e;
194
106
  });
@@ -217,7 +129,6 @@ class BaseThen {
217
129
  return this.thenCB;
218
130
  }
219
131
  }, testResourceConfiguration, (0, pmProxy_js_1.butThenProxy)(pm, filepath)).catch((e) => {
220
- console.log("test failed 3", e);
221
132
  this.error = e;
222
133
  throw e;
223
134
  });
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MockGiven = void 0;
4
+ const abstractBase_1 = require("../abstractBase");
5
+ class MockGiven extends abstractBase_1.BaseGiven {
6
+ constructor(name, features, whens, thens, givenCB, initialValues) {
7
+ super(name, features, whens, thens, givenCB, initialValues);
8
+ }
9
+ async givenThat(subject, testResourceConfiguration, artifactory, givenCB, initialValues, pm) {
10
+ return givenCB();
11
+ }
12
+ uberCatcher(e) {
13
+ console.error("MockGiven error:", e);
14
+ this.error = e;
15
+ }
16
+ }
17
+ exports.MockGiven = MockGiven;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MockThen = void 0;
4
+ const abstractBase_1 = require("../abstractBase");
5
+ class MockThen extends abstractBase_1.BaseThen {
6
+ constructor(name, thenCB) {
7
+ super(name, thenCB);
8
+ }
9
+ async butThen(store, thenCB, testResourceConfiguration, pm) {
10
+ return thenCB(store);
11
+ }
12
+ }
13
+ exports.MockThen = MockThen;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MockWhen = void 0;
4
+ const abstractBase_1 = require("../abstractBase");
5
+ class MockWhen extends abstractBase_1.BaseWhen {
6
+ constructor(name, whenCB) {
7
+ super(name, whenCB);
8
+ }
9
+ async andWhen(store, whenCB, testResource, pm) {
10
+ return whenCB(store);
11
+ }
12
+ }
13
+ exports.MockWhen = MockWhen;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.implementation = void 0;
4
+ const stream_1 = require("stream");
5
+ exports.implementation = {
6
+ suites: {
7
+ Default: "Abstract Base Test Suite",
8
+ },
9
+ givens: {
10
+ Default: () => ({
11
+ testStore: { value: "initial" },
12
+ testSelection: { selected: true },
13
+ }),
14
+ WithError: () => ({
15
+ testStore: { value: "error" },
16
+ testSelection: { selected: false },
17
+ }),
18
+ },
19
+ whens: {
20
+ modifyStore: (newValue) => (store) => (Object.assign(Object.assign({}, store), { testStore: { value: newValue } })),
21
+ throwError: () => () => {
22
+ throw new Error("Test error");
23
+ },
24
+ },
25
+ thens: {
26
+ verifyStore: (expected) => (store) => {
27
+ if (store.testStore.value !== expected) {
28
+ throw new Error(`Expected ${expected}, got ${store.testStore.value}`);
29
+ }
30
+ return store;
31
+ },
32
+ verifyError: (expected) => (store) => {
33
+ if (!store.error || !store.error.message.includes(expected)) {
34
+ throw new Error(`Expected error "${expected}" not found`);
35
+ }
36
+ return store;
37
+ },
38
+ },
39
+ checks: {
40
+ Default: () => new stream_1.PassThrough(),
41
+ },
42
+ };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const Node_1 = __importDefault(require("../../Node"));
7
+ const specification_1 = require("./specification");
8
+ const implementation_1 = require("./implementation");
9
+ const interface_1 = require("./interface");
10
+ const MockGiven_1 = require("./MockGiven");
11
+ const MockThen_1 = require("./MockThen");
12
+ const MockWhen_1 = require("./MockWhen");
13
+ exports.default = (0, Node_1.default)({
14
+ MockGiven: MockGiven_1.MockGiven,
15
+ MockWhen: MockWhen_1.MockWhen,
16
+ MockThen: MockThen_1.MockThen,
17
+ }, specification_1.specification, implementation_1.implementation, interface_1.testInterface);
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.testInterface = void 0;
4
+ exports.testInterface = {
5
+ beforeEach: async (subject, initializer) => initializer(),
6
+ andWhen: async (store, whenCB) => whenCB(store),
7
+ butThen: async (store, thenCB) => thenCB(store),
8
+ afterEach: (store) => store,
9
+ afterAll: () => { },
10
+ assertThis: (result) => !!result,
11
+ beforeAll: async (input) => input
12
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.specification = void 0;
4
+ const specification = (Suite, Given, When, Then, Check) => [
5
+ Suite.Default("BaseGiven Tests", {
6
+ initialization: Given.Default(["Should initialize with default values"], [], [Then.verifyStore("initial")]),
7
+ errorHandling: Given.WithError(["Should handle errors properly"], [When.throwError()], [Then.verifyError("Test error")])
8
+ }),
9
+ Suite.Default("BaseWhen Tests", {
10
+ stateModification: Given.Default(["Should modify state correctly"], [When.modifyStore("modified")], [Then.verifyStore("modified")]),
11
+ errorPropagation: Given.Default(["Should propagate errors"], [When.throwError()], [Then.verifyError("Test error")])
12
+ }),
13
+ Suite.Default("BaseThen Tests", {
14
+ assertionPassing: Given.Default(["Should pass valid assertions"], [When.modifyStore("asserted")], [Then.verifyStore("asserted")]),
15
+ assertionFailing: Given.Default(["Should fail invalid assertions"], [When.modifyStore("wrong")], [Then.verifyStore("right")] // This should fail
16
+ )
17
+ })
18
+ ];
19
+ exports.specification = specification;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TestBaseBuilder = void 0;
4
+ const basebuilder_1 = require("../basebuilder");
5
+ /**
6
+ * Concrete implementation of BaseBuilder for testing purposes only
7
+ */
8
+ class TestBaseBuilder extends basebuilder_1.BaseBuilder {
9
+ constructor(input, suitesOverrides = {}, givenOverrides = {}, whenOverrides = {}, thenOverrides = {}, checkOverrides = {}, testResourceRequirement = { ports: [] }, testSpecification = () => []) {
10
+ super(input, suitesOverrides, givenOverrides, whenOverrides, thenOverrides, checkOverrides, testResourceRequirement, testSpecification);
11
+ this.summary = {};
12
+ this.summary = {};
13
+ }
14
+ /**
15
+ * Simplified version for testing that doesn't actually run tests
16
+ */
17
+ testRun(puppetMaster) {
18
+ this.summary = {
19
+ [puppetMaster.testResourceConfiguration.name]: {
20
+ typeErrors: 0,
21
+ staticErrors: 0,
22
+ runTimeError: "",
23
+ prompt: "",
24
+ failingFeatures: {},
25
+ },
26
+ };
27
+ return Promise.resolve({
28
+ failed: false,
29
+ fails: 0,
30
+ artifacts: [],
31
+ logPromise: Promise.resolve(),
32
+ features: [],
33
+ });
34
+ }
35
+ }
36
+ exports.TestBaseBuilder = TestBaseBuilder;
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.implementation = void 0;
4
+ const stream_1 = require("stream");
5
+ const TestBaseBuilder_1 = require("./TestBaseBuilder");
6
+ const basebuilder_1 = require("../basebuilder");
7
+ exports.implementation = {
8
+ suites: {
9
+ Default: "BaseBuilder test suite",
10
+ },
11
+ givens: {
12
+ Default: () => {
13
+ return new TestBaseBuilder_1.TestBaseBuilder({}, {}, {}, {}, {}, {}, { ports: [] }, () => []);
14
+ },
15
+ WithCustomInput: (input) => {
16
+ return new TestBaseBuilder_1.TestBaseBuilder(input, {}, {}, {}, {}, {}, { ports: [] }, () => []);
17
+ },
18
+ WithResourceRequirements: (requirements) => {
19
+ return new TestBaseBuilder_1.TestBaseBuilder({}, {}, {}, {}, {}, {}, requirements, () => []);
20
+ },
21
+ },
22
+ whens: {
23
+ addArtifact: (artifact) => (builder) => {
24
+ builder.artifacts.push(artifact);
25
+ return builder;
26
+ },
27
+ setTestJobs: (jobs) => (builder) => {
28
+ builder.testJobs = jobs;
29
+ return builder;
30
+ },
31
+ },
32
+ thens: {
33
+ initializedProperly: () => (builder) => {
34
+ if (!(builder instanceof basebuilder_1.BaseBuilder)) {
35
+ throw new Error("Builder was not properly initialized");
36
+ }
37
+ return builder;
38
+ },
39
+ specsGenerated: () => (builder) => {
40
+ if (!Array.isArray(builder.specs)) {
41
+ throw new Error("Specs were not generated");
42
+ }
43
+ return builder;
44
+ },
45
+ jobsCreated: () => (builder) => {
46
+ if (!Array.isArray(builder.testJobs)) {
47
+ throw new Error("Test jobs were not created");
48
+ }
49
+ return builder;
50
+ },
51
+ artifactsTracked: () => (builder) => {
52
+ if (!Array.isArray(builder.artifacts)) {
53
+ throw new Error("Artifacts array not initialized");
54
+ }
55
+ return builder;
56
+ },
57
+ resourceRequirementsSet: () => (builder) => {
58
+ if (!builder.testResourceRequirement) {
59
+ throw new Error("Resource requirements not set");
60
+ }
61
+ return builder;
62
+ },
63
+ suitesOverridesConfigured: () => (builder) => {
64
+ if (!builder.suitesOverrides) {
65
+ throw new Error("Suites overrides not configured");
66
+ }
67
+ return builder;
68
+ },
69
+ givensOverridesConfigured: () => (builder) => {
70
+ if (!builder.givenOverides) {
71
+ throw new Error("Givens overrides not configured");
72
+ }
73
+ return builder;
74
+ },
75
+ whensOverridesConfigured: () => (builder) => {
76
+ if (!builder.whenOverides) {
77
+ throw new Error("Whens overrides not configured");
78
+ }
79
+ return builder;
80
+ },
81
+ thensOverridesConfigured: () => (builder) => {
82
+ if (!builder.thenOverides) {
83
+ throw new Error("Thens overrides not configured");
84
+ }
85
+ return builder;
86
+ },
87
+ checksOverridesConfigured: () => (builder) => {
88
+ if (!builder.checkOverides) {
89
+ throw new Error("Checks overrides not configured");
90
+ }
91
+ return builder;
92
+ },
93
+ },
94
+ checks: {
95
+ Default: () => new stream_1.PassThrough(), // Not used in these tests
96
+ },
97
+ };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.testInterface = void 0;
4
+ exports.testInterface = {
5
+ beforeEach: async (subject, initializer) => {
6
+ return initializer();
7
+ },
8
+ andWhen: async (store, whenCB, testResource, utils) => {
9
+ return whenCB(store, utils);
10
+ },
11
+ butThen: async (store, thenCB, testResource, pm) => {
12
+ return thenCB(store, pm);
13
+ },
14
+ afterEach: (store) => store,
15
+ afterAll: () => { },
16
+ assertThis: (x) => { },
17
+ };
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const Pure_1 = __importDefault(require("../../Pure"));
7
+ const baseBuilder_test_specification_1 = require("./baseBuilder.test.specification");
8
+ const baseBuilder_test_implementation_1 = require("./baseBuilder.test.implementation");
9
+ const baseBuilder_test_interface_1 = require("./baseBuilder.test.interface");
10
+ const basebuilder_1 = require("../basebuilder");
11
+ exports.default = (0, Pure_1.default)(basebuilder_1.BaseBuilder.prototype, baseBuilder_test_specification_1.specification, baseBuilder_test_implementation_1.implementation, baseBuilder_test_interface_1.testInterface);
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const Pure_1 = __importDefault(require("../../Pure"));
7
+ const baseBuilder_test_specification_1 = require("./baseBuilder.test.specification");
8
+ const baseBuilder_test_implementation_1 = require("./baseBuilder.test.implementation");
9
+ const baseBuilder_test_interface_1 = require("./baseBuilder.test.interface");
10
+ const basebuilder_1 = require("../basebuilder");
11
+ exports.default = (0, Pure_1.default)(basebuilder_1.BaseBuilder.prototype, baseBuilder_test_specification_1.specification, baseBuilder_test_implementation_1.implementation, baseBuilder_test_interface_1.testInterface);
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.specification = void 0;
4
+ const specification = (Suite, Given, When, Then, Check) => {
5
+ return [
6
+ Suite.Default("Testing BaseBuilder functionality", {
7
+ testInitialization: Given.Default(["BaseBuilder should initialize correctly"], [], [Then.initializedProperly()]),
8
+ testSpecsGeneration: Given.Default(["BaseBuilder should generate specs from test specification"], [], [Then.specsGenerated()]),
9
+ testJobsCreation: Given.Default(["BaseBuilder should create test jobs"], [], [Then.jobsCreated()]),
10
+ }, []),
11
+ ];
12
+ };
13
+ exports.specification = specification;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const Web_1 = __importDefault(require("../../Web"));
7
+ const baseBuilder_test_specification_1 = require("./baseBuilder.test.specification");
8
+ const baseBuilder_test_implementation_1 = require("./baseBuilder.test.implementation");
9
+ const baseBuilder_test_interface_1 = require("./baseBuilder.test.interface");
10
+ const basebuilder_1 = require("../basebuilder");
11
+ exports.default = (0, Web_1.default)(basebuilder_1.BaseBuilder.prototype, baseBuilder_test_specification_1.specification, baseBuilder_test_implementation_1.implementation, baseBuilder_test_interface_1.testInterface);
@@ -34,8 +34,9 @@ class BaseBuilder {
34
34
  receiveTestResourceConfig: async function (puppetMaster) {
35
35
  const logFilePath = "log.txt";
36
36
  const access = await puppetMaster.createWriteStream(logFilePath);
37
+ // deprecated?
37
38
  const tLog = async (...l) => {
38
- // console.log("x", x);
39
+ //
39
40
  };
40
41
  const suiteDone = await runner(puppetMaster, tLog);
41
42
  const logPromise = new Promise(async (res) => {
@@ -44,25 +45,6 @@ class BaseBuilder {
44
45
  });
45
46
  const fails = suiteDone.fails;
46
47
  await puppetMaster.writeFileSync(`bdd_errors.txt`, fails.toString());
47
- // await puppetMaster.writeFileSync(
48
- // `index.html`,
49
- // `
50
- // <!DOCTYPE html>
51
- // <html lang="en">
52
- // <head>
53
- // <meta name="description" content="Webpage description goes here" />
54
- // <meta charset="utf-8" />
55
- // <title>kokomoBay - testeranto</title>
56
- // <meta name="viewport" content="width=device-width, initial-scale=1" />
57
- // <meta name="author" content="" />
58
- // <link rel="stylesheet" href="/kokomoBay/testeranto/TestReport.css" />
59
- // <script src="/kokomoBay/testeranto/TestReport.js"></script>
60
- // </head>
61
- // <body>
62
- // <div id="root"/>
63
- // </body>
64
- // `
65
- // );
66
48
  await puppetMaster.writeFileSync(`tests.json`, JSON.stringify(this.toObj(), null, 2));
67
49
  return {
68
50
  failed: fails > 0,
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TestClassBuilder = void 0;
4
+ const basebuilder_1 = require("../basebuilder");
5
+ /**
6
+ * Concrete implementation of BaseBuilder for testing ClassBuilder
7
+ */
8
+ class TestClassBuilder extends basebuilder_1.BaseBuilder {
9
+ constructor(testImplementation, testSpecification, input, suiteKlasser, givenKlasser, whenKlasser, thenKlasser, checkKlasser, testResourceRequirement) {
10
+ super(input, {}, // suitesOverrides
11
+ {}, // givenOverides
12
+ {}, // whenOverides
13
+ {}, // thenOverides
14
+ {}, // checkOverides
15
+ testResourceRequirement, testSpecification);
16
+ this.summary = {};
17
+ this.summary = {};
18
+ }
19
+ /**
20
+ * Simplified test run for verification
21
+ */
22
+ testRun(puppetMaster) {
23
+ this.summary = {
24
+ [puppetMaster.testResourceConfiguration.name]: {
25
+ typeErrors: 0,
26
+ staticErrors: 0,
27
+ runTimeError: "",
28
+ prompt: "",
29
+ failingFeatures: {},
30
+ },
31
+ };
32
+ return Promise.resolve({
33
+ failed: false,
34
+ fails: 0,
35
+ artifacts: [],
36
+ logPromise: Promise.resolve(),
37
+ features: [],
38
+ });
39
+ }
40
+ }
41
+ exports.TestClassBuilder = TestClassBuilder;