@autometa/runner 0.1.1
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/.eslintignore +3 -0
- package/.eslintrc.cjs +4 -0
- package/CHANGELOG.md +32 -0
- package/LICENSE +21 -0
- package/README.md +3 -0
- package/dist/esm/index.js +233 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/index.d.cts +159 -0
- package/dist/index.d.ts +159 -0
- package/dist/index.js +263 -0
- package/dist/index.js.map +1 -0
- package/package.json +59 -0
- package/tsup.config.ts +14 -0
package/.eslintignore
ADDED
package/.eslintrc.cjs
ADDED
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# @autometa/runner
|
|
2
|
+
|
|
3
|
+
## 0.1.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 531b421: Fix for runner not publishing to NPM
|
|
8
|
+
|
|
9
|
+
## 0.1.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- 554b77e: Releasing packages
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- Updated dependencies [554b77e]
|
|
18
|
+
- @autometa/bind-decorator@0.5.0
|
|
19
|
+
- @autometa/app@0.1.0
|
|
20
|
+
- @autometa/asserters@0.1.0
|
|
21
|
+
- @autometa/config@0.1.0
|
|
22
|
+
- @autometa/coordinator@0.1.0
|
|
23
|
+
- @autometa/cucumber-expressions@0.1.0
|
|
24
|
+
- @autometa/datetime@0.1.0
|
|
25
|
+
- @autometa/errors@0.1.0
|
|
26
|
+
- @autometa/events@0.1.0
|
|
27
|
+
- @autometa/gherkin@0.4.0
|
|
28
|
+
- @autometa/jest-executor@0.1.0
|
|
29
|
+
- @autometa/phrases@0.1.0
|
|
30
|
+
- @autometa/scopes@0.2.0
|
|
31
|
+
- @autometa/test-builder@0.1.0
|
|
32
|
+
- @autometa/types@0.4.0
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) undefined Ben Aherne
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
6
|
+
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
7
|
+
}) : x)(function(x) {
|
|
8
|
+
if (typeof require !== "undefined")
|
|
9
|
+
return require.apply(this, arguments);
|
|
10
|
+
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
11
|
+
});
|
|
12
|
+
var __export = (target, all) => {
|
|
13
|
+
for (var name in all)
|
|
14
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
15
|
+
};
|
|
16
|
+
var __copyProps = (to, from, except, desc) => {
|
|
17
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
18
|
+
for (let key of __getOwnPropNames(from))
|
|
19
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
20
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
21
|
+
}
|
|
22
|
+
return to;
|
|
23
|
+
};
|
|
24
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
25
|
+
|
|
26
|
+
// src/config.ts
|
|
27
|
+
import {
|
|
28
|
+
Config,
|
|
29
|
+
defineConfig as dc
|
|
30
|
+
} from "@autometa/config";
|
|
31
|
+
var CONFIG = new Config(/* @__PURE__ */ new Map());
|
|
32
|
+
var defineConfig = dc.bind(null, CONFIG);
|
|
33
|
+
|
|
34
|
+
// src/parameters.ts
|
|
35
|
+
import { ParameterTypeRegistry } from "@cucumber/cucumber-expressions";
|
|
36
|
+
import {
|
|
37
|
+
BooleanParam,
|
|
38
|
+
DateParam,
|
|
39
|
+
NumberParam,
|
|
40
|
+
PrimitiveParam,
|
|
41
|
+
TextParam,
|
|
42
|
+
defineParameterType as dpt
|
|
43
|
+
} from "@autometa/cucumber-expressions";
|
|
44
|
+
var PARAM_REGISTRY = new ParameterTypeRegistry();
|
|
45
|
+
var defineParameterType = dpt.bind(null, PARAM_REGISTRY);
|
|
46
|
+
defineParameterType(
|
|
47
|
+
NumberParam,
|
|
48
|
+
BooleanParam,
|
|
49
|
+
PrimitiveParam,
|
|
50
|
+
TextParam,
|
|
51
|
+
DateParam
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
// src/scopes.ts
|
|
55
|
+
import { GetCucumberFunctions, Pass } from "@autometa/scopes";
|
|
56
|
+
import { Coordinator } from "@autometa/coordinator";
|
|
57
|
+
|
|
58
|
+
// src/events.ts
|
|
59
|
+
var events_exports = {};
|
|
60
|
+
__export(events_exports, {
|
|
61
|
+
makeTestEmitter: () => makeTestEmitter
|
|
62
|
+
});
|
|
63
|
+
import { TestEventEmitter } from "@autometa/events";
|
|
64
|
+
__reExport(events_exports, events_star);
|
|
65
|
+
import * as events_star from "@autometa/events";
|
|
66
|
+
|
|
67
|
+
// src/event-logger.ts
|
|
68
|
+
import colors from "colors-cli";
|
|
69
|
+
var GroupLogEvents = class {
|
|
70
|
+
onFeatureStart({ title }) {
|
|
71
|
+
console.group(title);
|
|
72
|
+
}
|
|
73
|
+
onFeatureEnd({ title, status }) {
|
|
74
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
75
|
+
console.groupEnd();
|
|
76
|
+
}
|
|
77
|
+
onScenarioStart({ title }) {
|
|
78
|
+
console.group(title);
|
|
79
|
+
}
|
|
80
|
+
onScenarioEnd({ title, status }) {
|
|
81
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
82
|
+
console.groupEnd();
|
|
83
|
+
}
|
|
84
|
+
onScenarioOutlineStart(opts) {
|
|
85
|
+
console.group(opts.title);
|
|
86
|
+
}
|
|
87
|
+
onScenarioOutlineEnd({ title, status }) {
|
|
88
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
89
|
+
console.groupEnd();
|
|
90
|
+
}
|
|
91
|
+
onRuleStart({ title }) {
|
|
92
|
+
console.group(title);
|
|
93
|
+
}
|
|
94
|
+
onRuleEnd({ title, status }) {
|
|
95
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
96
|
+
console.groupEnd();
|
|
97
|
+
}
|
|
98
|
+
onStepStart({ title }) {
|
|
99
|
+
console.group(title);
|
|
100
|
+
}
|
|
101
|
+
onStepEnd({ title, status }) {
|
|
102
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
103
|
+
console.groupEnd();
|
|
104
|
+
}
|
|
105
|
+
onBeforeStart(opts) {
|
|
106
|
+
console.group(opts.title);
|
|
107
|
+
}
|
|
108
|
+
onBeforeEnd({ title, status }) {
|
|
109
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
110
|
+
console.groupEnd();
|
|
111
|
+
}
|
|
112
|
+
onAfterStart(opts) {
|
|
113
|
+
console.group(opts.title);
|
|
114
|
+
}
|
|
115
|
+
onAfterEnd({ title, status }) {
|
|
116
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
117
|
+
console.groupEnd();
|
|
118
|
+
}
|
|
119
|
+
onTeardownStart(opts) {
|
|
120
|
+
console.group(opts.title);
|
|
121
|
+
}
|
|
122
|
+
onTeardownEnd({ title, status }) {
|
|
123
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
124
|
+
console.groupEnd();
|
|
125
|
+
}
|
|
126
|
+
onSetupStart(opts) {
|
|
127
|
+
console.group(opts.title);
|
|
128
|
+
}
|
|
129
|
+
onSetupEnd({ title, status }) {
|
|
130
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
131
|
+
console.groupEnd();
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
function colorStatus(status, text) {
|
|
135
|
+
switch (status) {
|
|
136
|
+
case "FAILED":
|
|
137
|
+
return colors.red_b(text);
|
|
138
|
+
case "PASSED":
|
|
139
|
+
return colors.green_b(text);
|
|
140
|
+
case "SKIPPED":
|
|
141
|
+
return colors.yellow_b(text);
|
|
142
|
+
default:
|
|
143
|
+
return text;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
// src/events.ts
|
|
148
|
+
function makeTestEmitter(opts) {
|
|
149
|
+
const events = CONFIG.current.events;
|
|
150
|
+
const emitter = new TestEventEmitter();
|
|
151
|
+
if (!events) {
|
|
152
|
+
return emitter;
|
|
153
|
+
}
|
|
154
|
+
for (const event of events) {
|
|
155
|
+
const listener = __require(event);
|
|
156
|
+
emitter.load(listener);
|
|
157
|
+
}
|
|
158
|
+
if (opts.groupLogger) {
|
|
159
|
+
emitter.load(new GroupLogEvents());
|
|
160
|
+
}
|
|
161
|
+
return emitter;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// src/executor.ts
|
|
165
|
+
import { execute } from "@autometa/jest-executor";
|
|
166
|
+
var executor = execute;
|
|
167
|
+
|
|
168
|
+
// src/app.ts
|
|
169
|
+
import "@autometa/types";
|
|
170
|
+
import { AppType as at } from "@autometa/app";
|
|
171
|
+
var OPTS = {};
|
|
172
|
+
var AppType = at.bind(null, OPTS);
|
|
173
|
+
|
|
174
|
+
// src/scopes.ts
|
|
175
|
+
var {
|
|
176
|
+
Feature,
|
|
177
|
+
Scenario,
|
|
178
|
+
ScenarioOutline,
|
|
179
|
+
Rule,
|
|
180
|
+
Given,
|
|
181
|
+
When,
|
|
182
|
+
Then,
|
|
183
|
+
Before,
|
|
184
|
+
After,
|
|
185
|
+
Teardown,
|
|
186
|
+
Setup,
|
|
187
|
+
Global
|
|
188
|
+
} = GetCucumberFunctions(PARAM_REGISTRY);
|
|
189
|
+
var coordinator = new Coordinator(Global, CONFIG, OPTS);
|
|
190
|
+
Global.onFeatureExecuted = (feature, caller) => {
|
|
191
|
+
const groupLogger = CONFIG.current.test?.groupLogging ?? false;
|
|
192
|
+
const events = makeTestEmitter({ groupLogger });
|
|
193
|
+
coordinator.run(feature, caller, events, executor);
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
// src/index.ts
|
|
197
|
+
export * from "@autometa/phrases";
|
|
198
|
+
import { App, World, AutometaApp, AutometaWorld } from "@autometa/app";
|
|
199
|
+
import { Dates, Time } from "@autometa/datetime";
|
|
200
|
+
import { AutomationError, raise } from "@autometa/errors";
|
|
201
|
+
import { DataTable, HTable, VTable, MTable } from "@autometa/gherkin";
|
|
202
|
+
import { Bind } from "@autometa/bind-decorator";
|
|
203
|
+
export {
|
|
204
|
+
After,
|
|
205
|
+
App,
|
|
206
|
+
AppType,
|
|
207
|
+
AutomationError,
|
|
208
|
+
AutometaApp,
|
|
209
|
+
AutometaWorld,
|
|
210
|
+
Before,
|
|
211
|
+
Bind,
|
|
212
|
+
DataTable,
|
|
213
|
+
Dates,
|
|
214
|
+
Feature,
|
|
215
|
+
Given,
|
|
216
|
+
HTable,
|
|
217
|
+
MTable,
|
|
218
|
+
Pass,
|
|
219
|
+
Rule,
|
|
220
|
+
Scenario,
|
|
221
|
+
ScenarioOutline,
|
|
222
|
+
Setup,
|
|
223
|
+
Teardown,
|
|
224
|
+
Then,
|
|
225
|
+
Time,
|
|
226
|
+
VTable,
|
|
227
|
+
When,
|
|
228
|
+
World,
|
|
229
|
+
defineConfig,
|
|
230
|
+
defineParameterType,
|
|
231
|
+
raise
|
|
232
|
+
};
|
|
233
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/config.ts","../../src/parameters.ts","../../src/scopes.ts","../../src/events.ts","../../src/event-logger.ts","../../src/executor.ts","../../src/app.ts","../../src/index.ts"],"sourcesContent":["import {\n Config,\n TestExecutorConfig,\n defineConfig as dc\n} from \"@autometa/config\";\n\nexport const CONFIG = new Config(new Map<string, TestExecutorConfig>());\nexport const defineConfig = dc.bind(null, CONFIG);\n","import { ParameterTypeRegistry } from \"@cucumber/cucumber-expressions\";\nimport {\n BooleanParam,\n DateParam,\n NumberParam,\n PrimitiveParam,\n TextParam,\n defineParameterType as dpt\n} from \"@autometa/cucumber-expressions\";\n\nexport const PARAM_REGISTRY = new ParameterTypeRegistry();\n\nexport const defineParameterType = dpt.bind(null, PARAM_REGISTRY);\n\ndefineParameterType(\n NumberParam,\n BooleanParam,\n PrimitiveParam,\n TextParam,\n DateParam\n);\n","import { PARAM_REGISTRY } from \"./parameters\";\nimport { GetCucumberFunctions, Pass } from \"@autometa/scopes\";\nimport { Coordinator } from \"@autometa/coordinator\";\nimport { CONFIG } from \"./config\";\nimport { makeTestEmitter } from \"./events\";\nimport { executor } from \"./executor\";\nimport { OPTS } from \"./app\";\nconst {\n Feature,\n Scenario,\n ScenarioOutline,\n Rule,\n Given,\n When,\n Then,\n Before,\n After,\n Teardown,\n Setup,\n Global\n} = GetCucumberFunctions(PARAM_REGISTRY);\nconst coordinator = new Coordinator(Global, CONFIG, OPTS);\nGlobal.onFeatureExecuted = (feature, caller) => {\n const groupLogger = CONFIG.current.test?.groupLogging ?? false;\n const events = makeTestEmitter({ groupLogger });\n coordinator.run(feature, caller, events, executor);\n};\n\nexport {\n Feature,\n Scenario,\n ScenarioOutline,\n Rule,\n Given,\n When,\n Then,\n Before,\n After,\n Teardown,\n Setup,\n Pass\n};\n","import { TestEventEmitter } from \"@autometa/events\";\nimport { CONFIG } from \"./config\";\nexport * from \"@autometa/events\";\nimport { GroupLogEvents } from \"./event-logger\";\nexport function makeTestEmitter(opts: { groupLogger: boolean }) {\n const events = CONFIG.current.events;\n const emitter = new TestEventEmitter();\n if (!events) {\n return emitter;\n }\n for (const event of events) {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const listener = require(event);\n emitter.load(listener);\n }\n if (opts.groupLogger) {\n emitter.load(new GroupLogEvents());\n }\n return emitter;\n}\n","import {\n EndAfterOpts,\n EndBeforeOpts,\n EndFeatureOpts,\n EndRuleOpts,\n EndScenarioOpts,\n EndScenarioOutlineOpts,\n EndSetupOpts,\n EndStepOpts,\n EndTeardownOpts,\n EventSubscriber,\n StartAfterOpts,\n StartBeforeOpts,\n StartFeatureOpts,\n StartRuleOpts,\n StartScenarioOpts,\n StartScenarioOutlineOpts,\n StartSetupOpts,\n StartStepOpts,\n StartTeardownOpts\n} from \"@autometa/events\";\nimport colors from \"colors-cli\";\nexport class GroupLogEvents implements EventSubscriber {\n onFeatureStart({ title }: StartFeatureOpts) {\n console.group(title);\n }\n onFeatureEnd({ title, status }: EndFeatureOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onScenarioStart({ title }: StartScenarioOpts): void {\n console.group(title);\n }\n onScenarioEnd({ title, status }: EndScenarioOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onScenarioOutlineStart(opts: StartScenarioOutlineOpts): void {\n console.group(opts.title);\n }\n onScenarioOutlineEnd({ title, status }: EndScenarioOutlineOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onRuleStart({ title }: StartRuleOpts): void {\n console.group(title);\n }\n onRuleEnd({ title, status }: EndRuleOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onStepStart({ title }: StartStepOpts) {\n console.group(title);\n }\n onStepEnd({ title, status }: EndStepOpts) {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onBeforeStart(opts: StartBeforeOpts): void {\n console.group(opts.title);\n }\n onBeforeEnd({ title, status }: EndBeforeOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onAfterStart(opts: StartAfterOpts): void {\n console.group(opts.title);\n }\n onAfterEnd({ title, status }: EndAfterOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onTeardownStart(opts: StartTeardownOpts): void {\n console.group(opts.title);\n }\n onTeardownEnd({ title, status }: EndTeardownOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onSetupStart(opts: StartSetupOpts): void {\n console.group(opts.title);\n }\n onSetupEnd({ title, status }: EndSetupOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n}\n\nfunction colorStatus(\n status: \"FAILED\" | \"PASSED\" | \"SKIPPED\" | \"BROKEN\" | undefined,\n text: string\n) {\n switch (status) {\n case \"FAILED\":\n return colors.red_b(text);\n case \"PASSED\":\n return colors.green_b(text);\n case \"SKIPPED\":\n return colors.yellow_b(text);\n default:\n return text;\n }\n}\n","import { execute } from \"@autometa/jest-executor\";\n\nexport const executor = execute;\n","import \"@autometa/types\";\nimport { AppType as at } from \"@autometa/app\";\nimport { CoordinatorOpts } from \"@autometa/coordinator\";\nexport const OPTS = {} as Record<string, CoordinatorOpts>;\nexport const AppType = at.bind(null, OPTS);\n","export { defineConfig } from \"./config\";\nexport { defineParameterType } from \"./parameters\";\nexport {\n Feature,\n Scenario,\n ScenarioOutline,\n Rule,\n Given,\n When,\n Then,\n Before,\n After,\n Teardown,\n Setup,\n Pass\n} from \"./scopes\";\n\nexport * from \"@autometa/phrases\";\nexport { App, World, AutometaApp, AutometaWorld } from \"@autometa/app\";\nexport { AppType } from \"./app\";\nexport { Dates, Time } from \"@autometa/datetime\";\nexport { AutomationError, raise } from \"@autometa/errors\";\nexport { DataTable, HTable, VTable, MTable } from \"@autometa/gherkin\";\nexport { Bind } from \"@autometa/bind-decorator\";\n"],"mappings":"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","names":[]}
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import * as _autometa_config from '@autometa/config';
|
|
2
|
+
import * as _autometa_cucumber_expressions from '@autometa/cucumber-expressions';
|
|
3
|
+
import * as _autometa_types from '@autometa/types';
|
|
4
|
+
import * as _autometa_gherkin from '@autometa/gherkin';
|
|
5
|
+
export { DataTable, HTable, MTable, VTable } from '@autometa/gherkin';
|
|
6
|
+
import * as _autometa_scopes from '@autometa/scopes';
|
|
7
|
+
export { Pass } from '@autometa/scopes';
|
|
8
|
+
export * from '@autometa/phrases';
|
|
9
|
+
import * as _autometa_app from '@autometa/app';
|
|
10
|
+
export { App, AutometaApp, AutometaWorld, World } from '@autometa/app';
|
|
11
|
+
export { Dates, Time } from '@autometa/datetime';
|
|
12
|
+
export { AutomationError, raise } from '@autometa/errors';
|
|
13
|
+
export { Bind } from '@autometa/bind-decorator';
|
|
14
|
+
|
|
15
|
+
declare const defineConfig: (...args: {
|
|
16
|
+
runner: "jest" | "vitest";
|
|
17
|
+
roots: {
|
|
18
|
+
features: string[];
|
|
19
|
+
steps: string[];
|
|
20
|
+
app: string[];
|
|
21
|
+
parameterTypes?: string[] | undefined;
|
|
22
|
+
};
|
|
23
|
+
environment?: string | undefined;
|
|
24
|
+
test?: {
|
|
25
|
+
timeout?: number | [number, "ms" | "s" | "m" | "h"] | undefined;
|
|
26
|
+
tagFilter?: string | undefined;
|
|
27
|
+
groupLogging?: boolean | undefined;
|
|
28
|
+
} | undefined;
|
|
29
|
+
shim?: {
|
|
30
|
+
errorCause?: boolean | undefined;
|
|
31
|
+
} | undefined;
|
|
32
|
+
events?: string[] | undefined;
|
|
33
|
+
}[]) => {
|
|
34
|
+
env: {
|
|
35
|
+
byLiteral: (literal: string) => _autometa_config.EnvironmentReader;
|
|
36
|
+
byEnvironmentVariable: (name: string) => _autometa_config.EnvironmentReader;
|
|
37
|
+
byFactory: (action: () => string) => _autometa_config.EnvironmentReader;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
declare const defineParameterType: (...args: _autometa_cucumber_expressions.ParamTypeDefinition[]) => void;
|
|
42
|
+
|
|
43
|
+
declare const Feature: {
|
|
44
|
+
(filepath: string): _autometa_scopes.FeatureScope;
|
|
45
|
+
(filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
46
|
+
(filepath: string, timeout: _autometa_scopes.TestTimeout): _autometa_scopes.FeatureScope;
|
|
47
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string): _autometa_scopes.FeatureScope;
|
|
48
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
49
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.FeatureScope;
|
|
50
|
+
(...args: (string | _autometa_scopes.TestTimeout | _autometa_scopes.FeatureAction)[]): _autometa_scopes.FeatureScope;
|
|
51
|
+
} & {
|
|
52
|
+
skip: {
|
|
53
|
+
(filepath: string): _autometa_scopes.FeatureScope;
|
|
54
|
+
(filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
55
|
+
(filepath: string, timeout: _autometa_scopes.TestTimeout): _autometa_scopes.FeatureScope;
|
|
56
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string): _autometa_scopes.FeatureScope;
|
|
57
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
58
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.FeatureScope;
|
|
59
|
+
(...args: (string | _autometa_scopes.TestTimeout | _autometa_scopes.FeatureAction)[]): _autometa_scopes.FeatureScope;
|
|
60
|
+
};
|
|
61
|
+
only: {
|
|
62
|
+
(filepath: string): _autometa_scopes.FeatureScope;
|
|
63
|
+
(filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
64
|
+
(filepath: string, timeout: _autometa_scopes.TestTimeout): _autometa_scopes.FeatureScope;
|
|
65
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string): _autometa_scopes.FeatureScope;
|
|
66
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
67
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.FeatureScope;
|
|
68
|
+
(...args: (string | _autometa_scopes.TestTimeout | _autometa_scopes.FeatureAction)[]): _autometa_scopes.FeatureScope;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
declare const Scenario: {
|
|
72
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
73
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
74
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
75
|
+
} & {
|
|
76
|
+
skip: {
|
|
77
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
78
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
79
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
80
|
+
};
|
|
81
|
+
only: {
|
|
82
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
83
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
84
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
declare const ScenarioOutline: {
|
|
88
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
89
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
90
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
91
|
+
} & {
|
|
92
|
+
skip: {
|
|
93
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
94
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
95
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
96
|
+
};
|
|
97
|
+
only: {
|
|
98
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
99
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
100
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
101
|
+
};
|
|
102
|
+
};
|
|
103
|
+
declare const Rule: {
|
|
104
|
+
(title: string, action: _autometa_scopes.RuleAction): _autometa_scopes.RuleScope;
|
|
105
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: number): _autometa_scopes.RuleScope;
|
|
106
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.RuleScope;
|
|
107
|
+
} & {
|
|
108
|
+
skip: {
|
|
109
|
+
(title: string, action: _autometa_scopes.RuleAction): _autometa_scopes.RuleScope;
|
|
110
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: number): _autometa_scopes.RuleScope;
|
|
111
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.RuleScope;
|
|
112
|
+
};
|
|
113
|
+
only: {
|
|
114
|
+
(title: string, action: _autometa_scopes.RuleAction): _autometa_scopes.RuleScope;
|
|
115
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: number): _autometa_scopes.RuleScope;
|
|
116
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.RuleScope;
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
declare const Given: <TText extends string, TTable extends _autometa_gherkin.DataTable = _autometa_gherkin.NeverDataTable>(title: TText, action: _autometa_scopes.StepActionFn<TText, TTable>, tableType?: _autometa_types.Class<TTable> | undefined) => void;
|
|
120
|
+
declare const When: <TText_1 extends string, TTable_1 extends _autometa_gherkin.DataTable = _autometa_gherkin.NeverDataTable>(title: TText_1, action: _autometa_scopes.StepActionFn<TText_1, TTable_1>, tableType?: _autometa_types.Class<TTable_1> | undefined) => void;
|
|
121
|
+
declare const Then: <TText_2 extends string, TTable_2 extends _autometa_gherkin.DataTable = _autometa_gherkin.NeverDataTable>(title: TText_2, action: _autometa_scopes.StepActionFn<TText_2, TTable_2>, tableType?: _autometa_types.Class<TTable_2> | undefined) => void;
|
|
122
|
+
declare const Before: {
|
|
123
|
+
(description: string, action: _autometa_scopes.HookAction): _autometa_scopes.BeforeHook;
|
|
124
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: number): _autometa_scopes.BeforeHook;
|
|
125
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string): _autometa_scopes.BeforeHook;
|
|
126
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: number): _autometa_scopes.BeforeHook;
|
|
127
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.BeforeHook;
|
|
128
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.BeforeHook;
|
|
129
|
+
(description: string, action: _autometa_scopes.HookAction, exprOrTimeout?: string | _autometa_scopes.TestTimeout | undefined, timeout?: _autometa_scopes.TestTimeout | undefined): _autometa_scopes.BeforeHook;
|
|
130
|
+
};
|
|
131
|
+
declare const After: {
|
|
132
|
+
(description: string, action: _autometa_scopes.HookAction): _autometa_scopes.AfterHook;
|
|
133
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: number): _autometa_scopes.AfterHook;
|
|
134
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string): _autometa_scopes.AfterHook;
|
|
135
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: number): _autometa_scopes.AfterHook;
|
|
136
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.AfterHook;
|
|
137
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.AfterHook;
|
|
138
|
+
(description: string, action: _autometa_scopes.HookAction, exprOrTimeout?: string | _autometa_scopes.TestTimeout | undefined, timeout?: _autometa_scopes.TestTimeout | undefined): _autometa_scopes.AfterHook;
|
|
139
|
+
};
|
|
140
|
+
declare const Teardown: {
|
|
141
|
+
(description: string, action: _autometa_scopes.HookAction): _autometa_scopes.TeardownHook;
|
|
142
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: number): _autometa_scopes.TeardownHook;
|
|
143
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string): _autometa_scopes.TeardownHook;
|
|
144
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: number): _autometa_scopes.TeardownHook;
|
|
145
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.TeardownHook;
|
|
146
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.TeardownHook;
|
|
147
|
+
};
|
|
148
|
+
declare const Setup: {
|
|
149
|
+
(description: string, action: _autometa_scopes.HookAction): _autometa_scopes.SetupHook;
|
|
150
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: number): _autometa_scopes.SetupHook;
|
|
151
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string): _autometa_scopes.SetupHook;
|
|
152
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: number): _autometa_scopes.SetupHook;
|
|
153
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.SetupHook;
|
|
154
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.SetupHook;
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
declare const AppType: (world: _autometa_types.Class<_autometa_app.AutometaWorld>, environment?: string | undefined) => (target: _autometa_types.Class<unknown>) => void;
|
|
158
|
+
|
|
159
|
+
export { After, AppType, Before, Feature, Given, Rule, Scenario, ScenarioOutline, Setup, Teardown, Then, When, defineConfig, defineParameterType };
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import * as _autometa_config from '@autometa/config';
|
|
2
|
+
import * as _autometa_cucumber_expressions from '@autometa/cucumber-expressions';
|
|
3
|
+
import * as _autometa_types from '@autometa/types';
|
|
4
|
+
import * as _autometa_gherkin from '@autometa/gherkin';
|
|
5
|
+
export { DataTable, HTable, MTable, VTable } from '@autometa/gherkin';
|
|
6
|
+
import * as _autometa_scopes from '@autometa/scopes';
|
|
7
|
+
export { Pass } from '@autometa/scopes';
|
|
8
|
+
export * from '@autometa/phrases';
|
|
9
|
+
import * as _autometa_app from '@autometa/app';
|
|
10
|
+
export { App, AutometaApp, AutometaWorld, World } from '@autometa/app';
|
|
11
|
+
export { Dates, Time } from '@autometa/datetime';
|
|
12
|
+
export { AutomationError, raise } from '@autometa/errors';
|
|
13
|
+
export { Bind } from '@autometa/bind-decorator';
|
|
14
|
+
|
|
15
|
+
declare const defineConfig: (...args: {
|
|
16
|
+
runner: "jest" | "vitest";
|
|
17
|
+
roots: {
|
|
18
|
+
features: string[];
|
|
19
|
+
steps: string[];
|
|
20
|
+
app: string[];
|
|
21
|
+
parameterTypes?: string[] | undefined;
|
|
22
|
+
};
|
|
23
|
+
environment?: string | undefined;
|
|
24
|
+
test?: {
|
|
25
|
+
timeout?: number | [number, "ms" | "s" | "m" | "h"] | undefined;
|
|
26
|
+
tagFilter?: string | undefined;
|
|
27
|
+
groupLogging?: boolean | undefined;
|
|
28
|
+
} | undefined;
|
|
29
|
+
shim?: {
|
|
30
|
+
errorCause?: boolean | undefined;
|
|
31
|
+
} | undefined;
|
|
32
|
+
events?: string[] | undefined;
|
|
33
|
+
}[]) => {
|
|
34
|
+
env: {
|
|
35
|
+
byLiteral: (literal: string) => _autometa_config.EnvironmentReader;
|
|
36
|
+
byEnvironmentVariable: (name: string) => _autometa_config.EnvironmentReader;
|
|
37
|
+
byFactory: (action: () => string) => _autometa_config.EnvironmentReader;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
declare const defineParameterType: (...args: _autometa_cucumber_expressions.ParamTypeDefinition[]) => void;
|
|
42
|
+
|
|
43
|
+
declare const Feature: {
|
|
44
|
+
(filepath: string): _autometa_scopes.FeatureScope;
|
|
45
|
+
(filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
46
|
+
(filepath: string, timeout: _autometa_scopes.TestTimeout): _autometa_scopes.FeatureScope;
|
|
47
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string): _autometa_scopes.FeatureScope;
|
|
48
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
49
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.FeatureScope;
|
|
50
|
+
(...args: (string | _autometa_scopes.TestTimeout | _autometa_scopes.FeatureAction)[]): _autometa_scopes.FeatureScope;
|
|
51
|
+
} & {
|
|
52
|
+
skip: {
|
|
53
|
+
(filepath: string): _autometa_scopes.FeatureScope;
|
|
54
|
+
(filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
55
|
+
(filepath: string, timeout: _autometa_scopes.TestTimeout): _autometa_scopes.FeatureScope;
|
|
56
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string): _autometa_scopes.FeatureScope;
|
|
57
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
58
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.FeatureScope;
|
|
59
|
+
(...args: (string | _autometa_scopes.TestTimeout | _autometa_scopes.FeatureAction)[]): _autometa_scopes.FeatureScope;
|
|
60
|
+
};
|
|
61
|
+
only: {
|
|
62
|
+
(filepath: string): _autometa_scopes.FeatureScope;
|
|
63
|
+
(filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
64
|
+
(filepath: string, timeout: _autometa_scopes.TestTimeout): _autometa_scopes.FeatureScope;
|
|
65
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string): _autometa_scopes.FeatureScope;
|
|
66
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: number): _autometa_scopes.FeatureScope;
|
|
67
|
+
(testDefinition: _autometa_scopes.FeatureAction, filepath: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.FeatureScope;
|
|
68
|
+
(...args: (string | _autometa_scopes.TestTimeout | _autometa_scopes.FeatureAction)[]): _autometa_scopes.FeatureScope;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
declare const Scenario: {
|
|
72
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
73
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
74
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
75
|
+
} & {
|
|
76
|
+
skip: {
|
|
77
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
78
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
79
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
80
|
+
};
|
|
81
|
+
only: {
|
|
82
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
83
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
84
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
declare const ScenarioOutline: {
|
|
88
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
89
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
90
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
91
|
+
} & {
|
|
92
|
+
skip: {
|
|
93
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
94
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
95
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
96
|
+
};
|
|
97
|
+
only: {
|
|
98
|
+
(title: string, action: _autometa_scopes.ScenarioAction): _autometa_scopes.ScenarioScope;
|
|
99
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: number): _autometa_scopes.ScenarioScope;
|
|
100
|
+
(title: string, action: _autometa_scopes.ScenarioAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.ScenarioScope;
|
|
101
|
+
};
|
|
102
|
+
};
|
|
103
|
+
declare const Rule: {
|
|
104
|
+
(title: string, action: _autometa_scopes.RuleAction): _autometa_scopes.RuleScope;
|
|
105
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: number): _autometa_scopes.RuleScope;
|
|
106
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.RuleScope;
|
|
107
|
+
} & {
|
|
108
|
+
skip: {
|
|
109
|
+
(title: string, action: _autometa_scopes.RuleAction): _autometa_scopes.RuleScope;
|
|
110
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: number): _autometa_scopes.RuleScope;
|
|
111
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.RuleScope;
|
|
112
|
+
};
|
|
113
|
+
only: {
|
|
114
|
+
(title: string, action: _autometa_scopes.RuleAction): _autometa_scopes.RuleScope;
|
|
115
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: number): _autometa_scopes.RuleScope;
|
|
116
|
+
(title: string, action: _autometa_scopes.RuleAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.RuleScope;
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
declare const Given: <TText extends string, TTable extends _autometa_gherkin.DataTable = _autometa_gherkin.NeverDataTable>(title: TText, action: _autometa_scopes.StepActionFn<TText, TTable>, tableType?: _autometa_types.Class<TTable> | undefined) => void;
|
|
120
|
+
declare const When: <TText_1 extends string, TTable_1 extends _autometa_gherkin.DataTable = _autometa_gherkin.NeverDataTable>(title: TText_1, action: _autometa_scopes.StepActionFn<TText_1, TTable_1>, tableType?: _autometa_types.Class<TTable_1> | undefined) => void;
|
|
121
|
+
declare const Then: <TText_2 extends string, TTable_2 extends _autometa_gherkin.DataTable = _autometa_gherkin.NeverDataTable>(title: TText_2, action: _autometa_scopes.StepActionFn<TText_2, TTable_2>, tableType?: _autometa_types.Class<TTable_2> | undefined) => void;
|
|
122
|
+
declare const Before: {
|
|
123
|
+
(description: string, action: _autometa_scopes.HookAction): _autometa_scopes.BeforeHook;
|
|
124
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: number): _autometa_scopes.BeforeHook;
|
|
125
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string): _autometa_scopes.BeforeHook;
|
|
126
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: number): _autometa_scopes.BeforeHook;
|
|
127
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.BeforeHook;
|
|
128
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.BeforeHook;
|
|
129
|
+
(description: string, action: _autometa_scopes.HookAction, exprOrTimeout?: string | _autometa_scopes.TestTimeout | undefined, timeout?: _autometa_scopes.TestTimeout | undefined): _autometa_scopes.BeforeHook;
|
|
130
|
+
};
|
|
131
|
+
declare const After: {
|
|
132
|
+
(description: string, action: _autometa_scopes.HookAction): _autometa_scopes.AfterHook;
|
|
133
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: number): _autometa_scopes.AfterHook;
|
|
134
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string): _autometa_scopes.AfterHook;
|
|
135
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: number): _autometa_scopes.AfterHook;
|
|
136
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.AfterHook;
|
|
137
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.AfterHook;
|
|
138
|
+
(description: string, action: _autometa_scopes.HookAction, exprOrTimeout?: string | _autometa_scopes.TestTimeout | undefined, timeout?: _autometa_scopes.TestTimeout | undefined): _autometa_scopes.AfterHook;
|
|
139
|
+
};
|
|
140
|
+
declare const Teardown: {
|
|
141
|
+
(description: string, action: _autometa_scopes.HookAction): _autometa_scopes.TeardownHook;
|
|
142
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: number): _autometa_scopes.TeardownHook;
|
|
143
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string): _autometa_scopes.TeardownHook;
|
|
144
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: number): _autometa_scopes.TeardownHook;
|
|
145
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.TeardownHook;
|
|
146
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.TeardownHook;
|
|
147
|
+
};
|
|
148
|
+
declare const Setup: {
|
|
149
|
+
(description: string, action: _autometa_scopes.HookAction): _autometa_scopes.SetupHook;
|
|
150
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: number): _autometa_scopes.SetupHook;
|
|
151
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string): _autometa_scopes.SetupHook;
|
|
152
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: number): _autometa_scopes.SetupHook;
|
|
153
|
+
(description: string, action: _autometa_scopes.HookAction, tagFilterExpression: string, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.SetupHook;
|
|
154
|
+
(description: string, action: _autometa_scopes.HookAction, timeout: _autometa_scopes.SizedTimeout): _autometa_scopes.SetupHook;
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
declare const AppType: (world: _autometa_types.Class<_autometa_app.AutometaWorld>, environment?: string | undefined) => (target: _autometa_types.Class<unknown>) => void;
|
|
158
|
+
|
|
159
|
+
export { After, AppType, Before, Feature, Given, Rule, Scenario, ScenarioOutline, Setup, Teardown, Then, When, defineConfig, defineParameterType };
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
21
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
22
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
23
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
24
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
25
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
26
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
27
|
+
mod
|
|
28
|
+
));
|
|
29
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
30
|
+
|
|
31
|
+
// src/index.ts
|
|
32
|
+
var src_exports = {};
|
|
33
|
+
__export(src_exports, {
|
|
34
|
+
After: () => After,
|
|
35
|
+
App: () => import_app3.App,
|
|
36
|
+
AppType: () => AppType,
|
|
37
|
+
AutomationError: () => import_errors.AutomationError,
|
|
38
|
+
AutometaApp: () => import_app3.AutometaApp,
|
|
39
|
+
AutometaWorld: () => import_app3.AutometaWorld,
|
|
40
|
+
Before: () => Before,
|
|
41
|
+
Bind: () => import_bind_decorator.Bind,
|
|
42
|
+
DataTable: () => import_gherkin.DataTable,
|
|
43
|
+
Dates: () => import_datetime.Dates,
|
|
44
|
+
Feature: () => Feature,
|
|
45
|
+
Given: () => Given,
|
|
46
|
+
HTable: () => import_gherkin.HTable,
|
|
47
|
+
MTable: () => import_gherkin.MTable,
|
|
48
|
+
Pass: () => import_scopes.Pass,
|
|
49
|
+
Rule: () => Rule,
|
|
50
|
+
Scenario: () => Scenario,
|
|
51
|
+
ScenarioOutline: () => ScenarioOutline,
|
|
52
|
+
Setup: () => Setup,
|
|
53
|
+
Teardown: () => Teardown,
|
|
54
|
+
Then: () => Then,
|
|
55
|
+
Time: () => import_datetime.Time,
|
|
56
|
+
VTable: () => import_gherkin.VTable,
|
|
57
|
+
When: () => When,
|
|
58
|
+
World: () => import_app3.World,
|
|
59
|
+
defineConfig: () => defineConfig,
|
|
60
|
+
defineParameterType: () => defineParameterType,
|
|
61
|
+
raise: () => import_errors.raise
|
|
62
|
+
});
|
|
63
|
+
module.exports = __toCommonJS(src_exports);
|
|
64
|
+
|
|
65
|
+
// src/config.ts
|
|
66
|
+
var import_config = require("@autometa/config");
|
|
67
|
+
var CONFIG = new import_config.Config(/* @__PURE__ */ new Map());
|
|
68
|
+
var defineConfig = import_config.defineConfig.bind(null, CONFIG);
|
|
69
|
+
|
|
70
|
+
// src/parameters.ts
|
|
71
|
+
var import_cucumber_expressions = require("@cucumber/cucumber-expressions");
|
|
72
|
+
var import_cucumber_expressions2 = require("@autometa/cucumber-expressions");
|
|
73
|
+
var PARAM_REGISTRY = new import_cucumber_expressions.ParameterTypeRegistry();
|
|
74
|
+
var defineParameterType = import_cucumber_expressions2.defineParameterType.bind(null, PARAM_REGISTRY);
|
|
75
|
+
defineParameterType(
|
|
76
|
+
import_cucumber_expressions2.NumberParam,
|
|
77
|
+
import_cucumber_expressions2.BooleanParam,
|
|
78
|
+
import_cucumber_expressions2.PrimitiveParam,
|
|
79
|
+
import_cucumber_expressions2.TextParam,
|
|
80
|
+
import_cucumber_expressions2.DateParam
|
|
81
|
+
);
|
|
82
|
+
|
|
83
|
+
// src/scopes.ts
|
|
84
|
+
var import_scopes = require("@autometa/scopes");
|
|
85
|
+
var import_coordinator = require("@autometa/coordinator");
|
|
86
|
+
|
|
87
|
+
// src/events.ts
|
|
88
|
+
var events_exports = {};
|
|
89
|
+
__export(events_exports, {
|
|
90
|
+
makeTestEmitter: () => makeTestEmitter
|
|
91
|
+
});
|
|
92
|
+
var import_events = require("@autometa/events");
|
|
93
|
+
__reExport(events_exports, require("@autometa/events"));
|
|
94
|
+
|
|
95
|
+
// src/event-logger.ts
|
|
96
|
+
var import_colors_cli = __toESM(require("colors-cli"), 1);
|
|
97
|
+
var GroupLogEvents = class {
|
|
98
|
+
onFeatureStart({ title }) {
|
|
99
|
+
console.group(title);
|
|
100
|
+
}
|
|
101
|
+
onFeatureEnd({ title, status }) {
|
|
102
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
103
|
+
console.groupEnd();
|
|
104
|
+
}
|
|
105
|
+
onScenarioStart({ title }) {
|
|
106
|
+
console.group(title);
|
|
107
|
+
}
|
|
108
|
+
onScenarioEnd({ title, status }) {
|
|
109
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
110
|
+
console.groupEnd();
|
|
111
|
+
}
|
|
112
|
+
onScenarioOutlineStart(opts) {
|
|
113
|
+
console.group(opts.title);
|
|
114
|
+
}
|
|
115
|
+
onScenarioOutlineEnd({ title, status }) {
|
|
116
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
117
|
+
console.groupEnd();
|
|
118
|
+
}
|
|
119
|
+
onRuleStart({ title }) {
|
|
120
|
+
console.group(title);
|
|
121
|
+
}
|
|
122
|
+
onRuleEnd({ title, status }) {
|
|
123
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
124
|
+
console.groupEnd();
|
|
125
|
+
}
|
|
126
|
+
onStepStart({ title }) {
|
|
127
|
+
console.group(title);
|
|
128
|
+
}
|
|
129
|
+
onStepEnd({ title, status }) {
|
|
130
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
131
|
+
console.groupEnd();
|
|
132
|
+
}
|
|
133
|
+
onBeforeStart(opts) {
|
|
134
|
+
console.group(opts.title);
|
|
135
|
+
}
|
|
136
|
+
onBeforeEnd({ title, status }) {
|
|
137
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
138
|
+
console.groupEnd();
|
|
139
|
+
}
|
|
140
|
+
onAfterStart(opts) {
|
|
141
|
+
console.group(opts.title);
|
|
142
|
+
}
|
|
143
|
+
onAfterEnd({ title, status }) {
|
|
144
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
145
|
+
console.groupEnd();
|
|
146
|
+
}
|
|
147
|
+
onTeardownStart(opts) {
|
|
148
|
+
console.group(opts.title);
|
|
149
|
+
}
|
|
150
|
+
onTeardownEnd({ title, status }) {
|
|
151
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
152
|
+
console.groupEnd();
|
|
153
|
+
}
|
|
154
|
+
onSetupStart(opts) {
|
|
155
|
+
console.group(opts.title);
|
|
156
|
+
}
|
|
157
|
+
onSetupEnd({ title, status }) {
|
|
158
|
+
console.log(colorStatus(status, `Ending ${title}`));
|
|
159
|
+
console.groupEnd();
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
function colorStatus(status, text) {
|
|
163
|
+
switch (status) {
|
|
164
|
+
case "FAILED":
|
|
165
|
+
return import_colors_cli.default.red_b(text);
|
|
166
|
+
case "PASSED":
|
|
167
|
+
return import_colors_cli.default.green_b(text);
|
|
168
|
+
case "SKIPPED":
|
|
169
|
+
return import_colors_cli.default.yellow_b(text);
|
|
170
|
+
default:
|
|
171
|
+
return text;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
// src/events.ts
|
|
176
|
+
function makeTestEmitter(opts) {
|
|
177
|
+
const events = CONFIG.current.events;
|
|
178
|
+
const emitter = new import_events.TestEventEmitter();
|
|
179
|
+
if (!events) {
|
|
180
|
+
return emitter;
|
|
181
|
+
}
|
|
182
|
+
for (const event of events) {
|
|
183
|
+
const listener = require(event);
|
|
184
|
+
emitter.load(listener);
|
|
185
|
+
}
|
|
186
|
+
if (opts.groupLogger) {
|
|
187
|
+
emitter.load(new GroupLogEvents());
|
|
188
|
+
}
|
|
189
|
+
return emitter;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
// src/executor.ts
|
|
193
|
+
var import_jest_executor = require("@autometa/jest-executor");
|
|
194
|
+
var executor = import_jest_executor.execute;
|
|
195
|
+
|
|
196
|
+
// src/app.ts
|
|
197
|
+
var import_types = require("@autometa/types");
|
|
198
|
+
var import_app = require("@autometa/app");
|
|
199
|
+
var OPTS = {};
|
|
200
|
+
var AppType = import_app.AppType.bind(null, OPTS);
|
|
201
|
+
|
|
202
|
+
// src/scopes.ts
|
|
203
|
+
var {
|
|
204
|
+
Feature,
|
|
205
|
+
Scenario,
|
|
206
|
+
ScenarioOutline,
|
|
207
|
+
Rule,
|
|
208
|
+
Given,
|
|
209
|
+
When,
|
|
210
|
+
Then,
|
|
211
|
+
Before,
|
|
212
|
+
After,
|
|
213
|
+
Teardown,
|
|
214
|
+
Setup,
|
|
215
|
+
Global
|
|
216
|
+
} = (0, import_scopes.GetCucumberFunctions)(PARAM_REGISTRY);
|
|
217
|
+
var coordinator = new import_coordinator.Coordinator(Global, CONFIG, OPTS);
|
|
218
|
+
Global.onFeatureExecuted = (feature, caller) => {
|
|
219
|
+
const groupLogger = CONFIG.current.test?.groupLogging ?? false;
|
|
220
|
+
const events = makeTestEmitter({ groupLogger });
|
|
221
|
+
coordinator.run(feature, caller, events, executor);
|
|
222
|
+
};
|
|
223
|
+
|
|
224
|
+
// src/index.ts
|
|
225
|
+
__reExport(src_exports, require("@autometa/phrases"), module.exports);
|
|
226
|
+
var import_app3 = require("@autometa/app");
|
|
227
|
+
var import_datetime = require("@autometa/datetime");
|
|
228
|
+
var import_errors = require("@autometa/errors");
|
|
229
|
+
var import_gherkin = require("@autometa/gherkin");
|
|
230
|
+
var import_bind_decorator = require("@autometa/bind-decorator");
|
|
231
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
232
|
+
0 && (module.exports = {
|
|
233
|
+
After,
|
|
234
|
+
App,
|
|
235
|
+
AppType,
|
|
236
|
+
AutomationError,
|
|
237
|
+
AutometaApp,
|
|
238
|
+
AutometaWorld,
|
|
239
|
+
Before,
|
|
240
|
+
Bind,
|
|
241
|
+
DataTable,
|
|
242
|
+
Dates,
|
|
243
|
+
Feature,
|
|
244
|
+
Given,
|
|
245
|
+
HTable,
|
|
246
|
+
MTable,
|
|
247
|
+
Pass,
|
|
248
|
+
Rule,
|
|
249
|
+
Scenario,
|
|
250
|
+
ScenarioOutline,
|
|
251
|
+
Setup,
|
|
252
|
+
Teardown,
|
|
253
|
+
Then,
|
|
254
|
+
Time,
|
|
255
|
+
VTable,
|
|
256
|
+
When,
|
|
257
|
+
World,
|
|
258
|
+
defineConfig,
|
|
259
|
+
defineParameterType,
|
|
260
|
+
raise,
|
|
261
|
+
...require("@autometa/phrases")
|
|
262
|
+
});
|
|
263
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/config.ts","../src/parameters.ts","../src/scopes.ts","../src/events.ts","../src/event-logger.ts","../src/executor.ts","../src/app.ts"],"sourcesContent":["export { defineConfig } from \"./config\";\nexport { defineParameterType } from \"./parameters\";\nexport {\n Feature,\n Scenario,\n ScenarioOutline,\n Rule,\n Given,\n When,\n Then,\n Before,\n After,\n Teardown,\n Setup,\n Pass\n} from \"./scopes\";\n\nexport * from \"@autometa/phrases\";\nexport { App, World, AutometaApp, AutometaWorld } from \"@autometa/app\";\nexport { AppType } from \"./app\";\nexport { Dates, Time } from \"@autometa/datetime\";\nexport { AutomationError, raise } from \"@autometa/errors\";\nexport { DataTable, HTable, VTable, MTable } from \"@autometa/gherkin\";\nexport { Bind } from \"@autometa/bind-decorator\";\n","import {\n Config,\n TestExecutorConfig,\n defineConfig as dc\n} from \"@autometa/config\";\n\nexport const CONFIG = new Config(new Map<string, TestExecutorConfig>());\nexport const defineConfig = dc.bind(null, CONFIG);\n","import { ParameterTypeRegistry } from \"@cucumber/cucumber-expressions\";\nimport {\n BooleanParam,\n DateParam,\n NumberParam,\n PrimitiveParam,\n TextParam,\n defineParameterType as dpt\n} from \"@autometa/cucumber-expressions\";\n\nexport const PARAM_REGISTRY = new ParameterTypeRegistry();\n\nexport const defineParameterType = dpt.bind(null, PARAM_REGISTRY);\n\ndefineParameterType(\n NumberParam,\n BooleanParam,\n PrimitiveParam,\n TextParam,\n DateParam\n);\n","import { PARAM_REGISTRY } from \"./parameters\";\nimport { GetCucumberFunctions, Pass } from \"@autometa/scopes\";\nimport { Coordinator } from \"@autometa/coordinator\";\nimport { CONFIG } from \"./config\";\nimport { makeTestEmitter } from \"./events\";\nimport { executor } from \"./executor\";\nimport { OPTS } from \"./app\";\nconst {\n Feature,\n Scenario,\n ScenarioOutline,\n Rule,\n Given,\n When,\n Then,\n Before,\n After,\n Teardown,\n Setup,\n Global\n} = GetCucumberFunctions(PARAM_REGISTRY);\nconst coordinator = new Coordinator(Global, CONFIG, OPTS);\nGlobal.onFeatureExecuted = (feature, caller) => {\n const groupLogger = CONFIG.current.test?.groupLogging ?? false;\n const events = makeTestEmitter({ groupLogger });\n coordinator.run(feature, caller, events, executor);\n};\n\nexport {\n Feature,\n Scenario,\n ScenarioOutline,\n Rule,\n Given,\n When,\n Then,\n Before,\n After,\n Teardown,\n Setup,\n Pass\n};\n","import { TestEventEmitter } from \"@autometa/events\";\nimport { CONFIG } from \"./config\";\nexport * from \"@autometa/events\";\nimport { GroupLogEvents } from \"./event-logger\";\nexport function makeTestEmitter(opts: { groupLogger: boolean }) {\n const events = CONFIG.current.events;\n const emitter = new TestEventEmitter();\n if (!events) {\n return emitter;\n }\n for (const event of events) {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const listener = require(event);\n emitter.load(listener);\n }\n if (opts.groupLogger) {\n emitter.load(new GroupLogEvents());\n }\n return emitter;\n}\n","import {\n EndAfterOpts,\n EndBeforeOpts,\n EndFeatureOpts,\n EndRuleOpts,\n EndScenarioOpts,\n EndScenarioOutlineOpts,\n EndSetupOpts,\n EndStepOpts,\n EndTeardownOpts,\n EventSubscriber,\n StartAfterOpts,\n StartBeforeOpts,\n StartFeatureOpts,\n StartRuleOpts,\n StartScenarioOpts,\n StartScenarioOutlineOpts,\n StartSetupOpts,\n StartStepOpts,\n StartTeardownOpts\n} from \"@autometa/events\";\nimport colors from \"colors-cli\";\nexport class GroupLogEvents implements EventSubscriber {\n onFeatureStart({ title }: StartFeatureOpts) {\n console.group(title);\n }\n onFeatureEnd({ title, status }: EndFeatureOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onScenarioStart({ title }: StartScenarioOpts): void {\n console.group(title);\n }\n onScenarioEnd({ title, status }: EndScenarioOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onScenarioOutlineStart(opts: StartScenarioOutlineOpts): void {\n console.group(opts.title);\n }\n onScenarioOutlineEnd({ title, status }: EndScenarioOutlineOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onRuleStart({ title }: StartRuleOpts): void {\n console.group(title);\n }\n onRuleEnd({ title, status }: EndRuleOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onStepStart({ title }: StartStepOpts) {\n console.group(title);\n }\n onStepEnd({ title, status }: EndStepOpts) {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onBeforeStart(opts: StartBeforeOpts): void {\n console.group(opts.title);\n }\n onBeforeEnd({ title, status }: EndBeforeOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onAfterStart(opts: StartAfterOpts): void {\n console.group(opts.title);\n }\n onAfterEnd({ title, status }: EndAfterOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onTeardownStart(opts: StartTeardownOpts): void {\n console.group(opts.title);\n }\n onTeardownEnd({ title, status }: EndTeardownOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n onSetupStart(opts: StartSetupOpts): void {\n console.group(opts.title);\n }\n onSetupEnd({ title, status }: EndSetupOpts): void {\n console.log(colorStatus(status, `Ending ${title}`));\n console.groupEnd();\n }\n}\n\nfunction colorStatus(\n status: \"FAILED\" | \"PASSED\" | \"SKIPPED\" | \"BROKEN\" | undefined,\n text: string\n) {\n switch (status) {\n case \"FAILED\":\n return colors.red_b(text);\n case \"PASSED\":\n return colors.green_b(text);\n case \"SKIPPED\":\n return colors.yellow_b(text);\n default:\n return text;\n }\n}\n","import { execute } from \"@autometa/jest-executor\";\n\nexport const executor = execute;\n","import \"@autometa/types\";\nimport { AppType as at } from \"@autometa/app\";\nimport { CoordinatorOpts } from \"@autometa/coordinator\";\nexport const OPTS = {} as Record<string, CoordinatorOpts>;\nexport const AppType = at.bind(null, OPTS);\n"],"mappings":"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","names":["dc","import_cucumber_expressions","dpt","colors","at","import_app"]}
|
package/package.json
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@autometa/runner",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"description": "",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"module": "dist/esm/index.js",
|
|
8
|
+
"types": "dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
"import": "./dist/esm/index.js",
|
|
11
|
+
"require": "./dist/index.js",
|
|
12
|
+
"default": "./dist/esm/index.js",
|
|
13
|
+
"types": "./dist/index.d.ts"
|
|
14
|
+
},
|
|
15
|
+
"license": "MIT",
|
|
16
|
+
"devDependencies": {
|
|
17
|
+
"@types/node": "^18.11.18",
|
|
18
|
+
"@types/uuid": "^9.0.1",
|
|
19
|
+
"@typescript-eslint/eslint-plugin": "^5.54.1",
|
|
20
|
+
"@typescript-eslint/parser": "^5.54.1",
|
|
21
|
+
"eslint": "^8.37.0",
|
|
22
|
+
"eslint-config-custom": "0.6.0",
|
|
23
|
+
"eslint-config-prettier": "^8.3.0",
|
|
24
|
+
"rimraf": "^4.1.2",
|
|
25
|
+
"tsconfig": " *",
|
|
26
|
+
"tsup": "^7.2.0",
|
|
27
|
+
"typescript": "^4.9.5",
|
|
28
|
+
"vitest": "^0.29.8"
|
|
29
|
+
},
|
|
30
|
+
"dependencies": {
|
|
31
|
+
"@autometa/app": "^0.1.0",
|
|
32
|
+
"@autometa/asserters": "^0.1.0",
|
|
33
|
+
"@autometa/bind-decorator": "^0.5.0",
|
|
34
|
+
"@autometa/config": "^0.1.0",
|
|
35
|
+
"@autometa/coordinator": "^0.1.0",
|
|
36
|
+
"@autometa/cucumber-expressions": "^0.1.0",
|
|
37
|
+
"@autometa/datetime": "^0.1.0",
|
|
38
|
+
"@autometa/errors": "^0.1.0",
|
|
39
|
+
"@autometa/events": "^0.1.0",
|
|
40
|
+
"@autometa/gherkin": "^0.4.0",
|
|
41
|
+
"@autometa/jest-executor": "^0.1.0",
|
|
42
|
+
"@autometa/phrases": "^0.1.0",
|
|
43
|
+
"@autometa/scopes": "^0.2.0",
|
|
44
|
+
"@autometa/test-builder": "^0.1.0",
|
|
45
|
+
"@autometa/types": "^0.4.0",
|
|
46
|
+
"@cucumber/cucumber-expressions": "^16.1.2",
|
|
47
|
+
"colors-cli": "^1.0.32"
|
|
48
|
+
},
|
|
49
|
+
"scripts": {
|
|
50
|
+
"test": "vitest run --passWithNoTests",
|
|
51
|
+
"prettify": "prettier --config .prettierrc 'src/**/*.ts' --write",
|
|
52
|
+
"lint": "eslint . --max-warnings 0",
|
|
53
|
+
"lint:fix": "eslint . --fix",
|
|
54
|
+
"clean": "rimraf dist",
|
|
55
|
+
"build": "tsup",
|
|
56
|
+
"build:watch": "tsup --watch"
|
|
57
|
+
},
|
|
58
|
+
"readme": "# Introduction\n\nThere's nothing here yet"
|
|
59
|
+
}
|
package/tsup.config.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { defineConfig } from "tsup";
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
clean: true, // clean up the dist folder
|
|
5
|
+
format: ["cjs", "esm"], // generate cjs and esm files
|
|
6
|
+
dts: true,
|
|
7
|
+
sourcemap:true, // generate sourcemaps
|
|
8
|
+
skipNodeModulesBundle: true,
|
|
9
|
+
entryPoints: ["src/index.ts"],
|
|
10
|
+
target: "es2020",
|
|
11
|
+
outDir: "dist",
|
|
12
|
+
legacyOutput: true,
|
|
13
|
+
external: ["dist"],
|
|
14
|
+
});
|