@dev-blinq/cucumber-js 1.0.6 → 1.0.8
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.
- package/bin/cucumber-js +0 -0
- package/bin/cucumber.js +0 -0
- package/lib/api/console_logger.d.ts +12 -12
- package/lib/api/console_logger.js +23 -23
- package/lib/api/convert_configuration.d.ts +4 -4
- package/lib/api/convert_configuration.js +64 -64
- package/lib/api/environment.d.ts +2 -2
- package/lib/api/environment.js +13 -13
- package/lib/api/formatters.d.ts +20 -20
- package/lib/api/formatters.js +60 -60
- package/lib/api/gherkin.d.ts +21 -21
- package/lib/api/gherkin.js +99 -99
- package/lib/api/index.d.ts +12 -12
- package/lib/api/index.js +27 -27
- package/lib/api/load_configuration.d.ts +9 -9
- package/lib/api/load_configuration.js +40 -40
- package/lib/api/load_sources.d.ts +9 -9
- package/lib/api/load_sources.js +52 -52
- package/lib/api/load_support.d.ts +10 -10
- package/lib/api/load_support.js +29 -29
- package/lib/api/paths.d.ts +8 -8
- package/lib/api/paths.js +101 -101
- package/lib/api/plugins.d.ts +4 -4
- package/lib/api/plugins.js +18 -18
- package/lib/api/run_cucumber.d.ts +11 -11
- package/lib/api/run_cucumber.js +114 -114
- package/lib/api/runtime.d.ts +21 -21
- package/lib/api/runtime.js +35 -35
- package/lib/api/support.d.ts +9 -9
- package/lib/api/support.js +25 -25
- package/lib/api/test_helpers.d.ts +3 -3
- package/lib/api/test_helpers.js +30 -30
- package/lib/api/types.d.ts +175 -175
- package/lib/api/types.js +2 -2
- package/lib/cli/helpers.d.ts +37 -37
- package/lib/cli/helpers.js +202 -202
- package/lib/cli/i18n.d.ts +2 -2
- package/lib/cli/i18n.js +69 -69
- package/lib/cli/index.d.ts +21 -21
- package/lib/cli/index.js +58 -58
- package/lib/cli/install_validator.d.ts +1 -1
- package/lib/cli/install_validator.js +13 -13
- package/lib/cli/run.d.ts +1 -1
- package/lib/cli/run.js +43 -43
- package/lib/cli/validate_node_engine_version.d.ts +10 -10
- package/lib/cli/validate_node_engine_version.js +23 -23
- package/lib/configuration/argv_parser.d.ts +20 -20
- package/lib/configuration/argv_parser.js +100 -100
- package/lib/configuration/check_schema.d.ts +2 -2
- package/lib/configuration/check_schema.js +59 -59
- package/lib/configuration/default_configuration.d.ts +2 -2
- package/lib/configuration/default_configuration.js +26 -26
- package/lib/configuration/from_file.d.ts +3 -3
- package/lib/configuration/from_file.js +84 -84
- package/lib/configuration/helpers.d.ts +1 -1
- package/lib/configuration/helpers.js +10 -10
- package/lib/configuration/index.d.ts +7 -7
- package/lib/configuration/index.js +28 -28
- package/lib/configuration/locate_file.d.ts +1 -1
- package/lib/configuration/locate_file.js +20 -20
- package/lib/configuration/merge_configurations.d.ts +2 -2
- package/lib/configuration/merge_configurations.js +47 -47
- package/lib/configuration/option_splitter.d.ts +3 -3
- package/lib/configuration/option_splitter.js +22 -22
- package/lib/configuration/types.d.ts +28 -28
- package/lib/configuration/types.js +2 -2
- package/lib/configuration/validate_configuration.d.ts +3 -3
- package/lib/configuration/validate_configuration.js +12 -12
- package/lib/filter_stack_trace.d.ts +3 -3
- package/lib/filter_stack_trace.js +37 -37
- package/lib/formatter/builder.d.ts +37 -37
- package/lib/formatter/builder.js +100 -100
- package/lib/formatter/bvt_formatter.d.ts +5 -0
- package/lib/formatter/bvt_formatter.js +21 -0
- package/lib/formatter/bvt_formatter.js.map +1 -0
- package/lib/formatter/feature_data_format.d.ts +14 -14
- package/lib/formatter/feature_data_format.js +80 -80
- package/lib/formatter/feature_data_format.js.map +1 -1
- package/lib/formatter/fixtures/typescript.d.ts +2 -2
- package/lib/formatter/fixtures/typescript.js +5 -5
- package/lib/formatter/get_color_fns.d.ts +15 -15
- package/lib/formatter/get_color_fns.js +55 -55
- package/lib/formatter/helpers/duration_helpers.d.ts +2 -2
- package/lib/formatter/helpers/duration_helpers.js +8 -8
- package/lib/formatter/helpers/event_data_collector.d.ts +30 -30
- package/lib/formatter/helpers/event_data_collector.js +125 -125
- package/lib/formatter/helpers/formatters.d.ts +6 -6
- package/lib/formatter/helpers/formatters.js +44 -42
- package/lib/formatter/helpers/formatters.js.map +1 -1
- package/lib/formatter/helpers/gherkin_document_parser.d.ts +5 -5
- package/lib/formatter/helpers/gherkin_document_parser.js +65 -65
- package/lib/formatter/helpers/index.d.ts +10 -10
- package/lib/formatter/helpers/index.js +51 -51
- package/lib/formatter/helpers/issue_helpers.d.ts +19 -19
- package/lib/formatter/helpers/issue_helpers.js +58 -58
- package/lib/formatter/helpers/keyword_type.d.ts +11 -11
- package/lib/formatter/helpers/keyword_type.js +31 -31
- package/lib/formatter/helpers/location_helpers.d.ts +2 -2
- package/lib/formatter/helpers/location_helpers.js +16 -16
- package/lib/formatter/helpers/pickle_parser.d.ts +17 -17
- package/lib/formatter/helpers/pickle_parser.js +27 -27
- package/lib/formatter/helpers/report_generator.d.ts +91 -0
- package/lib/formatter/helpers/report_generator.js +235 -0
- package/lib/formatter/helpers/report_generator.js.map +1 -0
- package/lib/formatter/helpers/step_argument_formatter.d.ts +2 -2
- package/lib/formatter/helpers/step_argument_formatter.js +47 -47
- package/lib/formatter/helpers/summary_helpers.d.ts +9 -9
- package/lib/formatter/helpers/summary_helpers.js +95 -95
- package/lib/formatter/helpers/test_case_attempt_formatter.d.ts +12 -12
- package/lib/formatter/helpers/test_case_attempt_formatter.js +113 -113
- package/lib/formatter/helpers/test_case_attempt_parser.d.ts +32 -32
- package/lib/formatter/helpers/test_case_attempt_parser.js +134 -134
- package/lib/formatter/helpers/usage_helpers/index.d.ts +23 -23
- package/lib/formatter/helpers/usage_helpers/index.js +110 -110
- package/lib/formatter/html_formatter.d.ts +7 -7
- package/lib/formatter/html_formatter.js +29 -29
- package/lib/formatter/index.d.ts +53 -53
- package/lib/formatter/index.js +20 -20
- package/lib/formatter/json_formatter.d.ts +78 -78
- package/lib/formatter/json_formatter.js +229 -229
- package/lib/formatter/junit_formatter.d.ts +17 -17
- package/lib/formatter/junit_formatter.js +180 -180
- package/lib/formatter/message_formatter.d.ts +5 -5
- package/lib/formatter/message_formatter.js +14 -14
- package/lib/formatter/progress_bar_formatter.d.ts +18 -18
- package/lib/formatter/progress_bar_formatter.js +98 -98
- package/lib/formatter/progress_formatter.d.ts +9 -9
- package/lib/formatter/progress_formatter.js +58 -58
- package/lib/formatter/rerun_formatter.d.ts +13 -13
- package/lib/formatter/rerun_formatter.js +79 -79
- package/lib/formatter/snippets_formatter.d.ts +6 -6
- package/lib/formatter/snippets_formatter.js +60 -60
- package/lib/formatter/step_definition_snippet_builder/index.d.ts +20 -20
- package/lib/formatter/step_definition_snippet_builder/index.js +45 -45
- package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.d.ts +7 -7
- package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.js +45 -45
- package/lib/formatter/step_definition_snippet_builder/snippet_syntax.d.ts +16 -16
- package/lib/formatter/step_definition_snippet_builder/snippet_syntax.js +10 -10
- package/lib/formatter/summary_formatter.d.ts +14 -14
- package/lib/formatter/summary_formatter.js +67 -67
- package/lib/formatter/usage_formatter.d.ts +6 -6
- package/lib/formatter/usage_formatter.js +97 -97
- package/lib/formatter/usage_json_formatter.d.ts +7 -7
- package/lib/formatter/usage_json_formatter.js +33 -33
- package/lib/index.d.ts +58 -58
- package/lib/index.js +108 -108
- package/lib/logger.d.ts +5 -5
- package/lib/logger.js +2 -2
- package/lib/models/data_table.d.ts +10 -10
- package/lib/models/data_table.js +45 -45
- package/lib/models/definition.d.ts +55 -55
- package/lib/models/definition.js +21 -21
- package/lib/models/gherkin_step_keyword.d.ts +1 -1
- package/lib/models/gherkin_step_keyword.js +2 -2
- package/lib/models/pickle_order.d.ts +1 -1
- package/lib/models/pickle_order.js +2 -2
- package/lib/models/step_definition.d.ts +11 -11
- package/lib/models/step_definition.js +36 -36
- package/lib/models/test_case_hook_definition.d.ts +10 -10
- package/lib/models/test_case_hook_definition.js +26 -26
- package/lib/models/test_run_hook_definition.d.ts +3 -3
- package/lib/models/test_run_hook_definition.js +9 -9
- package/lib/models/test_step_hook_definition.d.ts +9 -9
- package/lib/models/test_step_hook_definition.js +25 -25
- package/lib/pickle_filter.d.ts +42 -42
- package/lib/pickle_filter.js +98 -98
- package/lib/plugin/index.d.ts +2 -2
- package/lib/plugin/index.js +18 -18
- package/lib/plugin/plugin_manager.d.ts +13 -13
- package/lib/plugin/plugin_manager.js +35 -35
- package/lib/plugin/types.d.ts +14 -14
- package/lib/plugin/types.js +2 -2
- package/lib/publish/http_stream.d.ts +30 -30
- package/lib/publish/http_stream.js +111 -111
- package/lib/publish/index.d.ts +2 -2
- package/lib/publish/index.js +4 -4
- package/lib/publish/publish_plugin.d.ts +2 -2
- package/lib/publish/publish_plugin.js +47 -47
- package/lib/runtime/assemble_test_cases.d.ts +13 -13
- package/lib/runtime/assemble_test_cases.js +87 -87
- package/lib/runtime/attachment_manager/index.d.ts +33 -33
- package/lib/runtime/attachment_manager/index.js +118 -118
- package/lib/runtime/format_error.d.ts +2 -2
- package/lib/runtime/format_error.js +35 -35
- package/lib/runtime/helpers.d.ts +6 -6
- package/lib/runtime/helpers.js +100 -100
- package/lib/runtime/index.d.ts +40 -40
- package/lib/runtime/index.js +75 -75
- package/lib/runtime/parallel/command_types.d.ts +32 -32
- package/lib/runtime/parallel/command_types.js +2 -2
- package/lib/runtime/parallel/coordinator.d.ts +72 -72
- package/lib/runtime/parallel/coordinator.js +221 -221
- package/lib/runtime/parallel/run_worker.d.ts +1 -1
- package/lib/runtime/parallel/run_worker.js +28 -28
- package/lib/runtime/parallel/worker.d.ts +26 -26
- package/lib/runtime/parallel/worker.js +86 -86
- package/lib/runtime/run_test_run_hooks.d.ts +3 -3
- package/lib/runtime/run_test_run_hooks.js +27 -27
- package/lib/runtime/step_runner.d.ts +16 -16
- package/lib/runtime/step_runner.js +87 -87
- package/lib/runtime/stopwatch.d.ts +12 -12
- package/lib/runtime/stopwatch.js +33 -33
- package/lib/runtime/test_case_runner.d.ts +54 -54
- package/lib/runtime/test_case_runner.js +267 -267
- package/lib/step_arguments.d.ts +6 -6
- package/lib/step_arguments.js +18 -18
- package/lib/support_code_library_builder/build_parameter_type.d.ts +3 -3
- package/lib/support_code_library_builder/build_parameter_type.js +12 -12
- package/lib/support_code_library_builder/get_definition_line_and_uri.d.ts +3 -3
- package/lib/support_code_library_builder/get_definition_line_and_uri.js +28 -28
- package/lib/support_code_library_builder/index.d.ts +74 -74
- package/lib/support_code_library_builder/index.js +296 -296
- package/lib/support_code_library_builder/parallel_can_assign_helpers.d.ts +2 -2
- package/lib/support_code_library_builder/parallel_can_assign_helpers.js +15 -15
- package/lib/support_code_library_builder/sourced_parameter_type_registry.d.ts +7 -7
- package/lib/support_code_library_builder/sourced_parameter_type_registry.js +18 -18
- package/lib/support_code_library_builder/types.d.ts +88 -88
- package/lib/support_code_library_builder/types.js +2 -2
- package/lib/support_code_library_builder/validate_arguments.d.ts +12 -12
- package/lib/support_code_library_builder/validate_arguments.js +72 -72
- package/lib/support_code_library_builder/world.d.ts +18 -18
- package/lib/support_code_library_builder/world.js +10 -10
- package/lib/time.d.ts +18 -18
- package/lib/time.js +60 -60
- package/lib/try_require.d.ts +7 -7
- package/lib/try_require.js +22 -22
- package/lib/types/index.d.ts +4 -4
- package/lib/types/index.js +2 -2
- package/lib/uncaught_exception_manager.d.ts +7 -7
- package/lib/uncaught_exception_manager.js +11 -11
- package/lib/user_code_runner.d.ts +14 -14
- package/lib/user_code_runner.js +81 -81
- package/lib/value_checker.d.ts +3 -3
- package/lib/value_checker.js +18 -18
- package/lib/version.d.ts +1 -1
- package/lib/version.js +5 -5
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
package/lib/plugin/index.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./types"), exports);
|
|
18
|
-
__exportStar(require("./plugin_manager"), 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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./types"), exports);
|
|
18
|
+
__exportStar(require("./plugin_manager"), exports);
|
|
19
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { Plugin, PluginEvents } from './types';
|
|
2
|
-
import { IRunEnvironment, IRunOptions } from '../api';
|
|
3
|
-
import { ILogger } from '../logger';
|
|
4
|
-
export declare class PluginManager {
|
|
5
|
-
private pluginFns;
|
|
6
|
-
private handlers;
|
|
7
|
-
private cleanupFns;
|
|
8
|
-
constructor(pluginFns: Plugin[]);
|
|
9
|
-
private register;
|
|
10
|
-
init(logger: ILogger, configuration: IRunOptions, environment: IRunEnvironment): Promise<void>;
|
|
11
|
-
emit<K extends keyof PluginEvents>(event: K, value: PluginEvents[K]): void;
|
|
12
|
-
cleanup(): Promise<void>;
|
|
13
|
-
}
|
|
1
|
+
import { Plugin, PluginEvents } from './types';
|
|
2
|
+
import { IRunEnvironment, IRunOptions } from '../api';
|
|
3
|
+
import { ILogger } from '../logger';
|
|
4
|
+
export declare class PluginManager {
|
|
5
|
+
private pluginFns;
|
|
6
|
+
private handlers;
|
|
7
|
+
private cleanupFns;
|
|
8
|
+
constructor(pluginFns: Plugin[]);
|
|
9
|
+
private register;
|
|
10
|
+
init(logger: ILogger, configuration: IRunOptions, environment: IRunEnvironment): Promise<void>;
|
|
11
|
+
emit<K extends keyof PluginEvents>(event: K, value: PluginEvents[K]): void;
|
|
12
|
+
cleanup(): Promise<void>;
|
|
13
|
+
}
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PluginManager = void 0;
|
|
4
|
-
class PluginManager {
|
|
5
|
-
constructor(pluginFns) {
|
|
6
|
-
this.pluginFns = pluginFns;
|
|
7
|
-
this.handlers = { message: [] };
|
|
8
|
-
this.cleanupFns = [];
|
|
9
|
-
}
|
|
10
|
-
async register(event, handler) {
|
|
11
|
-
this.handlers[event].push(handler);
|
|
12
|
-
}
|
|
13
|
-
async init(logger, configuration, environment) {
|
|
14
|
-
for (const pluginFn of this.pluginFns) {
|
|
15
|
-
const cleanupFn = await pluginFn({
|
|
16
|
-
on: this.register.bind(this),
|
|
17
|
-
logger,
|
|
18
|
-
configuration,
|
|
19
|
-
environment,
|
|
20
|
-
});
|
|
21
|
-
if (cleanupFn) {
|
|
22
|
-
this.cleanupFns.push(cleanupFn);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
emit(event, value) {
|
|
27
|
-
this.handlers[event].forEach((handler) => handler(value));
|
|
28
|
-
}
|
|
29
|
-
async cleanup() {
|
|
30
|
-
for (const cleanupFn of this.cleanupFns) {
|
|
31
|
-
await cleanupFn();
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
exports.PluginManager = PluginManager;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PluginManager = void 0;
|
|
4
|
+
class PluginManager {
|
|
5
|
+
constructor(pluginFns) {
|
|
6
|
+
this.pluginFns = pluginFns;
|
|
7
|
+
this.handlers = { message: [] };
|
|
8
|
+
this.cleanupFns = [];
|
|
9
|
+
}
|
|
10
|
+
async register(event, handler) {
|
|
11
|
+
this.handlers[event].push(handler);
|
|
12
|
+
}
|
|
13
|
+
async init(logger, configuration, environment) {
|
|
14
|
+
for (const pluginFn of this.pluginFns) {
|
|
15
|
+
const cleanupFn = await pluginFn({
|
|
16
|
+
on: this.register.bind(this),
|
|
17
|
+
logger,
|
|
18
|
+
configuration,
|
|
19
|
+
environment,
|
|
20
|
+
});
|
|
21
|
+
if (cleanupFn) {
|
|
22
|
+
this.cleanupFns.push(cleanupFn);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
emit(event, value) {
|
|
27
|
+
this.handlers[event].forEach((handler) => handler(value));
|
|
28
|
+
}
|
|
29
|
+
async cleanup() {
|
|
30
|
+
for (const cleanupFn of this.cleanupFns) {
|
|
31
|
+
await cleanupFn();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.PluginManager = PluginManager;
|
|
36
36
|
//# sourceMappingURL=plugin_manager.js.map
|
package/lib/plugin/types.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { IRunEnvironment, IRunOptions } from '../api';
|
|
2
|
-
import { Envelope } from '@cucumber/messages';
|
|
3
|
-
import { ILogger } from '../logger';
|
|
4
|
-
export interface PluginEvents {
|
|
5
|
-
message: Envelope;
|
|
6
|
-
}
|
|
7
|
-
export interface PluginContext {
|
|
8
|
-
on: <K extends keyof PluginEvents>(event: K, handler: (value: PluginEvents[K]) => void) => void;
|
|
9
|
-
logger: ILogger;
|
|
10
|
-
configuration: IRunOptions;
|
|
11
|
-
environment: IRunEnvironment;
|
|
12
|
-
}
|
|
13
|
-
export type PluginCleanup = () => any | void | Promise<any | void>;
|
|
14
|
-
export type Plugin = (context: PluginContext) => Promise<PluginCleanup | void>;
|
|
1
|
+
import { IRunEnvironment, IRunOptions } from '../api';
|
|
2
|
+
import { Envelope } from '@cucumber/messages';
|
|
3
|
+
import { ILogger } from '../logger';
|
|
4
|
+
export interface PluginEvents {
|
|
5
|
+
message: Envelope;
|
|
6
|
+
}
|
|
7
|
+
export interface PluginContext {
|
|
8
|
+
on: <K extends keyof PluginEvents>(event: K, handler: (value: PluginEvents[K]) => void) => void;
|
|
9
|
+
logger: ILogger;
|
|
10
|
+
configuration: IRunOptions;
|
|
11
|
+
environment: IRunEnvironment;
|
|
12
|
+
}
|
|
13
|
+
export type PluginCleanup = () => any | void | Promise<any | void>;
|
|
14
|
+
export type Plugin = (context: PluginContext) => Promise<PluginCleanup | void>;
|
package/lib/plugin/types.js
CHANGED
|
@@ -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,30 +1,30 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
/// <reference types="node" />
|
|
3
|
-
/// <reference types="node" />
|
|
4
|
-
import { Transform } from 'stream';
|
|
5
|
-
import http from 'http';
|
|
6
|
-
type HttpMethod = 'GET' | 'POST' | 'PUT';
|
|
7
|
-
/**
|
|
8
|
-
* This Writable writes data to a HTTP/HTTPS URL.
|
|
9
|
-
*
|
|
10
|
-
* It has special handling for https://reports.cucumber.io/
|
|
11
|
-
* which uses an API where the first request is a `GET`,
|
|
12
|
-
* and if the response is 202 with a Location header, issues
|
|
13
|
-
* a PUT request to that URL.
|
|
14
|
-
*
|
|
15
|
-
* 3xx redirects are not currently followed.
|
|
16
|
-
*/
|
|
17
|
-
export default class HttpStream extends Transform {
|
|
18
|
-
private readonly url;
|
|
19
|
-
private readonly method;
|
|
20
|
-
private readonly headers;
|
|
21
|
-
private tempFilePath;
|
|
22
|
-
private tempFile;
|
|
23
|
-
constructor(url: string, method: HttpMethod, headers: http.OutgoingHttpHeaders);
|
|
24
|
-
_write(chunk: any, encoding: BufferEncoding, callback: (err?: Error | null) => void): void;
|
|
25
|
-
_final(callback: (error?: Error | null) => void): void;
|
|
26
|
-
private pushResponseBody;
|
|
27
|
-
private emitErrorUnlessHttp2xx;
|
|
28
|
-
private sendHttpRequest;
|
|
29
|
-
}
|
|
30
|
-
export {};
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
4
|
+
import { Transform } from 'stream';
|
|
5
|
+
import http from 'http';
|
|
6
|
+
type HttpMethod = 'GET' | 'POST' | 'PUT';
|
|
7
|
+
/**
|
|
8
|
+
* This Writable writes data to a HTTP/HTTPS URL.
|
|
9
|
+
*
|
|
10
|
+
* It has special handling for https://reports.cucumber.io/
|
|
11
|
+
* which uses an API where the first request is a `GET`,
|
|
12
|
+
* and if the response is 202 with a Location header, issues
|
|
13
|
+
* a PUT request to that URL.
|
|
14
|
+
*
|
|
15
|
+
* 3xx redirects are not currently followed.
|
|
16
|
+
*/
|
|
17
|
+
export default class HttpStream extends Transform {
|
|
18
|
+
private readonly url;
|
|
19
|
+
private readonly method;
|
|
20
|
+
private readonly headers;
|
|
21
|
+
private tempFilePath;
|
|
22
|
+
private tempFile;
|
|
23
|
+
constructor(url: string, method: HttpMethod, headers: http.OutgoingHttpHeaders);
|
|
24
|
+
_write(chunk: any, encoding: BufferEncoding, callback: (err?: Error | null) => void): void;
|
|
25
|
+
_final(callback: (error?: Error | null) => void): void;
|
|
26
|
+
private pushResponseBody;
|
|
27
|
+
private emitErrorUnlessHttp2xx;
|
|
28
|
+
private sendHttpRequest;
|
|
29
|
+
}
|
|
30
|
+
export {};
|
|
@@ -1,112 +1,112 @@
|
|
|
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
|
-
const stream_1 = require("stream");
|
|
7
|
-
const tmp_1 = __importDefault(require("tmp"));
|
|
8
|
-
const fs_1 = __importDefault(require("fs"));
|
|
9
|
-
const http_1 = __importDefault(require("http"));
|
|
10
|
-
const https_1 = __importDefault(require("https"));
|
|
11
|
-
const value_checker_1 = require("../value_checker");
|
|
12
|
-
/**
|
|
13
|
-
* This Writable writes data to a HTTP/HTTPS URL.
|
|
14
|
-
*
|
|
15
|
-
* It has special handling for https://reports.cucumber.io/
|
|
16
|
-
* which uses an API where the first request is a `GET`,
|
|
17
|
-
* and if the response is 202 with a Location header, issues
|
|
18
|
-
* a PUT request to that URL.
|
|
19
|
-
*
|
|
20
|
-
* 3xx redirects are not currently followed.
|
|
21
|
-
*/
|
|
22
|
-
class HttpStream extends stream_1.Transform {
|
|
23
|
-
constructor(url, method, headers) {
|
|
24
|
-
super({
|
|
25
|
-
readableObjectMode: true,
|
|
26
|
-
});
|
|
27
|
-
this.url = url;
|
|
28
|
-
this.method = method;
|
|
29
|
-
this.headers = headers;
|
|
30
|
-
}
|
|
31
|
-
_write(chunk, encoding, callback) {
|
|
32
|
-
if (this.tempFile === undefined) {
|
|
33
|
-
tmp_1.default.file((err, name, fd) => {
|
|
34
|
-
if ((0, value_checker_1.doesHaveValue)(err))
|
|
35
|
-
return callback(err);
|
|
36
|
-
this.tempFilePath = name;
|
|
37
|
-
this.tempFile = fs_1.default.createWriteStream(name, { fd });
|
|
38
|
-
this.tempFile.write(chunk, encoding, callback);
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
this.tempFile.write(chunk, encoding, callback);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
_final(callback) {
|
|
46
|
-
this.tempFile.end(() => {
|
|
47
|
-
this.sendHttpRequest(this.url, this.method, this.headers, (err1, res1) => {
|
|
48
|
-
if ((0, value_checker_1.doesHaveValue)(err1))
|
|
49
|
-
return callback(err1);
|
|
50
|
-
this.pushResponseBody(res1, () => {
|
|
51
|
-
this.emitErrorUnlessHttp2xx(res1, this.url, this.method);
|
|
52
|
-
if (res1.statusCode === 202 &&
|
|
53
|
-
res1.headers.location !== undefined) {
|
|
54
|
-
this.sendHttpRequest(res1.headers.location, 'PUT', {}, (err2, res2) => {
|
|
55
|
-
if ((0, value_checker_1.doesHaveValue)(err2))
|
|
56
|
-
return callback(err2);
|
|
57
|
-
this.emitErrorUnlessHttp2xx(res2, this.url, this.method);
|
|
58
|
-
callback();
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
callback();
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
pushResponseBody(res, done) {
|
|
69
|
-
let body = Buffer.alloc(0);
|
|
70
|
-
res.on('data', (chunk) => {
|
|
71
|
-
body = Buffer.concat([body, chunk]);
|
|
72
|
-
});
|
|
73
|
-
res.on('end', () => {
|
|
74
|
-
this.push(body.toString('utf-8'));
|
|
75
|
-
done();
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
emitErrorUnlessHttp2xx(res, url, method) {
|
|
79
|
-
if (res.statusCode >= 300)
|
|
80
|
-
this.emit('error', new Error(`Unexpected http status ${res.statusCode} from ${method} ${url}`));
|
|
81
|
-
}
|
|
82
|
-
sendHttpRequest(url, method, headers, callback) {
|
|
83
|
-
const httpx = (0, value_checker_1.doesHaveValue)(url.match(/^https:/)) ? https_1.default : http_1.default;
|
|
84
|
-
const additionalHttpHeaders = {};
|
|
85
|
-
const upload = method === 'PUT' || method === 'POST';
|
|
86
|
-
if (upload) {
|
|
87
|
-
additionalHttpHeaders['Content-Length'] = fs_1.default.statSync(this.tempFilePath).size;
|
|
88
|
-
}
|
|
89
|
-
const allHeaders = { ...headers, ...additionalHttpHeaders };
|
|
90
|
-
const req = httpx.request(url, {
|
|
91
|
-
method,
|
|
92
|
-
headers: allHeaders,
|
|
93
|
-
});
|
|
94
|
-
req.on('error', (err) => this.emit('error', err));
|
|
95
|
-
req.on('response', (res) => {
|
|
96
|
-
res.on('error', (err) => this.emit('error', err));
|
|
97
|
-
callback(null, res);
|
|
98
|
-
});
|
|
99
|
-
if (upload) {
|
|
100
|
-
(0, stream_1.pipeline)(fs_1.default.createReadStream(this.tempFilePath), req, (err) => {
|
|
101
|
-
if ((0, value_checker_1.doesHaveValue)(err)) {
|
|
102
|
-
this.emit('error', err);
|
|
103
|
-
}
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
req.end();
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
exports.default = HttpStream;
|
|
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
|
+
const stream_1 = require("stream");
|
|
7
|
+
const tmp_1 = __importDefault(require("tmp"));
|
|
8
|
+
const fs_1 = __importDefault(require("fs"));
|
|
9
|
+
const http_1 = __importDefault(require("http"));
|
|
10
|
+
const https_1 = __importDefault(require("https"));
|
|
11
|
+
const value_checker_1 = require("../value_checker");
|
|
12
|
+
/**
|
|
13
|
+
* This Writable writes data to a HTTP/HTTPS URL.
|
|
14
|
+
*
|
|
15
|
+
* It has special handling for https://reports.cucumber.io/
|
|
16
|
+
* which uses an API where the first request is a `GET`,
|
|
17
|
+
* and if the response is 202 with a Location header, issues
|
|
18
|
+
* a PUT request to that URL.
|
|
19
|
+
*
|
|
20
|
+
* 3xx redirects are not currently followed.
|
|
21
|
+
*/
|
|
22
|
+
class HttpStream extends stream_1.Transform {
|
|
23
|
+
constructor(url, method, headers) {
|
|
24
|
+
super({
|
|
25
|
+
readableObjectMode: true,
|
|
26
|
+
});
|
|
27
|
+
this.url = url;
|
|
28
|
+
this.method = method;
|
|
29
|
+
this.headers = headers;
|
|
30
|
+
}
|
|
31
|
+
_write(chunk, encoding, callback) {
|
|
32
|
+
if (this.tempFile === undefined) {
|
|
33
|
+
tmp_1.default.file((err, name, fd) => {
|
|
34
|
+
if ((0, value_checker_1.doesHaveValue)(err))
|
|
35
|
+
return callback(err);
|
|
36
|
+
this.tempFilePath = name;
|
|
37
|
+
this.tempFile = fs_1.default.createWriteStream(name, { fd });
|
|
38
|
+
this.tempFile.write(chunk, encoding, callback);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
this.tempFile.write(chunk, encoding, callback);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
_final(callback) {
|
|
46
|
+
this.tempFile.end(() => {
|
|
47
|
+
this.sendHttpRequest(this.url, this.method, this.headers, (err1, res1) => {
|
|
48
|
+
if ((0, value_checker_1.doesHaveValue)(err1))
|
|
49
|
+
return callback(err1);
|
|
50
|
+
this.pushResponseBody(res1, () => {
|
|
51
|
+
this.emitErrorUnlessHttp2xx(res1, this.url, this.method);
|
|
52
|
+
if (res1.statusCode === 202 &&
|
|
53
|
+
res1.headers.location !== undefined) {
|
|
54
|
+
this.sendHttpRequest(res1.headers.location, 'PUT', {}, (err2, res2) => {
|
|
55
|
+
if ((0, value_checker_1.doesHaveValue)(err2))
|
|
56
|
+
return callback(err2);
|
|
57
|
+
this.emitErrorUnlessHttp2xx(res2, this.url, this.method);
|
|
58
|
+
callback();
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
callback();
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
pushResponseBody(res, done) {
|
|
69
|
+
let body = Buffer.alloc(0);
|
|
70
|
+
res.on('data', (chunk) => {
|
|
71
|
+
body = Buffer.concat([body, chunk]);
|
|
72
|
+
});
|
|
73
|
+
res.on('end', () => {
|
|
74
|
+
this.push(body.toString('utf-8'));
|
|
75
|
+
done();
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
emitErrorUnlessHttp2xx(res, url, method) {
|
|
79
|
+
if (res.statusCode >= 300)
|
|
80
|
+
this.emit('error', new Error(`Unexpected http status ${res.statusCode} from ${method} ${url}`));
|
|
81
|
+
}
|
|
82
|
+
sendHttpRequest(url, method, headers, callback) {
|
|
83
|
+
const httpx = (0, value_checker_1.doesHaveValue)(url.match(/^https:/)) ? https_1.default : http_1.default;
|
|
84
|
+
const additionalHttpHeaders = {};
|
|
85
|
+
const upload = method === 'PUT' || method === 'POST';
|
|
86
|
+
if (upload) {
|
|
87
|
+
additionalHttpHeaders['Content-Length'] = fs_1.default.statSync(this.tempFilePath).size;
|
|
88
|
+
}
|
|
89
|
+
const allHeaders = { ...headers, ...additionalHttpHeaders };
|
|
90
|
+
const req = httpx.request(url, {
|
|
91
|
+
method,
|
|
92
|
+
headers: allHeaders,
|
|
93
|
+
});
|
|
94
|
+
req.on('error', (err) => this.emit('error', err));
|
|
95
|
+
req.on('response', (res) => {
|
|
96
|
+
res.on('error', (err) => this.emit('error', err));
|
|
97
|
+
callback(null, res);
|
|
98
|
+
});
|
|
99
|
+
if (upload) {
|
|
100
|
+
(0, stream_1.pipeline)(fs_1.default.createReadStream(this.tempFilePath), req, (err) => {
|
|
101
|
+
if ((0, value_checker_1.doesHaveValue)(err)) {
|
|
102
|
+
this.emit('error', err);
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
req.end();
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
exports.default = HttpStream;
|
|
112
112
|
//# sourceMappingURL=http_stream.js.map
|
package/lib/publish/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { publishPlugin } from './publish_plugin';
|
|
2
|
-
export default publishPlugin;
|
|
1
|
+
import { publishPlugin } from './publish_plugin';
|
|
2
|
+
export default publishPlugin;
|
package/lib/publish/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const publish_plugin_1 = require("./publish_plugin");
|
|
4
|
-
exports.default = publish_plugin_1.publishPlugin;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const publish_plugin_1 = require("./publish_plugin");
|
|
4
|
+
exports.default = publish_plugin_1.publishPlugin;
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Plugin } from '../plugin';
|
|
2
|
-
export declare const publishPlugin: Plugin;
|
|
1
|
+
import { Plugin } from '../plugin';
|
|
2
|
+
export declare const publishPlugin: Plugin;
|
|
@@ -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.publishPlugin = void 0;
|
|
7
|
-
const http_stream_1 = __importDefault(require("./http_stream"));
|
|
8
|
-
const stream_1 = require("stream");
|
|
9
|
-
const supports_color_1 = require("supports-color");
|
|
10
|
-
const has_ansi_1 = __importDefault(require("has-ansi"));
|
|
11
|
-
const strip_ansi_1 = __importDefault(require("strip-ansi"));
|
|
12
|
-
const DEFAULT_CUCUMBER_PUBLISH_URL = 'https://messages.cucumber.io/api/reports';
|
|
13
|
-
const publishPlugin = async ({ on, logger, configuration, environment, }) => {
|
|
14
|
-
if (!configuration.formats.publish) {
|
|
15
|
-
return undefined;
|
|
16
|
-
}
|
|
17
|
-
const { url = DEFAULT_CUCUMBER_PUBLISH_URL, token } = configuration.formats.publish;
|
|
18
|
-
const headers = {};
|
|
19
|
-
if (token !== undefined) {
|
|
20
|
-
headers.Authorization = `Bearer ${token}`;
|
|
21
|
-
}
|
|
22
|
-
const stream = new http_stream_1.default(url, 'GET', headers);
|
|
23
|
-
const readerStream = new stream_1.Writable({
|
|
24
|
-
objectMode: true,
|
|
25
|
-
write: function (responseBody, encoding, writeCallback) {
|
|
26
|
-
environment.stderr.write(sanitisePublishOutput(responseBody, environment.stderr) + '\n');
|
|
27
|
-
writeCallback();
|
|
28
|
-
},
|
|
29
|
-
});
|
|
30
|
-
stream.pipe(readerStream);
|
|
31
|
-
stream.on('error', (error) => logger.error(error.message));
|
|
32
|
-
on('message', (value) => stream.write(JSON.stringify(value) + '\n'));
|
|
33
|
-
return () => stream.end();
|
|
34
|
-
};
|
|
35
|
-
exports.publishPlugin = publishPlugin;
|
|
36
|
-
/*
|
|
37
|
-
This is because the Cucumber Reports service returns a pre-formatted console message
|
|
38
|
-
including ANSI escapes, so if our stderr stream doesn't support those we need to
|
|
39
|
-
strip them back out. Ideally we should get structured data from the service and
|
|
40
|
-
compose the console message on this end.
|
|
41
|
-
*/
|
|
42
|
-
function sanitisePublishOutput(raw, stderr) {
|
|
43
|
-
if (!(0, supports_color_1.supportsColor)(stderr) && (0, has_ansi_1.default)(raw)) {
|
|
44
|
-
return (0, strip_ansi_1.default)(raw);
|
|
45
|
-
}
|
|
46
|
-
return raw;
|
|
47
|
-
}
|
|
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.publishPlugin = void 0;
|
|
7
|
+
const http_stream_1 = __importDefault(require("./http_stream"));
|
|
8
|
+
const stream_1 = require("stream");
|
|
9
|
+
const supports_color_1 = require("supports-color");
|
|
10
|
+
const has_ansi_1 = __importDefault(require("has-ansi"));
|
|
11
|
+
const strip_ansi_1 = __importDefault(require("strip-ansi"));
|
|
12
|
+
const DEFAULT_CUCUMBER_PUBLISH_URL = 'https://messages.cucumber.io/api/reports';
|
|
13
|
+
const publishPlugin = async ({ on, logger, configuration, environment, }) => {
|
|
14
|
+
if (!configuration.formats.publish) {
|
|
15
|
+
return undefined;
|
|
16
|
+
}
|
|
17
|
+
const { url = DEFAULT_CUCUMBER_PUBLISH_URL, token } = configuration.formats.publish;
|
|
18
|
+
const headers = {};
|
|
19
|
+
if (token !== undefined) {
|
|
20
|
+
headers.Authorization = `Bearer ${token}`;
|
|
21
|
+
}
|
|
22
|
+
const stream = new http_stream_1.default(url, 'GET', headers);
|
|
23
|
+
const readerStream = new stream_1.Writable({
|
|
24
|
+
objectMode: true,
|
|
25
|
+
write: function (responseBody, encoding, writeCallback) {
|
|
26
|
+
environment.stderr.write(sanitisePublishOutput(responseBody, environment.stderr) + '\n');
|
|
27
|
+
writeCallback();
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
stream.pipe(readerStream);
|
|
31
|
+
stream.on('error', (error) => logger.error(error.message));
|
|
32
|
+
on('message', (value) => stream.write(JSON.stringify(value) + '\n'));
|
|
33
|
+
return () => stream.end();
|
|
34
|
+
};
|
|
35
|
+
exports.publishPlugin = publishPlugin;
|
|
36
|
+
/*
|
|
37
|
+
This is because the Cucumber Reports service returns a pre-formatted console message
|
|
38
|
+
including ANSI escapes, so if our stderr stream doesn't support those we need to
|
|
39
|
+
strip them back out. Ideally we should get structured data from the service and
|
|
40
|
+
compose the console message on this end.
|
|
41
|
+
*/
|
|
42
|
+
function sanitisePublishOutput(raw, stderr) {
|
|
43
|
+
if (!(0, supports_color_1.supportsColor)(stderr) && (0, has_ansi_1.default)(raw)) {
|
|
44
|
+
return (0, strip_ansi_1.default)(raw);
|
|
45
|
+
}
|
|
46
|
+
return raw;
|
|
47
|
+
}
|
|
48
48
|
//# sourceMappingURL=publish_plugin.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { EventEmitter } from 'events';
|
|
3
|
-
import * as messages from '@cucumber/messages';
|
|
4
|
-
import { IdGenerator } from '@cucumber/messages';
|
|
5
|
-
import { ISupportCodeLibrary } from '../support_code_library_builder/types';
|
|
6
|
-
export declare type IAssembledTestCases = Record<string, messages.TestCase>;
|
|
7
|
-
export interface IAssembleTestCasesOptions {
|
|
8
|
-
eventBroadcaster: EventEmitter;
|
|
9
|
-
newId: IdGenerator.NewId;
|
|
10
|
-
pickles: messages.Pickle[];
|
|
11
|
-
supportCodeLibrary: ISupportCodeLibrary;
|
|
12
|
-
}
|
|
13
|
-
export declare function assembleTestCases({ eventBroadcaster, newId, pickles, supportCodeLibrary, }: IAssembleTestCasesOptions): Promise<IAssembledTestCases>;
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { EventEmitter } from 'events';
|
|
3
|
+
import * as messages from '@cucumber/messages';
|
|
4
|
+
import { IdGenerator } from '@cucumber/messages';
|
|
5
|
+
import { ISupportCodeLibrary } from '../support_code_library_builder/types';
|
|
6
|
+
export declare type IAssembledTestCases = Record<string, messages.TestCase>;
|
|
7
|
+
export interface IAssembleTestCasesOptions {
|
|
8
|
+
eventBroadcaster: EventEmitter;
|
|
9
|
+
newId: IdGenerator.NewId;
|
|
10
|
+
pickles: messages.Pickle[];
|
|
11
|
+
supportCodeLibrary: ISupportCodeLibrary;
|
|
12
|
+
}
|
|
13
|
+
export declare function assembleTestCases({ eventBroadcaster, newId, pickles, supportCodeLibrary, }: IAssembleTestCasesOptions): Promise<IAssembledTestCases>;
|