testeranto 0.173.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 (145) hide show
  1. package/dist/common/src/PM/base.js +5 -5
  2. package/dist/common/src/PM/main.js +48 -52
  3. package/dist/common/src/PM/node.js +4 -1
  4. package/dist/common/src/PM/pure.js +4 -1
  5. package/dist/common/src/PM/web.js +4 -1
  6. package/dist/common/src/Pure.js +0 -4
  7. package/dist/common/src/Pure.test.js +1 -1
  8. package/dist/common/src/ReportServerLib.js +11 -5
  9. package/dist/common/src/esbuildConfigs/node.js +1 -3
  10. package/dist/common/src/lib/BaseSuite.js +13 -11
  11. package/dist/common/src/lib/abstractBase.js +39 -42
  12. package/dist/common/src/lib/basebuilder.js +5 -0
  13. package/dist/common/src/lib/core.js +1 -0
  14. package/dist/common/src/lib/pmProxy.js +210 -100
  15. package/dist/common/src/lib/pmProxy.test/adapter.js +2 -2
  16. package/dist/common/src/lib/pmProxy.test/implementation.js +1 -1
  17. package/dist/common/testeranto.config.js +39 -39
  18. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  19. package/dist/module/src/PM/base.js +5 -5
  20. package/dist/module/src/PM/main.js +13 -17
  21. package/dist/module/src/PM/node.js +4 -1
  22. package/dist/module/src/PM/pure.js +4 -1
  23. package/dist/module/src/PM/web.js +4 -1
  24. package/dist/module/src/Pure.js +0 -4
  25. package/dist/module/src/Pure.test.js +1 -1
  26. package/dist/module/src/ReportServerLib.js +11 -5
  27. package/dist/module/src/esbuildConfigs/node.js +1 -3
  28. package/dist/module/src/lib/BaseSuite.js +13 -11
  29. package/dist/module/src/lib/abstractBase.js +39 -42
  30. package/dist/module/src/lib/basebuilder.js +5 -0
  31. package/dist/module/src/lib/core.js +1 -0
  32. package/dist/module/src/lib/pmProxy.js +210 -100
  33. package/dist/module/src/lib/pmProxy.test/adapter.js +2 -2
  34. package/dist/module/src/lib/pmProxy.test/implementation.js +1 -1
  35. package/dist/module/testeranto.config.js +39 -39
  36. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  37. package/dist/prebuild/ReportServer.mjs +10 -4
  38. package/dist/prebuild/build.mjs +1 -1
  39. package/dist/prebuild/run.mjs +19 -22
  40. package/dist/types/src/PM/base.d.ts +1 -1
  41. package/dist/types/src/PM/node.d.ts +1 -1
  42. package/dist/types/src/PM/pure.d.ts +1 -1
  43. package/dist/types/src/PM/web.d.ts +1 -1
  44. package/dist/types/src/ReportServerLib.d.ts +1 -2
  45. package/dist/types/src/lib/BaseSuite.d.ts +2 -0
  46. package/dist/types/src/lib/abstractBase.d.ts +4 -6
  47. package/dist/types/src/lib/pmProxy.d.ts +3 -3
  48. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  49. package/package.json +2 -2
  50. package/src/PM/base.ts +6 -9
  51. package/src/PM/main.ts +17 -20
  52. package/src/PM/node.ts +6 -1
  53. package/src/PM/pure.ts +6 -1
  54. package/src/PM/web.ts +5 -1
  55. package/src/Pure.test.ts +6 -6
  56. package/src/Pure.ts +0 -8
  57. package/src/ReportServerLib.ts +10 -7
  58. package/src/esbuildConfigs/node.ts +1 -1
  59. package/src/lib/BaseSuite.ts +16 -21
  60. package/src/lib/abstractBase.ts +57 -49
  61. package/src/lib/basebuilder.ts +6 -0
  62. package/src/lib/core.ts +1 -0
  63. package/src/lib/pmProxy.test/adapter.ts +2 -2
  64. package/src/lib/pmProxy.test/implementation.ts +3 -3
  65. package/src/lib/pmProxy.test/types.ts +0 -2
  66. package/src/lib/pmProxy.ts +224 -92
  67. package/testeranto/bundles/node/core/metafile.json +2 -480
  68. package/testeranto/bundles/pure/core/metafile.json +3 -621
  69. package/testeranto/bundles/web/core/metafile.json +14384 -78
  70. package/testeranto/bundles/web/core/src/{lib/baseBuilder.test/baseBuilder.test.web.html → components/pure/ProjectPageView.test/index.html} +2 -2
  71. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.mjs +39991 -0
  72. package/testeranto/projects.json +0 -1
  73. package/testeranto/reports/core/config.json +5 -5
  74. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/lint_errors.txt +18 -0
  75. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/logs.txt +59 -0
  76. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/message.txt +2 -0
  77. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/prompt.txt +27 -0
  78. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/suite-0/given-basicRender/then-0/butThen/happyPath.png +0 -0
  79. package/testeranto/reports/{staticSite/src/ReportServer.test.ts/index/node → core/src/components/pure/ProjectPageView.test/index/web}/type_errors.txt +20 -22
  80. package/testeranto/reports/core/summary.json +5 -19
  81. package/testeranto.config.ts +39 -39
  82. package/tsc.log +78 -92
  83. package/testeranto/bundles/node/allTests/metafile.json +0 -486
  84. package/testeranto/bundles/node/allTests/src/lib/baseBuilder.test/baseBuilder.test.node.mjs +0 -1182
  85. package/testeranto/bundles/node/core/src/lib/baseBuilder.test/baseBuilder.test.node.mjs +0 -1182
  86. package/testeranto/bundles/node/staticSite/metafile.json +0 -593
  87. package/testeranto/bundles/node/staticSite/src/ReportServer.test.ts/index.mjs +0 -1594
  88. package/testeranto/bundles/pure/allTests/metafile.json +0 -626
  89. package/testeranto/bundles/pure/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure.mjs +0 -1094
  90. package/testeranto/bundles/pure/core/src/lib/baseBuilder.test/baseBuilder.test.pure.mjs +0 -1094
  91. package/testeranto/bundles/pure/staticSite/metafile.json +0 -8
  92. package/testeranto/bundles/web/allTests/metafile.json +0 -780
  93. package/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.html +0 -19
  94. package/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.mjs +0 -1092
  95. package/testeranto/bundles/web/core/src/lib/baseBuilder.test/baseBuilder.test.web.mjs +0 -1092
  96. package/testeranto/bundles/web/staticSite/metafile.json +0 -8
  97. package/testeranto/reports/allTests/config.json +0 -40
  98. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/bdd_errors.txt +0 -1
  99. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.txt +0 -2
  100. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/logs.txt +0 -33
  101. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/message.txt +0 -2
  102. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/prompt.txt +0 -26
  103. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/suite-0/given-testInitialization/then-0/butThen/hello.txt +0 -1
  104. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/tests.json +0 -69
  105. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/type_errors.txt +0 -74
  106. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.txt +0 -2
  107. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/message.txt +0 -2
  108. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/prompt.txt +0 -26
  109. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/type_errors.txt +0 -74
  110. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/bdd_errors.txt +0 -1
  111. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.txt +0 -2
  112. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/logs.txt +0 -63
  113. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/message.txt +0 -2
  114. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/prompt.txt +0 -26
  115. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/suite-0/given-testInitialization/then-0/butThen/hello.txt +0 -1
  116. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/tests.json +0 -69
  117. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/type_errors.txt +0 -74
  118. package/testeranto/reports/allTests/summary.json +0 -23
  119. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/bdd_errors.txt +0 -1
  120. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.txt +0 -2
  121. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/logs.txt +0 -32
  122. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/message.txt +0 -2
  123. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/prompt.txt +0 -26
  124. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/suite-0/given-testInitialization/then-0/butThen/hello.txt +0 -1
  125. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/tests.json +0 -69
  126. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/type_errors.txt +0 -74
  127. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.txt +0 -2
  128. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/message.txt +0 -2
  129. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/prompt.txt +0 -26
  130. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/type_errors.txt +0 -74
  131. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/bdd_errors.txt +0 -1
  132. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.txt +0 -2
  133. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/logs.txt +0 -61
  134. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/message.txt +0 -2
  135. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/prompt.txt +0 -26
  136. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/suite-0/given-testInitialization/then-0/butThen/hello.txt +0 -1
  137. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/tests.json +0 -69
  138. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/type_errors.txt +0 -74
  139. package/testeranto/reports/staticSite/config.json +0 -24
  140. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/lint_errors.txt +0 -5
  141. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/logs.txt +0 -44
  142. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/message.txt +0 -2
  143. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/prompt.txt +0 -23
  144. package/testeranto/reports/staticSite/summary.json +0 -9
  145. package/testeranto/reportsnode_build_errors +0 -17
