@dev-blinq/cucumber-js 1.0.36 → 1.0.37-stage

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 (251) hide show
  1. package/bin/cucumber-js +0 -0
  2. package/bin/cucumber.js +0 -0
  3. package/bin/download-install.js +51 -10
  4. package/lib/api/console_logger.d.ts +12 -12
  5. package/lib/api/console_logger.js +23 -23
  6. package/lib/api/convert_configuration.d.ts +4 -4
  7. package/lib/api/convert_configuration.js +65 -65
  8. package/lib/api/environment.d.ts +2 -2
  9. package/lib/api/environment.js +13 -13
  10. package/lib/api/formatters.d.ts +20 -20
  11. package/lib/api/formatters.js +60 -60
  12. package/lib/api/gherkin.d.ts +21 -21
  13. package/lib/api/gherkin.js +145 -99
  14. package/lib/api/gherkin.js.map +1 -1
  15. package/lib/api/index.d.ts +12 -12
  16. package/lib/api/index.js +27 -27
  17. package/lib/api/load_configuration.d.ts +9 -9
  18. package/lib/api/load_configuration.js +40 -40
  19. package/lib/api/load_sources.d.ts +9 -9
  20. package/lib/api/load_sources.js +52 -52
  21. package/lib/api/load_support.d.ts +10 -10
  22. package/lib/api/load_support.js +29 -29
  23. package/lib/api/paths.d.ts +8 -8
  24. package/lib/api/paths.js +101 -101
  25. package/lib/api/plugins.d.ts +4 -4
  26. package/lib/api/plugins.js +18 -18
  27. package/lib/api/run_cucumber.d.ts +11 -11
  28. package/lib/api/run_cucumber.js +114 -114
  29. package/lib/api/runtime.d.ts +21 -21
  30. package/lib/api/runtime.js +35 -35
  31. package/lib/api/support.d.ts +9 -9
  32. package/lib/api/support.js +25 -25
  33. package/lib/api/test_helpers.d.ts +3 -3
  34. package/lib/api/test_helpers.js +30 -30
  35. package/lib/api/types.d.ts +177 -177
  36. package/lib/api/types.js +2 -2
  37. package/lib/cli/helpers.d.ts +39 -39
  38. package/lib/cli/helpers.js +223 -223
  39. package/lib/cli/i18n.d.ts +2 -2
  40. package/lib/cli/i18n.js +69 -69
  41. package/lib/cli/index.d.ts +21 -21
  42. package/lib/cli/index.js +63 -63
  43. package/lib/cli/install_validator.d.ts +1 -1
  44. package/lib/cli/install_validator.js +13 -13
  45. package/lib/cli/run.d.ts +1 -1
  46. package/lib/cli/run.js +43 -43
  47. package/lib/cli/validate_node_engine_version.d.ts +10 -10
  48. package/lib/cli/validate_node_engine_version.js +23 -23
  49. package/lib/configuration/argv_parser.d.ts +20 -20
  50. package/lib/configuration/argv_parser.js +102 -102
  51. package/lib/configuration/axios_client.d.ts +1 -0
  52. package/lib/configuration/axios_client.js +40 -0
  53. package/lib/configuration/axios_client.js.map +1 -0
  54. package/lib/configuration/check_schema.d.ts +2 -2
  55. package/lib/configuration/check_schema.js +59 -59
  56. package/lib/configuration/default_configuration.d.ts +2 -2
  57. package/lib/configuration/default_configuration.js +28 -28
  58. package/lib/configuration/from_file.d.ts +3 -3
  59. package/lib/configuration/from_file.js +84 -84
  60. package/lib/configuration/helpers.d.ts +1 -1
  61. package/lib/configuration/helpers.js +10 -10
  62. package/lib/configuration/index.d.ts +7 -7
  63. package/lib/configuration/index.js +28 -28
  64. package/lib/configuration/locate_file.d.ts +1 -1
  65. package/lib/configuration/locate_file.js +20 -20
  66. package/lib/configuration/merge_configurations.d.ts +2 -2
  67. package/lib/configuration/merge_configurations.js +47 -47
  68. package/lib/configuration/option_splitter.d.ts +3 -3
  69. package/lib/configuration/option_splitter.js +22 -22
  70. package/lib/configuration/types.d.ts +30 -30
  71. package/lib/configuration/types.js +2 -2
  72. package/lib/configuration/validate_configuration.d.ts +3 -3
  73. package/lib/configuration/validate_configuration.js +12 -12
  74. package/lib/filter_stack_trace.d.ts +3 -3
  75. package/lib/filter_stack_trace.js +37 -37
  76. package/lib/formatter/api.d.ts +2 -0
  77. package/lib/formatter/api.js +53 -0
  78. package/lib/formatter/api.js.map +1 -0
  79. package/lib/formatter/builder.d.ts +37 -37
  80. package/lib/formatter/builder.js +100 -100
  81. package/lib/formatter/bvt_analysis_formatter.d.ts +19 -18
  82. package/lib/formatter/bvt_analysis_formatter.js +243 -192
  83. package/lib/formatter/bvt_analysis_formatter.js.map +1 -1
  84. package/lib/formatter/feature_data_format.d.ts +23 -14
  85. package/lib/formatter/feature_data_format.js +178 -80
  86. package/lib/formatter/feature_data_format.js.map +1 -1
  87. package/lib/formatter/fixtures/typescript.d.ts +2 -2
  88. package/lib/formatter/fixtures/typescript.js +5 -5
  89. package/lib/formatter/get_color_fns.d.ts +15 -15
  90. package/lib/formatter/get_color_fns.js +55 -55
  91. package/lib/formatter/helpers/duration_helpers.d.ts +2 -2
  92. package/lib/formatter/helpers/duration_helpers.js +8 -8
  93. package/lib/formatter/helpers/event_data_collector.d.ts +30 -30
  94. package/lib/formatter/helpers/event_data_collector.js +125 -125
  95. package/lib/formatter/helpers/formatters.d.ts +6 -6
  96. package/lib/formatter/helpers/formatters.js +44 -44
  97. package/lib/formatter/helpers/gherkin_document_parser.d.ts +5 -5
  98. package/lib/formatter/helpers/gherkin_document_parser.js +65 -65
  99. package/lib/formatter/helpers/index.d.ts +10 -10
  100. package/lib/formatter/helpers/index.js +51 -51
  101. package/lib/formatter/helpers/issue_helpers.d.ts +19 -19
  102. package/lib/formatter/helpers/issue_helpers.js +58 -58
  103. package/lib/formatter/helpers/keyword_type.d.ts +11 -11
  104. package/lib/formatter/helpers/keyword_type.js +31 -31
  105. package/lib/formatter/helpers/location_helpers.d.ts +2 -2
  106. package/lib/formatter/helpers/location_helpers.js +16 -16
  107. package/lib/formatter/helpers/pickle_parser.d.ts +17 -17
  108. package/lib/formatter/helpers/pickle_parser.js +27 -27
  109. package/lib/formatter/helpers/report_generator.d.ts +135 -103
  110. package/lib/formatter/helpers/report_generator.js +433 -247
  111. package/lib/formatter/helpers/report_generator.js.map +1 -1
  112. package/lib/formatter/helpers/step_argument_formatter.d.ts +2 -2
  113. package/lib/formatter/helpers/step_argument_formatter.js +47 -47
  114. package/lib/formatter/helpers/summary_helpers.d.ts +9 -9
  115. package/lib/formatter/helpers/summary_helpers.js +95 -95
  116. package/lib/formatter/helpers/test_case_attempt_formatter.d.ts +12 -12
  117. package/lib/formatter/helpers/test_case_attempt_formatter.js +113 -113
  118. package/lib/formatter/helpers/test_case_attempt_parser.d.ts +32 -32
  119. package/lib/formatter/helpers/test_case_attempt_parser.js +134 -134
  120. package/lib/formatter/helpers/upload_serivce.d.ts +14 -9
  121. package/lib/formatter/helpers/upload_serivce.js +171 -46
  122. package/lib/formatter/helpers/upload_serivce.js.map +1 -1
  123. package/lib/formatter/helpers/uploader.d.ts +11 -11
  124. package/lib/formatter/helpers/uploader.js +130 -56
  125. package/lib/formatter/helpers/uploader.js.map +1 -1
  126. package/lib/formatter/helpers/usage_helpers/index.d.ts +23 -23
  127. package/lib/formatter/helpers/usage_helpers/index.js +110 -110
  128. package/lib/formatter/html_formatter.d.ts +7 -7
  129. package/lib/formatter/html_formatter.js +29 -29
  130. package/lib/formatter/index.d.ts +53 -53
  131. package/lib/formatter/index.js +20 -20
  132. package/lib/formatter/json_formatter.d.ts +78 -78
  133. package/lib/formatter/json_formatter.js +229 -229
  134. package/lib/formatter/junit_formatter.d.ts +17 -17
  135. package/lib/formatter/junit_formatter.js +180 -180
  136. package/lib/formatter/message_formatter.d.ts +5 -5
  137. package/lib/formatter/message_formatter.js +14 -14
  138. package/lib/formatter/progress_bar_formatter.d.ts +18 -18
  139. package/lib/formatter/progress_bar_formatter.js +98 -98
  140. package/lib/formatter/progress_formatter.d.ts +9 -9
  141. package/lib/formatter/progress_formatter.js +58 -58
  142. package/lib/formatter/rerun_formatter.d.ts +13 -13
  143. package/lib/formatter/rerun_formatter.js +79 -79
  144. package/lib/formatter/snippets_formatter.d.ts +6 -6
  145. package/lib/formatter/snippets_formatter.js +60 -60
  146. package/lib/formatter/step_definition_snippet_builder/index.d.ts +20 -20
  147. package/lib/formatter/step_definition_snippet_builder/index.js +45 -45
  148. package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.d.ts +7 -7
  149. package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.js +45 -45
  150. package/lib/formatter/step_definition_snippet_builder/snippet_syntax.d.ts +16 -16
  151. package/lib/formatter/step_definition_snippet_builder/snippet_syntax.js +10 -10
  152. package/lib/formatter/summary_formatter.d.ts +14 -14
  153. package/lib/formatter/summary_formatter.js +67 -67
  154. package/lib/formatter/usage_formatter.d.ts +6 -6
  155. package/lib/formatter/usage_formatter.js +97 -97
  156. package/lib/formatter/usage_json_formatter.d.ts +7 -7
  157. package/lib/formatter/usage_json_formatter.js +33 -33
  158. package/lib/index.d.ts +58 -58
  159. package/lib/index.js +108 -108
  160. package/lib/logger.d.ts +5 -5
  161. package/lib/logger.js +2 -2
  162. package/lib/models/data_table.d.ts +10 -10
  163. package/lib/models/data_table.js +45 -45
  164. package/lib/models/definition.d.ts +55 -55
  165. package/lib/models/definition.js +21 -21
  166. package/lib/models/gherkin_step_keyword.d.ts +1 -1
  167. package/lib/models/gherkin_step_keyword.js +2 -2
  168. package/lib/models/pickle_order.d.ts +1 -1
  169. package/lib/models/pickle_order.js +2 -2
  170. package/lib/models/step_definition.d.ts +11 -11
  171. package/lib/models/step_definition.js +36 -36
  172. package/lib/models/test_case_hook_definition.d.ts +10 -10
  173. package/lib/models/test_case_hook_definition.js +26 -26
  174. package/lib/models/test_run_hook_definition.d.ts +3 -3
  175. package/lib/models/test_run_hook_definition.js +9 -9
  176. package/lib/models/test_step_hook_definition.d.ts +9 -9
  177. package/lib/models/test_step_hook_definition.js +25 -25
  178. package/lib/pickle_filter.d.ts +42 -42
  179. package/lib/pickle_filter.js +98 -98
  180. package/lib/plugin/index.d.ts +2 -2
  181. package/lib/plugin/index.js +18 -18
  182. package/lib/plugin/plugin_manager.d.ts +13 -13
  183. package/lib/plugin/plugin_manager.js +35 -35
  184. package/lib/plugin/types.d.ts +14 -14
  185. package/lib/plugin/types.js +2 -2
  186. package/lib/publish/http_stream.d.ts +30 -30
  187. package/lib/publish/http_stream.js +111 -111
  188. package/lib/publish/index.d.ts +2 -2
  189. package/lib/publish/index.js +4 -4
  190. package/lib/publish/publish_plugin.d.ts +2 -2
  191. package/lib/publish/publish_plugin.js +47 -47
  192. package/lib/runtime/assemble_test_cases.d.ts +13 -13
  193. package/lib/runtime/assemble_test_cases.js +87 -87
  194. package/lib/runtime/attachment_manager/index.d.ts +33 -33
  195. package/lib/runtime/attachment_manager/index.js +118 -118
  196. package/lib/runtime/format_error.d.ts +2 -2
  197. package/lib/runtime/format_error.js +35 -35
  198. package/lib/runtime/helpers.d.ts +6 -6
  199. package/lib/runtime/helpers.js +100 -100
  200. package/lib/runtime/index.d.ts +40 -40
  201. package/lib/runtime/index.js +75 -75
  202. package/lib/runtime/parallel/command_types.d.ts +32 -32
  203. package/lib/runtime/parallel/command_types.js +2 -2
  204. package/lib/runtime/parallel/coordinator.d.ts +72 -72
  205. package/lib/runtime/parallel/coordinator.js +221 -221
  206. package/lib/runtime/parallel/run_worker.d.ts +1 -1
  207. package/lib/runtime/parallel/run_worker.js +28 -28
  208. package/lib/runtime/parallel/worker.d.ts +26 -26
  209. package/lib/runtime/parallel/worker.js +86 -86
  210. package/lib/runtime/run_test_run_hooks.d.ts +3 -3
  211. package/lib/runtime/run_test_run_hooks.js +27 -27
  212. package/lib/runtime/step_runner.d.ts +16 -16
  213. package/lib/runtime/step_runner.js +87 -87
  214. package/lib/runtime/stopwatch.d.ts +12 -12
  215. package/lib/runtime/stopwatch.js +33 -33
  216. package/lib/runtime/test_case_runner.d.ts +54 -54
  217. package/lib/runtime/test_case_runner.js +267 -267
  218. package/lib/step_arguments.d.ts +6 -6
  219. package/lib/step_arguments.js +18 -18
  220. package/lib/support_code_library_builder/build_parameter_type.d.ts +3 -3
  221. package/lib/support_code_library_builder/build_parameter_type.js +12 -12
  222. package/lib/support_code_library_builder/get_definition_line_and_uri.d.ts +3 -3
  223. package/lib/support_code_library_builder/get_definition_line_and_uri.js +28 -28
  224. package/lib/support_code_library_builder/index.d.ts +74 -74
  225. package/lib/support_code_library_builder/index.js +296 -296
  226. package/lib/support_code_library_builder/parallel_can_assign_helpers.d.ts +2 -2
  227. package/lib/support_code_library_builder/parallel_can_assign_helpers.js +15 -15
  228. package/lib/support_code_library_builder/sourced_parameter_type_registry.d.ts +7 -7
  229. package/lib/support_code_library_builder/sourced_parameter_type_registry.js +18 -18
  230. package/lib/support_code_library_builder/types.d.ts +88 -88
  231. package/lib/support_code_library_builder/types.js +2 -2
  232. package/lib/support_code_library_builder/validate_arguments.d.ts +12 -12
  233. package/lib/support_code_library_builder/validate_arguments.js +72 -72
  234. package/lib/support_code_library_builder/world.d.ts +18 -18
  235. package/lib/support_code_library_builder/world.js +10 -10
  236. package/lib/time.d.ts +18 -18
  237. package/lib/time.js +60 -60
  238. package/lib/try_require.d.ts +7 -7
  239. package/lib/try_require.js +22 -22
  240. package/lib/types/index.d.ts +4 -4
  241. package/lib/types/index.js +2 -2
  242. package/lib/uncaught_exception_manager.d.ts +7 -7
  243. package/lib/uncaught_exception_manager.js +11 -11
  244. package/lib/user_code_runner.d.ts +14 -14
  245. package/lib/user_code_runner.js +81 -81
  246. package/lib/value_checker.d.ts +3 -3
  247. package/lib/value_checker.js +18 -18
  248. package/lib/version.d.ts +1 -1
  249. package/lib/version.js +5 -5
  250. package/lib/version.js.map +1 -1
  251. package/package.json +4 -1
