@dev-blinq/cucumber-js 1.0.36 → 1.0.38

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 (239) hide show
  1. package/bin/cucumber-js +0 -0
  2. package/bin/cucumber.js +0 -0
  3. package/lib/api/console_logger.d.ts +12 -12
  4. package/lib/api/console_logger.js +23 -23
  5. package/lib/api/convert_configuration.d.ts +4 -4
  6. package/lib/api/convert_configuration.js +65 -65
  7. package/lib/api/environment.d.ts +2 -2
  8. package/lib/api/environment.js +13 -13
  9. package/lib/api/formatters.d.ts +20 -20
  10. package/lib/api/formatters.js +60 -60
  11. package/lib/api/gherkin.d.ts +21 -21
  12. package/lib/api/gherkin.js +99 -99
  13. package/lib/api/index.d.ts +12 -12
  14. package/lib/api/index.js +27 -27
  15. package/lib/api/load_configuration.d.ts +9 -9
  16. package/lib/api/load_configuration.js +40 -40
  17. package/lib/api/load_sources.d.ts +9 -9
  18. package/lib/api/load_sources.js +52 -52
  19. package/lib/api/load_support.d.ts +10 -10
  20. package/lib/api/load_support.js +29 -29
  21. package/lib/api/paths.d.ts +8 -8
  22. package/lib/api/paths.js +101 -101
  23. package/lib/api/plugins.d.ts +4 -4
  24. package/lib/api/plugins.js +18 -18
  25. package/lib/api/run_cucumber.d.ts +11 -11
  26. package/lib/api/run_cucumber.js +114 -114
  27. package/lib/api/runtime.d.ts +21 -21
  28. package/lib/api/runtime.js +35 -35
  29. package/lib/api/support.d.ts +9 -9
  30. package/lib/api/support.js +25 -25
  31. package/lib/api/test_helpers.d.ts +3 -3
  32. package/lib/api/test_helpers.js +30 -30
  33. package/lib/api/types.d.ts +177 -177
  34. package/lib/api/types.js +2 -2
  35. package/lib/cli/helpers.d.ts +39 -39
  36. package/lib/cli/helpers.js +223 -223
  37. package/lib/cli/i18n.d.ts +2 -2
  38. package/lib/cli/i18n.js +69 -69
  39. package/lib/cli/index.d.ts +21 -21
  40. package/lib/cli/index.js +63 -63
  41. package/lib/cli/install_validator.d.ts +1 -1
  42. package/lib/cli/install_validator.js +13 -13
  43. package/lib/cli/run.d.ts +1 -1
  44. package/lib/cli/run.js +43 -43
  45. package/lib/cli/validate_node_engine_version.d.ts +10 -10
  46. package/lib/cli/validate_node_engine_version.js +23 -23
  47. package/lib/configuration/argv_parser.d.ts +20 -20
  48. package/lib/configuration/argv_parser.js +102 -102
  49. package/lib/configuration/check_schema.d.ts +2 -2
  50. package/lib/configuration/check_schema.js +59 -59
  51. package/lib/configuration/default_configuration.d.ts +2 -2
  52. package/lib/configuration/default_configuration.js +28 -28
  53. package/lib/configuration/from_file.d.ts +3 -3
  54. package/lib/configuration/from_file.js +84 -84
  55. package/lib/configuration/helpers.d.ts +1 -1
  56. package/lib/configuration/helpers.js +10 -10
  57. package/lib/configuration/index.d.ts +7 -7
  58. package/lib/configuration/index.js +28 -28
  59. package/lib/configuration/locate_file.d.ts +1 -1
  60. package/lib/configuration/locate_file.js +20 -20
  61. package/lib/configuration/merge_configurations.d.ts +2 -2
  62. package/lib/configuration/merge_configurations.js +47 -47
  63. package/lib/configuration/option_splitter.d.ts +3 -3
  64. package/lib/configuration/option_splitter.js +22 -22
  65. package/lib/configuration/types.d.ts +30 -30
  66. package/lib/configuration/types.js +2 -2
  67. package/lib/configuration/validate_configuration.d.ts +3 -3
  68. package/lib/configuration/validate_configuration.js +12 -12
  69. package/lib/filter_stack_trace.d.ts +3 -3
  70. package/lib/filter_stack_trace.js +37 -37
  71. package/lib/formatter/builder.d.ts +37 -37
  72. package/lib/formatter/builder.js +100 -100
  73. package/lib/formatter/bvt_analysis_formatter.d.ts +18 -18
  74. package/lib/formatter/bvt_analysis_formatter.js +192 -192
  75. package/lib/formatter/feature_data_format.d.ts +14 -14
  76. package/lib/formatter/feature_data_format.js +80 -80
  77. package/lib/formatter/fixtures/typescript.d.ts +2 -2
  78. package/lib/formatter/fixtures/typescript.js +5 -5
  79. package/lib/formatter/get_color_fns.d.ts +15 -15
  80. package/lib/formatter/get_color_fns.js +55 -55
  81. package/lib/formatter/helpers/duration_helpers.d.ts +2 -2
  82. package/lib/formatter/helpers/duration_helpers.js +8 -8
  83. package/lib/formatter/helpers/event_data_collector.d.ts +30 -30
  84. package/lib/formatter/helpers/event_data_collector.js +125 -125
  85. package/lib/formatter/helpers/formatters.d.ts +6 -6
  86. package/lib/formatter/helpers/formatters.js +44 -44
  87. package/lib/formatter/helpers/gherkin_document_parser.d.ts +5 -5
  88. package/lib/formatter/helpers/gherkin_document_parser.js +65 -65
  89. package/lib/formatter/helpers/index.d.ts +10 -10
  90. package/lib/formatter/helpers/index.js +51 -51
  91. package/lib/formatter/helpers/issue_helpers.d.ts +19 -19
  92. package/lib/formatter/helpers/issue_helpers.js +58 -58
  93. package/lib/formatter/helpers/keyword_type.d.ts +11 -11
  94. package/lib/formatter/helpers/keyword_type.js +31 -31
  95. package/lib/formatter/helpers/location_helpers.d.ts +2 -2
  96. package/lib/formatter/helpers/location_helpers.js +16 -16
  97. package/lib/formatter/helpers/pickle_parser.d.ts +17 -17
  98. package/lib/formatter/helpers/pickle_parser.js +27 -27
  99. package/lib/formatter/helpers/report_generator.d.ts +107 -103
  100. package/lib/formatter/helpers/report_generator.js +310 -247
  101. package/lib/formatter/helpers/report_generator.js.map +1 -1
  102. package/lib/formatter/helpers/step_argument_formatter.d.ts +2 -2
  103. package/lib/formatter/helpers/step_argument_formatter.js +47 -47
  104. package/lib/formatter/helpers/summary_helpers.d.ts +9 -9
  105. package/lib/formatter/helpers/summary_helpers.js +95 -95
  106. package/lib/formatter/helpers/test_case_attempt_formatter.d.ts +12 -12
  107. package/lib/formatter/helpers/test_case_attempt_formatter.js +113 -113
  108. package/lib/formatter/helpers/test_case_attempt_parser.d.ts +32 -32
  109. package/lib/formatter/helpers/test_case_attempt_parser.js +134 -134
  110. package/lib/formatter/helpers/upload_serivce.d.ts +9 -9
  111. package/lib/formatter/helpers/upload_serivce.js +46 -46
  112. package/lib/formatter/helpers/uploader.d.ts +11 -11
  113. package/lib/formatter/helpers/uploader.js +56 -56
  114. package/lib/formatter/helpers/usage_helpers/index.d.ts +23 -23
  115. package/lib/formatter/helpers/usage_helpers/index.js +110 -110
  116. package/lib/formatter/html_formatter.d.ts +7 -7
  117. package/lib/formatter/html_formatter.js +29 -29
  118. package/lib/formatter/index.d.ts +53 -53
  119. package/lib/formatter/index.js +20 -20
  120. package/lib/formatter/json_formatter.d.ts +78 -78
  121. package/lib/formatter/json_formatter.js +229 -229
  122. package/lib/formatter/junit_formatter.d.ts +17 -17
  123. package/lib/formatter/junit_formatter.js +180 -180
  124. package/lib/formatter/message_formatter.d.ts +5 -5
  125. package/lib/formatter/message_formatter.js +14 -14
  126. package/lib/formatter/progress_bar_formatter.d.ts +18 -18
  127. package/lib/formatter/progress_bar_formatter.js +98 -98
  128. package/lib/formatter/progress_formatter.d.ts +9 -9
  129. package/lib/formatter/progress_formatter.js +58 -58
  130. package/lib/formatter/rerun_formatter.d.ts +13 -13
  131. package/lib/formatter/rerun_formatter.js +79 -79
  132. package/lib/formatter/snippets_formatter.d.ts +6 -6
  133. package/lib/formatter/snippets_formatter.js +60 -60
  134. package/lib/formatter/step_definition_snippet_builder/index.d.ts +20 -20
  135. package/lib/formatter/step_definition_snippet_builder/index.js +45 -45
  136. package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.d.ts +7 -7
  137. package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.js +45 -45
  138. package/lib/formatter/step_definition_snippet_builder/snippet_syntax.d.ts +16 -16
  139. package/lib/formatter/step_definition_snippet_builder/snippet_syntax.js +10 -10
  140. package/lib/formatter/summary_formatter.d.ts +14 -14
  141. package/lib/formatter/summary_formatter.js +67 -67
  142. package/lib/formatter/usage_formatter.d.ts +6 -6
  143. package/lib/formatter/usage_formatter.js +97 -97
  144. package/lib/formatter/usage_json_formatter.d.ts +7 -7
  145. package/lib/formatter/usage_json_formatter.js +33 -33
  146. package/lib/index.d.ts +58 -58
  147. package/lib/index.js +108 -108
  148. package/lib/logger.d.ts +5 -5
  149. package/lib/logger.js +2 -2
  150. package/lib/models/data_table.d.ts +10 -10
  151. package/lib/models/data_table.js +45 -45
  152. package/lib/models/definition.d.ts +55 -55
  153. package/lib/models/definition.js +21 -21
  154. package/lib/models/gherkin_step_keyword.d.ts +1 -1
  155. package/lib/models/gherkin_step_keyword.js +2 -2
  156. package/lib/models/pickle_order.d.ts +1 -1
  157. package/lib/models/pickle_order.js +2 -2
  158. package/lib/models/step_definition.d.ts +11 -11
  159. package/lib/models/step_definition.js +36 -36
  160. package/lib/models/test_case_hook_definition.d.ts +10 -10
  161. package/lib/models/test_case_hook_definition.js +26 -26
  162. package/lib/models/test_run_hook_definition.d.ts +3 -3
  163. package/lib/models/test_run_hook_definition.js +9 -9
  164. package/lib/models/test_step_hook_definition.d.ts +9 -9
  165. package/lib/models/test_step_hook_definition.js +25 -25
  166. package/lib/pickle_filter.d.ts +42 -42
  167. package/lib/pickle_filter.js +98 -98
  168. package/lib/plugin/index.d.ts +2 -2
  169. package/lib/plugin/index.js +18 -18
  170. package/lib/plugin/plugin_manager.d.ts +13 -13
  171. package/lib/plugin/plugin_manager.js +35 -35
  172. package/lib/plugin/types.d.ts +14 -14
  173. package/lib/plugin/types.js +2 -2
  174. package/lib/publish/http_stream.d.ts +30 -30
  175. package/lib/publish/http_stream.js +111 -111
  176. package/lib/publish/index.d.ts +2 -2
  177. package/lib/publish/index.js +4 -4
  178. package/lib/publish/publish_plugin.d.ts +2 -2
  179. package/lib/publish/publish_plugin.js +47 -47
  180. package/lib/runtime/assemble_test_cases.d.ts +13 -13
  181. package/lib/runtime/assemble_test_cases.js +87 -87
  182. package/lib/runtime/attachment_manager/index.d.ts +33 -33
  183. package/lib/runtime/attachment_manager/index.js +118 -118
  184. package/lib/runtime/format_error.d.ts +2 -2
  185. package/lib/runtime/format_error.js +35 -35
  186. package/lib/runtime/helpers.d.ts +6 -6
  187. package/lib/runtime/helpers.js +100 -100
  188. package/lib/runtime/index.d.ts +40 -40
  189. package/lib/runtime/index.js +75 -75
  190. package/lib/runtime/parallel/command_types.d.ts +32 -32
  191. package/lib/runtime/parallel/command_types.js +2 -2
  192. package/lib/runtime/parallel/coordinator.d.ts +72 -72
  193. package/lib/runtime/parallel/coordinator.js +221 -221
  194. package/lib/runtime/parallel/run_worker.d.ts +1 -1
  195. package/lib/runtime/parallel/run_worker.js +28 -28
  196. package/lib/runtime/parallel/worker.d.ts +26 -26
  197. package/lib/runtime/parallel/worker.js +86 -86
  198. package/lib/runtime/run_test_run_hooks.d.ts +3 -3
  199. package/lib/runtime/run_test_run_hooks.js +27 -27
  200. package/lib/runtime/step_runner.d.ts +16 -16
  201. package/lib/runtime/step_runner.js +87 -87
  202. package/lib/runtime/stopwatch.d.ts +12 -12
  203. package/lib/runtime/stopwatch.js +33 -33
  204. package/lib/runtime/test_case_runner.d.ts +54 -54
  205. package/lib/runtime/test_case_runner.js +267 -267
  206. package/lib/step_arguments.d.ts +6 -6
  207. package/lib/step_arguments.js +18 -18
  208. package/lib/support_code_library_builder/build_parameter_type.d.ts +3 -3
  209. package/lib/support_code_library_builder/build_parameter_type.js +12 -12
  210. package/lib/support_code_library_builder/get_definition_line_and_uri.d.ts +3 -3
  211. package/lib/support_code_library_builder/get_definition_line_and_uri.js +28 -28
  212. package/lib/support_code_library_builder/index.d.ts +74 -74
  213. package/lib/support_code_library_builder/index.js +296 -296
  214. package/lib/support_code_library_builder/parallel_can_assign_helpers.d.ts +2 -2
  215. package/lib/support_code_library_builder/parallel_can_assign_helpers.js +15 -15
  216. package/lib/support_code_library_builder/sourced_parameter_type_registry.d.ts +7 -7
  217. package/lib/support_code_library_builder/sourced_parameter_type_registry.js +18 -18
  218. package/lib/support_code_library_builder/types.d.ts +88 -88
  219. package/lib/support_code_library_builder/types.js +2 -2
  220. package/lib/support_code_library_builder/validate_arguments.d.ts +12 -12
  221. package/lib/support_code_library_builder/validate_arguments.js +72 -72
  222. package/lib/support_code_library_builder/world.d.ts +18 -18
  223. package/lib/support_code_library_builder/world.js +10 -10
  224. package/lib/time.d.ts +18 -18
  225. package/lib/time.js +60 -60
  226. package/lib/try_require.d.ts +7 -7
  227. package/lib/try_require.js +22 -22
  228. package/lib/types/index.d.ts +4 -4
  229. package/lib/types/index.js +2 -2
  230. package/lib/uncaught_exception_manager.d.ts +7 -7
  231. package/lib/uncaught_exception_manager.js +11 -11
  232. package/lib/user_code_runner.d.ts +14 -14
  233. package/lib/user_code_runner.js +81 -81
  234. package/lib/value_checker.d.ts +3 -3
  235. package/lib/value_checker.js +18 -18
  236. package/lib/version.d.ts +1 -1
  237. package/lib/version.js +5 -5
  238. package/lib/version.js.map +1 -1
  239. package/package.json +1 -1
