@haibun/core 1.2.0 → 1.2.4

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 (76) hide show
  1. package/build/lib/Logger.d.ts.map +1 -1
  2. package/build/lib/Logger.js +4 -0
  3. package/build/lib/Logger.js.map +1 -1
  4. package/build/lib/defs.d.ts +43 -15
  5. package/build/lib/defs.d.ts.map +1 -1
  6. package/build/lib/defs.js +13 -1
  7. package/build/lib/defs.js.map +1 -1
  8. package/build/lib/domain.d.ts +3 -3
  9. package/build/lib/domain.d.ts.map +1 -1
  10. package/build/lib/domain.js.map +1 -1
  11. package/build/lib/features.test.js +5 -4
  12. package/build/lib/features.test.js.map +1 -1
  13. package/build/lib/namedVars.js +2 -2
  14. package/build/lib/namedVars.js.map +1 -1
  15. package/build/lib/namedVars.test.js +2 -1
  16. package/build/lib/namedVars.test.js.map +1 -1
  17. package/build/lib/run-with-options.d.ts +20 -0
  18. package/build/lib/run-with-options.d.ts.map +1 -0
  19. package/build/lib/run-with-options.js +90 -0
  20. package/build/lib/run-with-options.js.map +1 -0
  21. package/build/lib/run.d.ts +16 -11
  22. package/build/lib/run.d.ts.map +1 -1
  23. package/build/lib/run.domains.test.js +9 -8
  24. package/build/lib/run.domains.test.js.map +1 -1
  25. package/build/lib/run.js +18 -11
  26. package/build/lib/run.js.map +1 -1
  27. package/build/lib/run.test.js +18 -25
  28. package/build/lib/run.test.js.map +1 -1
  29. package/build/lib/test/TestSteps.d.ts +43 -2
  30. package/build/lib/test/TestSteps.d.ts.map +1 -1
  31. package/build/lib/test/TestSteps.js +5 -4
  32. package/build/lib/test/TestSteps.js.map +1 -1
  33. package/build/lib/test/TestStepsWithDomain.d.ts +23 -2
  34. package/build/lib/test/TestStepsWithDomain.d.ts.map +1 -1
  35. package/build/lib/test/TestStepsWithDomain.js +4 -3
  36. package/build/lib/test/TestStepsWithDomain.js.map +1 -1
  37. package/build/lib/test/TestStepsWithOptions.d.ts +24 -2
  38. package/build/lib/test/TestStepsWithOptions.d.ts.map +1 -1
  39. package/build/lib/test/TestStepsWithOptions.js +6 -5
  40. package/build/lib/test/TestStepsWithOptions.js.map +1 -1
  41. package/build/lib/test/lib.d.ts +7 -9
  42. package/build/lib/test/lib.d.ts.map +1 -1
  43. package/build/lib/test/lib.js +9 -13
  44. package/build/lib/test/lib.js.map +1 -1
  45. package/build/lib/util.d.ts +31 -27
  46. package/build/lib/util.d.ts.map +1 -1
  47. package/build/lib/util.js +51 -106
  48. package/build/lib/util.js.map +1 -1
  49. package/build/lib/util.test.js +19 -48
  50. package/build/lib/util.test.js.map +1 -1
  51. package/build/phases/Executor.d.ts +4 -4
  52. package/build/phases/Executor.d.ts.map +1 -1
  53. package/build/phases/Executor.js +11 -6
  54. package/build/phases/Executor.js.map +1 -1
  55. package/build/phases/Resolver.d.ts +3 -3
  56. package/build/phases/Resolver.d.ts.map +1 -1
  57. package/build/phases/Resolver.js.map +1 -1
  58. package/build/phases/Resolver.test.js +2 -1
  59. package/build/phases/Resolver.test.js.map +1 -1
  60. package/build/steps/conformance.d.ts +16 -2
  61. package/build/steps/conformance.d.ts.map +1 -1
  62. package/build/steps/conformance.js +3 -1
  63. package/build/steps/conformance.js.map +1 -1
  64. package/build/steps/credentials.d.ts +24 -2
  65. package/build/steps/credentials.d.ts.map +1 -1
  66. package/build/steps/credentials.js +8 -8
  67. package/build/steps/credentials.js.map +1 -1
  68. package/build/steps/haibun.d.ts +37 -2
  69. package/build/steps/haibun.d.ts.map +1 -1
  70. package/build/steps/haibun.js +12 -5
  71. package/build/steps/haibun.js.map +1 -1
  72. package/build/steps/vars.d.ts +73 -2
  73. package/build/steps/vars.d.ts.map +1 -1
  74. package/build/steps/vars.js +12 -13
  75. package/build/steps/vars.js.map +1 -1
  76. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/lib/test/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/lib/test/lib.ts"],"names":[],"mappings":"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"}
