@lynxwall/cucumber-tsflow 4.1.7 → 5.0.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 (76) hide show
  1. package/README.md +243 -71
  2. package/bin/cucumber-tsflow +1 -1
  3. package/lib/behave.js +25 -2
  4. package/lib/cli/argv-parser.d.ts +24 -0
  5. package/lib/cli/argv-parser.js +117 -0
  6. package/lib/cli/index.d.ts +22 -0
  7. package/lib/cli/index.js +105 -0
  8. package/lib/cli/load-configuration.d.ts +20 -0
  9. package/lib/cli/load-configuration.js +98 -0
  10. package/lib/cli/run.d.ts +1 -0
  11. package/lib/cli/run.js +54 -0
  12. package/lib/cucumber/binding-decorator.js +75 -87
  13. package/lib/cucumber/binding-registry.d.ts +8 -0
  14. package/lib/cucumber/binding-registry.js +62 -11
  15. package/lib/cucumber/hook-decorators.d.ts +30 -12
  16. package/lib/cucumber/hook-decorators.js +54 -23
  17. package/lib/cucumber/managed-scenario-context.js +6 -3
  18. package/lib/cucumber/message-collector.d.ts +55 -0
  19. package/lib/cucumber/message-collector.js +143 -0
  20. package/lib/cucumber/step-definition-decorators.js +15 -8
  21. package/lib/cucumber/utils.d.ts +16 -0
  22. package/lib/cucumber/utils.js +88 -0
  23. package/lib/esnode.d.ts +0 -0
  24. package/lib/esnode.js +20 -0
  25. package/lib/{tsflow.d.ts → esvue.d.ts} +0 -0
  26. package/lib/esvue.js +52 -0
  27. package/lib/formatters/behave-json-formatter.d.ts +36 -5
  28. package/lib/formatters/behave-json-formatter.js +36 -12
  29. package/lib/formatters/tsflow-snippet-syntax.js +44 -14
  30. package/lib/gherkin/configuration.d.ts +30 -0
  31. package/lib/gherkin/configuration.js +37 -0
  32. package/lib/gherkin/gherkin-feature.d.ts +28 -0
  33. package/lib/gherkin/gherkin-feature.js +345 -0
  34. package/lib/gherkin/gherkin-manager.d.ts +29 -0
  35. package/lib/gherkin/gherkin-manager.js +123 -0
  36. package/lib/gherkin/models.d.ts +45 -0
  37. package/lib/{tsflow.js → gherkin/models.js} +2 -4
  38. package/lib/snippet.d.ts +1 -0
  39. package/lib/snippet.js +38 -0
  40. package/lib/transpilers/esbuild-transpiler.d.ts +4 -0
  41. package/lib/transpilers/esbuild-transpiler.js +31 -0
  42. package/lib/transpilers/esbuild.d.ts +12 -0
  43. package/lib/transpilers/esbuild.js +66 -0
  44. package/lib/transpilers/vue-sfc/compiler.d.ts +7 -0
  45. package/lib/transpilers/vue-sfc/compiler.js +32 -0
  46. package/lib/transpilers/vue-sfc/index.d.ts +25 -0
  47. package/lib/transpilers/vue-sfc/index.js +62 -0
  48. package/lib/transpilers/vue-sfc/main.d.ts +8 -0
  49. package/lib/transpilers/vue-sfc/main.js +266 -0
  50. package/lib/transpilers/vue-sfc/script.d.ts +5 -0
  51. package/lib/transpilers/vue-sfc/script.js +53 -0
  52. package/lib/transpilers/vue-sfc/template.d.ts +8 -0
  53. package/lib/transpilers/vue-sfc/template.js +113 -0
  54. package/lib/transpilers/vue-sfc/types.d.ts +55 -0
  55. package/lib/transpilers/vue-sfc/types.js +13 -0
  56. package/lib/transpilers/vue-sfc/utils/descriptorCache.d.ts +13 -0
  57. package/lib/transpilers/vue-sfc/utils/descriptorCache.js +67 -0
  58. package/lib/transpilers/vue-sfc/utils/error.d.ts +3 -0
  59. package/lib/transpilers/vue-sfc/utils/error.js +33 -0
  60. package/lib/transpilers/vue-sfc/utils/query.d.ts +13 -0
  61. package/lib/transpilers/vue-sfc/utils/query.js +46 -0
  62. package/lib/tsnode.js +7 -9
  63. package/lib/tsvue.d.ts +1 -7
  64. package/lib/tsvue.js +47 -27
  65. package/lib/types/step-binding-flags.d.ts +9 -1
  66. package/lib/types/step-binding-flags.js +10 -2
  67. package/lib/types/step-binding.d.ts +8 -2
  68. package/lib/types/step-binding.js +1 -1
  69. package/lib/utils/helpers.d.ts +6 -0
  70. package/lib/utils/helpers.js +28 -0
  71. package/lib/utils/logger.js +25 -2
  72. package/lib/utils/our-callsite.d.ts +1 -0
  73. package/lib/utils/our-callsite.js +33 -4
  74. package/lib/version.d.ts +1 -0
  75. package/lib/version.js +16 -0
  76. package/package.json +20 -8
@@ -1,10 +1,13 @@
1
+ var __importDefault = (this && this.__importDefault) || function (mod) {
2
+ return (mod && mod.__esModule) ? mod : { "default": mod };
3
+ };
1
4
  (function (factory) {
2
5
  if (typeof module === "object" && typeof module.exports === "object") {
3
6
  var v = factory(require, exports);
4
7
  if (v !== undefined) module.exports = v;
5
8
  }
6
9
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "@cucumber/cucumber", "underscore", "../utils/logger", "./binding-registry", "./managed-scenario-context", "../types/step-binding"], factory);
10
+ define(["require", "exports", "@cucumber/cucumber", "./binding-registry", "../types/step-binding", "./message-collector"], factory);
8
11
  }