@@ -1,19 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SourcedParameterTypeRegistry = void 0;
4
- const cucumber_expressions_1 = require("@cucumber/cucumber-expressions");
5
- class SourcedParameterTypeRegistry extends cucumber_expressions_1.ParameterTypeRegistry {
6
- constructor() {
7
- super(...arguments);
8
- this.parameterTypeToSource = new WeakMap();
9
- }
10
- defineSourcedParameterType(parameterType, source) {
11
- this.defineParameterType(parameterType);
12
- this.parameterTypeToSource.set(parameterType, source);
13
- }
14
- lookupSource(parameterType) {
15
- return this.parameterTypeToSource.get(parameterType);
16
- }
17
- }
18
- exports.SourcedParameterTypeRegistry = SourcedParameterTypeRegistry;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SourcedParameterTypeRegistry = void 0;
4
+ const cucumber_expressions_1 = require("@cucumber/cucumber-expressions");
5
+ class SourcedParameterTypeRegistry extends cucumber_expressions_1.ParameterTypeRegistry {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.parameterTypeToSource = new WeakMap();
9
+ }
10
+ defineSourcedParameterType(parameterType, source) {
11
+ this.defineParameterType(parameterType);
12
+ this.parameterTypeToSource.set(parameterType, source);
13
+ }
14
+ lookupSource(parameterType) {
15
+ return this.parameterTypeToSource.get(parameterType);
16
+ }
17
+ }
18
+ exports.SourcedParameterTypeRegistry = SourcedParameterTypeRegistry;
19
19
  //# sourceMappingURL=sourced_parameter_type_registry.js.map