@@ -118,11 +118,11 @@ class PM_Base {
118
118
  }
119
119
  return false;
120
120
  }
121
- async writeFileSync(filepath, contents, testName) {
122
- console.log("writeFileSync");
123
- console.log("filepath", filepath);
124
- console.log("contents", contents);
125
- console.log("testName", testName);
121
+ async writeFileSync(...x) {
122
+ const filepath = x[0];
123
+ const contents = x[1];
124
+ const testName = x[2];
125
+ console.log("writing file", filepath);
126
126
  return new Promise(async (res) => {
127
127
  fs_1.default.mkdirSync(path_1.default.dirname(filepath), {
128
128
  recursive: true,
@@ -42,16 +42,16 @@ exports.PM_Main = void 0;
42
42
  /* eslint-disable @typescript-eslint/no-explicit-any */
43
43
  /* eslint-disable @typescript-eslint/no-unused-vars */
44
44
  const node_child_process_1 = require("node:child_process");
45
+ const ansi_colors_1 = __importDefault(require("ansi-colors"));
45
46
  const net_1 = __importDefault(require("net"));
46
47
  const fs_1 = __importStar(require("fs"));
47
48
  const path_1 = __importDefault(require("path"));
48
49
  const puppeteer_core_1 = __importDefault(require("puppeteer-core"));
49
- const ansi_colors_1 = __importDefault(require("ansi-colors"));
50
+ const ansi_colors_2 = __importDefault(require("ansi-colors"));
50
51
  const node_crypto_1 = __importDefault(require("node:crypto"));
51
52
  const utils_1 = require("../utils");
52
53
  const queue_js_1 = require("../utils/queue.js");
53
54
  const PM_WithEslintAndTsc_js_1 = require("./PM_WithEslintAndTsc.js");
54
- const ansi_colors_2 = __importDefault(require("ansi-colors"));
55
55
  const changes = {};
56
56
  const fileHashes = {};
57
57
  const files = {};
@@ -74,10 +74,10 @@ async function fileHash(filePath, algorithm = "md5") {
74
74
  }
75
75
  const statusMessagePretty = (failures, test, runtime) => {
76
76
  if (failures === 0) {
77
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`${runtime} > ${test} completed successfully`)));
77
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`${runtime} > ${test} completed successfully`)));
78
78
  }
79
79
  else {
80
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${runtime} > ${test} failed ${failures} times`)));
80
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`${runtime} > ${test} failed ${failures} times`)));
81
81
  }
82
82
  };
83
83
  async function writeFileAndCreateDir(filePath, data) {
@@ -108,12 +108,10 @@ function isValidUrl(string) {
108
108
  }
109
109
  // Wait for file to exist, checks every 2 seconds by default
110
110
  async function pollForFile(path, timeout = 2000) {
111
- console.log(`pollForFile: ${path}...`);
112
111
  const intervalObj = setInterval(function () {
113
112
  const file = path;
114
113
  const fileExists = fs_1.default.existsSync(file);
115
114
  if (fileExists) {
116
- console.log(`metafile found: ${path}!`);
117
115
  clearInterval(intervalObj);
118
116
  }
119
117
  }, timeout);
@@ -132,7 +130,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
132
130
  return (0, utils_1.getRunnables)(tests, testName, payload);
133
131
  };
134
132
  this.launchPure = async (src, dest) => {
135
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`pure < ${src}`)));
133
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`pure < ${src}`)));
136
134
  this.bddTestIsRunning(src);
137
135
  const reportDest = `testeranto/reports/${this.name}/${src
138
136
  .split(".")
@@ -147,7 +145,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
147
145
  return t[0] === src;
148
146
  });
149
147
  if (!testConfig) {
150
- console.log(ansi_colors_1.default.inverse("missing test config! Exiting ungracefully!"));
148
+ console.log(ansi_colors_2.default.inverse("missing test config! Exiting ungracefully!"));
151
149
  process.exit(-1);
152
150
  }
153
151
  const testConfigResource = testConfig[2];
@@ -224,7 +222,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
224
222
  this.bddTestIsNowDone(src, results.fails);
225
223
  })