@@ -1,60 +1,60 @@
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.checkSchema = void 0;
27
- const yup = __importStar(require("yup"));
28
- const gherkin_1 = require("@cucumber/gherkin");
29
- const schema = yup.object().shape({
30
- backtrace: yup.boolean(),
31
- dryRun: yup.boolean(),
32
- exit: yup.boolean(),
33
- failFast: yup.boolean(),
34
- format: yup.array().of(yup.string()),
35
- formatOptions: yup.object(),
36
- import: yup.array().of(yup.string()),
37
- language: yup.string().oneOf(Object.keys(gherkin_1.dialects)),
38
- name: yup.array().of(yup.string()),
39
- order: yup.string().oneOf(['defined', 'random']),
40
- paths: yup.array().of(yup.string()),
41
- parallel: yup.number().integer().min(0),
42
- publish: yup.boolean(),
43
- publishQuiet: yup.boolean(),
44
- require: yup.array().of(yup.string()),
45
- requireModule: yup.array().of(yup.string()),
46
- retry: yup.number().integer().min(0),
47
- retryTagFilter: yup.string(),
48
- strict: yup.boolean(),
49
- tags: yup.string(),
50
- worldParameters: yup.object(),
51
- });
52
- function checkSchema(configuration) {
53
- return schema.validateSync(configuration, {
54
- abortEarly: false,
55
- strict: true,
56
- stripUnknown: true,
57
- });
58
- }
59
- exports.checkSchema = checkSchema;
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.checkSchema = void 0;
27
+ const yup = __importStar(require("yup"));
28
+ const gherkin_1 = require("@cucumber/gherkin");
29
+ const schema = yup.object().shape({
30
+ backtrace: yup.boolean(),
31
+ dryRun: yup.boolean(),
32
+ exit: yup.boolean(),
33
+ failFast: yup.boolean(),
34
+ format: yup.array().of(yup.string()),
35
+ formatOptions: yup.object(),
36
+ import: yup.array().of(yup.string()),
37
+ language: yup.string().oneOf(Object.keys(gherkin_1.dialects)),
38
+ name: yup.array().of(yup.string()),
39
+ order: yup.string().oneOf(['defined', 'random']),
40
+ paths: yup.array().of(yup.string()),
41
+ parallel: yup.number().integer().min(0),
42
+ publish: yup.boolean(),
43
+ publishQuiet: yup.boolean(),
44
+ require: yup.array().of(yup.string()),
45
+ requireModule: yup.array().of(yup.string()),
46
+ retry: yup.number().integer().min(0),
47
+ retryTagFilter: yup.string(),
48
+ strict: yup.boolean(),
49
+ tags: yup.string(),
50
+ worldParameters: yup.object(),
51
+ });
52
+ function checkSchema(configuration) {
53
+ return schema.validateSync(configuration, {
54
+ abortEarly: false,
55
+ strict: true,
56
+ stripUnknown: true,
57
+ });
58
+ }
59
+ exports.checkSchema = checkSchema;
60
60
  //# sourceMappingURL=check_schema.js.map
