testeranto 0.80.0 → 0.81.1

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 (51) hide show
  1. package/.aider.chat.history.md +980 -0
  2. package/.aider.input.history +87 -0
  3. package/.aider.tags.cache.v3/1c/30/af1de2ad7a137afeddb1b01e0c27.val +0 -0
  4. package/.aider.tags.cache.v3/1d/63/88318b65ce58b6bb0487e8ce2656.val +0 -0
  5. package/.aider.tags.cache.v3/2e/67/16ae65530b40038e48e00d666c63.val +0 -0
  6. package/.aider.tags.cache.v3/6f/94/80488a232866fcce7ee657da488b.val +0 -0
  7. package/.aider.tags.cache.v3/cache.db +0 -0
  8. package/.gitattributes +1 -0
  9. package/README.md +10 -6
  10. package/dist/common/src/Aider.js +116 -69
  11. package/dist/common/src/PM/main.js +49 -46
  12. package/dist/common/src/PM/node.js +1 -1
  13. package/dist/common/src/Project.js +46 -38
  14. package/dist/common/src/Puppeteer.js +44 -37
  15. package/dist/common/src/SubPackages/react-test-renderer/jsx/index.js +17 -2
  16. package/dist/common/src/esbuildConfigs/inputFilesPlugin.js +39 -12
  17. package/dist/common/src/esbuildConfigs/web.js +3 -3
  18. package/dist/common/src/lib/abstractBase.js +41 -13
  19. package/dist/common/src/lib/basebuilder.js +6 -3
  20. package/dist/common/src/lib/core.js +47 -3
  21. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  22. package/dist/module/src/Aider.js +116 -69
  23. package/dist/module/src/PM/main.js +49 -46
  24. package/dist/module/src/PM/node.js +1 -1
  25. package/dist/module/src/Project.js +46 -38
  26. package/dist/module/src/Puppeteer.js +44 -37
  27. package/dist/module/src/SubPackages/react-test-renderer/jsx/index.js +17 -2
  28. package/dist/module/src/esbuildConfigs/inputFilesPlugin.js +39 -12
  29. package/dist/module/src/esbuildConfigs/web.js +3 -3
  30. package/dist/module/src/lib/abstractBase.js +41 -13
  31. package/dist/module/src/lib/basebuilder.js +6 -3
  32. package/dist/module/src/lib/core.js +47 -3
  33. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  34. package/dist/types/src/PM/main.d.ts +7 -1
  35. package/dist/types/src/Project.d.ts +6 -1
  36. package/dist/types/src/lib/abstractBase.d.ts +1 -0
  37. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  38. package/package.json +11 -15
  39. package/secret +1 -0
  40. package/secret.env +2 -0
  41. package/src/Aider.ts +140 -97
  42. package/src/PM/main.ts +60 -56
  43. package/src/PM/node.ts +1 -1
  44. package/src/Project.ts +55 -48
  45. package/src/Puppeteer.ts +56 -49
  46. package/src/SubPackages/react-test-renderer/jsx/index.ts +25 -2
  47. package/src/esbuildConfigs/inputFilesPlugin.ts +77 -32
  48. package/src/esbuildConfigs/web.ts +3 -3
  49. package/src/lib/abstractBase.ts +48 -17
  50. package/src/lib/basebuilder.ts +8 -3
  51. package/src/lib/core.ts +55 -13
@@ -12,44 +12,52 @@ const glob_1 = require("glob");
12
12
  const node_js_1 = __importDefault(require("./esbuildConfigs/node.js"));
13
13
  const web_js_1 = __importDefault(require("./esbuildConfigs/web.js"));
14
14
  const web_html_js_1 = __importDefault(require("./web.html.js"));
15
- var mode = process.argv[2] === "-dev" ? "DEV" : "PROD";
15
+ // var mode: "DEV" | "PROD" = process.argv[2] === "-dev" ? "DEV" : "PROD";
16
16
  readline_1.default.emitKeypressEvents(process.stdin);
17
17
  if (process.stdin.isTTY)
18
18
  process.stdin.setRawMode(true);