226
224
  .catch((e1) => {
227
- console.log(ansi_colors_1.default.red(`launchPure - ${src} errored with: ${e1}`));
225
+ console.log(ansi_colors_2.default.red(`launchPure - ${src} errored with: ${e1}`));
228
226
  this.bddTestIsNowDone(src, -1);
229
227
  statusMessagePretty(-1, src, "pure");
230
228
  });
@@ -233,7 +231,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
233
231
  // });
234
232
  })
235
233
  .catch((e2) => {
236
- console.log(ansi_colors_2.default.red(`pure ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`));
234
+ console.log(ansi_colors_1.default.red(`pure ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`));
237
235
  this.writeFileSync(`${reportDest}/logs.txt`, e2.stack, src);
238
236
  this.bddTestIsNowDone(src, -1);
239
237
  statusMessagePretty(-1, src, "pure");
@@ -249,7 +247,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
249
247
  });
250
248
  }
251
249
  catch (e3) {
252
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${src} 1 errored with: ${e3}. Check ${reportDest}/logs.txt for more info`)));
250
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`${src} 1 errored with: ${e3}. Check ${reportDest}/logs.txt for more info`)));
253
251
  this.writeFileSync(`${reportDest}/logs.txt`, e3.stack, src);
254
252
  this.bddTestIsNowDone(src, -1);
255
253
  statusMessagePretty(-1, src, "pure");
@@ -262,7 +260,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
262
260
  }
263
261
  };
264
262
  this.launchNode = async (src, dest) => {
265
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`node < ${src}`)));
263
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`node < ${src}`)));
266
264
  this.bddTestIsRunning(src);
267
265
  const reportDest = `testeranto/reports/${this.name}/${src
268
266
  .split(".")
@@ -277,7 +275,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
277
275
  return t[0] === src;
278
276
  });
