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.
- package/dist/common/src/Node.js +9 -6
- package/dist/common/src/PM/PM_WithEslintAndTsc.js +75 -58
- package/dist/common/src/PM/main.js +131 -79
- package/dist/common/src/PM/node.js +1 -14
- package/dist/common/src/PM/nodeSidecar.js +0 -1
- package/dist/common/src/Pure.js +17 -1
- package/dist/common/src/Pure.test.js +172 -0
- package/dist/common/src/build.js +0 -1
- package/dist/common/src/esbuildConfigs/consoleDetectorPlugin.js +22 -11
- package/dist/common/src/esbuildConfigs/nativeImportDetectorPlugin.js +24 -0
- package/dist/common/src/esbuildConfigs/pure.js +2 -1
- package/dist/common/src/esbuildConfigs/rebuildPlugin.js +1 -4
- package/dist/common/src/lib/BaseSuite.js +89 -0
- package/dist/common/src/lib/BaseSuite.test/node.test.js +9 -0
- package/dist/common/src/lib/BaseSuite.test/pure.test.js +9 -0
- package/dist/common/src/lib/BaseSuite.test/test.js +232 -0
- package/dist/common/src/lib/BaseSuite.test/web.test.js +9 -0
- package/dist/common/src/lib/abstractBase.js +1 -90
- package/dist/common/src/lib/abstractBase.test/MockGiven.js +17 -0
- package/dist/common/src/lib/abstractBase.test/MockThen.js +13 -0
- package/dist/common/src/lib/abstractBase.test/MockWhen.js +13 -0
- package/dist/common/src/lib/abstractBase.test/implementation.js +42 -0
- package/dist/common/src/lib/abstractBase.test/index.js +17 -0
- package/dist/common/src/lib/abstractBase.test/interface.js +12 -0
- package/dist/common/src/lib/abstractBase.test/specification.js +19 -0
- package/dist/common/src/lib/abstractBase.test/types.js +2 -0
- package/dist/common/src/lib/baseBuilder.test/TestBaseBuilder.js +36 -0
- package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +97 -0
- package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.interface.js +17 -0
- package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.node.js +11 -0
- package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.pure.js +11 -0
- package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.specification.js +13 -0
- package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.types.js +2 -0
- package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.web.js +11 -0
- package/dist/common/src/lib/basebuilder.js +2 -20
- package/dist/common/src/lib/classBuilder.test/TestClassBuilder.js +41 -0
- package/dist/common/src/lib/classBuilder.test/classBuilder.test.implementation.js +182 -0
- package/dist/common/src/lib/classBuilder.test/classBuilder.test.interface.js +17 -0
- package/dist/common/src/lib/classBuilder.test/classBuilder.test.js +11 -0
- package/dist/common/src/lib/classBuilder.test/classBuilder.test.specification.js +41 -0
- package/dist/common/src/lib/classBuilder.test/classBuilder.test.types.js +2 -0
- package/dist/common/src/lib/core.js +4 -13
- package/dist/common/src/lib/core.test/MockCore.js +25 -0
- package/dist/common/src/lib/core.test/core.test.implementation.js +102 -0
- package/dist/common/src/lib/core.test/core.test.interface.js +18 -0
- package/dist/common/src/lib/core.test/core.test.js +17 -0
- package/dist/common/src/lib/core.test/core.test.specification.js +33 -0
- package/dist/common/src/lib/core.test/core.test.types.js +2 -0
- package/dist/common/src/lib/pmProxy.js +9 -166
- package/dist/common/src/lib/pmProxy.test/implementation.js +76 -0
- package/dist/common/src/lib/pmProxy.test/index.js +15 -0
- package/dist/common/src/lib/pmProxy.test/interface.js +37 -0
- package/dist/common/src/lib/pmProxy.test/mockPM.js +34 -0
- package/dist/common/src/lib/pmProxy.test/mockPMBase.js +115 -0
- package/dist/common/src/lib/pmProxy.test/specification.js +39 -0
- package/dist/common/src/lib/pmProxy.test/types.js +2 -0
- package/dist/common/src/run.js +6 -6
- package/dist/common/testeranto.config.js +33 -18
- package/dist/common/tsconfig.common.tsbuildinfo +1 -1
- package/dist/module/src/Node.js +9 -6
- package/dist/module/src/PM/PM_WithEslintAndTsc.js +75 -58
- package/dist/module/src/PM/main.js +131 -79
- package/dist/module/src/PM/node.js +1 -14
- package/dist/module/src/PM/nodeSidecar.js +0 -1
- package/dist/module/src/Pure.js +17 -1
- package/dist/module/src/Pure.test.js +167 -0
- package/dist/module/src/build.js +0 -1
- package/dist/module/src/esbuildConfigs/consoleDetectorPlugin.js +19 -11
- package/dist/module/src/esbuildConfigs/nativeImportDetectorPlugin.js +21 -0
- package/dist/module/src/esbuildConfigs/pure.js +2 -1
- package/dist/module/src/esbuildConfigs/rebuildPlugin.js +1 -4
- package/dist/module/src/lib/BaseSuite.js +85 -0
- package/dist/module/src/lib/BaseSuite.test/node.test.js +4 -0
- package/dist/module/src/lib/BaseSuite.test/pure.test.js +4 -0
- package/dist/module/src/lib/BaseSuite.test/test.js +227 -0
- package/dist/module/src/lib/BaseSuite.test/web.test.js +4 -0
- package/dist/module/src/lib/abstractBase.js +1 -89
- package/dist/module/src/lib/abstractBase.test/MockGiven.js +13 -0
- package/dist/module/src/lib/abstractBase.test/MockThen.js +9 -0
- package/dist/module/src/lib/abstractBase.test/MockWhen.js +9 -0
- package/dist/module/src/lib/abstractBase.test/implementation.js +39 -0
- package/dist/module/src/lib/abstractBase.test/index.js +12 -0
- package/dist/module/src/lib/abstractBase.test/interface.js +9 -0
- package/dist/module/src/lib/abstractBase.test/specification.js +15 -0
- package/dist/module/src/lib/abstractBase.test/types.js +1 -0
- package/dist/module/src/lib/baseBuilder.test/TestBaseBuilder.js +32 -0
- package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +94 -0
- package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.interface.js +14 -0
- package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.node.js +6 -0
- package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.pure.js +6 -0
- package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.specification.js +9 -0
- package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.types.js +1 -0
- package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.web.js +6 -0
- package/dist/module/src/lib/basebuilder.js +2 -20
- package/dist/module/src/lib/classBuilder.test/TestClassBuilder.js +37 -0
- package/dist/module/src/lib/classBuilder.test/classBuilder.test.implementation.js +179 -0
- package/dist/module/src/lib/classBuilder.test/classBuilder.test.interface.js +14 -0
- package/dist/module/src/lib/classBuilder.test/classBuilder.test.js +6 -0
- package/dist/module/src/lib/classBuilder.test/classBuilder.test.specification.js +37 -0
- package/dist/module/src/lib/classBuilder.test/classBuilder.test.types.js +1 -0
- package/dist/module/src/lib/core.js +3 -12
- package/dist/module/src/lib/core.test/MockCore.js +18 -0
- package/dist/module/src/lib/core.test/core.test.implementation.js +99 -0
- package/dist/module/src/lib/core.test/core.test.interface.js +15 -0
- package/dist/module/src/lib/core.test/core.test.js +12 -0
- package/dist/module/src/lib/core.test/core.test.specification.js +29 -0
- package/dist/module/src/lib/core.test/core.test.types.js +1 -0
- package/dist/module/src/lib/pmProxy.js +9 -166
- package/dist/module/src/lib/pmProxy.test/implementation.js +73 -0
- package/dist/module/src/lib/pmProxy.test/index.js +10 -0
- package/dist/module/src/lib/pmProxy.test/interface.js +34 -0
- package/dist/module/src/lib/pmProxy.test/mockPM.js +30 -0
- package/dist/module/src/lib/pmProxy.test/mockPMBase.js +111 -0
- package/dist/module/src/lib/pmProxy.test/specification.js +35 -0
- package/dist/module/src/lib/pmProxy.test/types.js +1 -0
- package/dist/module/src/run.js +6 -6
- package/dist/module/testeranto.config.js +33 -18
- package/dist/module/tsconfig.module.tsbuildinfo +1 -1
- package/dist/prebuild/Project.js +16 -15
- package/dist/prebuild/TestReport.js +14 -12
- package/dist/prebuild/build.mjs +34 -34
- package/dist/prebuild/run.mjs +259 -173
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/src/PM/PM_WithEslintAndTsc.d.ts +2 -1
- package/dist/types/src/PM/main.d.ts +5 -2
- package/dist/types/src/Pure.d.ts +2 -2
- package/dist/types/src/Pure.test.d.ts +36 -0
- package/dist/types/src/Types.d.ts +7 -6
- package/dist/types/src/Web.d.ts +1 -1
- package/dist/types/src/esbuildConfigs/consoleDetectorPlugin.d.ts +1 -1
- package/dist/types/src/esbuildConfigs/nativeImportDetectorPlugin.d.ts +2 -0
- package/dist/types/src/lib/BaseSuite.d.ts +39 -0
- package/dist/types/src/lib/BaseSuite.test/node.test.d.ts +3 -0
- package/dist/types/src/lib/BaseSuite.test/pure.test.d.ts +3 -0
- package/dist/types/src/lib/BaseSuite.test/test.d.ts +42 -0
- package/dist/types/src/lib/BaseSuite.test/web.test.d.ts +3 -0
- package/dist/types/src/lib/abstractBase.d.ts +1 -36
- package/dist/types/src/lib/abstractBase.test/MockGiven.d.ts +7 -0
- package/dist/types/src/lib/abstractBase.test/MockThen.d.ts +6 -0
- package/dist/types/src/lib/abstractBase.test/MockWhen.d.ts +6 -0
- package/dist/types/src/lib/abstractBase.test/implementation.d.ts +3 -0
- package/dist/types/src/lib/abstractBase.test/index.d.ts +3 -0
- package/dist/types/src/lib/abstractBase.test/interface.d.ts +3 -0
- package/dist/types/src/lib/abstractBase.test/specification.d.ts +3 -0
- package/dist/types/src/lib/abstractBase.test/types.d.ts +39 -0
- package/dist/types/src/lib/baseBuilder.test/TestBaseBuilder.d.ts +15 -0
- package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.implementation.d.ts +3 -0
- package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.interface.d.ts +3 -0
- package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.node.d.ts +3 -0
- package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.pure.d.ts +3 -0
- package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.specification.d.ts +3 -0
- package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.types.d.ts +20 -0
- package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.web.d.ts +3 -0
- package/dist/types/src/lib/classBuilder.test/TestClassBuilder.d.ts +21 -0
- package/dist/types/src/lib/classBuilder.test/classBuilder.test.d.ts +3 -0
- package/dist/types/src/lib/classBuilder.test/classBuilder.test.implementation.d.ts +3 -0
- package/dist/types/src/lib/classBuilder.test/classBuilder.test.interface.d.ts +3 -0
- package/dist/types/src/lib/classBuilder.test/classBuilder.test.specification.d.ts +3 -0
- package/dist/types/src/lib/classBuilder.test/classBuilder.test.types.d.ts +56 -0
- package/dist/types/src/lib/core.d.ts +1 -1
- package/dist/types/src/lib/core.test/MockCore.d.ts +10 -0
- package/dist/types/src/lib/core.test/core.test.d.ts +3 -0
- package/dist/types/src/lib/core.test/core.test.implementation.d.ts +3 -0
- package/dist/types/src/lib/core.test/core.test.interface.d.ts +3 -0
- package/dist/types/src/lib/core.test/core.test.specification.d.ts +3 -0
- package/dist/types/src/lib/core.test/core.test.types.d.ts +46 -0
- package/dist/types/src/lib/index.d.ts +2 -1
- package/dist/types/src/lib/pmProxy.d.ts +11 -6
- package/dist/types/src/lib/pmProxy.test/implementation.d.ts +3 -0
- package/dist/types/src/lib/pmProxy.test/index.d.ts +7 -0
- package/dist/types/src/lib/pmProxy.test/interface.d.ts +3 -0
- package/dist/types/src/lib/pmProxy.test/mockPM.d.ts +10 -0
- package/dist/types/src/lib/pmProxy.test/mockPMBase.d.ts +39 -0
- package/dist/types/src/lib/pmProxy.test/specification.d.ts +3 -0
- package/dist/types/src/lib/pmProxy.test/types.d.ts +42 -0
- package/dist/types/src/lib/types.d.ts +2 -1
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/docs.html +35 -33
- package/index.html +23 -30
- package/package.json +8 -18
- package/src/lib/basebuilder.ts +0 -24
- package/testeranto/Project.css +1 -26
- package/testeranto/Project.js +3337 -385
- package/testeranto/TestReport.css +1 -26
- package/testeranto/TestReport.js +43 -16
- package/testeranto/bundles/node/allTests/metafile.json +1 -1
- package/testeranto/bundles/pure/allTests/metafile.json +1 -1
- package/testeranto/bundles/web/allTests/metafile.json +1 -1
- package/testeranto/index.html +1 -1
- package/testeranto/reports/allTests/index.html +1 -1
- package/testeranto/reports/allTests/src/Pure.test/pure/index.html +1 -1
- package/testeranto/reports/allTests/src/Pure.test/pure/lint_errors.json +137 -1539
- package/testeranto/reports/allTests/src/Pure.test/pure/logs.txt +2 -2
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/index.html +1 -1
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/node.test/node/lint_errors.json +58 -620
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/index.html +1 -1
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/lint_errors.json +58 -620
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/pure.test/pure/logs.txt +2 -2
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/index.html +1 -1
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/web.test/web/lint_errors.json +58 -620
- package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/index.html +1 -1
- package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.json +104 -966
- package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/index.html +1 -1
- package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.json +104 -966
- package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/index.html +1 -1
- package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.json +104 -966
- package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/index.html +1 -1
- package/testeranto/reports/allTests/src/lib/classBuilder.test/classBuilder.test/node/lint_errors.json +63 -791
- package/testeranto/reports/allTests/src/lib/core.test/core.test/node/index.html +1 -1
- package/testeranto/reports/allTests/src/lib/core.test/core.test/node/lint_errors.json +39 -416
- package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/index.html +1 -1
- package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/lint_errors.json +156 -1724
- package/testeranto/reports/allTests/src/lib/pmProxy.test/index/node/logs.txt +3 -3
- package/testeranto.config.ts +1 -1
- package/tsc.log +36 -38
|
@@ -51,6 +51,7 @@ const node_crypto_1 = __importDefault(require("node:crypto"));
|
|
|
51
51
|
const utils_1 = require("../utils");
|
|
52
52
|
const queue_js_1 = require("../utils/queue.js");
|
|
53
53
|
const PM_WithEslintAndTsc_js_1 = require("./PM_WithEslintAndTsc.js");
|
|
54
|
+
const ansi_colors_2 = __importDefault(require("ansi-colors"));
|
|
54
55
|
const changes = {};
|
|
55
56
|
const fileHashes = {};
|
|
56
57
|
const files = {};
|
|
@@ -71,12 +72,12 @@ async function fileHash(filePath, algorithm = "md5") {
|
|
|
71
72
|
});
|
|
72
73
|
});
|
|
73
74
|
}
|
|
74
|
-
const statusMessagePretty = (failures, test) => {
|
|
75
|
+
const statusMessagePretty = (failures, test, runtime) => {
|
|
75
76
|
if (failures === 0) {
|
|
76
|
-
console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(
|
|
77
|
+
console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`${runtime} > ${test} completed successfully`)));
|
|
77
78
|
}
|
|
78
79
|
else {
|
|
79
|
-
console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(
|
|
80
|
+
console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${runtime} > ${test} failed ${failures} times`)));
|
|
80
81
|
}
|
|
81
82
|
};
|
|
82
83
|
async function writeFileAndCreateDir(filePath, data) {
|
|
@@ -110,8 +111,6 @@ async function pollForFile(path, timeout = 2000) {
|
|
|
110
111
|
const intervalObj = setInterval(function () {
|
|
111
112
|
const file = path;
|
|
112
113
|
const fileExists = fs_1.default.existsSync(file);
|
|
113
|
-
// console.log("Checking for: ", file);
|
|
114
|
-
// console.log("Exists: ", fileExists);
|
|
115
114
|
if (fileExists) {
|
|
116
115
|
clearInterval(intervalObj);
|
|
117
116
|
}
|
|
@@ -131,7 +130,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
131
130
|
return (0, utils_1.getRunnables)(tests, testName, payload);
|
|
132
131
|
};
|
|
133
132
|
this.launchPure = async (src, dest) => {
|
|
134
|
-
console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(
|
|
133
|
+
console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`pure < ${src}`)));
|
|
135
134
|
this.bddTestIsRunning(src);
|
|
136
135
|
const reportDest = `testeranto/reports/${this.name}/${src
|
|
137
136
|
.split(".")
|
|
@@ -161,11 +160,11 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
161
160
|
});
|
|
162
161
|
}
|
|
163
162
|
else if (testConfigResource.ports > 0) {
|
|
164
|
-
const openPorts = Object.entries(this.ports).filter(([portnumber,
|
|
163
|
+
const openPorts = Object.entries(this.ports).filter(([portnumber, status]) => status === "");
|
|
165
164
|
if (openPorts.length >= testConfigResource.ports) {
|
|
166
165
|
for (let i = 0; i < testConfigResource.ports; i++) {
|
|
167
166
|
portsToUse.push(openPorts[i][0]);
|
|
168
|
-
this.ports[openPorts[i][0]] =
|
|
167
|
+
this.ports[openPorts[i][0]] = src; // port is now claimed
|
|
169
168
|
}
|
|
170
169
|
argz = JSON.stringify({
|
|
171
170
|
scheduled: true,
|
|
@@ -219,11 +218,11 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
219
218
|
.then(async (results) => {
|
|
220
219
|
// this.receiveFeatures(results.features, destFolder, src, "pure");
|
|
221
220
|
// this.receiveFeaturesV2(reportDest, src, "pure");
|
|
222
|
-
statusMessagePretty(results.fails, src);
|
|
221
|
+
statusMessagePretty(results.fails, src, "pure");
|
|
223
222
|
this.bddTestIsNowDone(src, results.fails);
|
|
224
223
|
})
|
|
225
224
|
.catch((e) => {
|
|
226
|
-
console.log(ansi_colors_1.default.red(
|
|
225
|
+
console.log(ansi_colors_1.default.red(`launchPure - ${src} errored with: ${e}`));
|
|
227
226
|
this.bddTestIsNowDone(src, -1);
|
|
228
227
|
});
|
|
229
228
|
// .finally(() => {
|
|
@@ -231,28 +230,28 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
231
230
|
// });
|
|
232
231
|
})
|
|
233
232
|
.catch((e) => {
|
|
234
|
-
console.log(
|
|
235
|
-
this.writeFileSync(`${reportDest}/
|
|
233
|
+
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
|
+
this.writeFileSync(`${reportDest}/logs.txt`, e.stack, src);
|
|
236
235
|
this.bddTestIsNowDone(src, -1);
|
|
237
|
-
statusMessagePretty(-1, src);
|
|
236
|
+
statusMessagePretty(-1, src, "pure");
|
|
238
237
|
// console.error(e);
|
|
239
238
|
});
|
|
240
239
|
});
|
|
241
240
|
}
|
|
242
241
|
catch (e) {
|
|
243
|
-
console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${src} errored with: ${e}. Check ${reportDest}/
|
|
244
|
-
this.writeFileSync(`${reportDest}/
|
|
242
|
+
console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${src} 1 errored with: ${e}. Check ${reportDest}/logs.txt for more info`)));
|
|
243
|
+
this.writeFileSync(`${reportDest}/logs.txt`, e.stack, src);
|
|
245
244
|
this.bddTestIsNowDone(src, -1);
|
|
246
|
-
statusMessagePretty(-1, src);
|
|
245
|
+
statusMessagePretty(-1, src, "pure");
|
|
247
246
|
}
|
|
248
247
|
for (let i = 0; i <= portsToUse.length; i++) {
|
|
249
248
|
if (portsToUse[i]) {
|
|
250
|
-
this.ports[portsToUse[i]] =
|
|
249
|
+
this.ports[portsToUse[i]] = ""; //port is open again
|
|
251
250
|
}
|
|
252
251
|
}
|
|
253
252
|
};
|
|
254
253
|
this.launchNode = async (src, dest) => {
|
|
255
|
-
console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(
|
|
254
|
+
console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`node < ${src}`)));
|
|
256
255
|
this.bddTestIsRunning(src);
|
|
257
256
|
const reportDest = `testeranto/reports/${this.name}/${src
|
|
258
257
|
.split(".")
|
|
@@ -273,7 +272,6 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
273
272
|
const testConfigResource = testConfig[2];
|
|
274
273
|
const portsToUse = [];
|
|
275
274
|
if (testConfigResource.ports === 0) {
|
|
276
|
-
console.error("portsToUse?!", []);
|
|
277
275
|
const t = {
|
|
278
276
|
name: src,
|
|
279
277
|
// ports: portsToUse.map((v) => Number(v)),
|
|
@@ -284,13 +282,12 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
284
282
|
testResources = JSON.stringify(t);
|
|
285
283
|
}
|
|
286
284
|
else if (testConfigResource.ports > 0) {
|
|
287
|
-
const openPorts = Object.entries(this.ports).filter(([portnumber, portopen]) => portopen);
|
|
285
|
+
const openPorts = Object.entries(this.ports).filter(([portnumber, portopen]) => portopen === "");
|
|
288
286
|
if (openPorts.length >= testConfigResource.ports) {
|
|
289
287
|
for (let i = 0; i < testConfigResource.ports; i++) {
|
|
290
288
|
portsToUse.push(openPorts[i][0]);
|
|
291
|
-
this.ports[openPorts[i][0]] =
|
|
289
|
+
this.ports[openPorts[i][0]] = src; // port is now claimed
|
|
292
290
|
}
|
|
293
|
-
console.error("portsToUse", portsToUse);
|
|
294
291
|
testResources = JSON.stringify({
|
|
295
292
|
scheduled: true,
|
|
296
293
|
name: src,
|
|
@@ -300,7 +297,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
300
297
|
});
|
|
301
298
|
}
|
|
302
299
|
else {
|
|
303
|
-
console.log(
|
|
300
|
+
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`));
|
|
304
301
|
this.queue.push(src);
|
|
305
302
|
return;
|
|
306
303
|
}
|
|
@@ -312,9 +309,9 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
312
309
|
const builtfile = dest;
|
|
313
310
|
let haltReturns = false;
|
|
314
311
|
const ipcfile = "/tmp/tpipe_" + Math.random();
|
|
315
|
-
const child = (0, node_child_process_1.spawn)(
|
|
312
|
+
const child = (0, node_child_process_1.spawn)(
|
|
316
313
|
// "node --inspect-brk ",
|
|
317
|
-
[builtfile, testResources, ipcfile], {
|
|
314
|
+
"node", [builtfile, testResources, ipcfile], {
|
|
318
315
|
stdio: ["pipe", "pipe", "pipe", "ipc"],
|
|
319
316
|
});
|
|
320
317
|
let buffer = new Buffer("");
|
|
@@ -355,8 +352,8 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
355
352
|
}
|
|
356
353
|
});
|
|
357
354
|
});
|
|
358
|
-
const oStream = fs_1.default.createWriteStream(`${reportDest}/
|
|
359
|
-
const errFile = `${reportDest}/
|
|
355
|
+
const oStream = fs_1.default.createWriteStream(`${reportDest}/logs.txt`);
|
|
356
|
+
const errFile = `${reportDest}/logs.txt`;
|
|
360
357
|
if (fs_1.default.existsSync(errFile)) {
|
|
361
358
|
fs_1.default.rmSync(errFile);
|
|
362
359
|
}
|
|
@@ -368,21 +365,22 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
368
365
|
(_b = child.stdout) === null || _b === void 0 ? void 0 : _b.on("data", (data) => {
|
|
369
366
|
oStream.write(`stdout > ${data}`);
|
|
370
367
|
});
|
|
368
|
+
child.on("error", (err) => { });
|
|
371
369
|
child.on("close", (code) => {
|
|
372
370
|
oStream.close();
|
|
373
371
|
server.close();
|
|
374
|
-
|
|
375
|
-
|
|
372
|
+
if (code === 255) {
|
|
373
|
+
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`));
|
|
376
374
|
this.bddTestIsNowDone(src, -1);
|
|
377
|
-
statusMessagePretty(-1, src);
|
|
375
|
+
statusMessagePretty(-1, src, "node");
|
|
378
376
|
}
|
|
379
377
|
else if (code === 0) {
|
|
380
378
|
this.bddTestIsNowDone(src, 0);
|
|
381
|
-
statusMessagePretty(0, src);
|
|
379
|
+
statusMessagePretty(0, src, "node");
|
|
382
380
|
}
|
|
383
381
|
else {
|
|
384
382
|
this.bddTestIsNowDone(src, code);
|
|
385
|
-
statusMessagePretty(code, src);
|
|
383
|
+
statusMessagePretty(code, src, "node");
|
|
386
384
|
}
|
|
387
385
|
haltReturns = true;
|
|
388
386
|
});
|
|
@@ -390,24 +388,21 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
390
388
|
haltReturns = true;
|
|
391
389
|
for (let i = 0; i <= portsToUse.length; i++) {
|
|
392
390
|
if (portsToUse[i]) {
|
|
393
|
-
this.ports[portsToUse[i]] =
|
|
391
|
+
this.ports[portsToUse[i]] = ""; //port is open again
|
|
394
392
|
}
|
|
395
393
|
}
|
|
396
394
|
});
|
|
397
395
|
child.on("error", (e) => {
|
|
398
396
|
console.log("error");
|
|
399
397
|
haltReturns = true;
|
|
400
|
-
console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${src} errored with: ${e.name}. Check ${errFile}for more info`)));
|
|
401
|
-
this.writeFileSync(`${reportDest}/
|
|
398
|
+
console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${src} errored with: ${e.name}. Check ${errFile} for more info`)));
|
|
399
|
+
this.writeFileSync(`${reportDest}/logs.txt`, e.toString(), src);
|
|
402
400
|
this.bddTestIsNowDone(src, -1);
|
|
403
|
-
statusMessagePretty(-1, src);
|
|
401
|
+
statusMessagePretty(-1, src, "node");
|
|
404
402
|
});
|
|
405
403
|
});
|
|
406
404
|
};
|
|
407
|
-
this.launchWebSideCar = async (
|
|
408
|
-
// src: string,
|
|
409
|
-
// dest: string,
|
|
410
|
-
testConfig) => {
|
|
405
|
+
this.launchWebSideCar = async (testConfig) => {
|
|
411
406
|
const src = testConfig[0];
|
|
412
407
|
const dest = src.split(".").slice(0, -1).join(".");
|
|
413
408
|
// const d = dest + ".mjs";
|
|
@@ -415,7 +410,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
415
410
|
console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`launchWebSideCar ${src}`)));
|
|
416
411
|
const fileStreams2 = [];
|
|
417
412
|
const doneFileStream2 = [];
|
|
418
|
-
const oStream = fs_1.default.createWriteStream(`${destFolder}/
|
|
413
|
+
const oStream = fs_1.default.createWriteStream(`${destFolder}/logs.txt`);
|
|
419
414
|
return new Promise((res, rej) => {
|
|
420
415
|
this.browser
|
|
421
416
|
.newPage()
|
|
@@ -487,7 +482,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
487
482
|
.then(async ({ fails, failed, features }) => {
|
|
488
483
|
// this.receiveFeatures(features, destFolder, src, "web");
|
|
489
484
|
// this.receiveFeaturesV2(reportDest, src, "web");
|
|
490
|
-
statusMessagePretty(fails, src);
|
|
485
|
+
statusMessagePretty(fails, src, "web");
|
|
491
486
|
this.bddTestIsNowDone(src, fails);
|
|
492
487
|
})
|
|
493
488
|
.catch((e) => {
|
|
@@ -534,13 +529,12 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
534
529
|
// };
|
|
535
530
|
}
|
|
536
531
|
else if (testReq.ports > 0) {
|
|
537
|
-
const openPorts = Object.entries(this.ports).filter(([portnumber, portopen]) => portopen);
|
|
532
|
+
const openPorts = Object.entries(this.ports).filter(([portnumber, portopen]) => portopen === "");
|
|
538
533
|
if (openPorts.length >= testReq.ports) {
|
|
539
534
|
for (let i = 0; i < testReq.ports; i++) {
|
|
540
535
|
portsToUse.push(openPorts[i][0]);
|
|
541
|
-
this.ports[openPorts[i][0]] =
|
|
536
|
+
this.ports[openPorts[i][0]] = src; // port is now closed
|
|
542
537
|
}
|
|
543
|
-
console.log("nodeSideCar portsToUse", portsToUse);
|
|
544
538
|
argz.ports = portsToUse;
|
|
545
539
|
const builtfile = destFolder + ".mjs";
|
|
546
540
|
let haltReturns = false;
|
|
@@ -578,13 +572,13 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
578
572
|
});
|
|
579
573
|
});
|
|
580
574
|
});
|
|
581
|
-
const oStream = fs_1.default.createWriteStream(`${reportDest}/
|
|
575
|
+
const oStream = fs_1.default.createWriteStream(`${reportDest}/logs.txt`);
|
|
582
576
|
const child = (0, node_child_process_1.spawn)("node", [builtfile, JSON.stringify(argz)], {
|
|
583
577
|
stdio: ["pipe", "pipe", "pipe", "ipc"],
|
|
584
578
|
// silent: true
|
|
585
579
|
});
|
|
586
580
|
const p = "/tmp/tpipe" + Math.random();
|
|
587
|
-
const errFile = `${reportDest}/
|
|
581
|
+
const errFile = `${reportDest}/logs.txt`;
|
|
588
582
|
server.listen(p, () => {
|
|
589
583
|
var _a, _b;
|
|
590
584
|
(_a = child.stderr) === null || _a === void 0 ? void 0 : _a.on("data", (data) => {
|
|
@@ -602,7 +596,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
602
596
|
haltReturns = true;
|
|
603
597
|
for (let i = 0; i <= portsToUse.length; i++) {
|
|
604
598
|
if (portsToUse[i]) {
|
|
605
|
-
this.ports[portsToUse[i]] =
|
|
599
|
+
this.ports[portsToUse[i]] = ""; //port is open again
|
|
606
600
|
}
|
|
607
601
|
}
|
|
608
602
|
});
|
|
@@ -612,7 +606,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
612
606
|
}
|
|
613
607
|
haltReturns = true;
|
|
614
608
|
console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`launchNodeSideCar - ${src} errored with: ${e.name}. Check ${errFile}for more info`)));
|
|
615
|
-
this.writeFileSync(`${reportDest}/
|
|
609
|
+
this.writeFileSync(`${reportDest}/logs.txt`, e.toString(), src);
|
|
616
610
|
// this.bddTestIsNowDone(src, -1);
|
|
617
611
|
// statusMessagePretty(-1, src);
|
|
618
612
|
});
|
|
@@ -623,7 +617,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
623
617
|
return [r, argz];
|
|
624
618
|
}
|
|
625
619
|
else {
|
|
626
|
-
console.log(
|
|
620
|
+
console.log(ansi_colors_1.default.red(`cannot ${src} because there are no open ports. the job will be unqueued`));
|
|
627
621
|
this.queue.push(sidecar[0]);
|
|
628
622
|
return [Math.random(), argz];
|
|
629
623
|
}
|
|
@@ -659,12 +653,11 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
659
653
|
};
|
|
660
654
|
}
|
|
661
655
|
else if (testConfigResource.ports > 0) {
|
|
662
|
-
const openPorts = Object.entries(this.ports).filter(([portnumber, portopen]) => portopen);
|
|
663
|
-
// console.log("openPorts", openPorts);
|
|
656
|
+
const openPorts = Object.entries(this.ports).filter(([portnumber, portopen]) => portopen === "");
|
|
664
657
|
if (openPorts.length >= testConfigResource.ports) {
|
|
665
658
|
for (let i = 0; i < testConfigResource.ports; i++) {
|
|
666
659
|
portsToUse.push(openPorts[i][0]);
|
|
667
|
-
this.ports[openPorts[i][0]] =
|
|
660
|
+
this.ports[openPorts[i][0]] = src; // port is now claimed
|
|
668
661
|
}
|
|
669
662
|
argz = {
|
|
670
663
|
// scheduled: true,
|
|
@@ -697,7 +690,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
697
690
|
// }
|
|
698
691
|
};
|
|
699
692
|
this.launchWeb = async (src, dest) => {
|
|
700
|
-
console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(
|
|
693
|
+
console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`web < ${src}`)));
|
|
701
694
|
this.bddTestIsRunning(src);
|
|
702
695
|
const reportDest = `testeranto/reports/${this.name}/${src
|
|
703
696
|
.split(".")
|
|
@@ -724,7 +717,8 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
724
717
|
console.log("fail", e)
|
|
725
718
|
}
|
|
726
719
|
})`;
|
|
727
|
-
const
|
|
720
|
+
const ofile = `${reportDest}/logs.txt`;
|
|
721
|
+
const oStream = fs_1.default.createWriteStream(ofile);
|
|
728
722
|
this.browser
|
|
729
723
|
.newPage()
|
|
730
724
|
.then((page) => {
|
|
@@ -763,22 +757,21 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
763
757
|
});
|
|
764
758
|
};
|
|
765
759
|
page.on("pageerror", (err) => {
|
|
766
|
-
console.
|
|
760
|
+
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`));
|
|
767
761
|
oStream.write(err.name);
|
|
768
762
|
oStream.write("\n");
|
|
769
763
|
if (err.cause) {
|
|
770
|
-
console.debug(`Error from ${src} cause: [${err.cause}] `);
|
|
771
764
|
oStream.write(err.cause);
|
|
772
765
|
oStream.write("\n");
|
|
773
766
|
}
|
|
774
767
|
if (err.stack) {
|
|
775
|
-
console.debug(`Error from stack ${src}: [${err.stack}] `);
|
|
776
768
|
oStream.write(err.stack);
|
|
777
769
|
oStream.write("\n");
|
|
778
770
|
}
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
771
|
+
if (err.message) {
|
|
772
|
+
oStream.write(err.message);
|
|
773
|
+
oStream.write("\n");
|
|
774
|
+
}
|
|
782
775
|
this.bddTestIsNowDone(src, -1);
|
|
783
776
|
close();
|
|
784
777
|
});
|
|
@@ -797,16 +790,23 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
797
790
|
.then(async ({ fails, failed, features }) => {
|
|
798
791
|
// this.receiveFeatures(features, destFolder, src, "web");
|
|
799
792
|
// this.receiveFeaturesV2(reportDest, src, "web");
|
|
800
|
-
statusMessagePretty(fails, src);
|
|
793
|
+
statusMessagePretty(fails, src, "web");
|
|
801
794
|
this.bddTestIsNowDone(src, fails);
|
|
795
|
+
close();
|
|
802
796
|
})
|
|
803
797
|
.catch((e) => {
|
|
804
|
-
console.log(
|
|
798
|
+
// console.log(ansiC.red(ansiC.inverse(e)));
|
|
799
|
+
// console.log(
|
|
800
|
+
// ansiC.red(
|
|
801
|
+
// ansiC.inverse(
|
|
802
|
+
// `web ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`
|
|
803
|
+
// )
|
|
804
|
+
// )
|
|
805
|
+
// );
|
|
806
|
+
this.bddTestIsNowDone(src, -1);
|
|
805
807
|
})
|
|
806
808
|
.finally(() => {
|
|
807
|
-
this.bddTestIsNowDone(src, -1);
|
|
808
809
|
// process.exit(-1);
|
|
809
|
-
close();
|
|
810
810
|
});
|
|
811
811
|
return page;
|
|
812
812
|
});
|
|
@@ -814,10 +814,8 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
814
814
|
this.receiveFeaturesV2 = (reportDest, srcTest, platform) => {
|
|
815
815
|
const featureDestination = path_1.default.resolve(process.cwd(), "reports", "features", "strings", srcTest.split(".").slice(0, -1).join(".") + ".features.txt");
|
|
816
816
|
const testReport = JSON.parse(fs_1.default.readFileSync(`${reportDest}/tests.json`).toString());
|
|
817
|
-
// console.log("mark2", testReport);
|
|
818
817
|
testReport.features
|
|
819
818
|
.reduce(async (mm, featureStringKey) => {
|
|
820
|
-
// console.log("mark4", featureStringKey);
|
|
821
819
|
const accum = await mm;
|
|
822
820
|
const isUrl = isValidUrl(featureStringKey);
|
|
823
821
|
if (isUrl) {
|
|
@@ -877,13 +875,55 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
877
875
|
// this.summary[srcTest].failingFeatures = f;
|
|
878
876
|
this.writeBigBoard();
|
|
879
877
|
};
|
|
878
|
+
this.checkForShutdown = () => {
|
|
879
|
+
// console.log(ansiC.inverse(JSON.stringify(this.summary, null, 2)));
|
|
880
|
+
this.checkQueue();
|
|
881
|
+
console.log(ansi_colors_1.default.inverse(`The following jobs are awaiting resources: ${JSON.stringify(this.queue)}`));
|
|
882
|
+
console.log(ansi_colors_1.default.inverse(`The status of ports: ${JSON.stringify(this.ports)}`));
|
|
883
|
+
this.writeBigBoard();
|
|
884
|
+
if (this.mode === "dev")
|
|
885
|
+
return;
|
|
886
|
+
let inflight = false;
|
|
887
|
+
Object.keys(this.summary).forEach((k) => {
|
|
888
|
+
if (this.summary[k].prompt === "?") {
|
|
889
|
+
console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 prompt ${k}`)));
|
|
890
|
+
inflight = true;
|
|
891
|
+
}
|
|
892
|
+
});
|
|
893
|
+
Object.keys(this.summary).forEach((k) => {
|
|
894
|
+
if (this.summary[k].runTimeErrors === "?") {
|
|
895
|
+
console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 runTimeError ${k}`)));
|
|
896
|
+
inflight = true;
|
|
897
|
+
}
|
|
898
|
+
});
|
|
899
|
+
Object.keys(this.summary).forEach((k) => {
|
|
900
|
+
if (this.summary[k].staticErrors === "?") {
|
|
901
|
+
console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 staticErrors ${k}`)));
|
|
902
|
+
inflight = true;
|
|
903
|
+
}
|
|
904
|
+
});
|
|
905
|
+
Object.keys(this.summary).forEach((k) => {
|
|
906
|
+
if (this.summary[k].typeErrors === "?") {
|
|
907
|
+
console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 typeErrors ${k}`)));
|
|
908
|
+
inflight = true;
|
|
909
|
+
}
|
|
910
|
+
});
|
|
911
|
+
this.writeBigBoard();
|
|
912
|
+
if (!inflight) {
|
|
913
|
+
this.browser.disconnect().then(() => {
|
|
914
|
+
console.log(ansi_colors_1.default.inverse(`${this.name} has been tested. Goodbye.`));
|
|
915
|
+
process.exit();
|
|
916
|
+
});
|
|
917
|
+
}
|
|
918
|
+
};
|
|
919
|
+
this.launchers = {};
|
|
880
920
|
this.ports = {};
|
|
881
921
|
this.queue = [];
|
|
882
922
|
this.nodeSidecars = {};
|
|
883
923
|
this.webSidecars = {};
|
|
884
924
|
this.pureSidecars = {};
|
|
885
925
|
this.configs.ports.forEach((element) => {
|
|
886
|
-
this.ports[element] =
|
|
926
|
+
this.ports[element] = ""; // set ports as open
|
|
887
927
|
});
|
|
888
928
|
}
|
|
889
929
|
async stopSideCar(uid) {
|
|
@@ -1043,16 +1083,18 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
1043
1083
|
].forEach(async ([eps, launcher, runtime, watcher]) => {
|
|
1044
1084
|
const metafile = `./testeranto/bundles/${runtime}/${this.name}/metafile.json`;
|
|
1045
1085
|
await pollForFile(metafile);
|
|
1046
|
-
Object.entries(eps).forEach(async ([
|
|
1047
|
-
// await pollForFile(outputFile)
|
|
1048
|
-
launcher(
|
|
1086
|
+
Object.entries(eps).forEach(async ([inputFile, outputFile]) => {
|
|
1087
|
+
// await pollForFile(outputFile);\
|
|
1088
|
+
this.launchers[inputFile] = () => launcher(inputFile, outputFile);
|
|
1089
|
+
this.launchers[inputFile]();
|
|
1049
1090
|
try {
|
|
1050
1091
|
(0, fs_1.watch)(outputFile, async (e, filename) => {
|
|
1051
1092
|
const hash = await fileHash(outputFile);
|
|
1052
|
-
if (fileHashes[
|
|
1053
|
-
fileHashes[
|
|
1093
|
+
if (fileHashes[inputFile] !== hash) {
|
|
1094
|
+
fileHashes[inputFile] = hash;
|
|
1054
1095
|
console.log(ansi_colors_1.default.yellow(ansi_colors_1.default.inverse(`< ${e} ${filename}`)));
|
|
1055
|
-
launcher(
|
|
1096
|
+
// launcher(inputFile, outputFile);
|
|
1097
|
+
this.launchers[inputFile]();
|
|
1056
1098
|
}
|
|
1057
1099
|
});
|
|
1058
1100
|
}
|
|
@@ -1092,8 +1134,6 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
1092
1134
|
// `testeranto/externalTests/${externalTestName}/stderr.txt`,
|
|
1093
1135
|
// stderr
|
|
1094
1136
|
// );
|
|
1095
|
-
// // console.log(`externalTest stdout: ${stdout}`);
|
|
1096
|
-
// // console.error(`externalTest stderr: ${stderr}`);
|
|
1097
1137
|
// });
|
|
1098
1138
|
}
|
|
1099
1139
|
async stop() {
|
|
@@ -1140,13 +1180,25 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
|
|
|
1140
1180
|
this.tscCheck({
|
|
1141
1181
|
platform,
|
|
1142
1182
|
addableFiles,
|
|
1143
|
-
entrypoint:
|
|
1183
|
+
entrypoint: entrypoint,
|
|
1144
1184
|
});
|
|
1145
|
-
this.eslintCheck(
|
|
1146
|
-
this.makePrompt(
|
|
1185
|
+
this.eslintCheck(entrypoint, platform, addableFiles);
|
|
1186
|
+
this.makePrompt(entrypoint, addableFiles, platform);
|
|
1147
1187
|
}
|
|
1148
1188
|
}
|
|
1149
1189
|
});
|
|
1150
1190
|
}
|
|
1191
|
+
checkQueue() {
|
|
1192
|
+
const x = this.queue.pop();
|
|
1193
|
+
if (!x) {
|
|
1194
|
+
ansi_colors_1.default.inverse(`The following queue is empty`);
|
|
1195
|
+
return;
|
|
1196
|
+
}
|
|
1197
|
+
const test = this.configs.tests.find((t) => t[0] === x);
|
|
1198
|
+
if (!test)
|
|
1199
|
+
throw `test is undefined ${x}`;
|
|
1200
|
+
// const [src, runtime, ...xx]: [string, IRunTime, ...any] = test;
|
|
1201
|
+
this.launchers[test[0]]();
|
|
1202
|
+
}
|
|
1151
1203
|
}
|
|
1152
1204
|
exports.PM_Main = PM_Main;
|
|
@@ -21,25 +21,13 @@ class PM_Node extends _1.PM {
|
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
23
|
start() {
|
|
24
|
-
throw new Error("
|
|
25
|
-
// console.log("START");
|
|
26
|
-
// return new Promise((res) => {
|
|
27
|
-
// process.on("message", (message: { path?: string }) => {
|
|
28
|
-
// console.log("MESSAGE");
|
|
29
|
-
// if (message.path) {
|
|
30
|
-
// this.client = net.createConnection(message.path, () => {
|
|
31
|
-
// res();
|
|
32
|
-
// });
|
|
33
|
-
// }
|
|
34
|
-
// });
|
|
35
|
-
// });
|
|
24
|
+
throw new Error("DEPRECATED");
|
|
36
25
|
}
|
|
37
26
|
stop() {
|
|
38
27
|
throw new Error("stop not implemented.");
|
|
39
28
|
}
|
|
40
29
|
send(command, ...argz) {
|
|
41
30
|
const key = Math.random().toString();
|
|
42
|
-
// console.log("SEND", key, command, ...argz);
|
|
43
31
|
if (!this.client) {
|
|
44
32
|
console.error(`Tried to send "${command} (${argz})" but the test has not been started and the IPC client is not established. Exiting as failure!`);
|
|
45
33
|
process.exit(-1);
|
|
@@ -127,7 +115,6 @@ class PM_Node extends _1.PM {
|
|
|
127
115
|
return await this.send("write", ...arguments);
|
|
128
116
|
}
|
|
129
117
|
async writeFileSync(filepath, contents) {
|
|
130
|
-
// console.log("mark55");
|
|
131
118
|
return await this.send("writeFileSync", this.testResourceConfiguration.fs + "/" + filepath, contents, this.testResourceConfiguration.name);
|
|
132
119
|
}
|
|
133
120
|
async createWriteStream(filepath) {
|
package/dist/common/src/Pure.js
CHANGED
|
@@ -16,7 +16,12 @@ class PureTesteranto extends core_js_1.default {
|
|
|
16
16
|
async receiveTestResourceConfig(partialTestResource) {
|
|
17
17
|
const t = JSON.parse(partialTestResource);
|
|
18
18
|
const pm = new pure_js_1.PM_Pure(t);
|
|
19
|
-
|
|
19
|
+
try {
|
|
20
|
+
return await this.testJobs[0].receiveTestResourceConfig(pm);
|
|
21
|
+
}
|
|
22
|
+
catch (e) {
|
|
23
|
+
return -2;
|
|
24
|
+
}
|
|
20
25
|
// const { failed, artifacts, logPromise, features, fails } =
|
|
21
26
|
// await this.testJobs[0].receiveTestResourceConfig(pm);
|
|
22
27
|
// // pm.customclose();
|
|
@@ -26,4 +31,15 @@ class PureTesteranto extends core_js_1.default {
|
|
|
26
31
|
exports.PureTesteranto = PureTesteranto;
|
|
27
32
|
exports.default = async (input, testSpecification, testImplementation, testInterface, testResourceRequirement = index_js_1.defaultTestResourceRequirement) => {
|
|
28
33
|
return new PureTesteranto(input, testSpecification, testImplementation, testResourceRequirement, testInterface);
|
|
34
|
+
// try {
|
|
35
|
+
// return new PureTesteranto<I, O, M>(
|
|
36
|
+
// input,
|
|
37
|
+
// testSpecification,
|
|
38
|
+
// testImplementation,
|
|
39
|
+
// testResourceRequirement,
|
|
40
|
+
// testInterface
|
|
41
|
+
// );
|
|
42
|
+
// } catch (e) {
|
|
43
|
+
// return -1;
|
|
44
|
+
// }
|
|
29
45
|
};
|