@@ -1,49 +1,41 @@
1
- import { WorldContext } from './contexts';
2
- import { IStepper, IExtensionConstructor, IHasOptions, TFeature, TNotOKActionResult, TOKActionResult, TOptionValue, TResult, TSpecl, TWorld, TOptions, TProtoOptions, TRuntime, TActionResultTopics, TActionResult, TFound, TTag } from './defs';
1
+ import { IHasOptions, TFeature, TNotOKActionResult, TOKActionResult, TOptionValue, TResult, TSpecl, TWorld, TOptions, TRuntime, TActionResultTopics, TActionResult, TFound, TTag, AStepper, TExtraOptions } from './defs';
3
2
  export declare function use(module: string): Promise<any>;
4
- export declare function resultOutput(type: string | undefined, result: TResult, shared: WorldContext): Promise<any>;
3
+ export declare function resultOutput(type: string | undefined, result: TResult): Promise<any>;
5
4
  export declare function actionNotOK(message: string, also?: {
6
5
  topics?: TActionResultTopics;
7
6
  score?: number;
8
7
  }): TNotOKActionResult;
9
8
  export declare function actionOK(topics?: TActionResultTopics): TOKActionResult;
10
- export declare function getStepper(s: string): Promise<IExtensionConstructor>;
11
- export declare function getSteppers({ steppers, world, addSteppers }: {
9
+ export declare function getStepper(s: string): Promise<AStepper>;
10
+ export declare function getSteppers({ steppers, addSteppers }: {
12
11
  steppers: string[];
13
- world: TWorld;
14
- addSteppers?: IExtensionConstructor[];
15
- }): Promise<IStepper[]>;
12
+ addSteppers?: typeof AStepper[];
13
+ }): Promise<AStepper[]>;
16
14
  export declare function debase(base: string, features: TFeature[]): {
17
15
  path: string;
18
16
  type: string;
19
17
  name: string;
20
18
  content: string;
21
19
  }[];
22
- export declare function recurse(dir: string, type: string, filter?: RegExp | string | undefined): TFeature[];
20
+ export declare function recurse(dir: string, type: string, featureFilter?: string[] | undefined): TFeature[];
21
+ export declare function shouldProcess(file: string, type: undefined | string, featureFilter: string[] | undefined): boolean;
23
22
  export declare function getDefaultOptions(): TSpecl;
24
23
  export declare function getOptionsOrDefault(base?: string): TSpecl;
25
24
  export declare function getActionable(value: string): string;
26
- export declare function describeSteppers(steppers: IStepper[]): string;
25
+ export declare function describeSteppers(steppers: AStepper[]): string;
27
26
  export declare function isLowerCase(str: string): boolean | "";
28
27
  export declare const sleep: (ms: number) => Promise<unknown>;
29
- declare type TEnv = {
30
- [name: string]: string | undefined;
31
- };
32
- export declare function processEnv(env: TEnv, options: TOptions): {
33
- protoOptions: TProtoOptions;
34
- errors: string[];
35
- };
36
- export declare function applyEnvCollections(value: string, protoOptions: TProtoOptions): void;
37
- export declare function applyExtraOptions(protoOptions: TProtoOptions, steppers: IStepper[], world: TWorld): void;
38
- export declare function getPre(stepper: IStepper): string;
39
- export declare function getStepperOptions(key: string, value: string, steppers: (IStepper & IHasOptions)[]): TOptionValue | void;
40
- export declare function getStepperOption(stepper: IStepper, name: string, options: TOptions): TOptionValue;
28
+ export declare function applyExtraOptions(extraOptions: TExtraOptions, steppers: AStepper[], world: TWorld): void;
29
+ export declare function getPre(stepper: AStepper): string;
30
+ export declare function getStepperOptions(key: string, value: string, steppers: (AStepper & IHasOptions)[]): TOptionValue | void;
31
+ export declare function getStepperOptionName(stepper: AStepper, name: string): string;
32
+ export declare function getStepperOption(stepper: AStepper, name: string, options: TOptions): TOptionValue;
41
33
  export declare function ensureDirectory(base: string, folder: string): void;