279
277
  if (!testConfig) {
280
- console.log(ansi_colors_1.default.inverse(`missing test config! Exiting ungracefully for '${src}'`));
278
+ console.log(ansi_colors_2.default.inverse(`missing test config! Exiting ungracefully for '${src}'`));
281
279
  process.exit(-1);
282
280
  }
283
281
  const testConfigResource = testConfig[2];
@@ -308,7 +306,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
308
306
  });
309
307
  }
310
308
  else {
311
- console.log(ansi_colors_1.default.red(`node: cannot run ${src} because there are no open ports ATM. This job will be enqueued and run again run a port is available`));
309
+ console.log(ansi_colors_2.default.red(`node: cannot run ${src} because there are no open ports ATM. This job will be enqueued and run again run a port is available`));
312
310
  this.queue.push(src);
313
311
  return;
314
312
  }
@@ -394,7 +392,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
394
392
  // JSON.stringify(Array.from(files[src]))
395
393
  // );
396
394
  if (code === 255) {
397
- console.log(ansi_colors_2.default.red(`node ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`));
395
+ console.log(ansi_colors_1.default.red(`node ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`));
398
396
  this.bddTestIsNowDone(src, -1);
399
397
  statusMessagePretty(-1, src, "node");
400
398
  oStream.close();
@@ -421,7 +419,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
421
419
  child.on("error", (e) => {
422
420
  console.log("error");
423
421
  haltReturns = true;
424
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${src} errored with: ${e.name}. Check ${errFile} for more info`)));
422
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`${src} errored with: ${e.name}. Check ${errFile} for more info`)));
425
423
  this.writeFileSync(`${reportDest}/logs.txt`, e.toString(), src);
426
424
  this.bddTestIsNowDone(src, -1);
427
425
  statusMessagePretty(-1, src, "node");
@@ -433,7 +431,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
433
431
  const dest = src.split(".").slice(0, -1).join(".");
434
432
  // const d = dest + ".mjs";
435
433
  const destFolder = dest.replace(".mjs", "");
436
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`launchWebSideCar ${src}`)));
434
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`launchWebSideCar ${src}`)));
437
435
  const fileStreams2 = [];
438
436
  const doneFileStream2 = [];
439
437
  const oStream = fs_1.default.createWriteStream(`${destFolder}/logs.txt`);
@@ -512,7 +510,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
512
510
  this.bddTestIsNowDone(src, fails);
513
511
  })
514
512
  .catch((e) => {
515
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`launchWebSidecar - ${src} errored with: ${e}`)));
513
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`launchWebSidecar - ${src} errored with: ${e}`)));
516
514
  })
517
515
  .finally(() => {
518
516
  this.bddTestIsNowDone(src, -1);
@@ -532,7 +530,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
532
530
  const src = sidecar[0];
533
531
  const dest = process.cwd() + `/testeranto/bundles/node/${this.name}/${sidecar[0]}`;
534
532
  const d = dest + ".mjs";
535
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`launchNodeSideCar ${sidecar[0]}`)));
533
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`launchNodeSideCar ${sidecar[0]}`)));
536
534
  const destFolder = dest.replace(".ts", "");
537
535
  const reportDest = `testeranto/reports/${this.name}/${src
538
536
  .split(".")
@@ -631,7 +629,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
631
629
  fs_1.default.rmSync(p);
632
630
  }
633
631
  haltReturns = true;
634
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`launchNodeSideCar - ${src} errored with: ${e.name}. Check ${errFile}for more info`)));
632
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`launchNodeSideCar - ${src} errored with: ${e.name}. Check ${errFile}for more info`)));
635
633
  this.writeFileSync(`${reportDest}/logs.txt`, e.toString(), src);
