testeranto 0.134.0 → 0.140.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.
- package/.aider.chat.history.md +14577 -0
- package/.aider.input.history +566 -0
- package/.aider.tags.cache.v3/{8d/fa/12860238755bcfab9af8a93c52ab.val → bd/91/b71f967fd074cf4b757081b429b7.val} +0 -0
- package/.aider.tags.cache.v3/cache.db +0 -0
- package/.aider.tags.cache.v3/{18/8b/7dfca822129dad10b5cacadf7728.val → fb/96/b0f91c7e75e08fc5a6907633cf99.val} +0 -0
- package/README.md +29 -423
- package/bundle.js +1 -1
- package/dist/common/src/CoreTypes.js +2 -0
- package/dist/common/src/Init.js +4 -1
- package/dist/common/src/Node.js +1 -1
- package/dist/common/src/PM/PM_WithEslintAndTsc.js +10 -8
- package/dist/common/src/PM/__tests__/nodeSidecar.testeranto.js +2 -2
- package/dist/common/src/PM/main.js +12 -7
- package/dist/common/src/PM/node.js +10 -3
- package/dist/common/src/Web.js +2 -2
- package/dist/common/src/build.js +7 -72
- package/dist/common/src/defaultConfig.js +0 -1
- package/dist/common/src/esbuildConfigs/eslint-formatter-testeranto.js +16 -1
- package/dist/common/src/esbuildConfigs/node.js +2 -16
- package/dist/common/src/esbuildConfigs/pure.js +2 -16
- package/dist/common/src/esbuildConfigs/rebuildPlugin.js +22 -0
- package/dist/common/src/esbuildConfigs/web.js +2 -16
- package/dist/common/src/lib/abstractBase.js +8 -1
- package/dist/common/src/lib/basebuilder.js +4 -0
- package/dist/common/src/lib/classBuilder.js +2 -3
- package/dist/common/src/lib/core.js +2 -0
- package/dist/common/src/run.js +1 -1
- package/dist/common/src/utils/buildTemplates.js +88 -0
- package/dist/common/tsconfig.common.tsbuildinfo +1 -1
- package/dist/module/src/Init.js +4 -1
- package/dist/module/src/Node.js +1 -1
- package/dist/module/src/PM/PM_WithEslintAndTsc.js +10 -8
- package/dist/module/src/PM/__tests__/nodeSidecar.testeranto.js +2 -2
- package/dist/module/src/PM/main.js +12 -7
- package/dist/module/src/PM/node.js +10 -3
- package/dist/module/src/Project.js +41 -47
- package/dist/module/src/TestReport.js +34 -31
- package/dist/module/src/Web.js +2 -2
- package/dist/module/src/build.js +7 -72
- package/dist/module/src/defaultConfig.js +0 -1
- package/dist/module/src/esbuildConfigs/eslint-formatter-testeranto.js +16 -1
- package/dist/module/src/esbuildConfigs/node.js +2 -16
- package/dist/module/src/esbuildConfigs/pure.js +2 -16
- package/dist/module/src/esbuildConfigs/rebuildPlugin.js +17 -0
- package/dist/module/src/esbuildConfigs/web.js +2 -16
- package/dist/module/src/lib/abstractBase.js +8 -1
- package/dist/module/src/lib/basebuilder.js +4 -0
- package/dist/module/src/lib/classBuilder.js +2 -3
- package/dist/module/src/lib/core.js +2 -0
- package/dist/module/src/run.js +1 -1
- package/dist/module/src/utils/buildTemplates.js +82 -0
- package/dist/module/tsconfig.module.tsbuildinfo +1 -1
- package/dist/prebuild/Project.js +77 -29
- package/dist/prebuild/TestReport.js +51 -32
- package/dist/prebuild/build.mjs +132 -131
- package/dist/prebuild/esbuildConfigs/eslint-formatter-testeranto.mjs +14 -1
- package/dist/prebuild/init-docs.mjs +0 -4
- package/dist/prebuild/run.mjs +50 -31
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types/src/CoreTypes.d.ts +53 -0
- package/dist/types/src/Node.d.ts +3 -3
- package/dist/types/src/PM/__tests__/nodeSidecar.testeranto.d.ts +2 -4
- package/dist/types/src/PM/__tests__/pureSidecar.testeranto.d.ts +2 -4
- package/dist/types/src/PM/__tests__/webSidecar.testeranto.d.ts +2 -4
- package/dist/types/src/PM/index.d.ts +1 -1
- package/dist/types/src/PM/nodeSidecar.d.ts +2 -2
- package/dist/types/src/Pure.d.ts +3 -3
- package/dist/types/src/Types.d.ts +21 -61
- package/dist/types/src/Web.d.ts +3 -3
- package/dist/types/src/esbuildConfigs/rebuildPlugin.d.ts +6 -0
- package/dist/types/src/lib/abstractBase.d.ts +10 -16
- package/dist/types/src/lib/basebuilder.d.ts +3 -3
- package/dist/types/src/lib/classBuilder.d.ts +2 -2
- package/dist/types/src/lib/core.d.ts +2 -2
- package/dist/types/src/lib/index.d.ts +7 -6
- package/dist/types/src/lib/types.d.ts +8 -8
- package/dist/types/src/mothership/test.d.ts +2 -2
- package/dist/types/src/utils/buildTemplates.d.ts +3 -0
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/docs/index.md +567 -0
- package/docs/style.md +116 -0
- package/docs.html +537 -0
- package/example.css +351 -0
- package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Black.ttf +0 -0
- package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Bold.ttf +0 -0
- package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-ExtraBold.ttf +0 -0
- package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Light.ttf +0 -0
- package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Medium.ttf +0 -0
- package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Regular.ttf +0 -0
- package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Thin.ttf +0 -0
- package/fonts/M_PLUS_Rounded_1c/OFL.txt +91 -0
- package/index.html +245 -24
- package/logo.svg +72 -0
- package/package.json +11 -2
- package/scripts/compile-docs.js +89 -0
- package/src/CoreTypes.ts +152 -0
- package/src/Init.ts +4 -4
- package/src/Node.ts +13 -13
- package/src/PM/PM_WithEslintAndTsc.ts +46 -15
- package/src/PM/__tests__/nodeSidecar.testeranto.ts +13 -20
- package/src/PM/__tests__/pureSidecar.testeranto.ts +8 -15
- package/src/PM/__tests__/webSidecar.testeranto.ts +8 -15
- package/src/PM/index.ts +1 -1
- package/src/PM/main.ts +17 -16
- package/src/PM/node.ts +10 -10
- package/src/PM/nodeSidecar.ts +2 -2
- package/src/PM/pure.ts +0 -4
- package/src/Project.tsx +289 -292
- package/src/Pure.ts +13 -14
- package/src/PureSidecar.ts +1 -0
- package/src/TestReport.tsx +179 -165
- package/src/Types.ts +52 -151
- package/src/Web.ts +15 -14
- package/src/build.ts +22 -72
- package/src/defaultConfig.ts +2 -1
- package/src/esbuildConfigs/eslint-formatter-testeranto.ts +17 -1
- package/src/esbuildConfigs/node.ts +2 -18
- package/src/esbuildConfigs/pure.ts +2 -18
- package/src/esbuildConfigs/rebuildPlugin.ts +23 -0
- package/src/esbuildConfigs/web.ts +2 -18
- package/src/lib/BaseSuite.test.ts +457 -0
- package/src/lib/BaseSuite.ts +155 -0
- package/src/lib/abstractBase.ts +13 -163
- package/src/lib/basebuilder.ts +11 -11
- package/src/lib/classBuilder.ts +13 -7
- package/src/lib/core.ts +13 -17
- package/src/lib/index.ts +21 -24
- package/src/lib/types.ts +23 -9
- package/src/mothership/test.ts +13 -10
- package/src/run.ts +1 -1
- package/src/style.css +1 -1
- package/src/utils/buildTemplates.ts +88 -0
- package/style.css +496 -0
- package/testeranto/bundles/node/{mothership/chunk-V2EQEXU2.mjs → allTests/chunk-4PJCC2XT.mjs} +66 -59
- package/testeranto/bundles/node/allTests/metafile.json +4151 -0
- package/testeranto/bundles/node/allTests/src/PM/__tests__/nodeSidecar.testeranto.mjs +187 -0
- package/testeranto/bundles/node/{mothership → allTests}/src/PM/__tests__/pureSidecar.testeranto.mjs +1 -1
- package/testeranto/bundles/node/{mothership → allTests}/src/PM/__tests__/webSidecar.testeranto.mjs +1 -1
- package/testeranto/bundles/node/allTests/src/lib/BaseSuite.test.mjs +305 -0
- package/testeranto/bundles/node/{mothership → allTests}/src/mothership/test.mjs +1 -1
- package/testeranto/dev.html +29 -0
- package/testeranto/index.html +28 -27
- package/testeranto/reports/allTests/config.json +57 -0
- package/testeranto/reports/{mothership/index.html → allTests/dev.html} +2 -0
- package/testeranto/reports/allTests/index.html +26 -0
- package/testeranto/reports/{mothership/src/PM/__tests__/sidecar.testeranto/node/index.html → allTests/src/PM/__tests__/nodeSidecar.testeranto/node/dev.html} +4 -3
- package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/index.html +21 -0
- package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/lint_errors.json +80 -0
- package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/message +1 -0
- package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/prompt.txt +8 -0
- package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/type_errors.txt +28 -0
- package/testeranto/reports/{mothership/src/PM/__tests__/webSidecar.testeranto/node/index.html → allTests/src/PM/__tests__/pureSidecar.testeranto/node/dev.html} +4 -3
- package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/index.html +21 -0
- package/testeranto/reports/{mothership → allTests}/src/PM/__tests__/pureSidecar.testeranto/node/lint_errors.json +12 -12
- package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/message +1 -0
- package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/prompt.txt +8 -0
- package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/type_errors.txt +32 -0
- package/testeranto/reports/{mothership/src/PM/__tests__/nodeSidecar.testeranto/node/index.html → allTests/src/PM/__tests__/webSidecar.testeranto/node/dev.html} +4 -3
- package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/index.html +21 -0
- package/testeranto/reports/{mothership → allTests}/src/PM/__tests__/webSidecar.testeranto/node/lint_errors.json +12 -12
- package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/message +1 -0
- package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/prompt.txt +8 -0
- package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/type_errors.txt +32 -0
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/console_log.txt +35 -0
- package/testeranto/reports/{mothership/src/PM/__tests__/pureSidecar.testeranto/node/index.html → allTests/src/lib/BaseSuite.test/node/dev.html} +4 -3
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/index.html +21 -0
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/lint_errors.json +608 -0
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/message +1 -0
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/prompt.txt +7 -0
- package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/type_errors.txt +68 -0
- package/testeranto/reports/allTests/src/mothership/test/node/dev.html +21 -0
- package/testeranto/reports/allTests/src/mothership/test/node/index.html +21 -0
- package/testeranto/reports/allTests/src/mothership/test/node/message +1 -0
- package/testeranto/reports/allTests/src/mothership/test/node/prompt.txt +8 -0
- package/testeranto/reports/allTests/src/mothership/test/node/type_errors.txt +24 -0
- package/testeranto/reports/allTests/summary.json +37 -0
- package/testeranto.config.ts +16 -26
- package/tsc.log +66 -69
- package/.aider.tags.cache.v3/cache.db-shm +0 -0
- package/.aider.tags.cache.v3/cache.db-wal +0 -0
- package/dist/common/src/SP__Polygon.test.js +0 -10
- package/dist/module/src/ReportClient.js +0 -132
- package/dist/module/src/SP__Polygon.test.js +0 -8
- package/dist/prebuild/ReportClient.js +0 -3
- package/src/ReportClient.tsx +0 -164
- package/src/SP__Polygon.test.ts +0 -13
- package/testeranto/ReportClient.css +0 -11367
- package/testeranto/ReportClient.js +0 -24641
- package/testeranto/bundles/node/mothership/metafile.json +0 -389
- package/testeranto/bundles/node/mothership/src/PM/__tests__/nodeSidecar.testeranto.mjs +0 -1219
- package/testeranto/bundles/node/mothership/src/PM/__tests__/sidecar.testeranto.mjs +0 -1199
- package/testeranto/reports/mothership/config.json +0 -25
- package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/console_log.txt +0 -0
- package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/lint_errors.json +0 -1564
- package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/prompt.txt +0 -22
- package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/type_errors.txt +0 -35
- package/testeranto/reports/mothership/src/PM/__tests__/pureSidecar.testeranto/node/prompt.txt +0 -12
- package/testeranto/reports/mothership/src/PM/__tests__/pureSidecar.testeranto/node/type_errors.txt +0 -26
- package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/bdd_errors.txt +0 -1
- package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/console_log.txt +0 -0
- package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/lint_errors.json +0 -1564
- package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/log.txt +0 -0
- package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/prompt.txt +0 -22
- package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/tests.json +0 -56
- package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/type_errors.txt +0 -29
- package/testeranto/reports/mothership/src/PM/__tests__/webSidecar.testeranto/node/prompt.txt +0 -12
- package/testeranto/reports/mothership/src/PM/__tests__/webSidecar.testeranto/node/type_errors.txt +0 -26
- package/testeranto/reports/mothership/src/mothership/test/node/bdd_errors.txt +0 -1
- package/testeranto/reports/mothership/src/mothership/test/node/console_log.txt +0 -4
- package/testeranto/reports/mothership/src/mothership/test/node/index.html +0 -20
- package/testeranto/reports/mothership/src/mothership/test/node/log.txt +0 -0
- package/testeranto/reports/mothership/src/mothership/test/node/prompt.txt +0 -12
- package/testeranto/reports/mothership/src/mothership/test/node/tests.json +0 -24
- package/testeranto/reports/mothership/src/mothership/test/node/type_errors.txt +0 -18
- package/testeranto/reports/mothership/summary.json +0 -9
- /package/dist/{types/src/SP__Polygon.test.d.ts → module/src/CoreTypes.js} +0 -0
- /package/testeranto/bundles/node/{mothership → allTests}/chunk-PG6KUKNP.mjs +0 -0
- /package/testeranto/bundles/pure/{mothership → allTests}/metafile.json +0 -0
- /package/testeranto/bundles/web/{mothership → allTests}/metafile.json +0 -0
- /package/testeranto/reports/{mothership/src/PM/__tests__/nodeSidecar.testeranto → allTests/src/lib/BaseSuite.test}/node/log.txt +0 -0
- /package/testeranto/reports/{mothership → allTests}/src/mothership/test/node/lint_errors.json +0 -0
package/src/Node.ts
CHANGED
|
@@ -4,23 +4,23 @@ import {
|
|
|
4
4
|
ITTestResourceConfiguration,
|
|
5
5
|
ITTestResourceRequest,
|
|
6
6
|
} from "./lib/index.js";
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
import { PM_Node } from "./PM/node.js";
|
|
8
|
+
import {
|
|
9
|
+
ITestSpecification,
|
|
10
10
|
ITestImplementation,
|
|
11
11
|
ITestInterface,
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
Ibdd_in_any,
|
|
13
|
+
Ibdd_out_any,
|
|
14
|
+
Ibdd_out,
|
|
15
|
+
} from "./CoreTypes.js";
|
|
16
16
|
|
|
17
17
|
let ipcfile;
|
|
18
18
|
|
|
19
|
-
export class NodeTesteranto<
|
|
20
|
-
I,
|
|
21
|
-
O,
|
|
19
|
+
export class NodeTesteranto<
|
|
20
|
+
I extends Ibdd_in_any,
|
|
21
|
+
O extends Ibdd_out_any,
|
|
22
22
|
M
|
|
23
|
-
> {
|
|
23
|
+
> extends Testeranto<I, O, M> {
|
|
24
24
|
constructor(
|
|
25
25
|
input: I["iinput"],
|
|
26
26
|
testSpecification: ITestSpecification<I, O>,
|
|
@@ -51,7 +51,7 @@ export class NodeTesteranto<I extends IT, O extends OT, M> extends Testeranto<
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
const testeranto = async <I extends
|
|
54
|
+
const testeranto = async <I extends Ibdd_in_any, O extends Ibdd_out, M>(
|
|
55
55
|
input: I["iinput"],
|
|
56
56
|
testSpecification: ITestSpecification<I, O>,
|
|
57
57
|
testImplementation: ITestImplementation<I, O, M>,
|
|
@@ -94,7 +94,7 @@ const testeranto = async <I extends IT, O extends OT, M>(
|
|
|
94
94
|
// });
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
return t;
|
|
97
|
+
// return t;
|
|
98
98
|
};
|
|
99
99
|
|
|
100
100
|
export default testeranto;
|
|
@@ -145,8 +145,8 @@ export abstract class PM_WithEslintAndTsc extends PM_Base {
|
|
|
145
145
|
"testeranto",
|
|
146
146
|
"reports",
|
|
147
147
|
this.name,
|
|
148
|
-
platform,
|
|
149
148
|
entryPoint.split(".").slice(0, -1).join("."),
|
|
149
|
+
platform,
|
|
150
150
|
`tests.json`
|
|
151
151
|
);
|
|
152
152
|
|
|
@@ -159,6 +159,42 @@ export abstract class PM_WithEslintAndTsc extends PM_Base {
|
|
|
159
159
|
`featurePrompt.txt`
|
|
160
160
|
);
|
|
161
161
|
|
|
162
|
+
const logPath = path.join(
|
|
163
|
+
"testeranto",
|
|
164
|
+
"reports",
|
|
165
|
+
this.name,
|
|
166
|
+
entryPoint.split(".").slice(0, -1).join("."),
|
|
167
|
+
platform,
|
|
168
|
+
`console_log.txt`
|
|
169
|
+
);
|
|
170
|
+
|
|
171
|
+
const lintPath = path.join(
|
|
172
|
+
"testeranto",
|
|
173
|
+
"reports",
|
|
174
|
+
this.name,
|
|
175
|
+
entryPoint.split(".").slice(0, -1).join("."),
|
|
176
|
+
platform,
|
|
177
|
+
`lint_errors.json`
|
|
178
|
+
);
|
|
179
|
+
|
|
180
|
+
const typePath = path.join(
|
|
181
|
+
"testeranto",
|
|
182
|
+
"reports",
|
|
183
|
+
this.name,
|
|
184
|
+
entryPoint.split(".").slice(0, -1).join("."),
|
|
185
|
+
platform,
|
|
186
|
+
`type_errors.txt`
|
|
187
|
+
);
|
|
188
|
+
|
|
189
|
+
const messagePath = path.join(
|
|
190
|
+
"testeranto",
|
|
191
|
+
"reports",
|
|
192
|
+
this.name,
|
|
193
|
+
entryPoint.split(".").slice(0, -1).join("."),
|
|
194
|
+
platform,
|
|
195
|
+
`message`
|
|
196
|
+
);
|
|
197
|
+
|
|
162
198
|
fs.writeFileSync(
|
|
163
199
|
promptPath,
|
|
164
200
|
`
|
|
@@ -168,23 +204,18 @@ ${addableFiles
|
|
|
168
204
|
})
|
|
169
205
|
.join("\n")}
|
|
170
206
|
|
|
171
|
-
/read ${lintPather(entryPoint, platform, this.name)}
|
|
172
|
-
/read ${tscPather(entryPoint, platform, this.name)}
|
|
173
207
|
/read ${testPaths}
|
|
208
|
+
/read ${logPath}
|
|
209
|
+
/read ${typePath}
|
|
210
|
+
/read ${lintPath}
|
|
211
|
+
`
|
|
212
|
+
);
|
|
174
213
|
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
entryPoint,
|
|
179
|
-
platform,
|
|
180
|
-
this.name
|
|
181
|
-
)}. Implement any method which throws "Function not implemented. Resolve the lint errors described in ${lintPather(
|
|
182
|
-
entryPoint,
|
|
183
|
-
platform,
|
|
184
|
-
this.name
|
|
185
|
-
)}"
|
|
186
|
-
`
|
|
214
|
+
fs.writeFileSync(
|
|
215
|
+
messagePath,
|
|
216
|
+
`Fix the failing tests described in ${testPaths} and ${logPath}. DO NOT refactor beyond what is necessary. Always prefer minimal changes, focusing mostly on keeping the BDD tests passing`
|
|
187
217
|
);
|
|
218
|
+
|
|
188
219
|
this.summary[
|
|
189
220
|
entryPoint
|
|
190
221
|
].prompt = `aider --model deepseek/deepseek-chat --load testeranto/${
|
|
@@ -3,23 +3,11 @@ import { ITTestResourceConfiguration } from "../../lib";
|
|
|
3
3
|
import { PM_Node_Sidecar } from "../nodeSidecar";
|
|
4
4
|
import Testeranto from "../../Node";
|
|
5
5
|
import {
|
|
6
|
+
Ibdd_in_any,
|
|
6
7
|
Ibdd_out,
|
|
7
|
-
ITestSpecification,
|
|
8
|
-
IT,
|
|
9
8
|
ITestImplementation,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
} from "../../Types";
|
|
13
|
-
|
|
14
|
-
type I = Ibdd_in<
|
|
15
|
-
PM_Node_Sidecar,
|
|
16
|
-
PM_Node_Sidecar,
|
|
17
|
-
unknown,
|
|
18
|
-
unknown,
|
|
19
|
-
unknown,
|
|
20
|
-
unknown,
|
|
21
|
-
unknown
|
|
22
|
-
>;
|
|
9
|
+
ITestSpecification,
|
|
10
|
+
} from "../../CoreTypes";
|
|
23
11
|
|
|
24
12
|
type O = Ibdd_out<
|
|
25
13
|
{
|
|
@@ -41,7 +29,12 @@ type O = Ibdd_out<
|
|
|
41
29
|
}
|
|
42
30
|
>;
|
|
43
31
|
|
|
44
|
-
const specification: ITestSpecification<
|
|
32
|
+
const specification: ITestSpecification<Ibdd_in_any, O> = (
|
|
33
|
+
Suite,
|
|
34
|
+
Given,
|
|
35
|
+
When,
|
|
36
|
+
Then
|
|
37
|
+
) => {
|
|
45
38
|
return [
|
|
46
39
|
Suite.SidecarInitialized(
|
|
47
40
|
"Sidecar message passing works correctly",
|
|
@@ -84,7 +77,7 @@ const implementation: ITestImplementation<I, O> = {
|
|
|
84
77
|
callbackFn = callback;
|
|
85
78
|
callback(
|
|
86
79
|
JSON.stringify({
|
|
87
|
-
key: "mock-key",
|
|
80
|
+
key: "mock-key",
|
|
88
81
|
payload: message,
|
|
89
82
|
})
|
|
90
83
|
);
|
|
@@ -92,9 +85,9 @@ const implementation: ITestImplementation<I, O> = {
|
|
|
92
85
|
return mockProcess;
|
|
93
86
|
},
|
|
94
87
|
addListener: () => mockProcess,
|
|
95
|
-
removeListener: () => mockProcess
|
|
88
|
+
removeListener: () => mockProcess,
|
|
96
89
|
} as unknown as NodeJS.Process;
|
|
97
|
-
|
|
90
|
+
|
|
98
91
|
process = mockProcess;
|
|
99
92
|
|
|
100
93
|
let writeCalled = false;
|
|
@@ -118,7 +111,7 @@ const implementation: ITestImplementation<I, O> = {
|
|
|
118
111
|
removeListener: () => {
|
|
119
112
|
removeListenerCalled = true;
|
|
120
113
|
return mockProcess;
|
|
121
|
-
}
|
|
114
|
+
},
|
|
122
115
|
} as unknown as NodeJS.Process;
|
|
123
116
|
process = mockProcess;
|
|
124
117
|
|
|
@@ -5,21 +5,9 @@ import Testeranto from "../../Node";
|
|
|
5
5
|
import {
|
|
6
6
|
Ibdd_out,
|
|
7
7
|
ITestSpecification,
|
|
8
|
-
IT,
|
|
9
8
|
ITestImplementation,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
} from "../../Types";
|
|
13
|
-
|
|
14
|
-
type I = Ibdd_in<
|
|
15
|
-
PM_Pure_Sidecar,
|
|
16
|
-
PM_Pure_Sidecar,
|
|
17
|
-
unknown,
|
|
18
|
-
unknown,
|
|
19
|
-
unknown,
|
|
20
|
-
unknown,
|
|
21
|
-
unknown
|
|
22
|
-
>;
|
|
9
|
+
Ibdd_in_any,
|
|
10
|
+
} from "../../CoreTypes";
|
|
23
11
|
|
|
24
12
|
type O = Ibdd_out<
|
|
25
13
|
{
|
|
@@ -41,7 +29,12 @@ type O = Ibdd_out<
|
|
|
41
29
|
}
|
|
42
30
|
>;
|
|
43
31
|
|
|
44
|
-
const specification: ITestSpecification<
|
|
32
|
+
const specification: ITestSpecification<Ibdd_in_any, O> = (
|
|
33
|
+
Suite,
|
|
34
|
+
Given,
|
|
35
|
+
When,
|
|
36
|
+
Then
|
|
37
|
+
) => {
|
|
45
38
|
return [
|
|
46
39
|
Suite.SidecarInitialized(
|
|
47
40
|
"Pure Sidecar message passing works correctly",
|
|
@@ -5,21 +5,9 @@ import Testeranto from "../../Node";
|
|
|
5
5
|
import {
|
|
6
6
|
Ibdd_out,
|
|
7
7
|
ITestSpecification,
|
|
8
|
-
IT,
|
|
9
8
|
ITestImplementation,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
} from "../../Types";
|
|
13
|
-
|
|
14
|
-
type I = Ibdd_in<
|
|
15
|
-
PM_Web_Sidecar,
|
|
16
|
-
PM_Web_Sidecar,
|
|
17
|
-
unknown,
|
|
18
|
-
unknown,
|
|
19
|
-
unknown,
|
|
20
|
-
unknown,
|
|
21
|
-
unknown
|
|
22
|
-
>;
|
|
9
|
+
Ibdd_in_any,
|
|
10
|
+
} from "../../CoreTypes";
|
|
23
11
|
|
|
24
12
|
type O = Ibdd_out<
|
|
25
13
|
{
|
|
@@ -41,7 +29,12 @@ type O = Ibdd_out<
|
|
|
41
29
|
}
|
|
42
30
|
>;
|
|
43
31
|
|
|
44
|
-
const specification: ITestSpecification<
|
|
32
|
+
const specification: ITestSpecification<Ibdd_in_any, O> = (
|
|
33
|
+
Suite,
|
|
34
|
+
Given,
|
|
35
|
+
When,
|
|
36
|
+
Then
|
|
37
|
+
) => {
|
|
45
38
|
return [
|
|
46
39
|
Suite.SidecarInitialized(
|
|
47
40
|
"Web Sidecar message passing works correctly",
|
package/src/PM/index.ts
CHANGED
|
@@ -37,7 +37,7 @@ export abstract class PM {
|
|
|
37
37
|
abstract typeInto(selector: string, value: string): any;
|
|
38
38
|
abstract waitForSelector(p, sel: string);
|
|
39
39
|
abstract write(uid: number, contents: string): Promise<boolean>;
|
|
40
|
-
abstract writeFileSync(f: string, c: string
|
|
40
|
+
abstract writeFileSync(f: string, c: string): Promise<boolean>;
|
|
41
41
|
|
|
42
42
|
abstract launchSideCar(
|
|
43
43
|
n: number
|
package/src/PM/main.ts
CHANGED
|
@@ -238,7 +238,7 @@ export class PM_Main extends PM_WithEslintAndTsc {
|
|
|
238
238
|
waitForInitialPage: false,
|
|
239
239
|
executablePath,
|
|
240
240
|
|
|
241
|
-
headless:
|
|
241
|
+
headless: true,
|
|
242
242
|
|
|
243
243
|
dumpio: false,
|
|
244
244
|
devtools: false,
|
|
@@ -703,9 +703,14 @@ export class PM_Main extends PM_WithEslintAndTsc {
|
|
|
703
703
|
let haltReturns = false;
|
|
704
704
|
|
|
705
705
|
const ipcfile = "/tmp/tpipe_" + Math.random();
|
|
706
|
-
const child = spawn(
|
|
707
|
-
|
|
708
|
-
|
|
706
|
+
const child = spawn(
|
|
707
|
+
"node",
|
|
708
|
+
// "node --inspect-brk ",
|
|
709
|
+
[builtfile, testResources, ipcfile],
|
|
710
|
+
{
|
|
711
|
+
stdio: ["pipe", "pipe", "pipe", "ipc"],
|
|
712
|
+
}
|
|
713
|
+
);
|
|
709
714
|
|
|
710
715
|
let buffer: Buffer<ArrayBufferLike> = new Buffer("");
|
|
711
716
|
|
|
@@ -770,7 +775,6 @@ export class PM_Main extends PM_WithEslintAndTsc {
|
|
|
770
775
|
oStream.write(`stdout > ${data}`);
|
|
771
776
|
});
|
|
772
777
|
child.on("close", (code) => {
|
|
773
|
-
console.log("close");
|
|
774
778
|
oStream.close();
|
|
775
779
|
server.close();
|
|
776
780
|
|
|
@@ -790,7 +794,6 @@ export class PM_Main extends PM_WithEslintAndTsc {
|
|
|
790
794
|
haltReturns = true;
|
|
791
795
|
});
|
|
792
796
|
child.on("exit", (code) => {
|
|
793
|
-
console.log("exit");
|
|
794
797
|
haltReturns = true;
|
|
795
798
|
|
|
796
799
|
for (let i = 0; i <= portsToUse.length; i++) {
|
|
@@ -798,8 +801,6 @@ export class PM_Main extends PM_WithEslintAndTsc {
|
|
|
798
801
|
this.ports[portsToUse[i]] = true; //port is open again
|
|
799
802
|
}
|
|
800
803
|
}
|
|
801
|
-
|
|
802
|
-
console.log("exitthis.ports", this.ports);
|
|
803
804
|
});
|
|
804
805
|
child.on("error", (e) => {
|
|
805
806
|
console.log("error");
|
|
@@ -852,10 +853,10 @@ export class PM_Main extends PM_WithEslintAndTsc {
|
|
|
852
853
|
}
|
|
853
854
|
// files[t].add(filepath);
|
|
854
855
|
|
|
855
|
-
fs.writeFileSync(
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
);
|
|
856
|
+
// fs.writeFileSync(
|
|
857
|
+
// destFolder + "/manifest.json",
|
|
858
|
+
// JSON.stringify(Array.from(files[src]))
|
|
859
|
+
// );
|
|
859
860
|
delete files[src];
|
|
860
861
|
|
|
861
862
|
Promise.all(screenshots[src] || []).then(() => {
|
|
@@ -1254,10 +1255,10 @@ export class PM_Main extends PM_WithEslintAndTsc {
|
|
|
1254
1255
|
}
|
|
1255
1256
|
// files[t].add(filepath);
|
|
1256
1257
|
|
|
1257
|
-
fs.writeFileSync(
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
);
|
|
1258
|
+
// fs.writeFileSync(
|
|
1259
|
+
// destFolder + "/manifest.json",
|
|
1260
|
+
// JSON.stringify(Array.from(files[src]))
|
|
1261
|
+
// );
|
|
1261
1262
|
delete files[src];
|
|
1262
1263
|
|
|
1263
1264
|
Promise.all(screenshots[src] || []).then(() => {
|
package/src/PM/node.ts
CHANGED
|
@@ -241,16 +241,16 @@ export class PM_Node extends PM {
|
|
|
241
241
|
console.error(`❗️testArtiFactory failed`, targetDir, error);
|
|
242
242
|
}
|
|
243
243
|
|
|
244
|
-
fs.writeFileSync(
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
);
|
|
244
|
+
// fs.writeFileSync(
|
|
245
|
+
// path.resolve(
|
|
246
|
+
// targetDir.split("/").slice(0, -1).join("/"),
|
|
247
|
+
// "manifest"
|
|
248
|
+
// ),
|
|
249
|
+
// fPaths.join(`\n`),
|
|
250
|
+
// {
|
|
251
|
+
// encoding: "utf-8",
|
|
252
|
+
// }
|
|
253
|
+
// );
|
|
254
254
|
|
|
255
255
|
if (Buffer.isBuffer(value)) {
|
|
256
256
|
fs.writeFileSync(fPath, value, "binary");
|
package/src/PM/nodeSidecar.ts
CHANGED
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
/* eslint-disable prefer-rest-params */
|
|
4
4
|
import net from "net";
|
|
5
5
|
|
|
6
|
-
import { ITTestResourceConfiguration } from "../lib";
|
|
6
|
+
import { ITLog, ITTestResourceConfiguration } from "../lib";
|
|
7
7
|
|
|
8
8
|
import { PM_sidecar } from "./sidecar";
|
|
9
|
+
import { PassThrough } from "stream";
|
|
9
10
|
|
|
10
11
|
type IFPaths = string[];
|
|
11
12
|
const fPaths: IFPaths = [];
|
|
@@ -13,7 +14,6 @@ const fPaths: IFPaths = [];
|
|
|
13
14
|
export class PM_Node_Sidecar extends PM_sidecar {
|
|
14
15
|
testResourceConfiguration: ITTestResourceConfiguration;
|
|
15
16
|
client: net.Socket;
|
|
16
|
-
mockListener?: jest.Mock;
|
|
17
17
|
|
|
18
18
|
constructor(t: ITTestResourceConfiguration) {
|
|
19
19
|
super();
|
package/src/PM/pure.ts
CHANGED
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
3
3
|
|
|
4
|
-
// import fs from "fs";
|
|
5
|
-
// import path from "path";
|
|
6
|
-
|
|
7
4
|
import { ScreencastOptions } from "puppeteer-core";
|
|
8
5
|
import { CdpPage } from "puppeteer-core/lib/esm/puppeteer";
|
|
9
|
-
import { PassThrough } from "stream";
|
|
10
6
|
|
|
11
7
|
import { ITLog, ITTestResourceConfiguration } from "../lib";
|
|
12
8
|
|