@dev-blinq/cucumber-js 1.0.36 → 1.0.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +65 -65
- 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 +177 -177
- package/lib/api/types.js +2 -2
- package/lib/cli/helpers.d.ts +39 -39
- package/lib/cli/helpers.js +223 -223
- 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 +63 -63
- 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 +102 -102
- 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 +28 -28
- 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 +30 -30
- 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_analysis_formatter.d.ts +18 -18
- package/lib/formatter/bvt_analysis_formatter.js +192 -192
- package/lib/formatter/feature_data_format.d.ts +14 -14
- package/lib/formatter/feature_data_format.js +80 -80
- 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 -44
- 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 +107 -103
- package/lib/formatter/helpers/report_generator.js +310 -247
- package/lib/formatter/helpers/report_generator.js.map +1 -1
- 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/upload_serivce.d.ts +9 -9
- package/lib/formatter/helpers/upload_serivce.js +46 -46
- package/lib/formatter/helpers/uploader.d.ts +11 -11
- package/lib/formatter/helpers/uploader.js +56 -56
- 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 +1 -1
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SourcedParameterTypeRegistry = void 0;
|
|
4
|
-
const cucumber_expressions_1 = require("@cucumber/cucumber-expressions");
|
|
5
|
-
class SourcedParameterTypeRegistry extends cucumber_expressions_1.ParameterTypeRegistry {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(...arguments);
|
|
8
|
-
this.parameterTypeToSource = new WeakMap();
|
|
9
|
-
}
|
|
10
|
-
defineSourcedParameterType(parameterType, source) {
|
|
11
|
-
this.defineParameterType(parameterType);
|
|
12
|
-
this.parameterTypeToSource.set(parameterType, source);
|
|
13
|
-
}
|
|
14
|
-
lookupSource(parameterType) {
|
|
15
|
-
return this.parameterTypeToSource.get(parameterType);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.SourcedParameterTypeRegistry = SourcedParameterTypeRegistry;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SourcedParameterTypeRegistry = void 0;
|
|
4
|
+
const cucumber_expressions_1 = require("@cucumber/cucumber-expressions");
|
|
5
|
+
class SourcedParameterTypeRegistry extends cucumber_expressions_1.ParameterTypeRegistry {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.parameterTypeToSource = new WeakMap();
|
|
9
|
+
}
|
|
10
|
+
defineSourcedParameterType(parameterType, source) {
|
|
11
|
+
this.defineParameterType(parameterType);
|
|
12
|
+
this.parameterTypeToSource.set(parameterType, source);
|
|
13
|
+
}
|
|
14
|
+
lookupSource(parameterType) {
|
|
15
|
+
return this.parameterTypeToSource.get(parameterType);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.SourcedParameterTypeRegistry = SourcedParameterTypeRegistry;
|
|
19
19
|
//# sourceMappingURL=sourced_parameter_type_registry.js.map
|
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
import * as messages from '@cucumber/messages';
|
|
2
|
-
import TestCaseHookDefinition from '../models/test_case_hook_definition';
|
|
3
|
-
import TestStepHookDefinition from '../models/test_step_hook_definition';
|
|
4
|
-
import TestRunHookDefinition from '../models/test_run_hook_definition';
|
|
5
|
-
import StepDefinition from '../models/step_definition';
|
|
6
|
-
import { IWorld } from './world';
|
|
7
|
-
import { SourcedParameterTypeRegistry } from './sourced_parameter_type_registry';
|
|
8
|
-
export type DefineStepPattern = string | RegExp;
|
|
9
|
-
export type ParallelAssignmentValidator = (pickle: messages.Pickle, runningPickles: messages.Pickle[]) => boolean;
|
|
10
|
-
export interface ITestCaseHookParameter {
|
|
11
|
-
gherkinDocument: messages.GherkinDocument;
|
|
12
|
-
pickle: messages.Pickle;
|
|
13
|
-
result?: messages.TestStepResult;
|
|
14
|
-
willBeRetried?: boolean;
|
|
15
|
-
testCaseStartedId: string;
|
|
16
|
-
}
|
|
17
|
-
export interface ITestStepHookParameter {
|
|
18
|
-
gherkinDocument: messages.GherkinDocument;
|
|
19
|
-
pickle: messages.Pickle;
|
|
20
|
-
pickleStep: messages.PickleStep;
|
|
21
|
-
result: messages.TestStepResult;
|
|
22
|
-
testCaseStartedId: string;
|
|
23
|
-
testStepId: string;
|
|
24
|
-
}
|
|
25
|
-
export type TestCaseHookFunction<WorldType> = (this: WorldType, arg: ITestCaseHookParameter) => any | Promise<any>;
|
|
26
|
-
export type TestStepHookFunction<WorldType> = (this: WorldType, arg: ITestStepHookParameter) => any | Promise<any>;
|
|
27
|
-
export type TestStepFunction<WorldType> = (this: WorldType, ...args: any[]) => any | Promise<any>;
|
|
28
|
-
export interface IDefineStepOptions {
|
|
29
|
-
timeout?: number;
|
|
30
|
-
wrapperOptions?: any;
|
|
31
|
-
}
|
|
32
|
-
export interface IDefineTestCaseHookOptions {
|
|
33
|
-
name?: string;
|
|
34
|
-
tags?: string;
|
|
35
|
-
timeout?: number;
|
|
36
|
-
}
|
|
37
|
-
export interface IDefineTestStepHookOptions {
|
|
38
|
-
tags?: string;
|
|
39
|
-
timeout?: number;
|
|
40
|
-
}
|
|
41
|
-
export interface IDefineTestRunHookOptions {
|
|
42
|
-
timeout?: number;
|
|
43
|
-
}
|
|
44
|
-
export interface IParameterTypeDefinition<T> {
|
|
45
|
-
name: string;
|
|
46
|
-
regexp: readonly RegExp[] | readonly string[] | RegExp | string;
|
|
47
|
-
transformer: (...match: string[]) => T;
|
|
48
|
-
useForSnippets?: boolean;
|
|
49
|
-
preferForRegexpMatch?: boolean;
|
|
50
|
-
}
|
|
51
|
-
export type IDefineStep = (<WorldType = IWorld>(pattern: DefineStepPattern, code: TestStepFunction<WorldType>) => void) & (<WorldType = IWorld>(pattern: DefineStepPattern, options: IDefineStepOptions, code: TestStepFunction<WorldType>) => void);
|
|
52
|
-
export interface IDefineSupportCodeMethods {
|
|
53
|
-
defineParameterType: (options: IParameterTypeDefinition<any>) => void;
|
|
54
|
-
defineStep: IDefineStep;
|
|
55
|
-
setDefaultTimeout: (milliseconds: number) => void;
|
|
56
|
-
setDefinitionFunctionWrapper: (fn: Function) => void;
|
|
57
|
-
setParallelCanAssign: (fn: ParallelAssignmentValidator) => void;
|
|
58
|
-
setWorldConstructor: (fn: any) => void;
|
|
59
|
-
After: (<WorldType = IWorld>(code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestCaseHookOptions, code: TestCaseHookFunction<WorldType>) => void);
|
|
60
|
-
AfterStep: (<WorldType = IWorld>(code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestStepHookOptions, code: TestStepHookFunction<WorldType>) => void);
|
|
61
|
-
AfterAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
|
|
62
|
-
Before: (<WorldType = IWorld>(code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestCaseHookOptions, code: TestCaseHookFunction<WorldType>) => void);
|
|
63
|
-
BeforeStep: (<WorldType = IWorld>(code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestStepHookOptions, code: TestStepHookFunction<WorldType>) => void);
|
|
64
|
-
BeforeAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
|
|
65
|
-
Given: IDefineStep;
|
|
66
|
-
Then: IDefineStep;
|
|
67
|
-
When: IDefineStep;
|
|
68
|
-
}
|
|
69
|
-
export interface ISupportCodeCoordinates {
|
|
70
|
-
requireModules: string[];
|
|
71
|
-
requirePaths: string[];
|
|
72
|
-
importPaths: string[];
|
|
73
|
-
}
|
|
74
|
-
export interface ISupportCodeLibrary {
|
|
75
|
-
readonly originalCoordinates: ISupportCodeCoordinates;
|
|
76
|
-
readonly afterTestCaseHookDefinitions: TestCaseHookDefinition[];
|
|
77
|
-
readonly afterTestStepHookDefinitions: TestStepHookDefinition[];
|
|
78
|
-
readonly afterTestRunHookDefinitions: TestRunHookDefinition[];
|
|
79
|
-
readonly beforeTestCaseHookDefinitions: TestCaseHookDefinition[];
|
|
80
|
-
readonly beforeTestStepHookDefinitions: TestStepHookDefinition[];
|
|
81
|
-
readonly beforeTestRunHookDefinitions: TestRunHookDefinition[];
|
|
82
|
-
readonly defaultTimeout: number;
|
|
83
|
-
readonly stepDefinitions: StepDefinition[];
|
|
84
|
-
readonly undefinedParameterTypes: messages.UndefinedParameterType[];
|
|
85
|
-
readonly parameterTypeRegistry: SourcedParameterTypeRegistry;
|
|
86
|
-
readonly World: any;
|
|
87
|
-
readonly parallelCanAssign: ParallelAssignmentValidator;
|
|
88
|
-
}
|
|
1
|
+
import * as messages from '@cucumber/messages';
|
|
2
|
+
import TestCaseHookDefinition from '../models/test_case_hook_definition';
|
|
3
|
+
import TestStepHookDefinition from '../models/test_step_hook_definition';
|
|
4
|
+
import TestRunHookDefinition from '../models/test_run_hook_definition';
|
|
5
|
+
import StepDefinition from '../models/step_definition';
|
|
6
|
+
import { IWorld } from './world';
|
|
7
|
+
import { SourcedParameterTypeRegistry } from './sourced_parameter_type_registry';
|
|
8
|
+
export type DefineStepPattern = string | RegExp;
|
|
9
|
+
export type ParallelAssignmentValidator = (pickle: messages.Pickle, runningPickles: messages.Pickle[]) => boolean;
|
|
10
|
+
export interface ITestCaseHookParameter {
|
|
11
|
+
gherkinDocument: messages.GherkinDocument;
|
|
12
|
+
pickle: messages.Pickle;
|
|
13
|
+
result?: messages.TestStepResult;
|
|
14
|
+
willBeRetried?: boolean;
|
|
15
|
+
testCaseStartedId: string;
|
|
16
|
+
}
|
|
17
|
+
export interface ITestStepHookParameter {
|
|
18
|
+
gherkinDocument: messages.GherkinDocument;
|
|
19
|
+
pickle: messages.Pickle;
|
|
20
|
+
pickleStep: messages.PickleStep;
|
|
21
|
+
result: messages.TestStepResult;
|
|
22
|
+
testCaseStartedId: string;
|
|
23
|
+
testStepId: string;
|
|
24
|
+
}
|
|
25
|
+
export type TestCaseHookFunction<WorldType> = (this: WorldType, arg: ITestCaseHookParameter) => any | Promise<any>;
|
|
26
|
+
export type TestStepHookFunction<WorldType> = (this: WorldType, arg: ITestStepHookParameter) => any | Promise<any>;
|
|
27
|
+
export type TestStepFunction<WorldType> = (this: WorldType, ...args: any[]) => any | Promise<any>;
|
|
28
|
+
export interface IDefineStepOptions {
|
|
29
|
+
timeout?: number;
|
|
30
|
+
wrapperOptions?: any;
|
|
31
|
+
}
|
|
32
|
+
export interface IDefineTestCaseHookOptions {
|
|
33
|
+
name?: string;
|
|
34
|
+
tags?: string;
|
|
35
|
+
timeout?: number;
|
|
36
|
+
}
|
|
37
|
+
export interface IDefineTestStepHookOptions {
|
|
38
|
+
tags?: string;
|
|
39
|
+
timeout?: number;
|
|
40
|
+
}
|
|
41
|
+
export interface IDefineTestRunHookOptions {
|
|
42
|
+
timeout?: number;
|
|
43
|
+
}
|
|
44
|
+
export interface IParameterTypeDefinition<T> {
|
|
45
|
+
name: string;
|
|
46
|
+
regexp: readonly RegExp[] | readonly string[] | RegExp | string;
|
|
47
|
+
transformer: (...match: string[]) => T;
|
|
48
|
+
useForSnippets?: boolean;
|
|
49
|
+
preferForRegexpMatch?: boolean;
|
|
50
|
+
}
|
|
51
|
+
export type IDefineStep = (<WorldType = IWorld>(pattern: DefineStepPattern, code: TestStepFunction<WorldType>) => void) & (<WorldType = IWorld>(pattern: DefineStepPattern, options: IDefineStepOptions, code: TestStepFunction<WorldType>) => void);
|
|
52
|
+
export interface IDefineSupportCodeMethods {
|
|
53
|
+
defineParameterType: (options: IParameterTypeDefinition<any>) => void;
|
|
54
|
+
defineStep: IDefineStep;
|
|
55
|
+
setDefaultTimeout: (milliseconds: number) => void;
|
|
56
|
+
setDefinitionFunctionWrapper: (fn: Function) => void;
|
|
57
|
+
setParallelCanAssign: (fn: ParallelAssignmentValidator) => void;
|
|
58
|
+
setWorldConstructor: (fn: any) => void;
|
|
59
|
+
After: (<WorldType = IWorld>(code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestCaseHookOptions, code: TestCaseHookFunction<WorldType>) => void);
|
|
60
|
+
AfterStep: (<WorldType = IWorld>(code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestStepHookOptions, code: TestStepHookFunction<WorldType>) => void);
|
|
61
|
+
AfterAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
|
|
62
|
+
Before: (<WorldType = IWorld>(code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestCaseHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestCaseHookOptions, code: TestCaseHookFunction<WorldType>) => void);
|
|
63
|
+
BeforeStep: (<WorldType = IWorld>(code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(tags: string, code: TestStepHookFunction<WorldType>) => void) & (<WorldType = IWorld>(options: IDefineTestStepHookOptions, code: TestStepHookFunction<WorldType>) => void);
|
|
64
|
+
BeforeAll: ((code: Function) => void) & ((options: IDefineTestRunHookOptions, code: Function) => void);
|
|
65
|
+
Given: IDefineStep;
|
|
66
|
+
Then: IDefineStep;
|
|
67
|
+
When: IDefineStep;
|
|
68
|
+
}
|
|
69
|
+
export interface ISupportCodeCoordinates {
|
|
70
|
+
requireModules: string[];
|
|
71
|
+
requirePaths: string[];
|
|
72
|
+
importPaths: string[];
|
|
73
|
+
}
|
|
74
|
+
export interface ISupportCodeLibrary {
|
|
75
|
+
readonly originalCoordinates: ISupportCodeCoordinates;
|
|
76
|
+
readonly afterTestCaseHookDefinitions: TestCaseHookDefinition[];
|
|
77
|
+
readonly afterTestStepHookDefinitions: TestStepHookDefinition[];
|
|
78
|
+
readonly afterTestRunHookDefinitions: TestRunHookDefinition[];
|
|
79
|
+
readonly beforeTestCaseHookDefinitions: TestCaseHookDefinition[];
|
|
80
|
+
readonly beforeTestStepHookDefinitions: TestStepHookDefinition[];
|
|
81
|
+
readonly beforeTestRunHookDefinitions: TestRunHookDefinition[];
|
|
82
|
+
readonly defaultTimeout: number;
|
|
83
|
+
readonly stepDefinitions: StepDefinition[];
|
|
84
|
+
readonly undefinedParameterTypes: messages.UndefinedParameterType[];
|
|
85
|
+
readonly parameterTypeRegistry: SourcedParameterTypeRegistry;
|
|
86
|
+
readonly World: any;
|
|
87
|
+
readonly parallelCanAssign: ParallelAssignmentValidator;
|
|
88
|
+
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
//# sourceMappingURL=types.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { DefineStepPattern, IDefineStepOptions } from './types';
|
|
2
|
-
interface IDefineStepArguments {
|
|
3
|
-
pattern?: DefineStepPattern;
|
|
4
|
-
options?: IDefineStepOptions;
|
|
5
|
-
code?: Function;
|
|
6
|
-
}
|
|
7
|
-
export default function validateArguments({ args, fnName, location, }: {
|
|
8
|
-
args?: IDefineStepArguments;
|
|
9
|
-
fnName: string;
|
|
10
|
-
location: string;
|
|
11
|
-
}): void;
|
|
12
|
-
export {};
|
|
1
|
+
import { DefineStepPattern, IDefineStepOptions } from './types';
|
|
2
|
+
interface IDefineStepArguments {
|
|
3
|
+
pattern?: DefineStepPattern;
|
|
4
|
+
options?: IDefineStepOptions;
|
|
5
|
+
code?: Function;
|
|
6
|
+
}
|
|
7
|
+
export default function validateArguments({ args, fnName, location, }: {
|
|
8
|
+
args?: IDefineStepArguments;
|
|
9
|
+
fnName: string;
|
|
10
|
+
location: string;
|
|
11
|
+
}): void;
|
|
12
|
+
export {};
|
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const optionsValidation = {
|
|
4
|
-
expectedType: 'object or function',
|
|
5
|
-
predicate({ options }) {
|
|
6
|
-
return typeof options === 'object';
|
|
7
|
-
},
|
|
8
|
-
};
|
|
9
|
-
const optionsTimeoutValidation = {
|
|
10
|
-
identifier: '"options.timeout"',
|
|
11
|
-
expectedType: 'integer',
|
|
12
|
-
predicate({ options }) {
|
|
13
|
-
return options.timeout == null || typeof options.timeout === 'number';
|
|
14
|
-
},
|
|
15
|
-
};
|
|
16
|
-
const fnValidation = {
|
|
17
|
-
expectedType: 'function',
|
|
18
|
-
predicate({ code }) {
|
|
19
|
-
return typeof code === 'function';
|
|
20
|
-
},
|
|
21
|
-
};
|
|
22
|
-
const validations = {
|
|
23
|
-
defineTestRunHook: [
|
|
24
|
-
{ identifier: 'first argument', ...optionsValidation },
|
|
25
|
-
optionsTimeoutValidation,
|
|
26
|
-
{ identifier: 'second argument', ...fnValidation },
|
|
27
|
-
],
|
|
28
|
-
defineTestCaseHook: [
|
|
29
|
-
{ identifier: 'first argument', ...optionsValidation },
|
|
30
|
-
{
|
|
31
|
-
identifier: '"options.tags"',
|
|
32
|
-
expectedType: 'string',
|
|
33
|
-
predicate({ options }) {
|
|
34
|
-
return options.tags == null || typeof options.tags === 'string';
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
optionsTimeoutValidation,
|
|
38
|
-
{ identifier: 'second argument', ...fnValidation },
|
|
39
|
-
],
|
|
40
|
-
defineTestStepHook: [
|
|
41
|
-
{ identifier: 'first argument', ...optionsValidation },
|
|
42
|
-
{
|
|
43
|
-
identifier: '"options.tags"',
|
|
44
|
-
expectedType: 'string',
|
|
45
|
-
predicate({ options }) {
|
|
46
|
-
return options.tags == null || typeof options.tags === 'string';
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
optionsTimeoutValidation,
|
|
50
|
-
{ identifier: 'second argument', ...fnValidation },
|
|
51
|
-
],
|
|
52
|
-
defineStep: [
|
|
53
|
-
{
|
|
54
|
-
identifier: 'first argument',
|
|
55
|
-
expectedType: 'string or regular expression',
|
|
56
|
-
predicate({ pattern }) {
|
|
57
|
-
return pattern instanceof RegExp || typeof pattern === 'string';
|
|
58
|
-
},
|
|
59
|
-
},
|
|
60
|
-
{ identifier: 'second argument', ...optionsValidation },
|
|
61
|
-
optionsTimeoutValidation,
|
|
62
|
-
{ identifier: 'third argument', ...fnValidation },
|
|
63
|
-
],
|
|
64
|
-
};
|
|
65
|
-
function validateArguments({ args, fnName, location, }) {
|
|
66
|
-
validations[fnName].forEach(({ identifier, expectedType, predicate }) => {
|
|
67
|
-
if (!predicate(args)) {
|
|
68
|
-
throw new Error(`${location}: Invalid ${identifier}: should be a ${expectedType}`);
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
exports.default = validateArguments;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const optionsValidation = {
|
|
4
|
+
expectedType: 'object or function',
|
|
5
|
+
predicate({ options }) {
|
|
6
|
+
return typeof options === 'object';
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
const optionsTimeoutValidation = {
|
|
10
|
+
identifier: '"options.timeout"',
|
|
11
|
+
expectedType: 'integer',
|
|
12
|
+
predicate({ options }) {
|
|
13
|
+
return options.timeout == null || typeof options.timeout === 'number';
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
const fnValidation = {
|
|
17
|
+
expectedType: 'function',
|
|
18
|
+
predicate({ code }) {
|
|
19
|
+
return typeof code === 'function';
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
const validations = {
|
|
23
|
+
defineTestRunHook: [
|
|
24
|
+
{ identifier: 'first argument', ...optionsValidation },
|
|
25
|
+
optionsTimeoutValidation,
|
|
26
|
+
{ identifier: 'second argument', ...fnValidation },
|
|
27
|
+
],
|
|
28
|
+
defineTestCaseHook: [
|
|
29
|
+
{ identifier: 'first argument', ...optionsValidation },
|
|
30
|
+
{
|
|
31
|
+
identifier: '"options.tags"',
|
|
32
|
+
expectedType: 'string',
|
|
33
|
+
predicate({ options }) {
|
|
34
|
+
return options.tags == null || typeof options.tags === 'string';
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
optionsTimeoutValidation,
|
|
38
|
+
{ identifier: 'second argument', ...fnValidation },
|
|
39
|
+
],
|
|
40
|
+
defineTestStepHook: [
|
|
41
|
+
{ identifier: 'first argument', ...optionsValidation },
|
|
42
|
+
{
|
|
43
|
+
identifier: '"options.tags"',
|
|
44
|
+
expectedType: 'string',
|
|
45
|
+
predicate({ options }) {
|
|
46
|
+
return options.tags == null || typeof options.tags === 'string';
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
optionsTimeoutValidation,
|
|
50
|
+
{ identifier: 'second argument', ...fnValidation },
|
|
51
|
+
],
|
|
52
|
+
defineStep: [
|
|
53
|
+
{
|
|
54
|
+
identifier: 'first argument',
|
|
55
|
+
expectedType: 'string or regular expression',
|
|
56
|
+
predicate({ pattern }) {
|
|
57
|
+
return pattern instanceof RegExp || typeof pattern === 'string';
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
{ identifier: 'second argument', ...optionsValidation },
|
|
61
|
+
optionsTimeoutValidation,
|
|
62
|
+
{ identifier: 'third argument', ...fnValidation },
|
|
63
|
+
],
|
|
64
|
+
};
|
|
65
|
+
function validateArguments({ args, fnName, location, }) {
|
|
66
|
+
validations[fnName].forEach(({ identifier, expectedType, predicate }) => {
|
|
67
|
+
if (!predicate(args)) {
|
|
68
|
+
throw new Error(`${location}: Invalid ${identifier}: should be a ${expectedType}`);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
exports.default = validateArguments;
|
|
73
73
|
//# sourceMappingURL=validate_arguments.js.map
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { ICreateAttachment, ICreateLog } from '../runtime/attachment_manager';
|
|
2
|
-
export interface IWorldOptions<ParametersType = any> {
|
|
3
|
-
attach: ICreateAttachment;
|
|
4
|
-
log: ICreateLog;
|
|
5
|
-
parameters: ParametersType;
|
|
6
|
-
}
|
|
7
|
-
export interface IWorld<ParametersType = any> {
|
|
8
|
-
readonly attach: ICreateAttachment;
|
|
9
|
-
readonly log: ICreateLog;
|
|
10
|
-
readonly parameters: ParametersType;
|
|
11
|
-
[key: string]: any;
|
|
12
|
-
}
|
|
13
|
-
export default class World<ParametersType = any> implements IWorld<ParametersType> {
|
|
14
|
-
readonly attach: ICreateAttachment;
|
|
15
|
-
readonly log: ICreateLog;
|
|
16
|
-
readonly parameters: ParametersType;
|
|
17
|
-
constructor({ attach, log, parameters }: IWorldOptions<ParametersType>);
|
|
18
|
-
}
|
|
1
|
+
import { ICreateAttachment, ICreateLog } from '../runtime/attachment_manager';
|
|
2
|
+
export interface IWorldOptions<ParametersType = any> {
|
|
3
|
+
attach: ICreateAttachment;
|
|
4
|
+
log: ICreateLog;
|
|
5
|
+
parameters: ParametersType;
|
|
6
|
+
}
|
|
7
|
+
export interface IWorld<ParametersType = any> {
|
|
8
|
+
readonly attach: ICreateAttachment;
|
|
9
|
+
readonly log: ICreateLog;
|
|
10
|
+
readonly parameters: ParametersType;
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
}
|
|
13
|
+
export default class World<ParametersType = any> implements IWorld<ParametersType> {
|
|
14
|
+
readonly attach: ICreateAttachment;
|
|
15
|
+
readonly log: ICreateLog;
|
|
16
|
+
readonly parameters: ParametersType;
|
|
17
|
+
constructor({ attach, log, parameters }: IWorldOptions<ParametersType>);
|
|
18
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
class World {
|
|
4
|
-
constructor({ attach, log, parameters }) {
|
|
5
|
-
this.attach = attach;
|
|
6
|
-
this.log = log;
|
|
7
|
-
this.parameters = parameters;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
exports.default = World;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
class World {
|
|
4
|
+
constructor({ attach, log, parameters }) {
|
|
5
|
+
this.attach = attach;
|
|
6
|
+
this.log = log;
|
|
7
|
+
this.parameters = parameters;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.default = World;
|
|
11
11
|
//# sourceMappingURL=world.js.map
|
package/lib/time.d.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
/// <reference types="node" />
|
|
3
|
-
import { performance } from 'perf_hooks';
|
|
4
|
-
import * as messages from '@cucumber/messages';
|
|
5
|
-
interface ProtectedTimingBuiltins {
|
|
6
|
-
clearImmediate: typeof clearImmediate;
|
|
7
|
-
clearInterval: typeof clearInterval;
|
|
8
|
-
clearTimeout: typeof clearTimeout;
|
|
9
|
-
Date: typeof Date;
|
|
10
|
-
setImmediate: typeof setImmediate;
|
|
11
|
-
setInterval: typeof setInterval;
|
|
12
|
-
setTimeout: typeof setTimeout;
|
|
13
|
-
performance: typeof performance;
|
|
14
|
-
}
|
|
15
|
-
declare const methods: Partial<ProtectedTimingBuiltins>;
|
|
16
|
-
export declare function durationBetweenTimestamps(startedTimestamp: messages.Timestamp, finishedTimestamp: messages.Timestamp): messages.Duration;
|
|
17
|
-
export declare function wrapPromiseWithTimeout<T>(promise: Promise<T>, timeoutInMilliseconds: number, timeoutMessage?: string): Promise<T>;
|
|
18
|
-
export default methods;
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
import { performance } from 'perf_hooks';
|
|
4
|
+
import * as messages from '@cucumber/messages';
|
|
5
|
+
interface ProtectedTimingBuiltins {
|
|
6
|
+
clearImmediate: typeof clearImmediate;
|
|
7
|
+
clearInterval: typeof clearInterval;
|
|
8
|
+
clearTimeout: typeof clearTimeout;
|
|
9
|
+
Date: typeof Date;
|
|
10
|
+
setImmediate: typeof setImmediate;
|
|
11
|
+
setInterval: typeof setInterval;
|
|
12
|
+
setTimeout: typeof setTimeout;
|
|
13
|
+
performance: typeof performance;
|
|
14
|
+
}
|
|
15
|
+
declare const methods: Partial<ProtectedTimingBuiltins>;
|
|
16
|
+
export declare function durationBetweenTimestamps(startedTimestamp: messages.Timestamp, finishedTimestamp: messages.Timestamp): messages.Duration;
|
|
17
|
+
export declare function wrapPromiseWithTimeout<T>(promise: Promise<T>, timeoutInMilliseconds: number, timeoutMessage?: string): Promise<T>;
|
|
18
|
+
export default methods;
|
package/lib/time.js
CHANGED
|
@@ -1,61 +1,61 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.wrapPromiseWithTimeout = exports.durationBetweenTimestamps = void 0;
|
|
27
|
-
const perf_hooks_1 = require("perf_hooks");
|
|
28
|
-
const messages = __importStar(require("@cucumber/messages"));
|
|
29
|
-
const methods = {
|
|
30
|
-
clearInterval: clearInterval.bind(global),
|
|
31
|
-
clearTimeout: clearTimeout.bind(global),
|
|
32
|
-
Date,
|
|
33
|
-
setInterval: setInterval.bind(global),
|
|
34
|
-
setTimeout: setTimeout.bind(global),
|
|
35
|
-
performance: perf_hooks_1.performance,
|
|
36
|
-
};
|
|
37
|
-
if (typeof setImmediate !== 'undefined') {
|
|
38
|
-
methods.setImmediate = setImmediate.bind(global);
|
|
39
|
-
methods.clearImmediate = clearImmediate.bind(global);
|
|
40
|
-
}
|
|
41
|
-
function durationBetweenTimestamps(startedTimestamp, finishedTimestamp) {
|
|
42
|
-
const durationMillis = messages.TimeConversion.timestampToMillisecondsSinceEpoch(finishedTimestamp) -
|
|
43
|
-
messages.TimeConversion.timestampToMillisecondsSinceEpoch(startedTimestamp);
|
|
44
|
-
return messages.TimeConversion.millisecondsToDuration(durationMillis);
|
|
45
|
-
}
|
|
46
|
-
exports.durationBetweenTimestamps = durationBetweenTimestamps;
|
|
47
|
-
async function wrapPromiseWithTimeout(promise, timeoutInMilliseconds, timeoutMessage = '') {
|
|
48
|
-
let timeoutId;
|
|
49
|
-
if (timeoutMessage === '') {
|
|
50
|
-
timeoutMessage = `Action did not complete within ${timeoutInMilliseconds} milliseconds`;
|
|
51
|
-
}
|
|
52
|
-
const timeoutPromise = new Promise((resolve, reject) => {
|
|
53
|
-
timeoutId = methods.setTimeout(() => {
|
|
54
|
-
reject(new Error(timeoutMessage));
|
|
55
|
-
}, timeoutInMilliseconds);
|
|
56
|
-
});
|
|
57
|
-
return await Promise.race([promise, timeoutPromise]).finally(() => methods.clearTimeout(timeoutId));
|
|
58
|
-
}
|
|
59
|
-
exports.wrapPromiseWithTimeout = wrapPromiseWithTimeout;
|
|
60
|
-
exports.default = methods;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.wrapPromiseWithTimeout = exports.durationBetweenTimestamps = void 0;
|
|
27
|
+
const perf_hooks_1 = require("perf_hooks");
|
|
28
|
+
const messages = __importStar(require("@cucumber/messages"));
|
|
29
|
+
const methods = {
|
|
30
|
+
clearInterval: clearInterval.bind(global),
|
|
31
|
+
clearTimeout: clearTimeout.bind(global),
|
|
32
|
+
Date,
|
|
33
|
+
setInterval: setInterval.bind(global),
|
|
34
|
+
setTimeout: setTimeout.bind(global),
|
|
35
|
+
performance: perf_hooks_1.performance,
|
|
36
|
+
};
|
|
37
|
+
if (typeof setImmediate !== 'undefined') {
|
|
38
|
+
methods.setImmediate = setImmediate.bind(global);
|
|
39
|
+
methods.clearImmediate = clearImmediate.bind(global);
|
|
40
|
+
}
|
|
41
|
+
function durationBetweenTimestamps(startedTimestamp, finishedTimestamp) {
|
|
42
|
+
const durationMillis = messages.TimeConversion.timestampToMillisecondsSinceEpoch(finishedTimestamp) -
|
|
43
|
+
messages.TimeConversion.timestampToMillisecondsSinceEpoch(startedTimestamp);
|
|
44
|
+
return messages.TimeConversion.millisecondsToDuration(durationMillis);
|
|
45
|
+
}
|
|
46
|
+
exports.durationBetweenTimestamps = durationBetweenTimestamps;
|
|
47
|
+
async function wrapPromiseWithTimeout(promise, timeoutInMilliseconds, timeoutMessage = '') {
|
|
48
|
+
let timeoutId;
|
|
49
|
+
if (timeoutMessage === '') {
|
|
50
|
+
timeoutMessage = `Action did not complete within ${timeoutInMilliseconds} milliseconds`;
|
|
51
|
+
}
|
|
52
|
+
const timeoutPromise = new Promise((resolve, reject) => {
|
|
53
|
+
timeoutId = methods.setTimeout(() => {
|
|
54
|
+
reject(new Error(timeoutMessage));
|
|
55
|
+
}, timeoutInMilliseconds);
|
|
56
|
+
});
|
|
57
|
+
return await Promise.race([promise, timeoutPromise]).finally(() => methods.clearTimeout(timeoutId));
|
|
58
|
+
}
|
|
59
|
+
exports.wrapPromiseWithTimeout = wrapPromiseWithTimeout;
|
|
60
|
+
exports.default = methods;
|
|
61
61
|
//# sourceMappingURL=time.js.map
|
package/lib/try_require.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Provides a try guarded require call that will throw a more detailed error when
|
|
3
|
-
* the ERR_REQUIRE_ESM error code is encountered.
|
|
4
|
-
*
|
|
5
|
-
* @param {string} path File path to require from.
|
|
6
|
-
*/
|
|
7
|
-
export default function tryRequire(path: string): any;
|
|
1
|
+
/**
|
|
2
|
+
* Provides a try guarded require call that will throw a more detailed error when
|
|
3
|
+
* the ERR_REQUIRE_ESM error code is encountered.
|
|
4
|
+
*
|
|
5
|
+
* @param {string} path File path to require from.
|
|
6
|
+
*/
|
|
7
|
+
export default function tryRequire(path: string): any;
|