636
634
  // this.bddTestIsNowDone(src, -1);
637
635
  // statusMessagePretty(-1, src);
@@ -643,7 +641,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
643
641
  return [r, argz];
644
642
  }
645
643
  else {
646
- console.log(ansi_colors_1.default.red(`cannot ${src} because there are no open ports. the job will be unqueued`));
644
+ console.log(ansi_colors_2.default.red(`cannot ${src} because there are no open ports. the job will be unqueued`));
647
645
  this.queue.push(sidecar[0]);
648
646
  return [Math.random(), argz];
649
647
  }
@@ -654,12 +652,12 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
654
652
  }
655
653
  };
656
654
  this.stopPureSideCar = async (uid) => {
657
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`stopPureSideCar ${uid}`)));
655
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`stopPureSideCar ${uid}`)));
658
656
  await this.sidecars[uid].shutdown();
659
657
  return;
660
658
  };
661
659
  this.launchPureSideCar = async (sidecar) => {
662
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`launchPureSideCar ${sidecar[0]}`)));
660
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`launchPureSideCar ${sidecar[0]}`)));
663
661
  const r = Math.random();
664
662
  const dest = process.cwd() + `/testeranto/bundles/pure/${this.name}/${sidecar[0]}`;
665
663
  const builtfile = dest.split(".").slice(0, -1).concat("mjs").join(".");
@@ -716,7 +714,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
716
714
  // }
717
715
  };
718
716
  this.launchWeb = async (src, dest) => {
719
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`web < ${src}`)));
717
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`web < ${src}`)));
720
718
  this.bddTestIsRunning(src);
721
719
  const reportDest = `testeranto/reports/${this.name}/${src
722
720
  .split(".")
@@ -733,16 +731,6 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
733
731
  browserWSEndpoint: this.browser.wsEndpoint(),
734
732
  });
735
733
  const d = `${dest}?cacheBust=${Date.now()}`;
736
- const evaluation = `
737
-
738
- import('${d}').then(async (x) => {
739
-
740
- try {
741
- return await (await x.default).receiveTestResourceConfig(${webArgz})
742
- } catch (e) {
743
- console.log("web run failure", e.toString())
744
- }
745
- })`;
746
734
  const ofile = `${reportDest}/logs.txt`;
747
735
  const oStream = fs_1.default.createWriteStream(ofile);
748
736
  this.browser
@@ -781,11 +769,10 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
781
769
  page.close();
782
770
  oStream.close();
783
771
  });
784
- console.log("ostream is closed");
785
772
  return;
786
773
  };
787
774
  page.on("pageerror", (err) => {
788
- console.log(ansi_colors_2.default.red(`web ! ${src} failed to execute No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`));
775
+ console.log(ansi_colors_1.default.red(`web ! ${src} failed to execute No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`));
789
776
  oStream.write(err.name);
790
777
  oStream.write("\n");
791
778
  if (err.cause) {
@@ -820,19 +807,28 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
820
807
  });
821
808
  await page.goto(`file://${`${destFolder}.html`}`, {});
822
809
  await page
823
- .evaluate(evaluation)
810
+ .evaluate(`
811
+ import('${d}').then(async (x) => {
812
+ try {
813
+ return await (await x.default).receiveTestResourceConfig(${webArgz})
814
+ } catch (e) {
815
+ console.log("web run failure", e.toString())
816
+ }
817
+ })
818
+ `)
824
819
  .then(async ({ fails, failed, features }) => {
825
820
  statusMessagePretty(fails, src, "web");
826
821
  this.bddTestIsNowDone(src, fails);
827
- close();
822
+ // close();
828
823
  })
829
824
  .catch((e) => {
830
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(e)));
831
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`web ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`)));
825
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(e.stack)));
826
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`web ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`)));
832
827
  this.bddTestIsNowDone(src, -1);
833
828
  })
834
829
  .finally(() => {
835
830
  // process.exit(-1);
831
+ close();
836
832
  });
837
833
  return page;
838
834
  });
