@haibun/core 1.42.4 → 1.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/build/applyEffectFeatures.d.ts +3 -0
  2. package/build/applyEffectFeatures.d.ts.map +1 -0
  3. package/build/applyEffectFeatures.js +32 -0
  4. package/build/applyEffectFeatures.js.map +1 -0
  5. package/build/currentVersion.d.ts +1 -1
  6. package/build/currentVersion.js +1 -2
  7. package/build/lib/ConnectedLogger.d.ts +4 -3
  8. package/build/lib/ConnectedLogger.d.ts.map +1 -1
  9. package/build/lib/ConnectedLogger.js +1 -1
  10. package/build/lib/ConnectedLogger.js.map +1 -1
  11. package/build/lib/LogHistory.d.ts +1 -1
  12. package/build/lib/LogHistory.d.ts.map +1 -1
  13. package/build/lib/LogHistory.js +17 -9
  14. package/build/lib/LogHistory.js.map +1 -1
  15. package/build/lib/Logger.d.ts +16 -24
  16. package/build/lib/Logger.d.ts.map +1 -1
  17. package/build/lib/Logger.js +19 -17
  18. package/build/lib/Logger.js.map +1 -1
  19. package/build/lib/TestLogger.d.ts +1 -0
  20. package/build/lib/TestLogger.d.ts.map +1 -1
  21. package/build/lib/TestLogger.js +1 -0
  22. package/build/lib/TestLogger.js.map +1 -1
  23. package/build/lib/Timer.d.ts +1 -1
  24. package/build/lib/Timer.d.ts.map +1 -1
  25. package/build/lib/Timer.js +2 -3
  26. package/build/lib/Timer.js.map +1 -1
  27. package/build/lib/contexts.d.ts +3 -12
  28. package/build/lib/contexts.d.ts.map +1 -1
  29. package/build/lib/contexts.js +1 -20
  30. package/build/lib/contexts.js.map +1 -1
  31. package/build/lib/defs.d.ts +56 -81
  32. package/build/lib/defs.d.ts.map +1 -1
  33. package/build/lib/defs.js +12 -23
  34. package/build/lib/defs.js.map +1 -1
  35. package/build/lib/features.d.ts.map +1 -1
  36. package/build/lib/features.js +3 -3
  37. package/build/lib/features.js.map +1 -1
  38. package/build/lib/interfaces/TArtifactRequestStepTopic.d.ts +53 -0
  39. package/build/lib/interfaces/TArtifactRequestStepTopic.d.ts.map +1 -0
  40. package/build/lib/interfaces/TArtifactRequestStepTopic.js +2 -0
  41. package/build/lib/interfaces/TArtifactRequestStepTopic.js.map +1 -0
  42. package/build/lib/interfaces/TMessageContext.d.ts +22 -0
  43. package/build/lib/interfaces/TMessageContext.d.ts.map +1 -0
  44. package/build/lib/interfaces/TMessageContext.js +2 -0
  45. package/build/lib/interfaces/TMessageContext.js.map +1 -0
  46. package/build/lib/interfaces/artifacts.d.ts +43 -0
  47. package/build/lib/interfaces/artifacts.d.ts.map +1 -0
  48. package/build/lib/interfaces/artifacts.js +2 -0
  49. package/build/lib/interfaces/artifacts.js.map +1 -0
  50. package/build/lib/interfaces/logger.d.ts +28 -94
  51. package/build/lib/interfaces/logger.d.ts.map +1 -1
  52. package/build/lib/interfaces/logger.js +16 -2
  53. package/build/lib/interfaces/logger.js.map +1 -1
  54. package/build/lib/interfaces/messageContexts.d.ts +10 -0
  55. package/build/lib/interfaces/messageContexts.d.ts.map +1 -0
  56. package/build/lib/interfaces/messageContexts.js +2 -0
  57. package/build/lib/interfaces/messageContexts.js.map +1 -0
  58. package/build/lib/namedVars.d.ts.map +1 -1
  59. package/build/lib/namedVars.js +6 -17
  60. package/build/lib/namedVars.js.map +1 -1
  61. package/build/lib/resolver-features.d.ts.map +1 -1
  62. package/build/lib/test/SetTimeStepper.d.ts.map +1 -1
  63. package/build/lib/test/SetTimeStepper.js +2 -2
  64. package/build/lib/test/SetTimeStepper.js.map +1 -1
  65. package/build/lib/test/TestSteps.d.ts +2 -4
  66. package/build/lib/test/TestSteps.d.ts.map +1 -1
  67. package/build/lib/test/TestSteps.js +5 -5
  68. package/build/lib/test/TestSteps.js.map +1 -1
  69. package/build/lib/test/TestStepsWithOptions.d.ts +2 -29
  70. package/build/lib/test/TestStepsWithOptions.d.ts.map +1 -1
  71. package/build/lib/test/TestStepsWithOptions.js +3 -20
  72. package/build/lib/test/TestStepsWithOptions.js.map +1 -1
  73. package/build/lib/test/lib.d.ts +1 -1
  74. package/build/lib/test/lib.d.ts.map +1 -1
  75. package/build/lib/test/lib.js +3 -4
  76. package/build/lib/test/lib.js.map +1 -1
  77. package/build/lib/util/index.d.ts +16 -21
  78. package/build/lib/util/index.d.ts.map +1 -1
  79. package/build/lib/util/index.js +25 -53
  80. package/build/lib/util/index.js.map +1 -1
  81. package/build/lib/util/workspace-lib.d.ts +1 -2
  82. package/build/lib/util/workspace-lib.d.ts.map +1 -1
  83. package/build/lib/util/workspace-lib.js +0 -12
  84. package/build/lib/util/workspace-lib.js.map +1 -1
  85. package/build/phases/Executor.d.ts +12 -13
  86. package/build/phases/Executor.d.ts.map +1 -1
  87. package/build/phases/Executor.js +87 -88
  88. package/build/phases/Executor.js.map +1 -1
  89. package/build/phases/Resolver.d.ts.map +1 -1
  90. package/build/phases/Resolver.js +7 -6
  91. package/build/phases/Resolver.js.map +1 -1
  92. package/build/phases/collector.d.ts +0 -1
  93. package/build/phases/collector.d.ts.map +1 -1
  94. package/build/runner.d.ts +4 -8
  95. package/build/runner.d.ts.map +1 -1
  96. package/build/runner.js +16 -40
  97. package/build/runner.js.map +1 -1
  98. package/build/steps/conformance.d.ts +2 -4
  99. package/build/steps/conformance.d.ts.map +1 -1
  100. package/build/steps/conformance.js +1 -1
  101. package/build/steps/conformance.js.map +1 -1
  102. package/build/steps/credentials.d.ts +1 -3
  103. package/build/steps/credentials.d.ts.map +1 -1
  104. package/build/steps/credentials.js +4 -4
  105. package/build/steps/credentials.js.map +1 -1
  106. package/build/steps/haibun.d.ts +4 -6
  107. package/build/steps/haibun.d.ts.map +1 -1
  108. package/build/steps/haibun.js +24 -23
  109. package/build/steps/haibun.js.map +1 -1
  110. package/build/steps/lib/parse.js +1 -1
  111. package/build/steps/lib/parse.js.map +1 -1
  112. package/build/steps/parse.d.ts +4 -6
  113. package/build/steps/parse.d.ts.map +1 -1
  114. package/build/steps/parse.js +5 -5
  115. package/build/steps/parse.js.map +1 -1
  116. package/build/steps/vars.d.ts +91 -109
  117. package/build/steps/vars.d.ts.map +1 -1
  118. package/build/steps/vars.js +46 -29
  119. package/build/steps/vars.js.map +1 -1
  120. package/package.json +1 -1