42
- export declare function findStepper<Type>(steppers: IStepper[], name: string): Type;
34
+ export declare function findStepper<Type>(steppers: AStepper[], name: string): Type;
43
35
  export declare function getFromRuntime<Type>(runtime: TRuntime, name: string): Type;
44
36
  export declare function applyResShouldContinue(world: any, res: Partial<TActionResult>, vstep: TFound): boolean;
45
- export declare function writeTraceFile(tag: TTag, result: TResult): void;
46
- export declare function getCaptureDir(tag: TTag, app: string, fn?: string): string;
37
+ export declare function writeTraceFile(world: TWorld, result: TResult): void;
38
+ export declare function getCaptureDir(world: TWorld, app: string, fn?: string): string;
47
39
  export declare const getRunTag: (sequence: number, loop: number, member: number, params: any, trace: boolean) => {
48
40
  sequence: number;
49
41
  loop: number;
@@ -51,7 +43,19 @@ export declare const getRunTag: (sequence: number, loop: number, member: number,
51
43
  params: any;
52
44
  trace: boolean;
53
45
  };
54
- export declare const getIntOrError: (val: any) => number;
55
46
  export declare const descTag: (tag: TTag) => string;
56
- export {};
47
+ export declare const intOrError: (val: string) => {
48
+ error: string;
49
+ result?: undefined;
50
+ } | {
51
+ result: number;
52
+ error?: undefined;
53
+ };
54
+ export declare const boolOrError: (val: string) => {
55
+ error: string;
56
+ result?: undefined;
57
+ } | {
58
+ result: boolean;
59
+ error?: undefined;
60
+ };
57
61
  //# sourceMappingURL=util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/lib/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/lib/util.ts"],"names":[],"mappings":"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"}
package/build/lib/util.js CHANGED
@@ -22,10 +22,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
22
22
  return (mod && mod.__esModule) ? mod : { "default": mod };
23
23
  };
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.descTag = exports.getIntOrError = exports.getRunTag = exports.getCaptureDir = exports.writeTraceFile = exports.applyResShouldContinue = exports.getFromRuntime = exports.findStepper = exports.ensureDirectory = exports.getStepperOption = exports.getStepperOptions = exports.getPre = exports.applyExtraOptions = exports.applyEnvCollections = exports.processEnv = exports.sleep = exports.isLowerCase = exports.describeSteppers = exports.getActionable = exports.getOptionsOrDefault = exports.getDefaultOptions = exports.recurse = exports.debase = exports.getSteppers = exports.getStepper = exports.actionOK = exports.actionNotOK = exports.resultOutput = exports.use = void 0;
25
+ exports.boolOrError = exports.intOrError = exports.descTag = exports.getRunTag = exports.getCaptureDir = exports.writeTraceFile = exports.applyResShouldContinue = exports.getFromRuntime = exports.findStepper = exports.ensureDirectory = exports.getStepperOption = exports.getStepperOptionName = exports.getStepperOptions = exports.getPre = exports.applyExtraOptions = exports.sleep = exports.isLowerCase = exports.describeSteppers = exports.getActionable = exports.getOptionsOrDefault = exports.getDefaultOptions = exports.shouldProcess = exports.recurse = exports.debase = exports.getSteppers = exports.getStepper = exports.actionOK = exports.actionNotOK = exports.resultOutput = exports.use = void 0;
26
26
  const fs_1 = require("fs");
27
27
  const path_1 = __importDefault(require("path"));
28
- const defs_1 = require("./defs");
29
28
  const features_1 = require("./features");
30
29
  // FIXME tired of wrestling with ts/import issues
31
30
  async function use(module) {
@@ -40,12 +39,12 @@ async function use(module) {
40
39
  }
41
40
  }
42
41
  exports.use = use;