19
- process.stdin.on("keypress", (str, key) => {
20
- if (key.name === "q") {
21
- console.log("Testeranto-EsBuild is shutting down...");
22
- mode = "PROD";
23
- onDone();
24
- }
25
- });
26
- let nodeDone, webDone = false;
27
- const onNodeDone = () => {
28
- nodeDone = true;
29
- onDone();
30
- };
31
- const onWebDone = () => {
32
- webDone = true;
33
- onDone();
34
- };
35
- const onDone = () => {
36
- console.log(JSON.stringify({
37
- nodeDone,
38
- webDone,
39
- mode,
40
- }, null, 2));
41
- if (nodeDone && webDone && mode === "PROD") {
42
- console.log("Testeranto-EsBuild is all done. Goodbye!");
43
- process.exit();
44
- }
45
- else {
46
- console.log("Testeranto-EsBuild is still working...");
47
- }
48
- };
49
19
  class ITProject {
50
20
  constructor(configs) {
51
- this.mode = `up`;
21
+ this.nodeDone = false;
22
+ this.webDone = false;
23
+ this.onNodeDone = () => {
24
+ this.nodeDone = true;
25
+ this.onDone();
26
+ };
27
+ this.onWebDone = () => {
28
+ this.webDone = true;
29
+ this.onDone();
30
+ };
31
+ this.onDone = () => {
32
+ // console.log(this.nodeDone && this.webDone && this.mode === "PROD");
33
+ if (this.nodeDone && this.webDone && this.mode === "PROD") {
34
+ console.log("Testeranto-EsBuild is all done. Goodbye!");
35
+ process.exit();
36
+ }
37
+ else {
38
+ if (this.mode === "PROD") {
39
+ console.log("waiting for tests to finish");
40
+ console.log(JSON.stringify({
41
+ nodeDone: this.nodeDone,
42
+ webDone: this.webDone,
43
+ mode: this.mode,
44
+ }, null, 2));
45
+ }
46
+ else {
47
+ console.log("waiting for tests to change");
48
+ }
49
+ console.log("press 'q' to quit");
50
+ }
51
+ };
52
52
  this.config = configs;
53
+ this.mode = this.config.devMode ? "DEV" : "PROD";
54
+ process.stdin.on("keypress", (str, key) => {
55
+ if (key.name === "q") {
56
+ console.log("Testeranto-EsBuild is shutting down...");
57
+ this.mode = "PROD";
58
+ this.onDone();
59
+ }
60
+ });
53
61
  fs_1.default.writeFileSync(`${this.config.outdir}/testeranto.json`, JSON.stringify(Object.assign(Object.assign({}, this.config), { buildDir: process.cwd() + "/" + this.config.outdir }), null, 2));
54
62
  Promise.resolve(Promise.all([...this.getSecondaryEndpointsPoints("web")].map(async (sourceFilePath) => {
55
63
  const sourceFileSplit = sourceFilePath.split("/");
@@ -78,14 +86,14 @@ class ITProject {
78
86
  esbuild_1.default
79
87
  .context((0, node_js_1.default)(this.config, nodeEntryPoints))
80
88
  .then(async (nodeContext) => {
81
- if (mode == "DEV") {
89
+ if (this.config.devMode) {
82
90
  await nodeContext.watch().then((v) => {
83
- onNodeDone();
91
+ this.onNodeDone();
84
92
  });
85
93
  }
86
94
  else {
87
95
  nodeContext.rebuild().then((v) => {
88
- onNodeDone();
96
+ this.onNodeDone();
89
97
  });
90
98
  }
91
99
  return nodeContext;
@@ -93,14 +101,14 @@ class ITProject {
93
101
  esbuild_1.default
94
102
  .context((0, web_js_1.default)(this.config, webEntryPoints))
95
103
  .then(async (webContext) => {
96
- if (mode == "DEV") {
104
+ if (this.config.devMode) {
97
105
  await webContext.watch().then((v) => {
98
- onWebDone();
106
+ this.onWebDone();
99
107
  });
100
108
  }
101
109
  else {
102
110
  webContext.rebuild().then((v) => {
103
- onWebDone();
111
+ this.onWebDone();
104
112
  });
105
113
  }
106
114
  return webContext;
@@ -8,20 +8,14 @@ const fs_1 = __importDefault(require("fs"));
8
8
  const recursive_watch_1 = __importDefault(require("recursive-watch"));
9
9
  const main_js_1 = require("./PM/main.js");
10
10
  const utils_js_1 = require("./utils.js");
11
- var mode = process.argv[2] === "-dev" ? "DEV" : "PROD";
12
- const node2web = {};
13
- const web2node = {};
14
- const childProcesses = {};
11
+ // var mode: "DEV" | "PROD" = process.argv[2] === "-dev" ? "DEV" : "PROD";
12
+ // const node2web: Record<string, string[]> = {};
13
+ // const web2node: Record<string, string[]> = {};
14
+ // const childProcesses: Record<string, "loaded" | "running" | "done"> = {};
15
15
  readline_1.default.emitKeypressEvents(process.stdin);
16
16
  if (process.stdin.isTTY)
17
17
  process.stdin.setRawMode(true);
18
- // console.log("hello Puppeteer", process.env);
19
- console.log("\n Puppeteer is running. Press 'q' to quit\n");
20
- process.stdin.on("keypress", (str, key) => {
21
- if (key.name === "q") {
22
- process.exit();
23
- }
24
- });
18
+ // let shutDownMode = false;
25
19
  exports.default = async (partialConfig) => {
26
20
  const config = Object.assign(Object.assign({}, partialConfig), { buildDir: process.cwd() + "/" + partialConfig.outdir });
27
21
  fs_1.default.writeFileSync(`${config.outdir}/testeranto.json`, JSON.stringify(Object.assign(Object.assign({}, config), { buildDir: process.cwd() + "/" + config.outdir }), null, 2));
@@ -66,6 +60,13 @@ exports.default = async (partialConfig) => {
66
60
  // "--start-maximized",
67
61
  ],
68
62
  }, ".");
63
+ console.log("\n Puppeteer is running. Press 'q' to quit\n");
64
+ process.stdin.on("keypress", (str, key) => {
65
+ if (key.name === "q") {
66
+ pm.shutDown();
67
+ // process.exit();
68
+ }
69
+ });
69
70
  config.tests.forEach(([test, runtime, tr, sidecars]) => {
70
71
  if (runtime === "node") {
71
72
  pm.launchNode(test, (0, utils_js_1.destinationOfRuntime)(test, "node", config));
@@ -77,33 +78,39 @@ exports.default = async (partialConfig) => {
77
78
  console.error("runtime makes no sense", runtime);
78
79
  }
79
80
  });
80
- console.log("ready and watching for changes...", config.buildDir);
81
- (0, recursive_watch_1.default)(config.buildDir, (eventType, changedFile) => {
82
- if (changedFile) {
83
- config.tests.forEach(([test, runtime, tr, sidecars]) => {
84
- if (eventType === "change" || eventType === "rename") {
85
- if (changedFile ===
86
- test
87
- .replace("./", "node/")
88
- .split(".")
89
- .slice(0, -1)
90
- .concat("mjs")
91
- .join(".")) {
92
- pm.launchNode(test, (0, utils_js_1.destinationOfRuntime)(test, "node", config));
93
- }
94
- if (changedFile ===
95
- test
96
- .replace("./", "web/")
97
- .split(".")
98
- .slice(0, -1)
99
- .concat("mjs")
100
- .join(".")) {
101
- pm.launchWeb(test, (0, utils_js_1.destinationOfRuntime)(test, "web", config), sidecars);
81
+ if (config.devMode) {
82
+ console.log("ready and watching for changes...", config.buildDir);
83
+ (0, recursive_watch_1.default)(config.buildDir, (eventType, changedFile) => {
84
+ if (changedFile) {
85
+ config.tests.forEach(([test, runtime, tr, sidecars]) => {
86
+ if (eventType === "change" || eventType === "rename") {
87
+ if (changedFile ===
88
+ test
89
+ .replace("./", "node/")
90
+ .split(".")
91
+ .slice(0, -1)
92
+ .concat("mjs")
93
+ .join(".")) {
94
+ pm.launchNode(test, (0, utils_js_1.destinationOfRuntime)(test, "node", config));
95
+ }
96
+ if (changedFile ===
97
+ test
98
+ .replace("./", "web/")
99
+ .split(".")
100
+ .slice(0, -1)
101
+ .concat("mjs")
102
+ .join(".")) {
103
+ pm.launchWeb(test, (0, utils_js_1.destinationOfRuntime)(test, "web", config), sidecars);
104
+ }
102
105
  }
103
- }
104
- });
105
- }
106
- });
106
+ });
107
+ }
108
+ });
109
+ }
110
+ else {
111
+ pm.shutDown();
112
+ }
113
+ // pm.browser.close();
107
114
  // does not work on linux
108
115
  // fs.watch(
109
116
  // config.buildDir,
@@ -29,15 +29,30 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.testInterface = void 0;
30
30
  const react_1 = __importDefault(require("react"));
31
31
  const react_test_renderer_1 = __importStar(require("react-test-renderer"));
32
+ const Context = react_1.default.createContext({});
33
+ const AppContext = react_1.default.createContext({});
34
+ const contextValue = {
35
+ ingredients: ["flour", "sugar", "eggs"],
36
+ temperature: "200",
37
+ };
32
38
  exports.testInterface = {
33
39
  butThen: async function (s, thenCB, tr) {
34
- console.log("butThen", thenCB.toString());
40
+ // console.log("butThen", thenCB.toString());
35
41
  return thenCB(s);
36
42
  },
37
43
  beforeEach: function (CComponent, props) {
38
44
  let component;
39
45
  (0, react_test_renderer_1.act)(() => {
40
- component = react_test_renderer_1.default.create(react_1.default.createElement(CComponent, props, []));
46
+ // component = renderer.create(
47
+ // React.createElement(
48
+ // AppContext.Provider,
49
+ // { value: contextValue },
50
+ // React.createElement(AppContext.Consumer, null, (context) =>
51
+ // React.createElement(CComponent, Object.assign({}, context, {}))
52
+ // )
53
+ // )
54
+ // );
55
+ component = react_test_renderer_1.default.create(react_1.default.createElement(CComponent, props, react_1.default.createElement(CComponent, props, [])));
41
56
  });
42
57
  return component;
43
58
  },
@@ -6,20 +6,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const fs_1 = __importDefault(require("fs"));
7
7
  const path_1 = __importDefault(require("path"));
8
8
  exports.default = (platform, entryPoints) => {
9
- console.log("mark3", platform);
10
9
  return {
11
10
  name: "metafileWriter",
12
11
  setup(build) {
13
12
  build.onEnd((result) => {
14
13
  if (result.errors.length === 0) {
15
14
  entryPoints.forEach((entryPoint) => {
16
- console.log("mark1", entryPoint);
17
15
  const filePath = path_1.default.join("./docs/", platform, entryPoint.split(".").slice(0, -1).join("."), `inputFiles.json`);
16
+ const promptPath = path_1.default.join("./docs/", platform, entryPoint.split(".").slice(0, -1).join("."), `prompt.txt`);
17
+ const testPaths = path_1.default.join("./docs/", platform, entryPoint.split(".").slice(0, -1).join("."), `tests.json`);
18
18
  const dirName = path_1.default.dirname(filePath);
19
19
  if (!fs_1.default.existsSync(dirName)) {
20
20
  fs_1.default.mkdirSync(dirName, { recursive: true });
21
21
  }
22
- const jsonContent = JSON.stringify(Object.keys(Object.keys(result.metafile.outputs)
22
+ const j = Object.keys(Object.keys(result.metafile.outputs)
23
23
  .filter((s) => {
24
24
  if (!result.metafile.outputs[s].entryPoint) {
25
25
  return false;
@@ -30,20 +30,47 @@ exports.default = (platform, entryPoints) => {
30
30
  .reduce((mm, el) => {
31
31
  mm.push(result.metafile.outputs[el].inputs);
32
32
  return mm;
33
- }, [])[0])
34
- .filter((f) => {
33
+ }, [])[0]).filter((f) => {
35
34
  const regex = /^src\/.*/g;
36
35
  const matches = f.match(regex);
37
36
  const passes = (matches === null || matches === void 0 ? void 0 : matches.length) === 1;
38
37
  return passes;
39
- })
40
- .filter((f) => {
41
- const regex = /.*\.test\..*/g;
42
- const matches = f.match(regex);
43
- const passes = (matches === null || matches === void 0 ? void 0 : matches.length) === 1;
44
- return !passes;
45
- }));
38
+ });
39
+ // .filter((f: string) => {
40
+ // const regex = /.*\.test\..*/g;
41
+ // const matches = f.match(regex);
42
+ // const passes = matches?.length === 1;
43
+ // return !passes;
44
+ // })
45
+ const jsonContent = JSON.stringify(j);
46
46
  fs_1.default.writeFileSync(filePath, jsonContent);
47
+ fs_1.default.writeFileSync(promptPath, `
48
+ ${j
49
+ .map((x) => {
50
+ return `/add ${x}`;
51
+ })
52
+ .join("\n")}
53
+ /read ${testPaths}
54
+
55
+ /code fix the failing tests described in ${filePath}.
56
+ `);
57
+ // fs.writeFileSync(
58
+ // promptPath,
59
+ // `
60
+ // from aider.coders import Coder
61
+ // from aider.models import Model
62
+ // import os
63
+ // model = Model("deepseek")
64
+ // coder = Coder.create(main_model=model)
65
+ // coder.run("/read-only", "${testPaths}")
66
+ // ${j
67
+ // .map((x) => {
68
+ // return `coder.run("/add", "${x}")`;
69
+ // })
70
+ // .join("\n")}
71
+ // coder.run("fix the failing tests described in ${filePath}.")
72
+ // `
73
+ // );
47
74
  });
48
75
  }
49
76
  });
@@ -16,10 +16,10 @@ exports.default = (config, entryPoints) => {
16
16
  outdir: config.outdir + "/web", alias: {
17
17
  react: path_1.default.resolve("./node_modules/react"),
18
18
  }, metafile: true, external: [
19
- "testeranto.json",
20
- "features.test.ts",
19
+ // "testeranto.json",
20
+ // "features.test.ts",
21
21
  // "url",
22
- "react",
22
+ // "react",
23
23
  "path",
24
24
  "fs",
25
25
  "stream",
@@ -10,10 +10,22 @@ class BaseSuite {
10
10
  this.fails = [];
11
11
  }
12
12
  toObj() {
13
+ const givens = Object.keys(this.givens).map((k) => this.givens[k].toObj());
14
+ const features = Object.keys(this.givens)
15
+ .map((k) => this.givens[k].features)
16
+ .flat()
17
+ .filter((value, index, array) => {
18
+ return array.indexOf(value) === index;
19
+ })
20
+ .reduce((mm, lm) => {
21
+ mm[lm] = lm;
22
+ return mm;
23
+ }, {});
13
24
  return {
14
25
  name: this.name,
15
- givens: Object.keys(this.givens).map((k) => this.givens[k].toObj()),
26
+ givens,
16
27
  fails: this.fails,
28
+ features,
17
29
  };
18
30
  }
19
31
  setup(s, artifactory, tr, pm) {
@@ -230,7 +242,7 @@ class BaseGiven {
230
242
  },
231
243
  });
232
244
  this.store = await this.givenThat(subject, testResourceConfiguration, givenArtifactory, this.givenCB, beforeEachProxy);
233
- console.log("mark6", this.store);
245
+ // console.log("mark6", this.store);
234
246
  for (const [whenNdx, whenStep] of this.whens.entries()) {
235
247
  await whenStep.test(this.store, testResourceConfiguration, tLog, pm, `suite-${suiteNdx}/given-${key}/when/${whenNdx}`);
236
248
  }
@@ -329,7 +341,7 @@ class BaseGiven {
329
341
  return Reflect.get(...arguments);
330
342
  },
331
343
  });
332
- console.log("mark5", this.store, key);
344
+ // console.log("mark5", this.store, key);
333
345
  await this.afterEach(this.store, key, givenArtifactory, afterEachProxy);
334
346
  }
335
347
  catch (e) {
@@ -448,13 +460,21 @@ class BaseWhen {
448
460
  return Reflect.get(...arguments);
449
461
  },
450
462
  });
451
- try {
452
- return await this.andWhen(store, this.whenCB, testResourceConfiguration, andWhenProxy);
453
- }
454
- catch (e) {
463
+ return this.andWhen(store, this.whenCB, testResourceConfiguration, andWhenProxy).catch((e) => {
455
464
  this.error = true;
456
- throw e;
457
- }
465
+ // throw e;
466
+ });
467
+ // try {
468
+ // return await this.andWhen(
469
+ // store,
470
+ // this.whenCB,
471
+ // testResourceConfiguration,
472
+ // andWhenProxy
473
+ // );
474
+ // } catch (e) {
475
+ // this.error = true;
476
+ // throw e;
477
+ // }
458
478
  }
459
479
  }
460
480
  exports.BaseWhen = BaseWhen;
@@ -535,10 +555,18 @@ class BaseThen {
535
555
  return Reflect.get(...arguments);
536
556
  },
537
557
  });
538
- const x = await this.butThen(store, this.thenCB, testResourceConfiguration, butThenProxy
539
- // pm
540
- );
541
- return x;
558
+ // const x = await this.butThen(
559
+ // store,
560
+ // this.thenCB,
561
+ // testResourceConfiguration,
562
+ // butThenProxy
563
+ // );
564
+ // return x;
565
+ return this.butThen(store, this.thenCB, testResourceConfiguration, butThenProxy).catch((e) => {
566
+ console.log("mar123");
567
+ this.error = true;
568
+ throw e;
569
+ });
542
570
  }
543
571
  catch (e) {
544
572
  console.log("test failed", e);
@@ -16,12 +16,15 @@ class BaseBuilder {
16
16
  this.specs = testSpecification(this.Suites(), this.Given(), this.When(), this.Then(), this.Check());
17
17
  this.testJobs = this.specs.map((suite) => {
18
18
  const suiteRunner = (suite) => async (puppetMaster, tLog) => {
19
- await puppetMaster.startPuppeteer({
19
+ const puppeteerBrowser = await puppetMaster.startPuppeteer({
20
20
  browserWSEndpoint: puppetMaster.testResourceConfiguration.browserWSEndpoint,
21
21
  }, puppetMaster.testResourceConfiguration.fs);
22
- return await suite.run(input, puppetMaster.testResourceConfiguration, (fPath, value) => puppetMaster.testArtiFactoryfileWriter(tLog, (p) => {
22
+ const x = await suite.run(input, puppetMaster.testResourceConfiguration, (fPath, value) => puppetMaster.testArtiFactoryfileWriter(tLog, (p) => {
23
23
  this.artifacts.push(p);
24
24
  })(puppetMaster.testResourceConfiguration.fs + "/" + fPath, value), tLog, puppetMaster);
25
+ // await puppetMaster.browser.disconnect();
26
+ // puppeteerBrowser.close();
27
+ return x;
25
28
  };
26
29
  const runner = suiteRunner(suite);
27
30
  return {
@@ -31,7 +34,7 @@ class BaseBuilder {
31
34
  },
32
35
  runner,
33
36
  receiveTestResourceConfig: async function (puppetMaster) {
34
- await puppetMaster.mkdirSync();
37
+ // await puppetMaster.mkdirSync();
35
38
  const logFilePath = "log.txt";
36
39
  const access = await puppetMaster.createWriteStream(logFilePath);
37
40
  const tLog = (...l) => {
@@ -48,11 +48,55 @@ class Testeranto extends classBuilder_js_1.ClassBuilder {
48
48
  }
49
49
  }, class When extends abstractBase_js_1.BaseWhen {
50
50
  async andWhen(store, whenCB, testResource, pm) {
51
- return await fullTestInterface.andWhen(store, whenCB, testResource, pm);
51
+ try {
52
+ return await fullTestInterface.andWhen(store, whenCB, testResource, pm);
53
+ }
54
+ catch (e) {
55
+ throw e;
56
+ }
57
+ // return fullTestInterface
58
+ // .andWhen(store, whenCB, testResource, pm)
59
+ // .catch((e) => {
60
+ // throw e;
61
+ // });
62
+ // return new Promise((res, rej) => {
63
+ // fullTestInterface.andWhen(store, whenCB, testResource, pm);
64
+ // });
65
+ // return await fullTestInterface.andWhen(
66
+ // store,
67
+ // whenCB,
68
+ // testResource,
69
+ // pm
70
+ // );
52
71
  }
53
72
  }, class Then extends abstractBase_js_1.BaseThen {
54
- async butThen(store, thenCB, testResourceConfiguration, pm) {
55
- return await fullTestInterface.butThen(store, thenCB, testResourceConfiguration, pm);
73
+ async butThen(store, thenCB, testResource, pm) {
74
+ return fullTestInterface
75
+ .butThen(store, thenCB, testResource, pm)
76
+ .then((v) => {
77
+ return v;
78
+ }, (e) => {
79
+ console.log(" ERROR ", e);
80
+ throw e;
81
+ });
82
+ // try {
83
+ // console.log("mark 4");
84
+ // return await fullTestInterface.butThen(
85
+ // store,
86
+ // thenCB,
87
+ // testResource,
88
+ // pm
89
+ // );
90
+ // } catch (e) {
91
+ // console.log("mar123");
92
+ // throw e;
93
+ // }
94
+ // return await fullTestInterface.butThen(
95
+ // store,
96
+ // thenCB,
97
+ // testResourceConfiguration,
98
+ // pm
99
+ // );
56
100
  }
57
101
  }, class Check extends abstractBase_js_1.BaseCheck {
58
102
  constructor(name, features, checkCallback, whens, thens, initialValues) {