@@ -1,2 +1,2 @@
1
- import { IConfiguration } from './types';
2
- export declare const DEFAULT_CONFIGURATION: IConfiguration;
1
+ import { IConfiguration } from './types';
2
+ export declare const DEFAULT_CONFIGURATION: IConfiguration;
@@ -1,29 +1,29 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_CONFIGURATION = void 0;
4
- exports.DEFAULT_CONFIGURATION = {
5
- backtrace: false,
6
- dryRun: false,
7
- forceExit: false,
8
- failFast: false,
9
- format: [],
10
- formatOptions: {},
11
- import: [],
12
- language: 'en',
13
- name: [],
14
- order: 'defined',
15
- paths: [],
16
- parallel: 0,
17
- publish: false,
18
- publishQuiet: false,
19
- require: [],
20
- requireModule: [],
21
- retry: 0,
22
- retryTagFilter: '',
23
- strict: true,
24
- tags: '',
25
- worldParameters: {},
26
- runName: '',
27
- bvtRerun: false,
28
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_CONFIGURATION = void 0;
4
+ exports.DEFAULT_CONFIGURATION = {
5
+ backtrace: false,
6
+ dryRun: false,
7
+ forceExit: false,
8
+ failFast: false,
9
+ format: [],
10
+ formatOptions: {},
11
+ import: [],
12
+ language: 'en',
13
+ name: [],
14
+ order: 'defined',
15
+ paths: [],
16
+ parallel: 0,
17
+ publish: false,
18
+ publishQuiet: false,
19
+ require: [],
20
+ requireModule: [],
21
+ retry: 0,
22
+ retryTagFilter: '',
23
+ strict: true,
24
+ tags: '',
25
+ worldParameters: {},
26
+ runName: '',
27
+ bvtRerun: false,
28
+ };
29
29
  //# sourceMappingURL=default_configuration.js.map
@@ -1,3 +1,3 @@
1
- import { IConfiguration } from './types';
2
- import { ILogger } from '../logger';
3
- export declare function fromFile(logger: ILogger, cwd: string, file: string, profiles?: string[]): Promise<Partial<IConfiguration>>;
1
+ import { IConfiguration } from './types';
2
+ import { ILogger } from '../logger';
3
+ export declare function fromFile(logger: ILogger, cwd: string, file: string, profiles?: string[]): Promise<Partial<IConfiguration>>;
@@ -1,85 +1,85 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.fromFile = void 0;
7
- const string_argv_1 = __importDefault(require("string-argv"));
8
- const fs_1 = __importDefault(require("fs"));
9
- const path_1 = __importDefault(require("path"));
10
- const yaml_1 = __importDefault(require("yaml"));
11
- const util_1 = require("util");
12
- const url_1 = require("url");
13
- const merge_configurations_1 = require("./merge_configurations");
14
- const argv_parser_1 = __importDefault(require("./argv_parser"));
15
- const check_schema_1 = require("./check_schema");
16
- // eslint-disable-next-line @typescript-eslint/no-var-requires
17
- const { importer } = require('../importer');
18
- async function fromFile(logger, cwd, file, profiles = []) {
19
- const definitions = await loadFile(cwd, file);
20
- if (!definitions.default) {
21
- logger.debug('No default profile defined in configuration file');
22
- definitions.default = {};
23
- }
24
- if (profiles.length < 1) {
25
- logger.debug('No profiles specified; using default profile');
26
- profiles = ['default'];
27
- }
28
- const definedKeys = Object.keys(definitions);
29
- profiles.forEach((profileKey) => {
30
- if (!definedKeys.includes(profileKey)) {
31
- throw new Error(`Requested profile "${profileKey}" doesn't exist`);
32
- }
33
- });
34
- return (0, merge_configurations_1.mergeConfigurations)({}, ...profiles.map((profileKey) => extractConfiguration(logger, profileKey, definitions[profileKey])));
35
- }
36
- exports.fromFile = fromFile;
37
- async function loadFile(cwd, file) {
38
- const filePath = path_1.default.join(cwd, file);
39
- const extension = path_1.default.extname(filePath);
40
- let definitions;
41
- switch (extension) {
42
- case '.json':
43
- definitions = JSON.parse(await (0, util_1.promisify)(fs_1.default.readFile)(filePath, { encoding: 'utf-8' }));
44
- break;
45
- case '.yaml':
46
- case '.yml':
47
- definitions = yaml_1.default.parse(await (0, util_1.promisify)(fs_1.default.readFile)(filePath, { encoding: 'utf-8' }));
48
- break;
49
- default:
50
- try {
51
- // eslint-disable-next-line @typescript-eslint/no-var-requires
52
- definitions = require(filePath);
53
- }
54
- catch (error) {
55
- if (error.code === 'ERR_REQUIRE_ESM') {
56
- definitions = await importer((0, url_1.pathToFileURL)(filePath));
57
- }
58
- else {
59
- throw error;
60
- }
61
- }
62
- }
63
- if (typeof definitions !== 'object') {
64
- throw new Error(`Configuration file ${filePath} does not export an object`);
65
- }
66
- return definitions;
67
- }
68
- function extractConfiguration(logger, name, definition) {
69
- if (typeof definition === 'string') {
70
- logger.debug(`Profile "${name}" value is a string; parsing as argv`);
71
- const { configuration } = argv_parser_1.default.parse([
72
- 'node',
73
- 'cucumber-js',
74
- ...(0, string_argv_1.default)(definition),
75
- ]);
76
- return configuration;
77
- }
78
- try {
79
- return (0, check_schema_1.checkSchema)(definition);
80
- }
81
- catch (error) {
82
- throw new Error(`Requested profile "${name}" failed schema validation: ${error.errors.join(' ')}`);
83
- }
84
- }
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.fromFile = void 0;
7
+ const string_argv_1 = __importDefault(require("string-argv"));
8
+ const fs_1 = __importDefault(require("fs"));
9
+ const path_1 = __importDefault(require("path"));
10
+ const yaml_1 = __importDefault(require("yaml"));
11
+ const util_1 = require("util");
12
+ const url_1 = require("url");
13
+ const merge_configurations_1 = require("./merge_configurations");
14
+ const argv_parser_1 = __importDefault(require("./argv_parser"));
15
+ const check_schema_1 = require("./check_schema");
16
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
17
+ const { importer } = require('../importer');
18
+ async function fromFile(logger, cwd, file, profiles = []) {
19
+ const definitions = await loadFile(cwd, file);
20
+ if (!definitions.default) {
21
+ logger.debug('No default profile defined in configuration file');
22
+ definitions.default = {};
23
+ }
24
+ if (profiles.length < 1) {
25
+ logger.debug('No profiles specified; using default profile');
26
+ profiles = ['default'];
27
+ }
28
+ const definedKeys = Object.keys(definitions);
29
+ profiles.forEach((profileKey) => {
30
+ if (!definedKeys.includes(profileKey)) {
31
+ throw new Error(`Requested profile "${profileKey}" doesn't exist`);
32
+ }
33
+ });
34
+ return (0, merge_configurations_1.mergeConfigurations)({}, ...profiles.map((profileKey) => extractConfiguration(logger, profileKey, definitions[profileKey])));
35
+ }
36
+ exports.fromFile = fromFile;
37
+ async function loadFile(cwd, file) {
38
+ const filePath = path_1.default.join(cwd, file);
39
+ const extension = path_1.default.extname(filePath);
40
+ let definitions;
41
+ switch (extension) {
42
+ case '.json':
43
+ definitions = JSON.parse(await (0, util_1.promisify)(fs_1.default.readFile)(filePath, { encoding: 'utf-8' }));
44
+ break;
45
+ case '.yaml':
46
+ case '.yml':
47
+ definitions = yaml_1.default.parse(await (0, util_1.promisify)(fs_1.default.readFile)(filePath, { encoding: 'utf-8' }));
48
+ break;
49
+ default:
50
+ try {
51
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
52
+ definitions = require(filePath);
53
+ }
54
+ catch (error) {
55
+ if (error.code === 'ERR_REQUIRE_ESM') {
56
+ definitions = await importer((0, url_1.pathToFileURL)(filePath));
57
+ }
58
+ else {
59
+ throw error;
60
+ }
61
+ }
62
+ }
63
+ if (typeof definitions !== 'object') {
64
+ throw new Error(`Configuration file ${filePath} does not export an object`);
65
+ }
66
+ return definitions;
67
+ }
68
+ function extractConfiguration(logger, name, definition) {
69
+ if (typeof definition === 'string') {
70
+ logger.debug(`Profile "${name}" value is a string; parsing as argv`);
71
+ const { configuration } = argv_parser_1.default.parse([
72
+ 'node',
73
+ 'cucumber-js',
74
+ ...(0, string_argv_1.default)(definition),
75
+ ]);
76
+ return configuration;
77
+ }
78
+ try {
79
+ return (0, check_schema_1.checkSchema)(definition);
80
+ }
81
+ catch (error) {
82
+ throw new Error(`Requested profile "${name}" failed schema validation: ${error.errors.join(' ')}`);
83
+ }
84
+ }
85
85
  //# sourceMappingURL=from_file.js.map
@@ -1 +1 @@
1
- export declare function isTruthyString(s: string | undefined): boolean;
1
+ export declare function isTruthyString(s: string | undefined): boolean;
@@ -1,11 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isTruthyString = void 0;
4
- function isTruthyString(s) {
5
- if (s === undefined) {
6
- return false;
7
- }
8
- return s.match(/^(false|no|0)$/i) === null;
9
- }
10
- exports.isTruthyString = isTruthyString;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isTruthyString = void 0;
4
+ function isTruthyString(s) {
5
+ if (s === undefined) {
6
+ return false;
7
+ }
8
+ return s.match(/^(false|no|0)$/i) === null;
9
+ }
10
+ exports.isTruthyString = isTruthyString;
11
11
  //# sourceMappingURL=helpers.js.map
@@ -1,7 +1,7 @@
1
- export { default as ArgvParser } from './argv_parser';
2
- export * from './default_configuration';
3
- export * from './from_file';
4
- export * from './helpers';
5
- export * from './merge_configurations';
6
- export * from './option_splitter';
7
- export * from './types';
1
+ export { default as ArgvParser } from './argv_parser';
2
+ export * from './default_configuration';
3
+ export * from './from_file';
4
+ export * from './helpers';
5
+ export * from './merge_configurations';
6
+ export * from './option_splitter';
7
+ export * from './types';
@@ -1,29 +1,29 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- var __importDefault = (this && this.__importDefault) || function (mod) {
17
- return (mod && mod.__esModule) ? mod : { "default": mod };
18
- };
19
- Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.ArgvParser = void 0;
21
- var argv_parser_1 = require("./argv_parser");
22
- Object.defineProperty(exports, "ArgvParser", { enumerable: true, get: function () { return __importDefault(argv_parser_1).default; } });
23
- __exportStar(require("./default_configuration"), exports);
24
- __exportStar(require("./from_file"), exports);
25
- __exportStar(require("./helpers"), exports);
26
- __exportStar(require("./merge_configurations"), exports);
27
- __exportStar(require("./option_splitter"), exports);
28
- __exportStar(require("./types"), exports);
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.ArgvParser = void 0;
21
+ var argv_parser_1 = require("./argv_parser");
22
+ Object.defineProperty(exports, "ArgvParser", { enumerable: true, get: function () { return __importDefault(argv_parser_1).default; } });
23
+ __exportStar(require("./default_configuration"), exports);
24
+ __exportStar(require("./from_file"), exports);
25
+ __exportStar(require("./helpers"), exports);
26
+ __exportStar(require("./merge_configurations"), exports);
27
+ __exportStar(require("./option_splitter"), exports);
28
+ __exportStar(require("./types"), exports);
29
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- export declare function locateFile(cwd: string): string | undefined;
1
+ export declare function locateFile(cwd: string): string | undefined;
@@ -1,21 +1,21 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.locateFile = void 0;
7
- const fs_1 = __importDefault(require("mz/fs"));
8
- const path_1 = __importDefault(require("path"));
9
- const DEFAULT_FILENAMES = [
10
- 'cucumber.js',
11
- 'cucumber.cjs',
12
- 'cucumber.mjs',
13
- 'cucumber.json',
14
- 'cucumber.yaml',
15
- 'cucumber.yml',
16
- ];
17
- function locateFile(cwd) {
18
- return DEFAULT_FILENAMES.find((filename) => fs_1.default.existsSync(path_1.default.join(cwd, filename)));
19
- }
20
- exports.locateFile = locateFile;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.locateFile = void 0;
7
+ const fs_1 = __importDefault(require("mz/fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const DEFAULT_FILENAMES = [
10
+ 'cucumber.js',
11
+ 'cucumber.cjs',
12
+ 'cucumber.mjs',
13
+ 'cucumber.json',
14
+ 'cucumber.yaml',
15
+ 'cucumber.yml',
16
+ ];
17
+ function locateFile(cwd) {
18
+ return DEFAULT_FILENAMES.find((filename) => fs_1.default.existsSync(path_1.default.join(cwd, filename)));
19
+ }
20
+ exports.locateFile = locateFile;
21
21
  //# sourceMappingURL=locate_file.js.map
@@ -1,2 +1,2 @@
1
- import { IConfiguration } from './types';
2
- export declare function mergeConfigurations<T = Partial<IConfiguration>>(source: T, ...configurations: Partial<IConfiguration>[]): T;
1
+ import { IConfiguration } from './types';
2
+ export declare function mergeConfigurations<T = Partial<IConfiguration>>(source: T, ...configurations: Partial<IConfiguration>[]): T;
@@ -1,48 +1,48 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.mergeConfigurations = void 0;
7
- const lodash_mergewith_1 = __importDefault(require("lodash.mergewith"));
8
- const ADDITIVE_ARRAYS = [
9
- 'format',
10
- 'import',
11
- 'name',
12
- 'paths',
13
- 'require',
14
- 'requireModule',
15
- ];
16
- const TAG_EXPRESSIONS = ['tags', 'retryTagFilter'];
17
- function mergeArrays(objValue, srcValue) {
18
- if (objValue && srcValue) {
19
- return [].concat(objValue, srcValue);
20
- }
21
- return undefined;
22
- }
23
- function mergeTagExpressions(objValue, srcValue) {
24
- if (objValue && srcValue) {
25
- return `${wrapTagExpression(objValue)} and ${wrapTagExpression(srcValue)}`;
26
- }
27
- return undefined;
28
- }
29
- function wrapTagExpression(raw) {
30
- if (raw.startsWith('(') && raw.endsWith(')')) {
31
- return raw;
32
- }
33
- return `(${raw})`;
34
- }
35
- function customizer(objValue, srcValue, key) {
36
- if (ADDITIVE_ARRAYS.includes(key)) {
37
- return mergeArrays(objValue, srcValue);
38
- }
39
- if (TAG_EXPRESSIONS.includes(key)) {
40
- return mergeTagExpressions(objValue, srcValue);
41
- }
42
- return undefined;
43
- }
44
- function mergeConfigurations(source, ...configurations) {
45
- return (0, lodash_mergewith_1.default)({}, source, ...configurations, customizer);
46
- }
47
- exports.mergeConfigurations = mergeConfigurations;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.mergeConfigurations = void 0;
7
+ const lodash_mergewith_1 = __importDefault(require("lodash.mergewith"));
8
+ const ADDITIVE_ARRAYS = [
9
+ 'format',
10
+ 'import',
11
+ 'name',
12
+ 'paths',
13
+ 'require',
14
+ 'requireModule',
15
+ ];
16
+ const TAG_EXPRESSIONS = ['tags', 'retryTagFilter'];
17
+ function mergeArrays(objValue, srcValue) {
18
+ if (objValue && srcValue) {
19
+ return [].concat(objValue, srcValue);
20
+ }
21
+ return undefined;
22
+ }
23
+ function mergeTagExpressions(objValue, srcValue) {
24
+ if (objValue && srcValue) {
25
+ return `${wrapTagExpression(objValue)} and ${wrapTagExpression(srcValue)}`;
26
+ }
27
+ return undefined;
28
+ }
29
+ function wrapTagExpression(raw) {
30
+ if (raw.startsWith('(') && raw.endsWith(')')) {
31
+ return raw;
32
+ }
33
+ return `(${raw})`;
34
+ }
35
+ function customizer(objValue, srcValue, key) {
36
+ if (ADDITIVE_ARRAYS.includes(key)) {
37
+ return mergeArrays(objValue, srcValue);
38
+ }
39
+ if (TAG_EXPRESSIONS.includes(key)) {
40
+ return mergeTagExpressions(objValue, srcValue);
41
+ }
42
+ return undefined;
43
+ }
44
+ function mergeConfigurations(source, ...configurations) {
45
+ return (0, lodash_mergewith_1.default)({}, source, ...configurations, customizer);
46
+ }
47
+ exports.mergeConfigurations = mergeConfigurations;
48
48
  //# sourceMappingURL=merge_configurations.js.map
@@ -1,3 +1,3 @@
1
- export declare const OptionSplitter: {
2
- split(option: string): string[];
3
- };
1
+ export declare const OptionSplitter: {
2
+ split(option: string): string[];
3
+ };