@@ -1,88 +1,88 @@
1
- import * as messages from '@cucumber/messages';
2
- import TestCaseHookDefinition from '../models/test_case_hook_definition';
3
- import TestStepHookDefinition from '../models/test_step_hook_definition';
4
- import TestRunHookDefinition from '../models/test_run_hook_definition';
5
- import StepDefinition from '../models/step_definition';
6
- import { IWorld } from './world';
7
- import { SourcedParameterTypeRegistry } from './sourced_parameter_type_registry';
8
- export type DefineStepPattern = string | RegExp;
9
- export type ParallelAssignmentValidator = (pickle: messages.Pickle, runningPickles: messages.Pickle[]) => boolean;
10
- export interface ITestCaseHookParameter {
11
- gherkinDocument: messages.GherkinDocument;
12
- pickle: messages.Pickle;
13
- result?: messages.TestStepResult;
14
- willBeRetried?: boolean;
15
- testCaseStartedId: string;
16
- }
17
- export interface ITestStepHookParameter {
18
- gherkinDocument: messages.GherkinDocument;
19
- pickle: messages.Pickle;
20
- pickleStep: messages.PickleStep;
21
- result: messages.TestStepResult;
22
- testCaseStartedId: string;
23
- testStepId: string;
24
- }
25
- export type TestCaseHookFunction<WorldType> = (this: WorldType, arg: ITestCaseHookParameter) => any | Promise<any>;
26
- export type TestStepHookFunction<WorldType> = (this: WorldType, arg: ITestStepHookParameter) => any | Promise<any>;
27
- export type TestStepFunction<WorldType> = (this: WorldType, ...args: any[]) => any | Promise<any>;
28
- export interface IDefineStepOptions {
29
- timeout?: number;
30
- wrapperOptions?: any;
31
- }
32
- export interface IDefineTestCaseHookOptions {
33
- name?: string;
34
- tags?: string;
35
- timeout?: number;
36
- }
37
- export interface IDefineTestStepHookOptions {
38
- tags?: string;
39
- timeout?: number;
40
- }
41
- export interface IDefineTestRunHookOptions {
42
- timeout?: number;
43
- }
44
- export interface IParameterTypeDefinition<T> {
45
- name: string;
46
- regexp: readonly RegExp[] | readonly string[] | RegExp | string;
47
- transformer: (...match: string[]) => T;
48
- useForSnippets?: boolean;
49
- preferForRegexpMatch?: boolean;
50
- }
51
- export type IDefineStep = (<WorldType = IWorld>(pattern: DefineStepPattern, code: TestStepFunction<WorldType>) => void) & (<WorldType = IWorld>(pattern: DefineStepPattern, options: IDefineStepOptions, code: TestStepFunction<WorldType>) => void);
52
- export interface IDefineSupportCodeMethods {
53
- defineParameterType: (options: IParameterTypeDefinition<any>) => void;
54
- defineStep: IDefineStep;
55
- setDefaultTimeout: (milliseconds: number) => void;
56
- setDefinitionFunctionWrapper: (fn: Function) => void;
57
- setParallelCanAssign: (fn: ParallelAssignmentValidator) => void;
58
- setWorldConstructor: (fn: any) => void;
59
- After: (<WorldType = IWorld>(code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestCaseHookOptions, code: TestCaseHookFunction<WorldType>) => void);
60
- AfterStep: (<WorldType = IWorld>(code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestStepHookOptions, code: TestStepHookFunction<WorldType>) => void);
61
- AfterAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
62
- Before: (<WorldType = IWorld>(code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestCaseHookOptions, code: TestCaseHookFunction<WorldType>) => void);
63
- BeforeStep: (<WorldType = IWorld>(code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestStepHookOptions, code: TestStepHookFunction<WorldType>) => void);
64
- BeforeAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
65
- Given: IDefineStep;
66
- Then: IDefineStep;
67
- When: IDefineStep;
68
- }
69
- export interface ISupportCodeCoordinates {
70
- requireModules: string[];
71
- requirePaths: string[];
72
- importPaths: string[];
73
- }
74
- export interface ISupportCodeLibrary {
75
- readonly originalCoordinates: ISupportCodeCoordinates;
76
- readonly afterTestCaseHookDefinitions: TestCaseHookDefinition[];
77
- readonly afterTestStepHookDefinitions: TestStepHookDefinition[];
78
- readonly afterTestRunHookDefinitions: TestRunHookDefinition[];
79
- readonly beforeTestCaseHookDefinitions: TestCaseHookDefinition[];
80
- readonly beforeTestStepHookDefinitions: TestStepHookDefinition[];
81
- readonly beforeTestRunHookDefinitions: TestRunHookDefinition[];
82
- readonly defaultTimeout: number;
83
- readonly stepDefinitions: StepDefinition[];
84
- readonly undefinedParameterTypes: messages.UndefinedParameterType[];
85
- readonly parameterTypeRegistry: SourcedParameterTypeRegistry;
86
- readonly World: any;
87
- readonly parallelCanAssign: ParallelAssignmentValidator;
88
- }
1
+ import * as messages from '@cucumber/messages';
2
+ import TestCaseHookDefinition from '../models/test_case_hook_definition';
3
+ import TestStepHookDefinition from '../models/test_step_hook_definition';
4
+ import TestRunHookDefinition from '../models/test_run_hook_definition';
5
+ import StepDefinition from '../models/step_definition';
6
+ import { IWorld } from './world';
7
+ import { SourcedParameterTypeRegistry } from './sourced_parameter_type_registry';
8
+ export type DefineStepPattern = string | RegExp;
9
+ export type ParallelAssignmentValidator = (pickle: messages.Pickle, runningPickles: messages.Pickle[]) => boolean;
10
+ export interface ITestCaseHookParameter {
11
+ gherkinDocument: messages.GherkinDocument;
12
+ pickle: messages.Pickle;
13
+ result?: messages.TestStepResult;
14
+ willBeRetried?: boolean;
15
+ testCaseStartedId: string;
16
+ }
17
+ export interface ITestStepHookParameter {
18
+ gherkinDocument: messages.GherkinDocument;
19
+ pickle: messages.Pickle;
20
+ pickleStep: messages.PickleStep;
21
+ result: messages.TestStepResult;
22
+ testCaseStartedId: string;
23
+ testStepId: string;
24
+ }
25
+ export type TestCaseHookFunction<WorldType> = (this: WorldType, arg: ITestCaseHookParameter) => any | Promise<any>;
26
+ export type TestStepHookFunction<WorldType> = (this: WorldType, arg: ITestStepHookParameter) => any | Promise<any>;
27
+ export type TestStepFunction<WorldType> = (this: WorldType, ...args: any[]) => any | Promise<any>;
28
+ export interface IDefineStepOptions {
29
+ timeout?: number;
30
+ wrapperOptions?: any;
31
+ }
32
+ export interface IDefineTestCaseHookOptions {
33
+ name?: string;
34
+ tags?: string;
35
+ timeout?: number;
36
+ }
37
+ export interface IDefineTestStepHookOptions {
38
+ tags?: string;
39
+ timeout?: number;
40
+ }
41
+ export interface IDefineTestRunHookOptions {
42
+ timeout?: number;
43
+ }
44
+ export interface IParameterTypeDefinition<T> {
45
+ name: string;
46
+ regexp: readonly RegExp[] | readonly string[] | RegExp | string;
47
+ transformer: (...match: string[]) => T;
48
+ useForSnippets?: boolean;
49
+ preferForRegexpMatch?: boolean;
50
+ }
51
+ export type IDefineStep = (<WorldType = IWorld>(pattern: DefineStepPattern, code: TestStepFunction<WorldType>) => void) & (<WorldType = IWorld>(pattern: DefineStepPattern, options: IDefineStepOptions, code: TestStepFunction<WorldType>) => void);
52
+ export interface IDefineSupportCodeMethods {
53
+ defineParameterType: (options: IParameterTypeDefinition<any>) => void;
54
+ defineStep: IDefineStep;
55
+ setDefaultTimeout: (milliseconds: number) => void;
56
+ setDefinitionFunctionWrapper: (fn: Function) => void;
57
+ setParallelCanAssign: (fn: ParallelAssignmentValidator) => void;
58
+ setWorldConstructor: (fn: any) => void;
59
+ After: (<WorldType = IWorld>(code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestCaseHookOptions, code: TestCaseHookFunction<WorldType>) => void);
60
+ AfterStep: (<WorldType = IWorld>(code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestStepHookOptions, code: TestStepHookFunction<WorldType>) => void);
61
+ AfterAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
62
+ Before: (<WorldType = IWorld>(code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestCaseHookOptions, code: TestCaseHookFunction<WorldType>) => void);
63
+ BeforeStep: (<WorldType = IWorld>(code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestStepHookOptions, code: TestStepHookFunction<WorldType>) => void);
64
+ BeforeAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
65
+ Given: IDefineStep;
66
+ Then: IDefineStep;
67
+ When: IDefineStep;
68
+ }
69
+ export interface ISupportCodeCoordinates {
70
+ requireModules: string[];
71
+ requirePaths: string[];
72
+ importPaths: string[];
73
+ }
74
+ export interface ISupportCodeLibrary {
75
+ readonly originalCoordinates: ISupportCodeCoordinates;
76
+ readonly afterTestCaseHookDefinitions: TestCaseHookDefinition[];
77
+ readonly afterTestStepHookDefinitions: TestStepHookDefinition[];
78
+ readonly afterTestRunHookDefinitions: TestRunHookDefinition[];
79
+ readonly beforeTestCaseHookDefinitions: TestCaseHookDefinition[];
80
+ readonly beforeTestStepHookDefinitions: TestStepHookDefinition[];
81
+ readonly beforeTestRunHookDefinitions: TestRunHookDefinition[];
82
+ readonly defaultTimeout: number;
83
+ readonly stepDefinitions: StepDefinition[];
84
+ readonly undefinedParameterTypes: messages.UndefinedParameterType[];
85
+ readonly parameterTypeRegistry: SourcedParameterTypeRegistry;
86
+ readonly World: any;
87
+ readonly parallelCanAssign: ParallelAssignmentValidator;
88
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=types.js.map
@@ -1,12 +1,12 @@
1
- import { DefineStepPattern, IDefineStepOptions } from './types';
2
- interface IDefineStepArguments {
3
- pattern?: DefineStepPattern;
4
- options?: IDefineStepOptions;
5
- code?: Function;
6
- }
7
- export default function validateArguments({ args, fnName, location, }: {
8
- args?: IDefineStepArguments;
9
- fnName: string;
10
- location: string;
11
- }): void;
12
- export {};
1
+ import { DefineStepPattern, IDefineStepOptions } from './types';
2
+ interface IDefineStepArguments {
3
+ pattern?: DefineStepPattern;
4
+ options?: IDefineStepOptions;
5
+ code?: Function;
6
+ }
7
+ export default function validateArguments({ args, fnName, location, }: {
8
+ args?: IDefineStepArguments;
9
+ fnName: string;
10
+ location: string;
11
+ }): void;
12
+ export {};
@@ -1,73 +1,73 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const optionsValidation = {
4
- expectedType: 'object or function',
5
- predicate({ options }) {
6
- return typeof options === 'object';
7
- },
8
- };
9
- const optionsTimeoutValidation = {
10
- identifier: '"options.timeout"',
11
- expectedType: 'integer',
12
- predicate({ options }) {
13
- return options.timeout == null || typeof options.timeout === 'number';
14
- },
15
- };
16
- const fnValidation = {
17
- expectedType: 'function',
18
- predicate({ code }) {
19
- return typeof code === 'function';
20
- },
21
- };
22
- const validations = {
23
- defineTestRunHook: [
24
- { identifier: 'first argument', ...optionsValidation },
25
- optionsTimeoutValidation,
26
- { identifier: 'second argument', ...fnValidation },
27
- ],
28
- defineTestCaseHook: [
29
- { identifier: 'first argument', ...optionsValidation },
30
- {
31
- identifier: '"options.tags"',
32
- expectedType: 'string',
33
- predicate({ options }) {
34
- return options.tags == null || typeof options.tags === 'string';
35
- },
36
- },
37
- optionsTimeoutValidation,
38
- { identifier: 'second argument', ...fnValidation },
39
- ],
40
- defineTestStepHook: [
41
- { identifier: 'first argument', ...optionsValidation },
42
- {
43
- identifier: '"options.tags"',
44
- expectedType: 'string',
45
- predicate({ options }) {
46
- return options.tags == null || typeof options.tags === 'string';
47
- },
48
- },
49
- optionsTimeoutValidation,
50
- { identifier: 'second argument', ...fnValidation },
51
- ],
52
- defineStep: [
53
- {
54
- identifier: 'first argument',
55
- expectedType: 'string or regular expression',
56
- predicate({ pattern }) {
57
- return pattern instanceof RegExp || typeof pattern === 'string';
58
- },
59
- },
60
- { identifier: 'second argument', ...optionsValidation },
61
- optionsTimeoutValidation,
62
- { identifier: 'third argument', ...fnValidation },
63
- ],
64
- };
65
- function validateArguments({ args, fnName, location, }) {
66
- validations[fnName].forEach(({ identifier, expectedType, predicate }) => {
67
- if (!predicate(args)) {
68
- throw new Error(`${location}: Invalid ${identifier}: should be a ${expectedType}`);
69
- }
70
- });
71
- }
72
- exports.default = validateArguments;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const optionsValidation = {
4
+ expectedType: 'object or function',
5
+ predicate({ options }) {
6
+ return typeof options === 'object';
7
+ },
8
+ };
9
+ const optionsTimeoutValidation = {
10
+ identifier: '"options.timeout"',
11
+ expectedType: 'integer',
12
+ predicate({ options }) {
13
+ return options.timeout == null || typeof options.timeout === 'number';
14
+ },
15
+ };
16
+ const fnValidation = {
17
+ expectedType: 'function',
18
+ predicate({ code }) {
19
+ return typeof code === 'function';
20
+ },
21
+ };
22
+ const validations = {
23
+ defineTestRunHook: [
24
+ { identifier: 'first argument', ...optionsValidation },
25
+ optionsTimeoutValidation,
26
+ { identifier: 'second argument', ...fnValidation },
27
+ ],
28
+ defineTestCaseHook: [
29
+ { identifier: 'first argument', ...optionsValidation },
30
+ {
31
+ identifier: '"options.tags"',
32
+ expectedType: 'string',
33
+ predicate({ options }) {
34
+ return options.tags == null || typeof options.tags === 'string';
35
+ },
36
+ },
37
+ optionsTimeoutValidation,
38
+ { identifier: 'second argument', ...fnValidation },
39
+ ],
40
+ defineTestStepHook: [
41
+ { identifier: 'first argument', ...optionsValidation },
42
+ {
43
+ identifier: '"options.tags"',
44
+ expectedType: 'string',
45
+ predicate({ options }) {
46
+ return options.tags == null || typeof options.tags === 'string';
47
+ },
48
+ },
49
+ optionsTimeoutValidation,
50
+ { identifier: 'second argument', ...fnValidation },
51
+ ],
52
+ defineStep: [
53
+ {
54
+ identifier: 'first argument',
55
+ expectedType: 'string or regular expression',
56
+ predicate({ pattern }) {
57
+ return pattern instanceof RegExp || typeof pattern === 'string';
58
+ },
59
+ },
60
+ { identifier: 'second argument', ...optionsValidation },
61
+ optionsTimeoutValidation,
62
+ { identifier: 'third argument', ...fnValidation },
63
+ ],
64
+ };
65
+ function validateArguments({ args, fnName, location, }) {
66
+ validations[fnName].forEach(({ identifier, expectedType, predicate }) => {
67
+ if (!predicate(args)) {
68
+ throw new Error(`${location}: Invalid ${identifier}: should be a ${expectedType}`);
69
+ }
70
+ });
71
+ }
72
+ exports.default = validateArguments;
73
73
  //# sourceMappingURL=validate_arguments.js.map
@@ -1,18 +1,18 @@
1
- import { ICreateAttachment, ICreateLog } from '../runtime/attachment_manager';
2
- export interface IWorldOptions<ParametersType = any> {
3
- attach: ICreateAttachment;
4
- log: ICreateLog;
5
- parameters: ParametersType;
6
- }
7
- export interface IWorld<ParametersType = any> {
8
- readonly attach: ICreateAttachment;
9
- readonly log: ICreateLog;
10
- readonly parameters: ParametersType;
11
- [key: string]: any;
12
- }
13
- export default class World<ParametersType = any> implements IWorld<ParametersType> {
14
- readonly attach: ICreateAttachment;
15
- readonly log: ICreateLog;
16
- readonly parameters: ParametersType;
17
- constructor({ attach, log, parameters }: IWorldOptions<ParametersType>);
18
- }
1
+ import { ICreateAttachment, ICreateLog } from '../runtime/attachment_manager';
2
+ export interface IWorldOptions<ParametersType = any> {
3
+ attach: ICreateAttachment;
4
+ log: ICreateLog;
5
+ parameters: ParametersType;
6
+ }
7
+ export interface IWorld<ParametersType = any> {
8
+ readonly attach: ICreateAttachment;
9
+ readonly log: ICreateLog;
10
+ readonly parameters: ParametersType;
11
+ [key: string]: any;
12
+ }
13
+ export default class World<ParametersType = any> implements IWorld<ParametersType> {
14
+ readonly attach: ICreateAttachment;
15
+ readonly log: ICreateLog;
16
+ readonly parameters: ParametersType;
17
+ constructor({ attach, log, parameters }: IWorldOptions<ParametersType>);
18
+ }
@@ -1,11 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class World {
4
- constructor({ attach, log, parameters }) {
5
- this.attach = attach;
6
- this.log = log;
7
- this.parameters = parameters;
8
- }
9
- }
10
- exports.default = World;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class World {
4
+ constructor({ attach, log, parameters }) {
5
+ this.attach = attach;
6
+ this.log = log;
7
+ this.parameters = parameters;
8
+ }
9
+ }
10
+ exports.default = World;
11
11
  //# sourceMappingURL=world.js.map
package/lib/time.d.ts CHANGED
@@ -1,18 +1,18 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- import { performance } from 'perf_hooks';
4
- import * as messages from '@cucumber/messages';
5
- interface ProtectedTimingBuiltins {
6
- clearImmediate: typeof clearImmediate;
7
- clearInterval: typeof clearInterval;
8
- clearTimeout: typeof clearTimeout;
9
- Date: typeof Date;
10
- setImmediate: typeof setImmediate;
11
- setInterval: typeof setInterval;
12
- setTimeout: typeof setTimeout;
13
- performance: typeof performance;
14
- }
15
- declare const methods: Partial<ProtectedTimingBuiltins>;
16
- export declare function durationBetweenTimestamps(startedTimestamp: messages.Timestamp, finishedTimestamp: messages.Timestamp): messages.Duration;
17
- export declare function wrapPromiseWithTimeout<T>(promise: Promise<T>, timeoutInMilliseconds: number, timeoutMessage?: string): Promise<T>;
18
- export default methods;
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { performance } from 'perf_hooks';
4
+ import * as messages from '@cucumber/messages';
5
+ interface ProtectedTimingBuiltins {
6
+ clearImmediate: typeof clearImmediate;
7
+ clearInterval: typeof clearInterval;
8
+ clearTimeout: typeof clearTimeout;
9
+ Date: typeof Date;
10
+ setImmediate: typeof setImmediate;
11
+ setInterval: typeof setInterval;
12
+ setTimeout: typeof setTimeout;
13
+ performance: typeof performance;
14
+ }
15
+ declare const methods: Partial<ProtectedTimingBuiltins>;
16
+ export declare function durationBetweenTimestamps(startedTimestamp: messages.Timestamp, finishedTimestamp: messages.Timestamp): messages.Duration;
17
+ export declare function wrapPromiseWithTimeout<T>(promise: Promise<T>, timeoutInMilliseconds: number, timeoutMessage?: string): Promise<T>;
18
+ export default methods;
package/lib/time.js CHANGED
@@ -1,61 +1,61 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.wrapPromiseWithTimeout = exports.durationBetweenTimestamps = void 0;
27
- const perf_hooks_1 = require("perf_hooks");
28
- const messages = __importStar(require("@cucumber/messages"));
29
- const methods = {
30
- clearInterval: clearInterval.bind(global),
31
- clearTimeout: clearTimeout.bind(global),
32
- Date,
33
- setInterval: setInterval.bind(global),
34
- setTimeout: setTimeout.bind(global),
35
- performance: perf_hooks_1.performance,
36
- };
37
- if (typeof setImmediate !== 'undefined') {
38
- methods.setImmediate = setImmediate.bind(global);
39
- methods.clearImmediate = clearImmediate.bind(global);
40
- }
41
- function durationBetweenTimestamps(startedTimestamp, finishedTimestamp) {
42
- const durationMillis = messages.TimeConversion.timestampToMillisecondsSinceEpoch(finishedTimestamp) -
43
- messages.TimeConversion.timestampToMillisecondsSinceEpoch(startedTimestamp);
44
- return messages.TimeConversion.millisecondsToDuration(durationMillis);
45
- }
46
- exports.durationBetweenTimestamps = durationBetweenTimestamps;
47
- async function wrapPromiseWithTimeout(promise, timeoutInMilliseconds, timeoutMessage = '') {
48
- let timeoutId;
49
- if (timeoutMessage === '') {
50
- timeoutMessage = `Action did not complete within ${timeoutInMilliseconds} milliseconds`;
51
- }
52
- const timeoutPromise = new Promise((resolve, reject) => {
53
- timeoutId = methods.setTimeout(() => {
54
- reject(new Error(timeoutMessage));
55
- }, timeoutInMilliseconds);
56
- });
57
- return await Promise.race([promise, timeoutPromise]).finally(() => methods.clearTimeout(timeoutId));
58
- }
59
- exports.wrapPromiseWithTimeout = wrapPromiseWithTimeout;
60
- exports.default = methods;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.wrapPromiseWithTimeout = exports.durationBetweenTimestamps = void 0;
27
+ const perf_hooks_1 = require("perf_hooks");
28
+ const messages = __importStar(require("@cucumber/messages"));
29
+ const methods = {
30
+ clearInterval: clearInterval.bind(global),
31
+ clearTimeout: clearTimeout.bind(global),
32
+ Date,
33
+ setInterval: setInterval.bind(global),
34
+ setTimeout: setTimeout.bind(global),
35
+ performance: perf_hooks_1.performance,
36
+ };
37
+ if (typeof setImmediate !== 'undefined') {
38
+ methods.setImmediate = setImmediate.bind(global);
39
+ methods.clearImmediate = clearImmediate.bind(global);
40
+ }
41
+ function durationBetweenTimestamps(startedTimestamp, finishedTimestamp) {
42
+ const durationMillis = messages.TimeConversion.timestampToMillisecondsSinceEpoch(finishedTimestamp) -
43
+ messages.TimeConversion.timestampToMillisecondsSinceEpoch(startedTimestamp);
44
+ return messages.TimeConversion.millisecondsToDuration(durationMillis);
45
+ }
46
+ exports.durationBetweenTimestamps = durationBetweenTimestamps;
47
+ async function wrapPromiseWithTimeout(promise, timeoutInMilliseconds, timeoutMessage = '') {
48
+ let timeoutId;
49
+ if (timeoutMessage === '') {
50
+ timeoutMessage = `Action did not complete within ${timeoutInMilliseconds} milliseconds`;
51
+ }
52
+ const timeoutPromise = new Promise((resolve, reject) => {
53
+ timeoutId = methods.setTimeout(() => {
54
+ reject(new Error(timeoutMessage));
55
+ }, timeoutInMilliseconds);
56
+ });
57
+ return await Promise.race([promise, timeoutPromise]).finally(() => methods.clearTimeout(timeoutId));
58
+ }
59
+ exports.wrapPromiseWithTimeout = wrapPromiseWithTimeout;
60
+ exports.default = methods;
61
61
  //# sourceMappingURL=time.js.map
@@ -1,7 +1,7 @@
1
- /**
2
- * Provides a try guarded require call that will throw a more detailed error when
3
- * the ERR_REQUIRE_ESM error code is encountered.
4
- *
5
- * @param {string} path File path to require from.
6
- */
7
- export default function tryRequire(path: string): any;
1
+ /**
2
+ * Provides a try guarded require call that will throw a more detailed error when
3
+ * the ERR_REQUIRE_ESM error code is encountered.
4
+ *
5
+ * @param {string} path File path to require from.
6
+ */
7
+ export default function tryRequire(path: string): any;