@@ -904,40 +900,40 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
904
900
  this.checkForShutdown = () => {
905
901
  // console.log(ansiC.inverse(JSON.stringify(this.summary, null, 2)));
906
902
  this.checkQueue();
907
- console.log(ansi_colors_1.default.inverse(`The following jobs are awaiting resources: ${JSON.stringify(this.queue)}`));
908
- console.log(ansi_colors_1.default.inverse(`The status of ports: ${JSON.stringify(this.ports)}`));
903
+ console.log(ansi_colors_2.default.inverse(`The following jobs are awaiting resources: ${JSON.stringify(this.queue)}`));
904
+ console.log(ansi_colors_2.default.inverse(`The status of ports: ${JSON.stringify(this.ports)}`));
909
905
  this.writeBigBoard();
910
906
  if (this.mode === "dev")
911
907
  return;
912
908
  let inflight = false;
913
909
  Object.keys(this.summary).forEach((k) => {
914
910
  if (this.summary[k].prompt === "?") {
915
- console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 prompt ${k}`)));
911
+ console.log(ansi_colors_2.default.blue(ansi_colors_2.default.inverse(`🕕 prompt ${k}`)));
916
912
  inflight = true;
917
913
  }
918
914
  });
919
915
  Object.keys(this.summary).forEach((k) => {
920
916
  if (this.summary[k].runTimeErrors === "?") {
921
- console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 runTimeError ${k}`)));
917
+ console.log(ansi_colors_2.default.blue(ansi_colors_2.default.inverse(`🕕 runTimeError ${k}`)));
922
918
  inflight = true;
923
919
  }
924
920
  });
925
921
  Object.keys(this.summary).forEach((k) => {
926
922
  if (this.summary[k].staticErrors === "?") {
927
- console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 staticErrors ${k}`)));
923
+ console.log(ansi_colors_2.default.blue(ansi_colors_2.default.inverse(`🕕 staticErrors ${k}`)));
928
924
  inflight = true;
929
925
  }
930
926
  });
931
927
  Object.keys(this.summary).forEach((k) => {
932
928
  if (this.summary[k].typeErrors === "?") {
933
- console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 typeErrors ${k}`)));
929
+ console.log(ansi_colors_2.default.blue(ansi_colors_2.default.inverse(`🕕 typeErrors ${k}`)));
934
930
  inflight = true;
935
931
  }
936
932
  });
937
933
  this.writeBigBoard();
938
934
  if (!inflight) {
939
935
  this.browser.disconnect().then(() => {
940
- console.log(ansi_colors_1.default.inverse(`${this.name} has been tested. Goodbye.`));
936
+ console.log(ansi_colors_2.default.inverse(`${this.name} has been tested. Goodbye.`));
941
937
  process.exit();
942
938
  });
943
939
  }
@@ -953,7 +949,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
953
949
  });
954
950
  }
955
951
  async stopSideCar(uid) {
956
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`stopSideCar ${uid}`)));
952
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`stopSideCar ${uid}`)));
957
953
  Object.entries(this.pureSidecars).forEach(async ([k, v]) => {
958
954
  if (Number(k) === uid) {
959
955
  await this.pureSidecars[Number(k)].stop();
@@ -1118,7 +1114,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1118
1114
  const hash = await fileHash(outputFile);
1119
1115
  if (fileHashes[inputFile] !== hash) {
1120
1116
  fileHashes[inputFile] = hash;
1121
- console.log(ansi_colors_1.default.yellow(ansi_colors_1.default.inverse(`< ${e} ${filename}`)));
1117
+ console.log(ansi_colors_2.default.yellow(ansi_colors_2.default.inverse(`< ${e} ${filename}`)));
1122
1118
  // launcher(inputFile, outputFile);
1123
1119
  this.launchers[inputFile]();
1124
1120
  }
@@ -1130,7 +1126,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1130
1126
  });
1131
1127
  this.metafileOutputs(runtime);
1132
1128
  watcher((0, fs_1.watch)(metafile, async (e, filename) => {
1133
- console.log(ansi_colors_1.default.yellow(ansi_colors_1.default.inverse(`< ${e} ${filename} (${runtime})`)));
1129
+ console.log(ansi_colors_2.default.yellow(ansi_colors_2.default.inverse(`< ${e} ${filename} (${runtime})`)));
1134
1130
  this.metafileOutputs(runtime);
1135
1131
  }));
1136
1132
  });
@@ -1169,7 +1165,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1169
1165
  // // });
1170
1166
  // }