9
12
  })(function (require, exports) {
10
13
  "use strict";
@@ -12,16 +15,9 @@
12
15
  exports.binding = void 0;
13
16
  /* eslint-disable prefer-rest-params */
14
17
  const cucumber_1 = require("@cucumber/cucumber");
15
- const _ = require("underscore");
16
- const logger_1 = require("../utils/logger");
17
18
  const binding_registry_1 = require("./binding-registry");
18
- const managed_scenario_context_1 = require("./managed-scenario-context");
19
19
  const step_binding_1 = require("../types/step-binding");
20
- /**
21
- * The property name of the current scenario context that will be attached to the Cucumber
22
- * world object.
23
- */
24
- const SCENARIO_CONTEXT_SLOTNAME = '__SCENARIO_CONTEXT';
20
+ const message_collector_1 = __importDefault(require("./message-collector"));
25
21
  /**
26
22
  * A set of step patterns that have been registered with Cucumber.
27
23
  *
@@ -42,7 +38,6 @@
42
38
  */
43
39
  function binding(requiredContextTypes) {
44
40
  return (target) => {
45
- ensureSystemBindings();
46
41
  const bindingRegistry = binding_registry_1.BindingRegistry.instance;
47
42
  bindingRegistry.registerContextTypesForTarget(target.prototype, requiredContextTypes);
48
43
  const allBindings = [];
@@ -67,27 +62,6 @@
67
62
  };
68
63
  }
69
64
  exports.binding = binding;
70
- /**
71
- * Ensures that the 'cucumber-tsflow' hooks are bound to Cucumber.
72
- *
73
- * @param cucumber The cucumber object.
74
- *
75
- * The hooks will only be registered with Cucumber once regardless of which binding invokes the
76
- * function.
77
- */
78
- const ensureSystemBindings = _.once(() => {
79
- (0, cucumber_1.Before)(function (scenario) {
80
- var _a, _b, _c, _d;
81
- logger_1.default.trace('Setting up scenario context for scenario:', JSON.stringify(scenario));
82
- this[SCENARIO_CONTEXT_SLOTNAME] = new managed_scenario_context_1.ManagedScenarioContext((_b = (_a = scenario.pickle) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : '', _.map((_d = (_c = scenario.pickle) === null || _c === void 0 ? void 0 : _c.tags) !== null && _d !== void 0 ? _d : new Array(), (tag) => { var _a; return (_a = tag === null || tag === void 0 ? void 0 : tag.name) !== null && _a !== void 0 ? _a : ''; }));
83
- });
84
- (0, cucumber_1.After)(function () {
85
- const scenarioContext = this[SCENARIO_CONTEXT_SLOTNAME];
86
- if (scenarioContext) {
87
- scenarioContext.dispose();
88
- }
89
- });
90
- });
91
65
  /**
92
66
  * Binds a step definition to Cucumber.
93
67
  *
@@ -96,94 +70,108 @@
96
70
  function bindStepDefinition(stepBinding) {
97
71
  const bindingFunc = function () {
98
72
  const bindingRegistry = binding_registry_1.BindingRegistry.instance;
99
- const scenarioContext = this[SCENARIO_CONTEXT_SLOTNAME];
100
- const matchingStepBindings = bindingRegistry.getStepBindings(stepBinding.stepPattern.toString(), scenarioContext.scenarioInfo.tags);
101
- if (matchingStepBindings.length > 1) {
102
- let message = `Ambiguous step definitions for '${matchingStepBindings[0].stepPattern}':\n`;
103
- matchingStepBindings.forEach(matchingStepBinding => {
104
- message =
105
- message +
106
- `\t\t${String(matchingStepBinding.targetPropertyKey)} (${matchingStepBinding.callsite.toString()})\n`;
107
- });
108
- throw new Error(message);
73
+ const scenarioContext = message_collector_1.default.getStepScenarioContext(stepBinding);
74
+ if (scenarioContext) {
75
+ const matchingStepBindings = bindingRegistry.getStepBindings(stepBinding.stepPattern.toString(), scenarioContext.scenarioInfo.tags);
76
+ if (matchingStepBindings.length > 1) {
77
+ let message = `Ambiguous step definitions for '${matchingStepBindings[0].stepPattern}':\n`;
78
+ matchingStepBindings.forEach(matchingStepBinding => {
79
+ message =
80
+ message +
81
+ `\t\t${String(matchingStepBinding.targetPropertyKey)} (${matchingStepBinding.callsite.toString()})\n`;
82
+ });
83
+ throw new Error(message);
84
+ }
85
+ else if (matchingStepBindings.length === 0) {
86
+ throw new Error(`Cannot find matched step definition for ${stepBinding.stepPattern.toString()} with tag ${scenarioContext.scenarioInfo.tags} in binding registry`);
87
+ }
88
+ const contextTypes = bindingRegistry.getContextTypesForTarget(matchingStepBindings[0].targetPrototype);
89
+ const bindingObject = scenarioContext.getOrActivateBindingClass(matchingStepBindings[0].targetPrototype, contextTypes);
90
+ bindingObject._worldObj = this;
91
+ return bindingObject[matchingStepBindings[0].targetPropertyKey].apply(bindingObject, arguments);
109
92
  }
110
- else if (matchingStepBindings.length === 0) {
111
- throw new Error(`Cannot find matched step definition for ${stepBinding.stepPattern.toString()} with tag ${scenarioContext.scenarioInfo.tags} in binding registry`);
93
+ else {
94
+ throw new Error('Unable to find the Scenario Context for Hook!');
112
95
  }
113
- const contextTypes = bindingRegistry.getContextTypesForTarget(matchingStepBindings[0].targetPrototype);
114
- const bindingObject = scenarioContext.getOrActivateBindingClass(matchingStepBindings[0].targetPrototype, contextTypes);
115
- bindingObject._worldObj = this;
116
- return bindingObject[matchingStepBindings[0].targetPropertyKey].apply(bindingObject, arguments);
117
96
  };
118
97
  Object.defineProperty(bindingFunc, 'length', {
119
98
  value: stepBinding.argsLength
120
99
  });
100
+ // initialize options used on all step bindings
101
+ const options = {
102
+ cucumberKey: stepBinding.cucumberKey,
103
+ timeout: stepBinding.timeout,
104
+ wrapperOptions: stepBinding.wrapperOption
105
+ };
106
+ // call appropriate step
121
107
  if (stepBinding.bindingType & step_binding_1.StepBindingFlags.given) {
122
- (0, cucumber_1.Given)(stepBinding.stepPattern, {
123
- timeout: stepBinding.timeout,
124
- wrapperOptions: stepBinding.wrapperOption
125
- }, bindingFunc);
108
+ (0, cucumber_1.Given)(stepBinding.stepPattern, options, bindingFunc);
126
109
  }
127
110
  else if (stepBinding.bindingType & step_binding_1.StepBindingFlags.when) {
128
- (0, cucumber_1.When)(stepBinding.stepPattern, {
129
- timeout: stepBinding.timeout,
130
- wrapperOptions: stepBinding.wrapperOption
131
- }, bindingFunc);
111
+ (0, cucumber_1.When)(stepBinding.stepPattern, options, bindingFunc);
132
112
  }
133
113
  else if (stepBinding.bindingType & step_binding_1.StepBindingFlags.then) {
134
- (0, cucumber_1.Then)(stepBinding.stepPattern, {
135
- timeout: stepBinding.timeout,
136
- wrapperOptions: stepBinding.wrapperOption
137
- }, bindingFunc);
114
+ (0, cucumber_1.Then)(stepBinding.stepPattern, options, bindingFunc);
138
115
  }
139
116
  }
140
117
  /**
141
118
  * Binds a hook to Cucumber.
142
119
  *
143
- * @param cucumber The cucumber object.
144
120
  * @param stepBinding The [[StepBinding]] that represents a 'before', or 'after', step definition.
145
121
  */
146
122
  function bindHook(stepBinding) {
147
- const bindingFunc = function () {
148
- const scenarioContext = this[SCENARIO_CONTEXT_SLOTNAME];
149
- const contextTypes = binding_registry_1.BindingRegistry.instance.getContextTypesForTarget(stepBinding.targetPrototype);
150
- const bindingObject = scenarioContext.getOrActivateBindingClass(stepBinding.targetPrototype, contextTypes);
151
- bindingObject._worldObj = this;
152
- return bindingObject[stepBinding.targetPropertyKey].apply(bindingObject, arguments);
153
- };
154
- const globalBindFunc = () => {
155
- const targetPrototype = stepBinding.targetPrototype;
156
- const targetPropertyKey = stepBinding.targetPropertyKey;
157
- return targetPrototype[targetPropertyKey].apply();
158
- };
123
+ const bindingFunc = stepBinding.bindingType == step_binding_1.StepBindingFlags.beforeAll || stepBinding.bindingType == step_binding_1.StepBindingFlags.afterAll
124
+ ? function () {
125
+ return stepBinding.targetPrototype[stepBinding.targetPropertyKey].apply();
126
+ }
127
+ : function (arg) {
128
+ const scenarioContext = message_collector_1.default.getHookScenarioContext(arg);
129
+ if (scenarioContext) {
130
+ const contextTypes = binding_registry_1.BindingRegistry.instance.getContextTypesForTarget(stepBinding.targetPrototype);
131
+ const bindingObject = scenarioContext.getOrActivateBindingClass(stepBinding.targetPrototype, contextTypes);
132
+ bindingObject._worldObj = this;
133
+ return bindingObject[stepBinding.targetPropertyKey].apply(bindingObject, arguments);
134
+ }
135
+ else {
136
+ throw new Error('Unable to find the Scenario Context for Hook!');
137
+ }
138
+ };
159
139
  Object.defineProperty(bindingFunc, 'length', {
160
140
  value: stepBinding.argsLength
161
141
  });
162
- const tags = stepBinding.tag === binding_registry_1.DEFAULT_TAG ? undefined : stepBinding.tag;
142
+ const tags = stepBinding.tags === binding_registry_1.DEFAULT_TAG ? undefined : stepBinding.tags;
163
143
  switch (stepBinding.bindingType) {
164
- case step_binding_1.StepBindingFlags.before: {
165
- (0, cucumber_1.Before)({
166
- tags: tags,
167
- timeout: stepBinding.timeout
168
- }, bindingFunc);
144
+ case step_binding_1.StepBindingFlags.beforeAll: {
145
+ const options = { cucumberKey: stepBinding.cucumberKey, timeout: stepBinding.timeout };
146
+ (0, cucumber_1.BeforeAll)(options, bindingFunc);
169
147
  break;
170
148
  }
171
- case step_binding_1.StepBindingFlags.after: {
172
- (0, cucumber_1.After)({
173
- tags: tags,
174
- timeout: stepBinding.timeout
175
- }, bindingFunc);
149
+ case step_binding_1.StepBindingFlags.before: {
150
+ const options = { cucumberKey: stepBinding.cucumberKey, tags: tags, timeout: stepBinding.timeout };
151
+ (0, cucumber_1.Before)(options, bindingFunc);
176
152
  break;
177
153
  }
178
- case step_binding_1.StepBindingFlags.beforeAll: {
179
- (0, cucumber_1.BeforeAll)(globalBindFunc);
154
+ case step_binding_1.StepBindingFlags.beforeStep: {
155
+ const options = { cucumberKey: stepBinding.cucumberKey, tags: tags, timeout: stepBinding.timeout };
156
+ (0, cucumber_1.BeforeStep)(options, bindingFunc);
180
157
  break;
181
158
  }
182
159
  case step_binding_1.StepBindingFlags.afterAll: {
183
- (0, cucumber_1.AfterAll)(globalBindFunc);
160
+ const options = { cucumberKey: stepBinding.cucumberKey, timeout: stepBinding.timeout };
161
+ (0, cucumber_1.AfterAll)(options, bindingFunc);
162
+ break;
163
+ }
164
+ case step_binding_1.StepBindingFlags.after: {
165
+ const options = { cucumberKey: stepBinding.cucumberKey, tags: tags, timeout: stepBinding.timeout };
166
+ (0, cucumber_1.After)(options, bindingFunc);
167
+ break;
168
+ }
169
+ case step_binding_1.StepBindingFlags.afterStep: {
170
+ const options = { cucumberKey: stepBinding.cucumberKey, tags: tags, timeout: stepBinding.timeout };
171
+ (0, cucumber_1.AfterStep)(options, bindingFunc);
184
172
  break;
185
173
  }
186
174
  }
187
175
  }
188
176
  });
189
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluZGluZy1kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY3VjdW1iZXIvYmluZGluZy1kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0lBQUEsdUNBQXVDO0lBQ3ZDLGlEQUFrRztJQUdsRyxnQ0FBZ0M7SUFDaEMsNENBQXFDO0lBRXJDLHlEQUFrRTtJQUNsRSx5RUFBb0U7SUFDcEUsd0RBQXNFO0lBUXRFOzs7T0FHRztJQUNILE1BQU0seUJBQXlCLEdBQUcsb0JBQW9CLENBQUM7SUFFdkQ7Ozs7Ozs7T0FPRztJQUNILE1BQU0sd0JBQXdCLEdBQUcsSUFBSSxHQUFHLEVBQWlDLENBQUM7SUFFMUUsNEJBQTRCO0lBRTVCOzs7Ozs7O09BT0c7SUFDSCxTQUFnQixPQUFPLENBQUMsb0JBQW9DO1FBQzNELE9BQU8sQ0FBSSxNQUFtQyxFQUFFLEVBQUU7WUFDakQsb0JBQW9CLEVBQUUsQ0FBQztZQUN2QixNQUFNLGVBQWUsR0FBRyxrQ0FBZSxDQUFDLFFBQVEsQ0FBQztZQUNqRCxlQUFlLENBQUMsNkJBQTZCLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3RGLE1BQU0sV0FBVyxHQUFrQixFQUFFLENBQUM7WUFDdEMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLGVBQWUsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ3RFLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxlQUFlLENBQUMsd0JBQXdCLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFFaEYsV0FBVyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDakMsSUFBSSxXQUFXLENBQUMsV0FBVyxHQUFHLCtCQUFnQixDQUFDLGVBQWUsRUFBRTtvQkFDL0QsSUFBSSxnQkFBZ0IsR0FBRyx3QkFBd0IsQ0FBQyxHQUFHLENBQUMsV0FBVyxD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
177
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluZGluZy1kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY3VjdW1iZXIvYmluZGluZy1kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0lBQUEsdUNBQXVDO0lBQ3ZDLGlEQVc0QjtJQUU1Qix5REFBa0U7SUFDbEUsd0RBQXNFO0lBRXRFLDRFQUFtRDtJQUtuRDs7Ozs7OztPQU9HO0lBQ0gsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLEdBQUcsRUFBaUMsQ0FBQztJQUUxRSw0QkFBNEI7SUFFNUI7Ozs7Ozs7T0FPRztJQUNILFNBQWdCLE9BQU8sQ0FBQyxvQkFBb0M7UUFDM0QsT0FBTyxDQUFJLE1BQW1DLEVBQUUsRUFBRTtZQUNqRCxNQUFNLGVBQWUsR0FBRyxrQ0FBZSxDQUFDLFFBQVEsQ0FBQztZQUNqRCxlQUFlLENBQUMsNkJBQTZCLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3RGLE1BQU0sV0FBVyxHQUFrQixFQUFFLENBQUM7WUFDdEMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLGVBQWUsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ3RFLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxlQUFlLENBQUMsd0JBQXdCLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFFaEYsV0FBVyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDakMsSUFBSSxXQUFXLENBQUMsV0FBVyxHQUFHLCtCQUFnQixDQUFDLGVBQWUsRUFBRTtvQkFDL0QsSUFBSSxnQkFBZ0IsR0FBRyx3QkFBd0IsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO29CQUN4RixJQUFJLGdCQUFnQixLQUFLLFNBQVMsRUFBRTt3QkFDbkMsZ0JBQWdCLEdBQUcsK0JBQWdC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
@@ -1,3 +1,4 @@
1
+ import { ISupportCodeLibrary } from '@cucumber/cucumber/lib/support_code_library_builder/types';
1
2
  import { StepBinding } from '../types/step-binding';
2
3
  import { ContextType, StepPattern, TagName } from '../types/types';
3
4
  /**
@@ -62,6 +63,13 @@ export declare class BindingRegistry {
62
63
  * @returns An array of [[StepBinding]] that map to the given step pattern and set of tag names.
63
64
  */
64
65
  getStepBindings(stepPattern: StepPattern, tags: TagName[]): StepBinding[];
66
+ /**
67
+ * Updates the SupportCodeLibrary from Cucumber with
68
+ * callsite information from tsflow bindings
69
+ * @param library
70
+ * @returns
71
+ */
72
+ updateSupportCodeLibrary: (library: ISupportCodeLibrary) => ISupportCodeLibrary;
65
73
  /**
66
74
  * Maps an array of tag names to an array of associated step bindings.
67
75
  *
@@ -1,16 +1,20 @@
1
+ var __importDefault = (this && this.__importDefault) || function (mod) {
2
+ return (mod && mod.__esModule) ? mod : { "default": mod };
3
+ };
1
4
  (function (factory) {
2
5
  if (typeof module === "object" && typeof module.exports === "object") {
3
6
  var v = factory(require, exports);
4
7
  if (v !== undefined) module.exports = v;
5
8
  }
6
9
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "underscore"], factory);
10
+ define(["require", "exports", "underscore", "../types/step-binding"], factory);
8
11
  }
9
12
  })(function (require, exports) {
10
13
  "use strict";
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.BindingRegistry = exports.DEFAULT_TAG = exports.DEFAULT_STEP_PATTERN = void 0;
13
- const _ = require("underscore");
16
+ const underscore_1 = __importDefault(require("underscore"));
17
+ const step_binding_1 = require("../types/step-binding");
14
18
  /**
15
19
  * Represents the default step pattern.
16
20
  */
@@ -26,6 +30,53 @@
26
30
  constructor() {
27
31
  this._bindings = new Map();
28
32
  this._targetBindings = new Map();
33
+ /**
34
+ * Updates the SupportCodeLibrary from Cucumber with
35
+ * callsite information from tsflow bindings
36
+ * @param library
37
+ * @returns
38
+ */
39
+ this.updateSupportCodeLibrary = (library) => {
40
+ this._targetBindings.forEach(binding => {
41
+ binding.stepBindings.forEach(stepBinding => {
42
+ let cucumberDefinition = undefined;
43
+ switch (stepBinding.bindingType) {
44
+ case step_binding_1.StepBindingFlags.beforeAll:
45
+ cucumberDefinition = library.beforeTestRunHookDefinitions.find(s => s.options.cucumberKey === stepBinding.cucumberKey);
46
+ break;
47
+ case step_binding_1.StepBindingFlags.before:
48
+ cucumberDefinition = library.beforeTestCaseHookDefinitions.find(s => s.options.cucumberKey === stepBinding.cucumberKey);
49
+ break;
50
+ case step_binding_1.StepBindingFlags.beforeStep:
51
+ cucumberDefinition = library.beforeTestStepHookDefinitions.find(s => s.options.cucumberKey === stepBinding.cucumberKey);
52
+ break;
53
+ case step_binding_1.StepBindingFlags.given:
54
+ cucumberDefinition = library.stepDefinitions.find(s => s.options.cucumberKey === stepBinding.cucumberKey);
55
+ break;
56
+ case step_binding_1.StepBindingFlags.when:
57
+ cucumberDefinition = library.stepDefinitions.find(s => s.options.cucumberKey === stepBinding.cucumberKey);
58
+ break;
59
+ case step_binding_1.StepBindingFlags.then:
60
+ cucumberDefinition = library.stepDefinitions.find(s => s.options.cucumberKey === stepBinding.cucumberKey);
61
+ break;
62
+ case step_binding_1.StepBindingFlags.afterStep:
63
+ cucumberDefinition = library.afterTestStepHookDefinitions.find(s => s.options.cucumberKey === stepBinding.cucumberKey);
64
+ break;
65
+ case step_binding_1.StepBindingFlags.after:
66
+ cucumberDefinition = library.afterTestCaseHookDefinitions.find(s => s.options.cucumberKey === stepBinding.cucumberKey);
67
+ break;
68
+ case step_binding_1.StepBindingFlags.afterAll:
69
+ cucumberDefinition = library.afterTestRunHookDefinitions.find(s => s.options.cucumberKey === stepBinding.cucumberKey);
70
+ break;
71
+ }
72
+ if (cucumberDefinition) {
73
+ cucumberDefinition.line = stepBinding.callsite.lineNumber;
74
+ cucumberDefinition.uri = stepBinding.callsite.filename;
75
+ }
76
+ });
77
+ });
78
+ return library;
79
+ };
29
80
  }
30
81
  /**
31
82
  * Gets the binding registry singleton.
@@ -83,10 +134,10 @@
83
134
  * @param stepBinding The step binding that is to be registered with the binding registry.
84
135
  */
85
136
  registerStepBinding(stepBinding) {
86
- if (!stepBinding.tag) {
87
- stepBinding.tag = exports.DEFAULT_TAG;
137
+ if (!stepBinding.tags) {
138
+ stepBinding.tags = exports.DEFAULT_TAG;
88
139
  }
89
- if (stepBinding.tag !== exports.DEFAULT_TAG && !stepBinding.tag.startsWith('@')) {
140
+ if (stepBinding.tags !== exports.DEFAULT_TAG && !stepBinding.tags.startsWith('@')) {
90
141
  // tslint:disable-next-line:no-console
91
142
  console.log('tag should start with @; tsflow has stopped to automatically prepend @ for you.');
92
143
  }
@@ -98,10 +149,10 @@
98
149
  tagMap = new Map();
99
150
  this._bindings.set(stepPattern, tagMap);
100
151
  }
101
- let stepBindings = tagMap.get(stepBinding.tag);
152
+ let stepBindings = tagMap.get(stepBinding.tags);
102
153
  if (!stepBindings) {
103
154
  stepBindings = [];
104
- tagMap.set(stepBinding.tag, stepBindings);
155
+ tagMap.set(stepBinding.tags, stepBindings);
105
156
  }
106
157
  if (!stepBindings.some(b => isSameStepBinding(stepBinding, b))) {
107
158
  stepBindings.push(stepBinding);
@@ -121,7 +172,7 @@
121
172
  function isSameStepBinding(a, b) {
122
173
  return (a.callsite.filename === b.callsite.filename &&
123
174
  a.callsite.lineNumber === b.callsite.lineNumber &&
124
- String(a.tag) === String(b.tag) &&
175
+ String(a.tags) === String(b.tags) &&
125
176
  String(a.stepPattern) === String(b.stepPattern));
126
177
  }
127
178
  }
@@ -168,10 +219,10 @@
168
219
  * @returns An array of [[StepBinding]].
169
220
  */
170
221
  mapTagNamesToStepBindings(tags, tagMap) {
171
- const matchingStepBindings = _.flatten(_.map(tags, tag => tagMap.get(tag)));
172
- return _.reject(matchingStepBindings, stepBinding => stepBinding === undefined);
222
+ const matchingStepBindings = underscore_1.default.flatten(underscore_1.default.map(tags, tag => tagMap.get(tag)));
223
+ return underscore_1.default.reject(matchingStepBindings, stepBinding => stepBinding === undefined);
173
224
  }
174
225
  }
175
226
  exports.BindingRegistry = BindingRegistry;
176
227
  });
177
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluZGluZy1yZWdpc3RyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdWN1bWJlci9iaW5kaW5nLXJlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztJQUFBLGdDQUFnQztJQW9CaEM7O09BRUc7SUFDVSxRQUFBLG9CQUFvQixHQUFHLE1BQU0sQ0FBQztJQUUzQzs7T0FFRztJQUNVLFFBQUEsV0FBVyxHQUFHLEdBQUcsQ0FBQztJQUUvQjs7T0FFRztJQUNILE1BQWEsZUFBZTtRQUE1QjtZQUNTLGNBQVMsR0FBRyxJQUFJLEdBQUcsRUFBNEMsQ0FBQztZQUNoRSxvQkFBZSxHQUFHLElBQUksR0FBRyxFQUFzQixDQUFDO1FBeUx6RCxDQUFDO1FBdkxBOzs7O1dBSUc7UUFDSSxNQUFNLEtBQUssUUFBUTtZQUN6QixNQUFNLHlCQUF5QixHQUFHLG1DQUFtQyxDQUFDO1lBRXRFLE1BQU0sUUFBUSxHQUFJLE1BQWMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1lBRTVELElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2IsTUFBYyxDQUFDLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQzthQUNuRTtZQUVELE9BQU8sUUFBUSxJQUFLLE1BQWMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFFRDs7Ozs7OztXQU9HO1FBQ0ksNkJBQTZCLENBQUMsZUFBb0IsRUFBRSxZQUE0QjtZQUN0RixJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUNsQixPQUFPO2FBQ1A7WUFFRCxJQUFJLGlCQUFpQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRWxFLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDdkIsaUJBQWlCLEdBQUc7b0JBQ25CLFlBQVksRUFBRSxFQUFFO29CQUNoQixZQUFZLEVBQUUsRUFBRTtpQkFDaEIsQ0FBQztnQkFFRixJQUFJLENB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
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluZGluZy1yZWdpc3RyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jdWN1bWJlci9iaW5kaW5nLXJlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztJQUNBLDREQUEyQjtJQUMzQix3REFBc0U7SUFrQnRFOztPQUVHO0lBQ1UsUUFBQSxvQkFBb0IsR0FBRyxNQUFNLENBQUM7SUFFM0M7O09BRUc7SUFDVSxRQUFBLFdBQVcsR0FBRyxHQUFHLENBQUM7SUFFL0I7O09BRUc7SUFDSCxNQUFhLGVBQWU7UUFBNUI7WUFDUyxjQUFTLEdBQUcsSUFBSSxHQUFHLEVBQTRDLENBQUM7WUFDaEUsb0JBQWUsR0FBRyxJQUFJLEdBQUcsRUFBc0IsQ0FBQztZQTRLeEQ7Ozs7O2VBS0c7WUFDSSw2QkFBd0IsR0FBRyxDQUFDLE9BQTRCLEVBQXVCLEVBQUU7Z0JBQ3ZGLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUN0QyxPQUFPLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTt3QkFDMUMsSUFBSSxrQkFBa0IsR0FBb0IsU0FBUyxDQUFDO3dCQUNwRCxRQUFRLFdBQVcsQ0FBQyxXQUFXLEVBQUU7NEJBQ2hDLEtBQUssK0JBQWdCLENBQUMsU0FBUztnQ0FDOUIsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FDN0QsQ0FBQyxDQUFDLEVBQUUsQ0FBRSxDQUFDLENBQUMsT0FBZSxDQUFDLFdBQVcsS0FBSyxXQUFXLENBQUMsV0FBVyxDQUMvRCxDQUFDO2dDQUNGLE1BQU07NEJBQ1AsS0FBSywrQkFBZ0IsQ0FBQyxNQUFNO2dDQUMzQixrQkFBa0IsR0FBRyxPQUFPLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUM5RCxDQUFDLENBQUMsRUFBRSxDQUFFLENBQUMsQ0FBQyxPQUFlLENBQUMsV0FBVyxLQUFLLFdBQVcsQ0FBQyxXQUFXLENBQy9ELENBQUM7Z0NBQ0YsTUFBTTs0QkFDUCxLQUFLLCtCQUFnQixDQUFDLFVBQVU7Z0NBQy9CLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQzlELENBQUMsQ0FBQyxFQUFFLENBQUUsQ0FBQyxDQUFDLE9BQWUsQ0FBQyxXQUFXLEtBQUssV0FBVyxDQUFDLFdBQVcsQ0FDL0QsQ0FBQztnQ0FDRixNQUFNOzRCQUNQLEtBQUssK0JBQWdCLENBQUMsS0FBSztnQ0FDMUIsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQ2hELENBQUMsQ0FBQyxFQUFFLENBQUUsQ0FBQyxDQUFDLE9BQWUsQ0FBQyxXQUFXLEtBQUssV0FBVyxDQUFDLFdBQVcsQ0FDL0QsQ0FBQztnQ0FDRixNQUFNOzRCQUNQLEtBQUssK0JBQWdCLENBQUMsSUFBSTtnQ0FDekIsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQ2hELENBQUMsQ0FBQyxFQUFFLENBQUUsQ0FBQyxDQUFDLE9BQWUsQ0FBQyxXQUFXLEtBQUssV0FBVyxDQUFDLFdBQVcsQ0FDL0QsQ0FBQztnQ0FDRixNQUFNOzRCQUNQLEtBQUssK0JBQWdCLENBQUMsSUFBSTtnQ0FDekIsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQ2hELENBQUMsQ0FBQyxFQUFFLENBQUUsQ0FBQyxDQUFDLE9BQWUsQ0FBQyxXQUFXLEtBQUssV0FBVyxDQUFDLFdBQVcsQ0FDL0QsQ0FBQztnQ0FDRixNQUFNOzRCQUNQLEtBQUssK0JBQWdCLENBQUMsU0FBUztnQ0FDOUIsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FDN0QsQ0FBQyxDQUFDLEVBQUUsQ0FBRSxDQUFDLENBQUMsT0FBZSxDQUFDLFdBQVcsS0FBSyxXQUFXLENBQUMsV0FBVyxDQUMvRCxDQUFDO2dDQUNGLE1BQU07NEJBQ1AsS0FBSywrQkFBZ0IsQ0FBQyxLQUFLO2dDQUMxQixrQkFBa0IsR0FBRyxPQUFPLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUM3RCxDQUFDLENBQUMsRUFBRSxDQUFFLENBQUMsQ0FBQyxPQUFlLENBQUMsV0FBVyxLQUFLLFdBQVcsQ0FBQyxXQUFXLENBQy9ELENBQUM7Z0NBQ0YsTUFBTTs0QkFDUCxLQUFLLCtCQUFnQixDQUFDLFFBQVE7Z0NBQzdCLGtCQUFrQixHQUFHLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQzVELENBQUMsQ0FBQyxFQUFFLENBQUUsQ0FBQyxDQUFDLE9BQWUsQ0FBQyxXQUFXLEtBQUssV0FBVyxDQUFDLFdBQVcsQ0FDL0QsQ0FBQztnQ0FDRixNQUFNO3lCQUNQO3dCQUNELElBQUksa0JBQWtCLEVBQUU7NEJBQ3ZCLGtCQUFrQixDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQzs0QkFDMUQsa0JBQWtCLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO3lCQUN2RDtvQkFDRixDQUFDLENBQUMsQ0FBQztnQkFDSixDQUFDLENBQUMsQ0FBQztnQkFDSCxPQUFPLE9BQU8sQ0FBQztZQUNoQixDQUFDLENBQUM7UUFlSCxDQUFDO1FBelBBOzs7O1dBSUc7UUFDSSxNQUFNLEtBQUssUUFBUTtZQUN6QixNQUFNLHlCQUF5QixHQUFHLG1DQUFtQyxDQUFDO1lBRXRFLE1BQU0sUUFBUSxHQUFJLE1BQWMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1lBRTVELElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2IsTUFBYyxDQUFDLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQzthQUNuRTtZQUVELE9BQU8sUUFBUSxJQUFLLE1BQWMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFFRDs7Ozs7OztXQU9HO1FBQ0ksNkJBQTZCLENBQUMsZUFBb0IsRUFBRSxZQUE0QjtZQUN0RixJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUNsQixPQUFPO2FBQ1A7WUFFRCxJQUFJLGlCQUFpQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRWxFLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDdkIsaUJBQWlCLEdBQUc7b0JBQ25CLFlBQVksRUFBRSxFQUFFO29CQUNoQixZQUFZLEVBQUUsRUFBRTtpQkFDaEIsQ0FBQztnQkFFRixJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsaUJBQWlCLENBQUMsQ0FBQzthQUM3RDtZQUVELGlCQUFpQixDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDL0MsQ0FBQztRQUVEOzs7Ozs7O1dBT0c7UUFDSSx3QkFBd0IsQ0FBQyxlQUFvQjtZQUNuRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUVoRSxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUNuQixPQUFPLEVBQUUsQ0FBQzthQUNWO1lBRUQsT0FBTyxhQUFhLENBQUMsWUFBWSxDQUFDO1FBQ25DLENBQUM7UUFFRDs7OztXQUlHO1FBQ0ksbUJBQW1CLENBQUMsV0FBd0I7WUFDbEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUU7Z0JBQ3RCLFdBQVcsQ0FBQyxJQUFJLEdBQUcsbUJBQVcsQ0FBQzthQUMvQjtZQUVELElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxtQkFBVyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzFFLHNDQUFzQztnQkFDdEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpRkFBaUYsQ0FBQyxDQUFDO2FBQy9GO1lBRUQsTUFBTSxXQUFXLEdBQWdCLFdBQVcsQ0FBQyxXQUFXO2dCQUN2RCxDQUFDLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3BDLENBQUMsQ0FBQyw0QkFBb0IsQ0FBQztZQUV4QixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUU3QyxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNaLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBMEIsQ0FBQztnQkFFM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2FBQ3hDO1lBRUQsSUFBSSxZQUFZLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFaEQsSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDbEIsWUFBWSxHQUFHLEVBQUUsQ0FBQztnQkFFbEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO2FBQzNDO1lBRUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDL0QsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUMvQjtZQUVELHdDQUF3QztZQUV4QyxJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUM7WUFFMUUsSUFBSSxDQUFDLGFBQWEsRUFBRTtnQkFDbkIsYUFBYSxHQUFHO29CQUNmLFlBQVksRUFBRSxFQUFFO29CQUNoQixZQUFZLEVBQUUsRUFBRTtpQkFDaEIsQ0FBQztnQkFFRixJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLGFBQWEsQ0FBQyxDQUFDO2FBQ3JFO1lBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQzdFLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQzdDO1lBRUQsU0FBUyxpQkFBaUIsQ0FBQyxDQUFjLEVBQUUsQ0FBYztnQkFDeEQsT0FBTyxDQUNOLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUTtvQkFDM0MsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVO29CQUMvQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO29CQUNqQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQy9DLENBQUM7WUFDSCxDQUFDO1FBQ0YsQ0FBQztRQUVEOzs7Ozs7O1dBT0c7UUFDSSx3QkFBd0IsQ0FBQyxlQUFvQjtZQUNuRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUVoRSxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUNuQixPQUFPLEVBQUUsQ0FBQzthQUNWO1lBRUQsT0FBTyxhQUFhLENBQUMsWUFBWSxDQUFDO1FBQ25DLENBQUM7UUFFRDs7Ozs7OztXQU9HO1FBQ0ksZUFBZSxDQUFDLFdBQXdCLEVBQUUsSUFBZTtZQUMvRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUUvQyxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNaLE9BQU8sRUFBRSxDQUFDO2FBQ1Y7WUFFRCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFFMUUsSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNwQyxPQUFPLG9CQUFvQixDQUFDO2FBQzVCO1lBRUQsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN0RCxDQUFDO1FBb0VEOzs7Ozs7O1dBT0c7UUFDSyx5QkFBeUIsQ0FBQyxJQUFlLEVBQUUsTUFBbUM7WUFDckYsTUFBTSxvQkFBb0IsR0FBZ0Msb0JBQUMsQ0FBQyxPQUFPLENBQUMsb0JBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFekcsT0FBTyxvQkFBQyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxXQUFXLENBQUMsRUFBRSxDQUFDLFdBQVcsS0FBSyxTQUFTLENBQWtCLENBQUM7UUFDbEcsQ0FBQztLQUNEO0lBN1BELDBDQTZQQyJ9
@@ -1,28 +1,46 @@
1
+ /**
2
+ * A method decorator that marks the associated function as a 'Before All Scenario' step. The function is
3
+ * executed before all scenarios are executed.
4
+ *
5
+ * @param timeout Optional timeout in milliseconds
6
+ */
7
+ export declare function beforeAll(timeout?: number): MethodDecorator;
1
8
  /**
2
9
  * A method decorator that marks the associated function as a 'Before Scenario' step. The function is
3
10
  * executed before each scenario.
4
11
  *
5
- * @param tag An optional tag.
12
+ * @param tags Optional tag or tags associated with a scenario.
13
+ * @param timeout Optional timeout in milliseconds
6
14
  */
7
- export declare function before(tag?: string, timeout?: number): MethodDecorator;
15
+ export declare function before(tags?: string, timeout?: number): MethodDecorator;
8
16
  /**
9
- * A method decorator that marks the associated function as a 'Before All Scenario' step. The function is
10
- * executed before all scenarios are executed.
17
+ * A method decorator that marks the associated function as a 'Before Step' step. The function is
18
+ * executed before each step.
11
19
  *
12
- * @param tag An optional tag.
20
+ * @param tags Optional tag or tags associated with a scenario.
21
+ * @param timeout Optional timeout in milliseconds
13
22
  */
14
- export declare function beforeAll(tag?: string, timeout?: number): MethodDecorator;
23
+ export declare function beforeStep(tags?: string, timeout?: number): MethodDecorator;
24
+ /**
25
+ * A method decorator that marks the associated function as an 'After All Scenario' step. The function is
26
+ * executed after all scenarios are executed.
27
+ *
28
+ * @param timeout Optional timeout in milliseconds
29
+ */
30
+ export declare function afterAll(timeout?: number): MethodDecorator;
15
31
  /**
16
32
  * A method decorator that marks the associated function as an 'After Scenario' step. The function is
17
33
  * executed after each scenario.
18
34
  *
19
- * @param tag An optional tag.
35
+ * @param tags Optional tag or tags associated with a scenario.
36
+ * @param timeout Optional timeout in milliseconds
20
37
  */
21
- export declare function after(tag?: string, timeout?: number): MethodDecorator;
38
+ export declare function after(tags?: string, timeout?: number): MethodDecorator;
22
39
  /**
23
- * A method decorator that marks the associated function as an 'After All Scenario' step. The function is
24
- * executed after all scenarios are executed.
40
+ * A method decorator that marks the associated function as a 'After Step' step. The function is
41
+ * executed after each step.
25
42
  *
26
- * @param tag An optional tag.
43
+ * @param tags Optional tag or tags associated with a scenario.
44
+ * @param timeout Optional timeout in milliseconds
27
45
  */
28
- export declare function afterAll(tag?: string, timeout?: number): MethodDecorator;
46
+ export declare function afterStep(tags?: string, timeout?: number): MethodDecorator;
@@ -1,62 +1,92 @@
1
+ var __importDefault = (this && this.__importDefault) || function (mod) {
2
+ return (mod && mod.__esModule) ? mod : { "default": mod };
3
+ };
1
4
  (function (factory) {
2
5
  if (typeof module === "object" && typeof module.exports === "object") {
3
6
  var v = factory(require, exports);
4
7
  if (v !== undefined) module.exports = v;
5
8
  }
6
9
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./binding-registry", "../utils/our-callsite", "../types/step-binding"], factory);
10
+ define(["require", "exports", "./binding-registry", "../utils/our-callsite", "../types/step-binding", "short-uuid"], factory);
8
11
  }
9
12
  })(function (require, exports) {
10
13
  "use strict";
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.afterAll = exports.after = exports.beforeAll = exports.before = void 0;
15
+ exports.afterStep = exports.after = exports.afterAll = exports.beforeStep = exports.before = exports.beforeAll = void 0;
13
16
  const binding_registry_1 = require("./binding-registry");
14
17
  const our_callsite_1 = require("../utils/our-callsite");
15
18
  const step_binding_1 = require("../types/step-binding");
19
+ const short_uuid_1 = __importDefault(require("short-uuid"));
20
+ /**
21
+ * A method decorator that marks the associated function as a 'Before All Scenario' step. The function is
22
+ * executed before all scenarios are executed.
23
+ *
24
+ * @param timeout Optional timeout in milliseconds
25
+ */
26
+ function beforeAll(timeout) {
27
+ const callSite = our_callsite_1.Callsite.capture();
28
+ return createDecoratorFactory(step_binding_1.StepBindingFlags.beforeAll, callSite, undefined, timeout);
29
+ }
30
+ exports.beforeAll = beforeAll;
16
31
  /**
17
32
  * A method decorator that marks the associated function as a 'Before Scenario' step. The function is
18
33
  * executed before each scenario.
19
34
  *
20
- * @param tag An optional tag.
35
+ * @param tags Optional tag or tags associated with a scenario.
36
+ * @param timeout Optional timeout in milliseconds
21
37
  */
22
- function before(tag, timeout) {
38
+ function before(tags, timeout) {
23
39
  const callSite = our_callsite_1.Callsite.capture();
24
- return createDecoratorFactory(step_binding_1.StepBindingFlags.before, callSite, tag, timeout);
40
+ return createDecoratorFactory(step_binding_1.StepBindingFlags.before, callSite, tags, timeout);
25
41
  }
26
42
  exports.before = before;
27
43
  /**
28
- * A method decorator that marks the associated function as a 'Before All Scenario' step. The function is
29
- * executed before all scenarios are executed.
44
+ * A method decorator that marks the associated function as a 'Before Step' step. The function is
45
+ * executed before each step.
30
46
  *
31
- * @param tag An optional tag.
47
+ * @param tags Optional tag or tags associated with a scenario.
48
+ * @param timeout Optional timeout in milliseconds
32
49
  */
33
- function beforeAll(tag, timeout) {
50
+ function beforeStep(tags, timeout) {
34
51
  const callSite = our_callsite_1.Callsite.capture();
35
- return createDecoratorFactory(step_binding_1.StepBindingFlags.beforeAll, callSite, tag, timeout);
52
+ return createDecoratorFactory(step_binding_1.StepBindingFlags.beforeStep, callSite, tags, timeout);
36
53
  }
37
- exports.beforeAll = beforeAll;
54
+ exports.beforeStep = beforeStep;
55
+ /**
56
+ * A method decorator that marks the associated function as an 'After All Scenario' step. The function is
57
+ * executed after all scenarios are executed.
58
+ *
59
+ * @param timeout Optional timeout in milliseconds
60
+ */
61
+ function afterAll(timeout) {
62
+ const callSite = our_callsite_1.Callsite.capture();
63
+ return createDecoratorFactory(step_binding_1.StepBindingFlags.afterAll, callSite, undefined, timeout);
64
+ }
65
+ exports.afterAll = afterAll;
38
66
  /**
39
67
  * A method decorator that marks the associated function as an 'After Scenario' step. The function is
40
68
  * executed after each scenario.
41
69
  *
42
- * @param tag An optional tag.
70
+ * @param tags Optional tag or tags associated with a scenario.
71
+ * @param timeout Optional timeout in milliseconds
43
72
  */
44
- function after(tag, timeout) {
73
+ function after(tags, timeout) {
45
74
  const callSite = our_callsite_1.Callsite.capture();
46
- return createDecoratorFactory(step_binding_1.StepBindingFlags.after, callSite, tag, timeout);
75
+ return createDecoratorFactory(step_binding_1.StepBindingFlags.after, callSite, tags, timeout);
47
76
  }
48
77
  exports.after = after;
49
78
  /**
50
- * A method decorator that marks the associated function as an 'After All Scenario' step. The function is
51
- * executed after all scenarios are executed.
79
+ * A method decorator that marks the associated function as a 'After Step' step. The function is
80
+ * executed after each step.
52
81
  *
53
- * @param tag An optional tag.
82
+ * @param tags Optional tag or tags associated with a scenario.
83
+ * @param timeout Optional timeout in milliseconds
54
84
  */
55
- function afterAll(tag, timeout) {
85
+ function afterStep(tags, timeout) {
56
86
  const callSite = our_callsite_1.Callsite.capture();
57
- return createDecoratorFactory(step_binding_1.StepBindingFlags.afterAll, callSite, tag, timeout);
87
+ return createDecoratorFactory(step_binding_1.StepBindingFlags.afterStep, callSite, tags, timeout);
58
88
  }
59
- exports.afterAll = afterAll;
89
+ exports.afterStep = afterStep;
60
90
  function checkTag(tag) {
61
91
  return tag;
62
92
  }
@@ -69,14 +99,15 @@
69
99
  targetPropertyKey: propertyKey,
70
100
  argsLength: target[propertyKey].length,
71
101
  timeout: timeout,
72
- callsite: callSite
102
+ callsite: callSite,
103
+ cucumberKey: (0, short_uuid_1.default)().new()
73
104
  };
74
105
  if (tag) {
75
- stepBinding.tag = checkTag(tag);
106
+ stepBinding.tags = checkTag(tag);
76
107
  }
77
108
  binding_registry_1.BindingRegistry.instance.registerStepBinding(stepBinding);
78
109
  return descriptor;
79
110
  };
80
111
  }
81
112
  });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9vay1kZWNvcmF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2N1Y3VtYmVyL2hvb2stZGVjb3JhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFBQSx5REFBcUQ7SUFDckQsd0RBQWlEO0lBQ2pELHdEQUFzRTtJQUV0RTs7Ozs7T0FLRztJQUNILFNBQWdCLE1BQU0sQ0FBQyxHQUFZLEVBQUUsT0FBZ0I7UUFDcEQsTUFBTSxRQUFRLEdBQUcsdUJBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQyxPQUFPLHNCQUFzQixDQUFDLCtCQUFnQixDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFIRCx3QkFHQztJQUNEOzs7OztPQUtHO0lBQ0gsU0FBZ0IsU0FBUyxDQUFDLEdBQVksRUFBRSxPQUFnQjtRQUN2RCxNQUFNLFFBQVEsR0FBRyx1QkFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BDLE9BQU8sc0JBQXNCLENBQUMsK0JBQWdCLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUhELDhCQUdDO0lBRUQ7Ozs7O09BS0c7SUFDSCxTQUFnQixLQUFLLENBQUMsR0FBWSxFQUFFLE9BQWdCO1FBQ25ELE1BQU0sUUFBUSxHQUFHLHVCQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEMsT0FBTyxzQkFBc0IsQ0FBQywrQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBSEQsc0JBR0M7SUFDRDs7Ozs7T0FLRztJQUNILFNBQWdCLFFBQVEsQ0FBQyxHQUFZLEVBQUUsT0FBZ0I7UUFDdEQsTUFBTSxRQUFRLEdBQUcsdUJBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQyxPQUFPLHNCQUFzQixDQUFDLCtCQUFnQixDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFIRCw0QkFHQztJQUVELFNBQVMsUUFBUSxDQUFDLEdBQVc7UUFDNUIsT0FBTyxHQUFHLENBQUM7SUFDWixDQUFDO0lBRUQsU0FBUyxzQkFBc0IsQ0FBQyxJQUFzQixFQUFFLFFBQWtCLEVBQUUsR0FBWSxFQUFFLE9BQWdCO1FBQ3pHLE9BQU8sQ0FBSSxNQUFXLEVBQUUsV0FBNEIsRUFBRSxVQUFzQyxFQUFFLEVBQUU7WUFDL0YsTUFBTSxXQUFXLEdBQWdCO2dCQUNoQyxXQUFXLEVBQUUsRUFBRTtnQkFDZixXQUFXLEVBQUUsSUFBSTtnQkFDakIsZUFBZSxFQUFFLE1BQU07Z0JBQ3ZCLGlCQUFpQixFQUFFLFdBQVc7Z0JBQzlCLFVBQVUsRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTTtnQkFDdEMsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLFFBQVEsRUFBRSxRQUFRO2FBQ2xCLENBQUM7WUFFRixJQUFJLEdBQUcsRUFBRTtnQkFDUixXQUFXLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNoQztZQUVELGtDQUFlLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBRTFELE9BQU8sVUFBVSxDQUFDO1FBQ25CLENBQUMsQ0FBQztJQUNILENBQUMifQ==
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9vay1kZWNvcmF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2N1Y3VtYmVyL2hvb2stZGVjb3JhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7SUFBQSx5REFBcUQ7SUFDckQsd0RBQWlEO0lBQ2pELHdEQUFzRTtJQUN0RSw0REFBbUM7SUFFbkM7Ozs7O09BS0c7SUFDSCxTQUFnQixTQUFTLENBQUMsT0FBZ0I7UUFDekMsTUFBTSxRQUFRLEdBQUcsdUJBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQyxPQUFPLHNCQUFzQixDQUFDLCtCQUFnQixDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFIRCw4QkFHQztJQUNEOzs7Ozs7T0FNRztJQUNILFNBQWdCLE1BQU0sQ0FBQyxJQUFhLEVBQUUsT0FBZ0I7UUFDckQsTUFBTSxRQUFRLEdBQUcsdUJBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQyxPQUFPLHNCQUFzQixDQUFDLCtCQUFnQixDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFIRCx3QkFHQztJQUNEOzs7Ozs7T0FNRztJQUNILFNBQWdCLFVBQVUsQ0FBQyxJQUFhLEVBQUUsT0FBZ0I7UUFDekQsTUFBTSxRQUFRLEdBQUcsdUJBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQyxPQUFPLHNCQUFzQixDQUFDLCtCQUFnQixDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFIRCxnQ0FHQztJQUVEOzs7OztPQUtHO0lBQ0gsU0FBZ0IsUUFBUSxDQUFDLE9BQWdCO1FBQ3hDLE1BQU0sUUFBUSxHQUFHLHVCQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEMsT0FBTyxzQkFBc0IsQ0FBQywrQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBSEQsNEJBR0M7SUFDRDs7Ozs7O09BTUc7SUFDSCxTQUFnQixLQUFLLENBQUMsSUFBYSxFQUFFLE9BQWdCO1FBQ3BELE1BQU0sUUFBUSxHQUFHLHVCQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEMsT0FBTyxzQkFBc0IsQ0FBQywrQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBSEQsc0JBR0M7SUFDRDs7Ozs7O09BTUc7SUFDSCxTQUFnQixTQUFTLENBQUMsSUFBYSxFQUFFLE9BQWdCO1FBQ3hELE1BQU0sUUFBUSxHQUFHLHVCQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEMsT0FBTyxzQkFBc0IsQ0FBQywrQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBSEQsOEJBR0M7SUFFRCxTQUFTLFFBQVEsQ0FBQyxHQUFXO1FBQzVCLE9BQU8sR0FBRyxDQUFDO0lBQ1osQ0FBQztJQUVELFNBQVMsc0JBQXNCLENBQUMsSUFBc0IsRUFBRSxRQUFrQixFQUFFLEdBQVksRUFBRSxPQUFnQjtRQUN6RyxPQUFPLENBQUksTUFBVyxFQUFFLFdBQTRCLEVBQUUsVUFBc0MsRUFBRSxFQUFFO1lBQy9GLE1BQU0sV0FBVyxHQUFnQjtnQkFDaEMsV0FBVyxFQUFFLEVBQUU7Z0JBQ2YsV0FBVyxFQUFFLElBQUk7Z0JBQ2pCLGVBQWUsRUFBRSxNQUFNO2dCQUN2QixpQkFBaUIsRUFBRSxXQUFXO2dCQUM5QixVQUFVLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU07Z0JBQ3RDLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsV0FBVyxFQUFFLElBQUEsb0JBQVMsR0FBRSxDQUFDLEdBQUcsRUFBRTthQUM5QixDQUFDO1lBRUYsSUFBSSxHQUFHLEVBQUU7Z0JBQ1IsV0FBVyxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDakM7WUFFRCxrQ0FBZSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUUxRCxPQUFPLFVBQVUsQ0FBQztRQUNuQixDQUFDLENBQUM7SUFDSCxDQUFDIn0=