@dev-blinq/cucumber-js 1.0.34 → 1.0.36

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/bin/download-install.js +0 -4
  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 +99 -99
  14. package/lib/api/index.d.ts +12 -12
  15. package/lib/api/index.js +27 -27
  16. package/lib/api/load_configuration.d.ts +9 -9
  17. package/lib/api/load_configuration.js +40 -40
  18. package/lib/api/load_sources.d.ts +9 -9
  19. package/lib/api/load_sources.js +52 -52
  20. package/lib/api/load_support.d.ts +10 -10
  21. package/lib/api/load_support.js +29 -29
  22. package/lib/api/paths.d.ts +8 -8
  23. package/lib/api/paths.js +101 -101
  24. package/lib/api/plugins.d.ts +4 -4
  25. package/lib/api/plugins.js +18 -18
  26. package/lib/api/run_cucumber.d.ts +11 -11
  27. package/lib/api/run_cucumber.js +114 -114
  28. package/lib/api/runtime.d.ts +21 -21
  29. package/lib/api/runtime.js +35 -35
  30. package/lib/api/support.d.ts +9 -9
  31. package/lib/api/support.js +25 -25
  32. package/lib/api/test_helpers.d.ts +3 -3
  33. package/lib/api/test_helpers.js +30 -30
  34. package/lib/api/types.d.ts +177 -177
  35. package/lib/api/types.js +2 -2
  36. package/lib/cli/helpers.d.ts +39 -39
  37. package/lib/cli/helpers.js +223 -223
  38. package/lib/cli/i18n.d.ts +2 -2
  39. package/lib/cli/i18n.js +69 -69
  40. package/lib/cli/index.d.ts +21 -21
  41. package/lib/cli/index.js +63 -63
  42. package/lib/cli/install_validator.d.ts +1 -1
  43. package/lib/cli/install_validator.js +13 -13
  44. package/lib/cli/run.d.ts +1 -1
  45. package/lib/cli/run.js +43 -43
  46. package/lib/cli/validate_node_engine_version.d.ts +10 -10
  47. package/lib/cli/validate_node_engine_version.js +23 -23
  48. package/lib/configuration/argv_parser.d.ts +20 -20
  49. package/lib/configuration/argv_parser.js +102 -102
  50. package/lib/configuration/check_schema.d.ts +2 -2
  51. package/lib/configuration/check_schema.js +59 -59
  52. package/lib/configuration/default_configuration.d.ts +2 -2
  53. package/lib/configuration/default_configuration.js +28 -28
  54. package/lib/configuration/from_file.d.ts +3 -3
  55. package/lib/configuration/from_file.js +84 -84
  56. package/lib/configuration/helpers.d.ts +1 -1
  57. package/lib/configuration/helpers.js +10 -10
  58. package/lib/configuration/index.d.ts +7 -7
  59. package/lib/configuration/index.js +28 -28
  60. package/lib/configuration/locate_file.d.ts +1 -1
  61. package/lib/configuration/locate_file.js +20 -20
  62. package/lib/configuration/merge_configurations.d.ts +2 -2
  63. package/lib/configuration/merge_configurations.js +47 -47
  64. package/lib/configuration/option_splitter.d.ts +3 -3
  65. package/lib/configuration/option_splitter.js +22 -22
  66. package/lib/configuration/types.d.ts +30 -30
  67. package/lib/configuration/types.js +2 -2
  68. package/lib/configuration/validate_configuration.d.ts +3 -3
  69. package/lib/configuration/validate_configuration.js +12 -12
  70. package/lib/filter_stack_trace.d.ts +3 -3
  71. package/lib/filter_stack_trace.js +37 -37
  72. package/lib/formatter/builder.d.ts +37 -37
  73. package/lib/formatter/builder.js +100 -100
  74. package/lib/formatter/bvt_analysis_formatter.d.ts +18 -18
  75. package/lib/formatter/bvt_analysis_formatter.js +192 -192
  76. package/lib/formatter/feature_data_format.d.ts +14 -14
  77. package/lib/formatter/feature_data_format.js +80 -80
  78. package/lib/formatter/fixtures/typescript.d.ts +2 -2
  79. package/lib/formatter/fixtures/typescript.js +5 -5
  80. package/lib/formatter/get_color_fns.d.ts +15 -15
  81. package/lib/formatter/get_color_fns.js +55 -55
  82. package/lib/formatter/helpers/duration_helpers.d.ts +2 -2
  83. package/lib/formatter/helpers/duration_helpers.js +8 -8
  84. package/lib/formatter/helpers/event_data_collector.d.ts +30 -30
  85. package/lib/formatter/helpers/event_data_collector.js +125 -125
  86. package/lib/formatter/helpers/formatters.d.ts +6 -6
  87. package/lib/formatter/helpers/formatters.js +44 -44
  88. package/lib/formatter/helpers/gherkin_document_parser.d.ts +5 -5
  89. package/lib/formatter/helpers/gherkin_document_parser.js +65 -65
  90. package/lib/formatter/helpers/index.d.ts +10 -10
  91. package/lib/formatter/helpers/index.js +51 -51
  92. package/lib/formatter/helpers/issue_helpers.d.ts +19 -19
  93. package/lib/formatter/helpers/issue_helpers.js +58 -58
  94. package/lib/formatter/helpers/keyword_type.d.ts +11 -11
  95. package/lib/formatter/helpers/keyword_type.js +31 -31
  96. package/lib/formatter/helpers/location_helpers.d.ts +2 -2
  97. package/lib/formatter/helpers/location_helpers.js +16 -16
  98. package/lib/formatter/helpers/pickle_parser.d.ts +17 -17
  99. package/lib/formatter/helpers/pickle_parser.js +27 -27
  100. package/lib/formatter/helpers/report_generator.d.ts +103 -103
  101. package/lib/formatter/helpers/report_generator.js +247 -247
  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 +2 -2
@@ -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
+ };