1171
1167
  async stop() {
1172
- console.log(ansi_colors_1.default.inverse("Testeranto-Run is shutting down gracefully..."));
1168
+ console.log(ansi_colors_2.default.inverse("Testeranto-Run is shutting down gracefully..."));
1173
1169
  this.mode = "once";
1174
1170
  this.nodeMetafileWatcher.close();
1175
1171
  this.webMetafileWatcher.close();
@@ -1223,7 +1219,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1223
1219
  checkQueue() {
1224
1220
  const x = this.queue.pop();
1225
1221
  if (!x) {
1226
- ansi_colors_1.default.inverse(`The following queue is empty`);
1222
+ ansi_colors_2.default.inverse(`The following queue is empty`);
1227
1223
  return;
1228
1224
  }
1229
1225
  const test = this.configs.tests.find((t) => t[0] === x);
@@ -114,7 +114,10 @@ class PM_Node extends _1.PM {
114
114
  async write(uid, contents) {
115
115
  return await this.send("write", ...arguments);
116
116
  }
117
- async writeFileSync([filepath, contents]) {
117
+ async writeFileSync(x) {
118
+ const z = arguments["0"];
119
+ const filepath = z[0];
120
+ const contents = z[1];
118
121
  return await this.send("writeFileSync", this.testResourceConfiguration.fs + "/" + filepath, contents, this.testResourceConfiguration.name);
119
122
  }
120
123
  async createWriteStream(filepath) {
@@ -85,7 +85,10 @@ class PM_Pure extends _1.PM {
85
85
  write(uid, contents) {
86
86
  return globalThis["write"](uid, contents);
87
87
  }
88
- writeFileSync(filepath, contents) {
88
+ writeFileSync(x) {
89
+ const z = arguments["0"];
90
+ const filepath = z[0];
91
+ const contents = z[1];
89
92
  return globalThis["writeFileSync"](this.testResourceConfiguration.fs + "/" + filepath, contents, this.testResourceConfiguration.name);
90
93
  }
91
94
  createWriteStream(filepath) {
@@ -83,7 +83,10 @@ class PM_Web extends _1.PM {
83
83
  write(uid, contents) {
84
84
  return window["write"](uid, contents);
85
85
  }
86
- writeFileSync([filepath, contents]) {
86
+ writeFileSync(x) {
87
+ const z = arguments["0"];
88
+ const filepath = z[0];
89
+ const contents = z[1];
87
90
  return window["writeFileSync"](this.testResourceConfiguration.fs + "/" + filepath, contents, this.testResourceConfiguration.name);
88
91
  }
89
92
  createWriteStream(filepath) {
@@ -14,10 +14,8 @@ class PureTesteranto extends core_js_1.default {
14
14
  });
15
15
  }
16
16
  async receiveTestResourceConfig(partialTestResource) {
17
- console.log("[DEBUG] receiveTestResourceConfig called with:", partialTestResource);
18
17
  const t = JSON.parse(partialTestResource);
19
18
  const pm = new pure_js_1.PM_Pure(t);
20
- // console.log("[DEBUG] Current test jobs:", this.testJobs?.length);
21
19
  // if (!this.testJobs || this.testJobs.length === 0) {
22
20
  // console.error(
23
21
  // "[ERROR] No test jobs available - checking specs:",
@@ -33,9 +31,7 @@ class PureTesteranto extends core_js_1.default {
33
31
  // };
34
32
  // }
35
33
  try {
36
- console.log("[DEBUG] Executing test job with PM:", pm);
37
34
  const result = await this.testJobs[0].receiveTestResourceConfig(pm);
38
- console.log("[DEBUG] Test job completed with result:", result);
39
35
  return result;
40
36
  }
41
37
  catch (e) {
@@ -53,7 +53,7 @@ const implementation = {
53
53
  modifySpecs: (modifier) => (store) => {
54
54
  console.debug("[DEBUG] Modifying specs");
55
55
  return Object.assign(Object.assign({}, store), { specs: modifier(store.specs || []) });
56
- }
56
+ },
57
57
  },
58
58
  thens: {
59
59
  initializedProperly: () => (store) => {
@@ -126,10 +126,16 @@ server.on("error", (err) => {
126
126
  process.on("uncaughtException", (err) => {
127
127
  console.error("Uncaught exception:", err);
128
128
  });
129
- const start = (port) => server.listen(port, () => {
130
- console.log(`Server running on http://localhost:${port}`);
131
- console.log("Serving files from:", process.cwd());
132
- });
129
+ const start = (port) => {
130
+ if (port) {
131
+ server.listen(port, () => {
132
+ console.log(`Server running on http://localhost:${port}`);
133
+ console.log("Serving files from:", process.cwd());
134
+ });
135
+ }
136
+ else {
137
+ console.log("you need to specify a port");
138
+ }
139
+ };
133
140
  const ReportServerOfPort = (port) => start(port);
134
141
  exports.ReportServerOfPort = ReportServerOfPort;
135
- // export default () => start(process.argv[2]);
@@ -9,9 +9,7 @@ const featuresPlugin_1 = __importDefault(require("./featuresPlugin"));
9
9
  const rebuildPlugin_js_1 = __importDefault(require("./rebuildPlugin.js"));
10
10
  exports.default = (config, entryPoints, testName) => {
11
11
  const { inputFilesPluginFactory, register } = (0, inputFilesPlugin_js_1.default)("node", testName);
12
- return Object.assign(Object.assign({}, (0, index_js_1.default)(config)), { splitting: true, outdir: `testeranto/bundles/node/${testName}/`,
13
- // inject: [`./node_modules/testeranto/dist/cjs-shim.js`],
14
- metafile: true, supported: {
12
+ return Object.assign(Object.assign({}, (0, index_js_1.default)(config)), { splitting: true, outdir: `testeranto/bundles/node/${testName}/`, inject: [`./node_modules/testeranto/dist/cjs-shim.js`], metafile: true, supported: {
15
13
  "dynamic-import": true,
16
14
  }, define: {
17
15
  "process.env.FLUENTFFMPEG_COV": "0",
@@ -3,18 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseSuite = void 0;
4
4
  const pmProxy_1 = require("./pmProxy");
5
5
  class BaseSuite {
6
+ addArtifact(path) {
7
+ console.log("Suite addArtifact", path);
8
+ const normalizedPath = path.replace(/\\/g, "/"); // Normalize path separators
9
+ this.artifacts.push(normalizedPath);
10
+ }
6
11
  constructor(name, index, givens = {}) {
12
+ this.artifacts = [];
7
13
  const suiteName = name || "testSuite"; // Ensure name is never undefined
8
14
  if (!suiteName) {
9
15
  throw new Error("BaseSuite requires a non-empty name");
10
16
  }
11
- console.log("[DEBUG] BaseSuite constructor - name:", suiteName, "index:", index);
12
17
  this.name = suiteName;
13
18
  this.index = index;
14
19
  this.givens = givens;
15
20
  this.fails = 0;
16
- console.log("[DEBUG] BaseSuite initialized:", this.name, this.index);
17
- console.log("[DEBUG] BaseSuite givens:", Object.keys(givens).toString());
18
21
  }
19
22
  features() {
20
23
  try {
@@ -24,11 +27,10 @@ class BaseSuite {
24
27
  .filter((value, index, array) => {
25
28
  return array.indexOf(value) === index;
26
29
  });
27
- console.debug("[DEBUG] Features extracted:", features.toString());
28
30
  return features || [];
29
31
  }
30
32
  catch (e) {
31
- console.error("[ERROR] Failed to extract features:", e);
33
+ console.error("[ERROR] Failed to extract features:", JSON.stringify(e));
32
34
  return [];
33
35
  }
34
36
  }
@@ -56,10 +58,10 @@ class BaseSuite {
56
58
  // tLog("test resources: ", JSON.stringify(testResourceConfiguration));
57
59
  const suiteArtifactory = (fPath, value) => artifactory(`suite-${this.index}-${this.name}/${fPath}`, value);
58
60
  // console.log("\nSuite:", this.index, this.name);
59
- tLog("\nSuite:", this.index, this.name);
61
+ // tLog("\nSuite:", this.index, this.name);
60
62
  const sNdx = this.index;
61
- // const sName = this.name;
62
- const subject = await this.setup(input, suiteArtifactory, testResourceConfiguration, (0, pmProxy_1.beforeAllProxy)(pm, sNdx.toString()));
63
+ const proxiedPm = (0, pmProxy_1.beforeAllProxy)(pm, sNdx.toString(), this);
64
+ const subject = await this.setup(input, suiteArtifactory, testResourceConfiguration, proxiedPm);
63
65
  for (const [gKey, g] of Object.entries(this.givens)) {
64
66
  const giver = this.givens[gKey];
65
67
  this.store = await giver
@@ -67,15 +69,15 @@ class BaseSuite {
67
69
  .catch((e) => {
68
70
  this.failed = true;
69
71
  this.fails = this.fails + 1;
70
- // console.error("Given error 1:", e.toString());
71
72
  throw e;
72
73
  });
73
74
  }
74
75
  try {
75
- this.afterAll(this.store, artifactory, (0, pmProxy_1.afterAllProxy)(pm, sNdx.toString()));
76
+ const afterAllPm = (0, pmProxy_1.afterAllProxy)(pm, sNdx.toString(), this);
77
+ this.afterAll(this.store, artifactory, afterAllPm);
76
78
  }
77
79
  catch (e) {
78
- console.error(e);
80
+ console.error(JSON.stringify(e));
79
81
  // this.fails.push(this);
80
82
  // return this;
81
83
  }