43
- async function resultOutput(type, result, shared) {
42
+ async function resultOutput(type, result) {
44
43
  if (type) {
45
44
  const AnOut = await use(type);
46
45
  const out = new AnOut();
47
46
  if (out) {
48
- const res = await out.getOutput(result, {});
47
+ const res = await out.writeOutput(result, {});
49
48
  return res;
50
49
  }
51
50
  }
@@ -79,12 +78,12 @@ async function getStepper(s) {
79
78
  }
80
79
  }
81
80
  exports.getStepper = getStepper;
82
- async function getSteppers({ steppers = [], world, addSteppers = [] }) {
81
+ async function getSteppers({ steppers = [], addSteppers = [] }) {
83
82
  const allSteppers = [];
84
83
  for (const s of steppers) {
85
84
  const S = await getStepper(s);
86
85
  try {
87
- const stepper = new S(world);
86
+ const stepper = new S();
88
87
  allSteppers.push(stepper);
89
88
  }
90
89
  catch (e) {
@@ -93,7 +92,7 @@ async function getSteppers({ steppers = [], world, addSteppers = [] }) {
93
92
  }
94
93
  }
95
94
  for (const S of addSteppers) {
96
- const stepper = new S(world);
95
+ const stepper = new S();
97
96
  allSteppers.push(stepper);
98
97
  }
99
98
  return allSteppers;
@@ -112,21 +111,27 @@ function debase(base, features) {
112
111
  return features.map((f) => ({ ...f, path: f.path.replace(base, '') }));
113
112
  }
114
113
  exports.debase = debase;
115
- function recurse(dir, type, filter = undefined) {
114
+ function recurse(dir, type, featureFilter = undefined) {
116
115
  const files = fs_1.readdirSync(dir);
117
116
  let all = [];
118
117
  for (const file of files) {
119
118
  const here = `${dir}/${file}`;
120
119
  if (fs_1.statSync(here).isDirectory()) {
121
- all = all.concat(recurse(here, type, filter));
120
+ all = all.concat(recurse(here, type, featureFilter));
122
121
  }
123
- else if ((!type || file.endsWith(`.${type}`)) && !!(!filter || here.match(filter))) {
122
+ else if (shouldProcess(here, type, featureFilter)) {
124
123
  all.push(features_1.withNameType(here, fs_1.readFileSync(here, 'utf-8')));
125
124
  }
126
125
  }
127
126
  return all;
128
127
  }
129
128
  exports.recurse = recurse;
129
+ function shouldProcess(file, type, featureFilter) {
130
+ const isType = (!type || file.endsWith(`.${type}`));
131
+ const matchesFilter = featureFilter ? !!(featureFilter.find(f => file.match(f))) : true;
132
+ return (isType && matchesFilter);
133
+ }
134
+ exports.shouldProcess = shouldProcess;
130
135
  function getDefaultOptions() {
131
136
  return {
132
137
  mode: 'all',
@@ -160,9 +165,8 @@ function getActionable(value) {
160
165
  }
161
166
  exports.getActionable = getActionable;
162
167
  function describeSteppers(steppers) {
163
- return steppers
164
- .map((stepper) => {
165
- return Object.keys(stepper.steps).map((name) => {
168
+ return steppers?.map((stepper) => {
169
+ return stepper.steps && Object.keys(stepper?.steps).map((name) => {
166
170
  return `${stepper.constructor.name}:${name}`;
167
171
  });
168
172
  })
@@ -176,96 +180,24 @@ function isLowerCase(str) {
176
180
  exports.isLowerCase = isLowerCase;
177
181
  const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
178
182
  exports.sleep = sleep;
179
- function processEnv(env, options) {
180
- const protoOptions = { options: { ...options, env: {} }, extraOptions: {} };
181
- let errors = [];
182
- const pfx = `${defs_1.HAIBUN}_`;
183
- const setIntOrError = (val, what) => val.match(/[^\d+]/) ? errors.push(`${what}: integer`) : protoOptions.options[what.toLowerCase()] = parseInt(val, 10);
184
- Object.entries(env)
185
- .filter(([k]) => k.startsWith(pfx))
186
- .map(([k]) => {
187
- const value = env[k];
188
- const opt = k.replace(pfx, '');
189
- if (opt === 'CONTINUE_ON_ERROR_IF_SCORED' && value !== undefined) {
190
- protoOptions.options.continueOnErrorIfScored = true;
191
- }
192
- else if (opt === 'SPLIT_SHARED' && value !== undefined) {
193
- const [what, s] = value.split('=');
194
- if (!s) {
195
- errors.push(` ${pfx}SPLIT_SHARED=var=option1,option2`);
196
- }
197
- else {
198
- protoOptions.options.splits = s.split(',').map((w) => ({ [what]: w }));
199
- }
200
- }
201
- else if (['STEP_DELAY', 'LOOPS', 'LOOP_START', 'LOOP_INC', 'MEMBERS'].includes(opt)) {
202
- setIntOrError(value, opt);
203
- }
204
- else if (opt === 'TRACE') {
205
- protoOptions.options.trace = true;
206
- }
207
- else if (opt === 'CLI') {
208
- protoOptions.options.cli = true;
209
- }
210
- else if (opt === 'STAY') {
211
- protoOptions.options.stay = value;
212
- }
213
- else if (opt === 'LOG_FOLLOW') {
214
- protoOptions.options.logFollow = value;
215
- }
216
- else if (opt === 'LOG_LEVEL') {
217
- protoOptions.options.logLevel = value;
218
- }
219
- else if (opt === 'ENV') {
220
- const pairs = value?.split(',');
221
- for (const pair in pairs) {
222
- const [k, v] = pair.split(',').map(i => i.trim());
223
- if (protoOptions.options.env[k]) {
224
- throw Error(`ENV ${k} already exists`);
225
- }
226
- protoOptions.options.env[k] = v;
227
- }
228
- }
229
- else if (opt === 'ENVC') {
230
- applyEnvCollections(value, protoOptions);
231
- }
232
- else {
233
- protoOptions.extraOptions[k] = value;
234
- }
235
- });
236
- return { protoOptions, errors };
237
- }
238
- exports.processEnv = processEnv;
239
- function applyEnvCollections(value, protoOptions) {
240
- const pairs = new Set(value?.split(',').map(a => a.split('=')[0]));
241
- for (const pair of pairs) {
242
- const [k] = Array.from(new Set(pair.split('=')));
243
- if (protoOptions.options.env[k]) {
244
- throw Error(`ENVC ${k} already exists`);
245
- }
246
- protoOptions.options.env[k] = [];
247
- }
248
- for (const pair of value?.split(',')) {
249
- const [k, v] = pair.split('=');
250
- protoOptions.options.env[k].push(v);
251
- }
252
- }
253
- exports.applyEnvCollections = applyEnvCollections;
254
183
  // has side effects
255
- function applyExtraOptions(protoOptions, steppers, world) {
256
- if (!protoOptions.extraOptions) {
184
+ function applyExtraOptions(extraOptions, steppers, world) {
185
+ if (!extraOptions) {
257
186
  return;
258
187
  }
259
- Object.entries(protoOptions.extraOptions).map(([k, v]) => {
188
+ Object.entries(extraOptions).map(([k, v]) => {
260
189
  const conc = getStepperOptions(k, v, steppers);
261
190
  if (conc === undefined) {
262
191
  throw Error(`no option ${k}`);
263
192
  }
264
- delete protoOptions.extraOptions[k];
265
- world.options[k] = conc;
193
+ delete extraOptions[k];
194
+ world.options[k] = conc.result;
266
195
  });
267
- if (Object.keys(protoOptions.extraOptions).length > 0) {
268
- throw Error(`no options provided for ${protoOptions.extraOptions}`);
196
+ if (Object.keys(extraOptions).length > 0) {
197
+ throw Error(`no options provided for ${extraOptions}`);
198
+ }
199
+ for (const stepper of steppers) {
200
+ stepper.setWorld && stepper.setWorld(world);
269
201
  }
270
202
  }
271
203
  exports.applyExtraOptions = applyExtraOptions;
@@ -283,8 +215,12 @@ function getStepperOptions(key, value, steppers) {
283
215
  }
284
216
  }
285
217
  exports.getStepperOptions = getStepperOptions;
218
+ function getStepperOptionName(stepper, name) {
219
+ return getPre(stepper) + name;
220
+ }
221
+ exports.getStepperOptionName = getStepperOptionName;
286
222
  function getStepperOption(stepper, name, options) {
287
- const key = getPre(stepper) + name;
223
+ const key = getStepperOptionName(stepper, name);
288
224
  return options[key];
289
225
  }
290
226
  exports.getStepperOption = getStepperOption;
@@ -327,12 +263,13 @@ function applyResShouldContinue(world, res, vstep) {
327
263
  return false;
328
264
  }
329
265
  exports.applyResShouldContinue = applyResShouldContinue;
330
- function writeTraceFile(tag, result) {
331
- fs_1.writeFileSync(getCaptureDir(tag, 'trace', 'trace.json'), JSON.stringify(result, null, 2));
266
+ function writeTraceFile(world, result) {
267
+ fs_1.writeFileSync(getCaptureDir(world, 'trace', 'trace.json'), JSON.stringify(result, null, 2));
332
268
  }
333
269
  exports.writeTraceFile = writeTraceFile;
334
- function getCaptureDir(tag, app, fn) {
335
- const dir = [process.cwd(), 'capture', tag.sequence, app].join('/');
270
+ function getCaptureDir(world, app, fn) {
271
+ const capture = world.options.CAPTURE_DIR || 'capture';
272
+ const dir = [process.cwd(), capture, world.tag.sequence, app].join('/');
336
273
  if (!fs_1.existsSync(dir)) {
337
274
  try {
338
275
  fs_1.mkdirSync(dir, { recursive: true });
@@ -349,13 +286,21 @@ function getCaptureDir(tag, app, fn) {
349
286
  exports.getCaptureDir = getCaptureDir;
350
287
  const getRunTag = (sequence, loop, member, params, trace) => ({ sequence, loop, member, params, trace });
351
288
  exports.getRunTag = getRunTag;
352
- const getIntOrError = (val) => {
289
+ const descTag = (tag) => ` @${tag.sequence} (${tag.loop}x${tag.member})`;
290
+ exports.descTag = descTag;
291
+ const intOrError = (val) => {
353
292
  if (val.match(/[^\d+]/)) {
354
- throw Error(`${val} is not an integer`);
293
+ return { error: `${val} is not an integer` };
355
294
  }
356
- return parseInt(val, 10);
295
+ return { result: parseInt(val, 10) };
357
296
  };
358
- exports.getIntOrError = getIntOrError;
359
- const descTag = (tag) => ` @${tag.sequence} (${tag.loop}x${tag.member})`;
360
- exports.descTag = descTag;
297
+ exports.intOrError = intOrError;
298
+ const boolOrError = (val) => {
299
+ if (val !== 'false' && val !== 'true') {
300
+ return { error: `${val} is not true or false` };
301
+ }
302
+ ;
303
+ return { result: val === 'true' };
304
+ };
305
+ exports.boolOrError = boolOrError;
361
306
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/lib/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/lib/util.ts"],"names":[],"mappings":"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"}
@@ -29,10 +29,10 @@ const TestStepsWithOptions_1 = __importDefault(require("./test/TestStepsWithOpti
29
29
  const features_1 = require("./features");
30
30
  describe('output', () => {
31
31
  it('resultOutput default', async () => {
32
- const { world } = lib_1.getDefaultWorld(0);
33
- const { result } = await lib_1.testRun('/test/projects/specl/out-default', [TestSteps_1.default], world);
32
+ const features = [{ path: '/features/test.feature', content: `When I have a test\nThen the test can fail` }, { path: '/features/test.feature', content: `When I have a test\nThen the test should pass` }];
33
+ const { result, world } = await lib_1.testWithDefaults(features, [TestSteps_1.default]);
34
34
  expect(result.ok).toBe(false);
35
- const output = await util.resultOutput(undefined, result, world.shared);
35
+ const output = await util.resultOutput(undefined, result);
36
36
  expect(typeof output).toBe('object');
37
37
  expect(result.results?.length).toBe(2);
38
38
  });
@@ -42,50 +42,21 @@ describe('isLowerCase', () => {
42
42
  expect(util.isLowerCase('A')).toBe(false);
43
43
  expect(util.isLowerCase('0')).toBe(false);
44
44
  });
45
- describe('processEnv', () => {
46
- it('carries extra options', () => {
47
- const specl = util.getDefaultOptions();
48
- const { protoOptions } = util.processEnv({ HAIBUN_TEST: 'true' }, specl.options);
49
- expect(protoOptions.extraOptions['HAIBUN_TEST']).toBeDefined();
50
- });
51
- it('split_shared incorrect message', () => {
52
- const specl = util.getDefaultOptions();
53
- const { errors } = util.processEnv({ HAIBUN_SPLIT_SHARED: '1,2' }, specl.options);
54
- expect(errors.length).toBe(1);
55
- });
56
- it('processes split_shared', () => {
57
- const specl = util.getDefaultOptions();
58
- const { splits } = util.processEnv({ HAIBUN_SPLIT_SHARED: 'foo=1,2' }, specl.options).protoOptions.options;
59
- expect(splits).toEqual([{ foo: '1' }, { foo: '2' }]);
60
- });
61
- it('assigns int', () => {
62
- const specl = util.getDefaultOptions();
63
- const { options } = util.processEnv({ HAIBUN_LOOPS: '1' }, specl.options).protoOptions;
64
- expect(options.loops).toBe(1);
65
- });
66
- it('errors for string passed as int', () => {
67
- const specl = util.getDefaultOptions();
68
- const { errors } = util.processEnv({ HAIBUN_LOOPS: '1.2' }, specl.options);
69
- expect(errors.length).toBe(1);
70
- });
71
- });
72
45
  describe('getStepperOptions', () => {
73
46
  it('finds stepper options', async () => {
74
- const steppers = await util.getSteppers({ steppers: [], addSteppers: [TestStepsWithOptions_1.default], ...lib_1.getDefaultWorld(0) });
47
+ const steppers = await util.getSteppers({ steppers: [], addSteppers: [TestStepsWithOptions_1.default], });
75
48
  const conc = util.getStepperOptions(lib_1.HAIBUN_O_TESTSTEPSWITHOPTIONS_EXISTS, 'true', steppers);
76
49
  expect(conc).toBeDefined();
77
50
  });
78
51
  it('fills extra', async () => {
79
52
  const { world } = lib_1.getDefaultWorld(0);
80
- const specl = { ...util.getDefaultOptions(), extraOptions: { [lib_1.HAIBUN_O_TESTSTEPSWITHOPTIONS_EXISTS]: 'true' } };
81
- const steppers = await util.getSteppers({ steppers: [], addSteppers: [TestStepsWithOptions_1.default], ...lib_1.getDefaultWorld(0) });
82
- util.applyExtraOptions(specl, steppers, world);
83
- expect(world.options[lib_1.HAIBUN_O_TESTSTEPSWITHOPTIONS_EXISTS]).toBe(42);
53
+ const steppers = await util.getSteppers({ steppers: [], addSteppers: [TestStepsWithOptions_1.default], });
54
+ util.applyExtraOptions({ [lib_1.HAIBUN_O_TESTSTEPSWITHOPTIONS_EXISTS]: 'true' }, steppers, world);
55
+ expect(world.options[lib_1.HAIBUN_O_TESTSTEPSWITHOPTIONS_EXISTS]).toEqual(42);
84
56
  });
85
57
  it('throws for unfilled extra', async () => {
86
58
  const { world } = lib_1.getDefaultWorld(0);
87
- const specl = { ...util.getDefaultOptions(), extraOptions: { HAIBUN_NE: 'true' } };
88
- expect(() => util.applyExtraOptions(specl, [], world)).toThrow();
59
+ expect(() => util.applyExtraOptions({ HAIBUN_NE: 'true' }, [], world)).toThrow();
89
60
  });
90
61
  });
91
62
  describe('getType', () => {
@@ -96,18 +67,18 @@ describe('getType', () => {
96
67
  expect(features_1.withNameType('file.feature', '').type).toBe('feature');
97
68
  });
98
69
  });
99
- describe('applyEnvCollections', () => {
100
- it('creates pairs', () => {
101
- const p = { options: { env: {} }, extraOptions: {} };
102
- util.applyEnvCollections('a=1,b=2,a=3,b=4', p);
103
- expect(p.options.env).toEqual({
104
- a: ["1", "3"],
105
- b: ["2", "4"]
106
- });
70
+ describe('shouldProcess', () => {
71
+ it('should process no type & filter', () => {
72
+ expect(util.shouldProcess('hi.feature', undefined, undefined)).toBe(true);
73
+ });
74
+ it('should process matching filter', () => {
75
+ expect(util.shouldProcess('hi.feature', undefined, ['hi'])).toBe(true);
76
+ });
77
+ it('should not process wrong type', () => {
78
+ expect(util.shouldProcess('hi.feature', 'wrong', undefined)).toBe(false);
107
79
  });
108
- it('prevents collision', () => {
109
- const p = { options: { env: { a: 1 } }, extraOptions: {} };
110
- expect(() => util.applyEnvCollections('a=1', p)).toThrow();
80
+ it('should not process wrong filter', () => {
81
+ expect(util.shouldProcess('hi.feature', undefined, ['wrong'])).toBe(false);
111
82
  });
112
83
  });
113
84
  //# sourceMappingURL=util.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.test.js","sourceRoot":"","sources":["../../src/lib/util.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.test.js","sourceRoot":"","sources":["../../src/lib/util.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,oCAAqG;AACrG,iEAAyC;AACzC,uFAA+D;AAC/D,yCAA0C;AAE1C,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,QAAQ,GAAG,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,4CAA4C,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,+CAA+C,EAAE,CAAC,CAAC;QAC3M,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,sBAAgB,CAAC,QAAQ,EAAE,CAAC,mBAAS,CAAC,CAAC,CAAC;QAExE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,CAAC,OAAO,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,8BAAoB,CAAC,GAAG,CAAC,CAAC;QAChG,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,0CAAoC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC5F,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE;QAC3B,MAAM,EAAE,KAAK,EAAE,GAAG,qBAAe,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,8BAAoB,CAAC,GAAG,CAAC,CAAC;QAChG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,0CAAoC,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAE5F,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,0CAAoC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,EAAE,KAAK,EAAE,GAAG,qBAAe,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACnF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;QACtB,MAAM,CAAC,uBAAY,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;QACvB,MAAM,CAAC,uBAAY,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,13 +1,13 @@
1
- import { IStepper, TVStep, TResolvedFeature, TResult, TStepResult, TFeatureResult, TWorld } from '../lib/defs';
1
+ import { TVStep, TResolvedFeature, TResult, TStepResult, TFeatureResult, TWorld, AStepper } from '../lib/defs';
2
2
  export declare class Executor {
3
- steppers: IStepper[];
3
+ steppers: AStepper[];
4
4
  world: TWorld;
5
- constructor(steppers: IStepper[], world: TWorld);
5
+ constructor(steppers: AStepper[], world: TWorld);
6
6
  execute(features: TResolvedFeature[]): Promise<TResult>;
7
7
  doFeature(feature: TResolvedFeature): Promise<TFeatureResult>;
8
8
  static doFeatureStep(vstep: TVStep, world: TWorld): Promise<TStepResult>;
9
9
  onFailure(result: TStepResult): Promise<void>;
10
- nextFeature(): Promise<void>;
10
+ endFeature(): Promise<void>;
11
11
  close(): Promise<void>;
12
12
  }
13
13
  //# sourceMappingURL=Executor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Executor.d.ts","sourceRoot":"","sources":["../../src/phases/Executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAiB,MAAM,EAA0C,MAAM,aAAa,CAAC;AAItK,qBAAa,QAAQ;IACnB,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;gBAEF,QAAQ,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM;IAKzC,OAAO,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAkBvD,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC;WA0BtD,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAiCxE,SAAS,CAAC,MAAM,EAAE,WAAW;IAS7B,WAAW;IAQX,KAAK;CAQZ"}
1
+ {"version":3,"file":"Executor.d.ts","sourceRoot":"","sources":["../../src/phases/Executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAiB,MAAM,EAA0C,QAAQ,EAAE,MAAM,aAAa,CAAC;AAItK,qBAAa,QAAQ;IACnB,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;gBAEF,QAAQ,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM;IAKzC,OAAO,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBvD,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC;WA0BtD,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAiCxE,SAAS,CAAC,MAAM,EAAE,WAAW;IAS7B,UAAU;IAQV,KAAK;CAQZ"}
@@ -10,6 +10,7 @@ class Executor {
10
10
  }
11
11
  async execute(features) {
12
12
  let ok = true;
13
+ const stay = (this.world.options.STAY === 'always');
13
14
  let featureResults = [];
14
15
  // FIXME
15
16
  this.world.shared.values._features = features;
@@ -19,9 +20,13 @@ class Executor {
19
20
  const featureResult = await this.doFeature(feature);
20
21
  ok = ok && featureResult.ok;
21
22
  featureResults.push(featureResult);
22
- await this.nextFeature();
23
+ if (!stay) {
24
+ await this.endFeature();
25
+ }
26
+ }
27
+ if (!stay) {
28
+ await this.close();
23
29
  }
24
- await this.close();
25
30
  return { ok, results: featureResults, tag: this.world.tag };
26
31
  }
27
32
  async doFeature(feature) {
@@ -89,11 +94,11 @@ class Executor {
89
94
  }
90
95
  }
91
96
  }
92
- async nextFeature() {
97
+ async endFeature() {
93
98
  for (const s of this.steppers) {
94
- if (s.nextFeature) {
95
- this.world.logger.debug(`nextFeature ${s.constructor.name}`);
96
- await s.nextFeature();
99
+ if (s.endFeature) {
100
+ this.world.logger.debug(`endFeature ${s.constructor.name}`);
101
+ await s.endFeature();
97
102
  }
98
103
  }
99
104
  }