@@ -1,84 +1,119 @@
1
- import { STAY, STAY_FAILURE, CHECK_NOT_OK, CHECK_OK, } from '../lib/defs.js';
1
+ import { STAY, STAY_FAILURE, CHECK_NO, CHECK_YES, STEP_DELAY, CONTINUE_AFTER_ERROR } from '../lib/defs.js';
2
+ import { EExecutionMessageType } from '../lib/interfaces/logger.js';
3
+ import { topicArtifactLogger } from '../lib/Logger.js';
2
4
  import { getNamedToVars } from '../lib/namedVars.js';
3
- import { actionNotOK, setStepperWorlds, sleep, createSteppers, findStepper, constructorName } from '../lib/util/index.js';
5
+ import { actionNotOK, sleep, findStepper, constructorName, setStepperWorlds } from '../lib/util/index.js';
6
+ import { SCENARIO_START } from '../steps/vars.js';
7
+ function calculateShouldClose({ thisFeatureOK, isLast, stayOnFailure }) {
8
+ if (thisFeatureOK) {
9
+ return true;
10
+ }
11
+ if (isLast && stayOnFailure) {
12
+ return false;
13
+ }
14
+ return true;
15
+ }
4
16
  export class Executor {
5
- // find the stepper and action, call it and return its result
6
17
  static async action(steppers, featureStep, found, world) {
7
18
  const namedWithVars = getNamedToVars(found, world, featureStep);
8
19
  const stepper = findStepper(steppers, found.stepperName);
9
20
  const action = stepper.steps[found.actionName].action;
10
21
  return await action(namedWithVars, featureStep).catch((caught) => {
11
22
  world.logger.error(caught.stack);
12
- return actionNotOK(`in ${featureStep.line}: ${caught.message}`, {
13
- topics: { caught: (caught?.stack || caught).toString() },
23
+ return actionNotOK(`in ${featureStep.in}: ${caught.message}`, {
24
+ incident: EExecutionMessageType.ACTION,
25
+ incidentDetails: { caught: (caught?.stack || caught).toString() },
14
26
  });
15
27
  });
16
28
  }
17
- static async execute(csteppers, world, features, endFeatureCallbacks) {
18
- let ok = true;
29
+ static async executeFeatures(steppers, world, features) {
30
+ await doStepperMethod(steppers, 'startExecution');
31
+ let okSoFar = true;
19
32
  const stayOnFailure = world.options[STAY] === STAY_FAILURE;
20
33
  const featureResults = [];
21
34
  let featureNum = 0;
35
+ const continueAfterError = !!(world.options[CONTINUE_AFTER_ERROR]);
22
36
  for (const feature of features) {
23
37
  featureNum++;
38
+ const isLast = featureNum === features.length;
39
+ world.logger.log(`███ feature ${featureNum}/${features.length}: ${feature.path}`);
24
40
  const newWorld = { ...world, tag: { ...world.tag, ...{ featureNum: 0 + featureNum } } };
25
- const featureExecutor = new FeatureExecutor(csteppers, endFeatureCallbacks);
26
- await featureExecutor.setup(newWorld);
41
+ const featureExecutor = new FeatureExecutor(steppers, newWorld);
42
+ await setStepperWorlds(steppers, newWorld);
43
+ await doStepperMethod(steppers, 'startFeature');
27
44
  const featureResult = await featureExecutor.doFeature(feature);
28
- ok = ok && featureResult.ok;
45
+ const thisFeatureOK = featureResult.ok;
46
+ if (!thisFeatureOK) {
47
+ const failedStep = featureResult.stepResults.find((s) => !s.ok);
48
+ await doStepperMethod(steppers, 'onFailure', featureResult, failedStep);
49
+ }
50
+ okSoFar = okSoFar && thisFeatureOK;
29
51
  featureResults.push(featureResult);
30
- const shouldClose = ok || !stayOnFailure;
31
- await featureExecutor.endFeature(); // this should be before close
52
+ const shouldCloseFactors = { thisFeatureOK: featureResult.ok, okSoFar, isLast, continueAfterError, stayOnFailure };
53
+ const shouldClose = calculateShouldClose(shouldCloseFactors);
32
54
  if (shouldClose) {
33
- await featureExecutor.close();
55
+ world.logger.debug(`shouldClose ${JSON.stringify(shouldCloseFactors)}`);
56
+ }
57
+ else {
58
+ world.logger.debug(`no shouldClose because ${JSON.stringify(shouldCloseFactors)}`);
59
+ }
60
+ await doStepperMethod(steppers, 'endFeature', { world: newWorld, shouldClose, isLast, okSoFar, continueAfterError, stayOnFailure, thisFeatureOK: featureResult.ok });
61
+ if (!okSoFar) {
62
+ if (!continueAfterError && !isLast) {
63
+ world.logger.debug(`stopping without ${CONTINUE_AFTER_ERROR}`);
64
+ break;
65
+ }
66
+ else {
67
+ if (continueAfterError && !isLast) {
68
+ world.logger.debug(`continuing because ${CONTINUE_AFTER_ERROR}`);
69
+ }
70
+ }
34
71
  }
35
- await featureExecutor.doEndFeatureCallback(featureResult);
36
72
  }
37
- return { ok, featureResults: featureResults, tag: world.tag, shared: world.shared };
73
+ await doStepperMethod(steppers, 'endExecution');
74
+ return { ok: okSoFar, featureResults: featureResults, tag: world.tag, shared: world.shared, steppers };
38
75
  }
39
76
  }
40
77
  export class FeatureExecutor {
41
- csteppers;
42
- endFeatureCallbacks;
43
- world;
44
78
  steppers;
45
- startOffset = 0;
46
- constructor(csteppers, endFeatureCallbacks) {
47
- this.csteppers = csteppers;
48
- this.endFeatureCallbacks = endFeatureCallbacks;
49
- }
50
- async setup(world) {
51
- this.world = world;
52
- this.startOffset = world.timer.since();
53
- const errorBail = (phase, error, extra) => {
54
- throw Error(error);
55
- };
56
- const steppers = await createSteppers(this.csteppers);
57
- await setStepperWorlds(steppers, world).catch((error) => errorBail('Apply Options', error, world.moduleOptions));
79
+ world;
80
+ logit;
81
+ startOffset;
82
+ constructor(steppers, world, logit = topicArtifactLogger(world), startOffset = world.timer.since()) {
58
83
  this.steppers = steppers;
84
+ this.world = world;
85
+ this.logit = logit;
86
+ this.startOffset = startOffset;
59
87
  }
60
88
  async doFeature(feature) {
61
89
  const world = this.world;
62
- world.logger.log(`███ feature ${world.tag.featureNum}: ${feature.path}`);
63
90
  let ok = true;
64
91
  const stepResults = [];
92
+ let currentScenario = 0;
65
93
  for (const step of feature.featureSteps) {
66
- world.logger.log(step.line);
94
+ if (step.action.actionName === SCENARIO_START) {
95
+ if (currentScenario) {
96
+ this.logit(`end scenario ${currentScenario}`, { incident: EExecutionMessageType.SCENARIO_END, incidentDetails: { currentScenario } }, 'debug');
97
+ }
98
+ currentScenario = currentScenario + 1;
99
+ this.logit(`start scenario ${currentScenario}`, { incident: EExecutionMessageType.SCENARIO_START, incidentDetails: { currentScenario } }, 'debug');
100
+ }
101
+ world.logger.log(step.in, { incident: EExecutionMessageType.STEP_START, tag: world.tag });
67
102
  const result = await FeatureExecutor.doFeatureStep(this.steppers, step, world);
68
- if (world.options.step_delay) {
69
- await sleep(world.options.step_delay);
103
+ if (world.options[STEP_DELAY]) {
104
+ await sleep(world.options[STEP_DELAY]);
70
105
  }
71
106
  ok = ok && result.ok;
72
- if (!result.ok) {
73
- await this.onFailure(result, step);
74
- }
75
- const indicator = result.ok ? CHECK_OK : CHECK_NOT_OK;
76
- world.logger.log(indicator, { topic: { stage: 'Executor', result, step } });
107
+ const indicator = result.ok ? CHECK_YES : CHECK_NO + ' ' + result.actionResult.message;
108
+ world.logger.log(indicator, { incident: EExecutionMessageType.STEP_END, tag: world.tag, incidentDetails: { result, step } });
77
109
  stepResults.push(result);
78
110
  if (!ok) {
79
111
  break;
80
112
  }
81
113
  }
114
+ if (currentScenario) {
115
+ this.logit(`end scenario ${currentScenario}`, { incident: EExecutionMessageType.SCENARIO_END, incidentDetails: { currentScenario } }, 'debug');
116
+ }
82
117
  const featureResult = { path: feature.path, ok, stepResults };
83
118
  return featureResult;
84
119
  }
@@ -88,58 +123,22 @@ export class FeatureExecutor {
88
123
  const action = featureStep.action;
89
124
  const start = world.timer.since();
90
125
  const res = await Executor.action(steppers, featureStep, action, world);
91
- let traces;
92
- if (world.shared.get('_trace')) {
93
- traces = world.shared.get('_trace');
94
- world.shared.unset('_trace');
95
- }
96
126
  const end = world.timer.since();
97
127
  // FIXME
98
- const stepResult = { ...res, name: action.actionName, start, end, traces };
99
- const actionResult = stepResult;
128
+ const actionResult = { ...res, name: action.actionName, start, end };
100
129
  ok = ok && res.ok;
101
- return { ok, line: featureStep.line, sourcePath: featureStep.source.path, actionResult, seq: featureStep.seq };
102
- }
103
- async onFailure(result, step) {
104
- for (const stepper of this.steppers) {
105
- if (stepper.onFailure) {
106
- const res = await stepper.onFailure(result, step);
107
- this.world.logger.error(`onFailure from ${result.line} for ${constructorName(stepper)}`, res);
108
- }
109
- }
130
+ return { ok, in: featureStep.in, path: featureStep.path, actionResult, seq: featureStep.seq };
110
131
  }
111
- async endFeature() {
112
- for (const stepper of this.steppers) {
113
- if (stepper.endFeature) {
114
- this.world.logger.debug(`endFeature ${constructorName(stepper)}`);
115
- await stepper.endFeature().catch((error) => {
116
- console.error('endFeature', error);
117
- throw error;
118
- });
119
- this.world.logger.debug(`endedFeature ${constructorName(stepper)}`);
120
- }
121
- }
122
- }
123
- async doEndFeatureCallback(featureResult) {
124
- if (this.endFeatureCallbacks) {
125
- for (const callback of this.endFeatureCallbacks) {
126
- console.log('endFeatureCallbacks', typeof callback);
127
- try {
128
- await callback({ world: this.world, result: featureResult, steppers: this.steppers, startOffset: this.startOffset });
129
- }
130
- catch (error) {
131
- throw Error(error);
132
- }
133
- }
134
- }
135
- }
136
- async close() {
137
- for (const stepper of this.steppers) {
138
- if (stepper.close) {
139
- this.world.logger.debug(`closing ${constructorName(stepper)}`);
140
- await stepper.close();
141
- }
132
+ }
133
+ const doStepperMethod = async (steppers, method, ...args) => {
134
+ for (const stepper of steppers) {
135
+ if (stepper?.cycles && stepper.cycles[method]) {
136
+ stepper.getWorld().logger.debug(`🔁 ${method} ${constructorName(stepper)}`);
137
+ await stepper.cycles[method](...args).catch((error) => {
138
+ console.error(`${method} failed`, error);
139
+ throw error;
140
+ });
142
141
  }
143
142
  }
144
- }
143
+ };
145
144
  //# sourceMappingURL=Executor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Executor.js","sourceRoot":"","sources":["../../src/phases/Executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Executor.js","sourceRoot":"","sources":["../../src/phases/Executor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Resolver.d.ts","sourceRoot":"","sources":["../../src/phases/Resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EACX,gBAAgB,EAEhB,gBAAgB,EAChB,QAAQ,EAER,YAAY,EACZ,aAAa,EACb,MAAM,gBAAgB,CAAC;AAKxB,qBAAa,QAAQ;IAGR,OAAO,CAAC,QAAQ;IAF5B,KAAK,EAAE,MAAM,EAAE,CAAC;gBAEI,QAAQ,EAAE,QAAQ,EAAE;IAIlC,wBAAwB,CAAC,QAAQ,EAAE,gBAAgB,EAAE;IAU9C,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAsBjF,cAAc,CAAC,WAAW,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,YAAY;IAInF,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,EAAE;IAqB7D,OAAO,CAAC,WAAW;IAgBf,MAAM,CAAC,sBAAsB,YAAa,MAAM,YAAY,MAAM,QAAQ,MAAM,uBAAuB,MAAM,YACzB;IACxF,MAAM,CAAC,4BAA4B,YAAa,MAAM,YAAY,MAAM,QAAQ,MAAM,YACpB;IAClE,MAAM,CAAC,2BAA2B,YAAa,MAAM,YAAY,MAAM,QAAQ,MAAM,YAC9B;CACvD"}
1
+ {"version":3,"file":"Resolver.d.ts","sourceRoot":"","sources":["../../src/phases/Resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAM,gBAAgB,EAAE,QAAQ,EAAgB,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK1I,qBAAa,QAAQ;IAGR,OAAO,CAAC,QAAQ;IAF5B,KAAK,EAAE,MAAM,EAAE,CAAC;gBAEI,QAAQ,EAAE,QAAQ,EAAE;IAIlC,wBAAwB,CAAC,QAAQ,EAAE,gBAAgB,EAAE;IAW9C,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAsBjF,cAAc,CAAC,WAAW,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,YAAY;IAInF,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,EAAE;IAqB7D,OAAO,CAAC,WAAW;IAgBf,MAAM,CAAC,sBAAsB,GAAI,SAAS,MAAM,EAAE,UAAU,MAAM,EAAE,MAAM,MAAM,EAAE,qBAAqB,MAAM,YACzB;IACxF,MAAM,CAAC,4BAA4B,GAAI,SAAS,MAAM,EAAE,UAAU,MAAM,EAAE,MAAM,MAAM,YACpB;IAClE,MAAM,CAAC,2BAA2B,GAAI,SAAS,MAAM,EAAE,UAAU,MAAM,EAAE,MAAM,MAAM,YAC9B;CACvD"}
@@ -1,4 +1,4 @@
1
- import { OK, } from '../lib/defs.js';
1
+ import { OK } from '../lib/defs.js';
2
2
  import { BASE_TYPES } from '../lib/domain-types.js';
3
3
  import { namedInterpolation, getMatch } from '../lib/namedVars.js';
4
4
  import { getActionable, describeSteppers, isLowerCase, dePolite, constructorName } from '../lib/util/index.js';
@@ -14,12 +14,13 @@ export class Resolver {
14
14
  for (const feature of features) {
15
15
  const featureSteps = await this.findFeatureSteps(feature);
16
16
  const e = { ...feature, ...{ featureSteps } };
17
+ delete e.expanded;
17
18
  steps.push(e);
18
19
  }
19
20
  return steps;
20
21
  }
21
22
  async findFeatureSteps(feature) {
22
- let featureSteps = [];
23
+ const featureSteps = [];
23
24
  let seq = 0;
24
25
  for (const featureLine of feature.expanded) {
25
26
  seq++;
@@ -29,15 +30,15 @@ export class Resolver {
29
30
  throw Error(`more than one step found for "${featureLine.line}": ${JSON.stringify(actions.map((a) => a.actionName))}`);
30
31
  }
31
32
  else if (actions.length < 1) {
32
- throw Error(`no step found for ${featureLine.line} in ${feature.path} from ${describeSteppers(this.steppers)}`);
33
+ throw Error(`in ${feature.name}: no step found for ${featureLine.line} in ${feature.path} from\n${describeSteppers(this.steppers)}\nUse --show-steppers for more details`);
33
34
  }
34
35
  const featureStep = this.getFeatureStep(featureLine, seq, actions[0]);
35
36
  featureSteps.push(featureStep);
36
37
  }
37
- return featureSteps;
38
+ return Promise.resolve(featureSteps);
38
39
  }
39
40
  getFeatureStep(featureLine, seq, action) {
40
- return { source: featureLine.feature, line: featureLine.line, seq, action };
41
+ return { path: featureLine.feature.path, in: featureLine.line, seq, action };
41
42
  }
42
43
  findActionableSteps(actionable) {
43
44
  if (!actionable.length) {
@@ -85,7 +86,7 @@ const comment = {
85
86
  step: {
86
87
  match: /.*/,
87
88
  action: async () => {
88
- return OK;
89
+ return Promise.resolve(OK);
89
90
  },
90
91
  },
91
92
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Resolver.js","sourceRoot":"","sources":["../../src/phases/Resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Resolver.js","sourceRoot":"","sources":["../../src/phases/Resolver.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,6 @@ export declare function getFeaturesAndBackgrounds(bases: TBase, featureFilter: s
8
8
  export declare function shouldProcess(file: string, type: undefined | string, featureFilter: string[] | undefined): boolean;
9
9
  export declare function debase(abase: string, features: TFeature[]): {
10
10
  path: string;
11
- type: string;
12
11
  base: string;
13
12
  name: string;
14
13
  content: string;
@@ -1 +1 @@
1
- {"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/phases/collector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,WAAW,EAAE,QAAQ,EAAE,CAAC;CACzB,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,GAAE,WAAoB,GAAG,oBAAoB,CAuB/H;AAiBD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,SAAS,WAKxG;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;;;;;;IAEzD"}
1
+ {"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/phases/collector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,WAAW,EAAE,QAAQ,EAAE,CAAC;CACzB,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,GAAE,WAAoB,GAAG,oBAAoB,CAuB/H;AAiBD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,SAAS,WAKxG;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;;;;;IAEzD"}
package/build/runner.d.ts CHANGED
@@ -1,16 +1,12 @@
1
- import { CStepper, TEndFeatureCallback, TExecutorResult, TWorld } from './lib/defs.js';
1
+ import { TWorld, TExecutorResult, CStepper, AStepper } from './lib/defs.js';
2
2
  import { TFeaturesBackgrounds } from './phases/collector.js';
3
- export type TRunnerCallbacks = {
4
- endFeature?: TEndFeatureCallback[];
5
- };
6
3
  export declare class Runner {
7
4
  private world;
8
- private callbacks;
9
5
  private result;
10
- constructor(world: TWorld, callbacks?: TRunnerCallbacks);
6
+ steppers: AStepper[];
7
+ constructor(world: TWorld);
11
8
  private errorBail;
12
- run(steppers: string[], featureFilter: string[]): Promise<TExecutorResult>;
9
+ run(steppers: string[], featureFilter?: any[]): Promise<TExecutorResult>;
13
10
  runFeaturesAndBackgrounds(csteppers: CStepper[], { features, backgrounds }: TFeaturesBackgrounds): Promise<TExecutorResult>;
14
- private applyEffectFeatures;
15
11
  }
16
12
  //# sourceMappingURL=runner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,QAAQ,EAER,mBAAmB,EACnB,eAAe,EAKf,MAAM,EACN,MAAM,eAAe,CAAC;AAWvB,OAAO,EAA6B,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAIxF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACnC,CAAC;AAEF,qBAAa,MAAM;IAGN,OAAO,CAAC,KAAK;IAAU,OAAO,CAAC,SAAS;IAFpD,OAAO,CAAC,MAAM,CAA8B;gBAExB,KAAK,EAAE,MAAM,EAAU,SAAS,GAAE,gBAAqB;IAE3E,OAAO,CAAC,SAAS,CAUf;IAEI,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE;IAa/C,yBAAyB,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,oBAAoB;YAoCxF,mBAAmB;CAyBjC"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAa,QAAQ,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIvF,OAAO,EAA6B,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAIxF,qBAAa,MAAM;IAIN,OAAO,CAAC,KAAK;IAHzB,OAAO,CAAC,MAAM,CAA8B;IAC5C,QAAQ,EAAE,QAAQ,EAAE,CAAC;gBAED,KAAK,EAAE,MAAM;IAEjC,OAAO,CAAC,SAAS,CAWf;IAEI,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,aAAa,QAAK,GAAG,OAAO,CAAC,eAAe,CAAC;IAcrE,yBAAyB,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,oBAAoB;CA0BtG"}
package/build/runner.js CHANGED
@@ -1,30 +1,30 @@
1
+ import { applyEffectFeatures } from './applyEffectFeatures.js';
1
2
  import { expand } from './lib/features.js';
2
- import { getNamedToVars } from './lib/namedVars.js';
3
- import { constructorName, createSteppers, setStepperWorlds, verifyExtraOptions, verifyRequiredOptions, } from './lib/util/index.js';
3
+ import { verifyRequiredOptions, verifyExtraOptions, createSteppers, setStepperWorlds } from './lib/util/index.js';
4
4
  import { getSteppers } from './lib/util/workspace-lib.js';
5
5
  import { getFeaturesAndBackgrounds } from './phases/collector.js';
6
6
  import { Executor } from './phases/Executor.js';
7
7
  import { Resolver } from './phases/Resolver.js';
8
8
  export class Runner {
9
9
  world;
10
- callbacks;
11
10
  result = undefined;
12
- constructor(world, callbacks = {}) {
11
+ steppers;
12
+ constructor(world) {
13
13
  this.world = world;
14
- this.callbacks = callbacks;
15
14
  }
16
15
  errorBail = (phase, error, details) => {
17
- console.error(error);
18
16
  this.world.logger.error(`errorBail ${phase} ${error} ${details}`, error.stack);
19
17
  this.result = {
20
18
  ok: false,
21
19
  shared: this.world.shared,
22
20
  tag: this.world.tag,
23
21
  failure: { stage: phase, error: { message: error.message, details: { stack: error.stack, details } } },
22
+ steppers: this.steppers
24
23
  };
24
+ console.error(error.stack);
25
25
  throw Error(error);
26
26
  };
27
- async run(steppers, featureFilter) {
27
+ async run(steppers, featureFilter = []) {
28
28
  let featuresBackgrounds = undefined;
29
29
  try {
30
30
  featuresBackgrounds = getFeaturesAndBackgrounds(this.world.bases, featureFilter);
@@ -34,22 +34,21 @@ export class Runner {
34
34
  }
35
35
  const { features, backgrounds } = featuresBackgrounds;
36
36
  const cSteppers = await getSteppers(steppers).catch((error) => this.errorBail('Steppers', error));
37
- return await this.runFeaturesAndBackgrounds(cSteppers, { features, backgrounds });
37
+ const featureResults = await this.runFeaturesAndBackgrounds(cSteppers, { features, backgrounds });
38
+ return featureResults;
38
39
  }
39
40
  async runFeaturesAndBackgrounds(csteppers, { features, backgrounds }) {
40
41
  try {
41
42
  await verifyRequiredOptions(csteppers, this.world.moduleOptions).catch((error) => this.errorBail('RequiredOptions', error));
42
43
  await verifyExtraOptions(this.world.moduleOptions, csteppers).catch((error) => this.errorBail('moduleOptions', error));
43
- const steppers = await createSteppers(csteppers);
44
- await setStepperWorlds(steppers, this.world).catch((error) => this.errorBail('StepperOptions', error));
44
+ this.steppers = await createSteppers(csteppers);
45
+ await setStepperWorlds(this.steppers, this.world);
45
46
  const expandedFeatures = await expand(backgrounds, features).catch((error) => this.errorBail('Expand', error));
46
- const resolver = new Resolver(steppers);
47
- const resolvedFeatures = await resolver
48
- .resolveStepsFromFeatures(expandedFeatures)
49
- .catch((error) => this.errorBail('Resolve', error));
50
- const appliedResolvedFeatures = await this.applyEffectFeatures(resolvedFeatures, steppers);
51
- this.world.logger.log(`features: ${expandedFeatures.length} backgrounds: ${backgrounds.length} steps: (${expandedFeatures.map((e) => e.path)}), ${appliedResolvedFeatures.length}`);
52
- this.result = await Executor.execute(csteppers, this.world, appliedResolvedFeatures, this.callbacks.endFeature).catch((error) => this.errorBail('Execute', error));
47
+ const resolver = new Resolver(this.steppers);
48
+ const resolvedFeatures = await resolver.resolveStepsFromFeatures(expandedFeatures).catch((error) => this.errorBail('Resolve', error));
49
+ const appliedResolvedFeatures = await applyEffectFeatures(this.world, resolvedFeatures, this.steppers);
50
+ this.world.logger.log(`features: ${appliedResolvedFeatures.length} (${appliedResolvedFeatures.map((e) => e.path)}) backgrounds: ${backgrounds.length}`);
51
+ this.result = await Executor.executeFeatures(this.steppers, this.world, appliedResolvedFeatures).catch((error) => this.errorBail('Execute', error));
53
52
  }
54
53
  catch (error) {
55
54
  if (!this.result) {
@@ -58,28 +57,5 @@ export class Runner {
58
57
  }
59
58
  return this.result;
60
59
  }
61
- async applyEffectFeatures(resolvedFeatures, steppers) {
62
- let newFeatures = [];
63
- for (const feature of resolvedFeatures) {
64
- let foundEffect = undefined;
65
- const newFeature = { ...feature, featureSteps: [] };
66
- for (const featureStep of feature.featureSteps) {
67
- if (foundEffect) {
68
- const newSteps = await foundEffect.stepperStep.applyEffect(foundEffect.namedWithVars, featureStep);
69
- newFeature.featureSteps.push(...newSteps);
70
- }
71
- else {
72
- newFeature.featureSteps.push(featureStep);
73
- }
74
- const stepperStep = steppers.find((s) => constructorName(s) === featureStep.action.stepperName).steps[featureStep.action.actionName];
75
- if (stepperStep.applyEffect) {
76
- const namedWithVars = getNamedToVars(featureStep.action, this.world, featureStep);
77
- foundEffect = { stepperStep, namedWithVars };
78
- }
79
- }
80
- newFeatures.push(newFeature);
81
- }
82
- return newFeatures;
83
- }
84
60
  }
85
61
  //# sourceMappingURL=runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,11 @@ declare const Conformance: {
4
4
  steps: {
5
5
  must: {
6
6
  match: RegExp;
7
- action: (input: any) => Promise<import("../lib/defs.js").TNotOKActionResult>;
7
+ action: () => Promise<import("../lib/defs.js").TNotOKActionResult>;
8
8
  };
9
9
  };
10
10
  world?: import("../lib/defs.js").TWorld;
11
- close?(): void;
12
- endFeature?(): Promise<void>;
13
- onFailure?(result: import("../lib/defs.js").TStepResult, step: import("../lib/defs.js").TFeatureStep): Promise<void | import("../lib/interfaces/logger.js").TMessageContext>;
11
+ cycles?: import("../lib/defs.js").IStepperCycles;
14
12
  setWorld(world: import("../lib/defs.js").TWorld, steppers: AStepper[]): Promise<void>;
15
13
  getWorld(): import("../lib/defs.js").TWorld;
16
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"conformance.d.ts","sourceRoot":"","sources":["../../src/steps/conformance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,QAAA,MAAM,WAAW;;;;;gCAIW,GAAG;;;;;;;;;;CAG9B,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"conformance.d.ts","sourceRoot":"","sources":["../../src/steps/conformance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,QAAA,MAAM,WAAW;;;;;;;;;;;;;CAOhB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -4,7 +4,7 @@ const Conformance = class Conformance extends AStepper {
4
4
  steps = {
5
5
  must: {
6
6
  match: /(?!\n|. )\b([A-Z].*? must .*?\.)/,
7
- action: async (input) => actionNotOK('not implemented'),
7
+ action: async () => Promise.resolve(actionNotOK('not implemented')),
8
8
  },
9
9
  };
10
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"conformance.js","sourceRoot":"","sources":["../../src/steps/conformance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,WAAW,GAAG,MAAM,WAAY,SAAQ,QAAQ;IACpD,KAAK,GAAG;QACN,IAAI,EAAE;YACJ,KAAK,EAAE,kCAAkC;YACzC,MAAM,EAAE,KAAK,EAAE,KAAU,EAAE,EAAE,CAAC,WAAW,CAAC,iBAAiB,CAAC;SAC7D;KACF,CAAC;CACH,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"conformance.js","sourceRoot":"","sources":["../../src/steps/conformance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,WAAW,GAAG,MAAM,WAAY,SAAQ,QAAQ;IACrD,KAAK,GAAG;QACP,IAAI,EAAE;YACL,KAAK,EAAE,kCAAkC;YACzC,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;SACnE;KACD,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -16,9 +16,7 @@ declare const Credentials: {
16
16
  };
17
17
  };
18
18
  world?: import("../lib/defs.js").TWorld;
19
- close?(): void;
20
- endFeature?(): Promise<void>;
21
- onFailure?(result: import("../lib/defs.js").TStepResult, step: import("../lib/defs.js").TFeatureStep): Promise<void | import("../lib/interfaces/logger.js").TMessageContext>;
19
+ cycles?: import("../lib/defs.js").IStepperCycles;
22
20
  setWorld(world: import("../lib/defs.js").TWorld, steppers: AStepper[]): Promise<void>;
23
21
  getWorld(): import("../lib/defs.js").TWorld;
24
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/steps/credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtD,eAAO,MAAM,IAAI,QAAS,MAAM,WAAoB,CAAC;AAErD,QAAA,MAAM,WAAW;;oCACa,MAAM;oCAKN,MAAM;wBAYlB,MAAM;;;;mCAOO,MAAM;;;;mCAQN,MAAM;;;;;;;;;;CAMpC,CAAC;AACF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/steps/credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtD,eAAO,MAAM,IAAI,GAAI,KAAK,MAAM,WAAoB,CAAC;AAErD,QAAA,MAAM,WAAW;;oCACa,MAAM;oCAKN,MAAM;wBAYlB,MAAM;;;;mCAOO,MAAM;;;;mCAQN,MAAM;;;;;;;;CAMpC,CAAC;AACF,eAAe,WAAW,CAAC"}
@@ -19,17 +19,17 @@ const Credentials = class Credentials extends AStepper {
19
19
  }
20
20
  steps = {
21
21
  hasRandomUsername: {
22
- match: /^When I have a valid random username <(?<name>.+)>/,
22
+ match: /^have a valid random username <(?<name>.+)>/,
23
23
  action: async ({ name }) => {
24
24
  this.generateRandomUsername(name);
25
- return OK;
25
+ return Promise.resolve(OK);
26
26
  },
27
27
  },
28
28
  hasRandomPassword: {
29
- match: /^When I have a valid random password <(?<name>.+)>/,
29
+ match: /^have a valid random password <(?<name>.+)>/,
30
30
  action: async ({ name }) => {
31
31
  this.generateRandomPassword(name);
32
- return OK;
32
+ return Promise.resolve(OK);
33
33
  },
34
34
  },
35
35
  };