@elastic/synthetics 1.0.0-beta.3 → 1.0.0-beta.30
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/README.md +4 -3
- package/dist/cli.js +99 -162
- package/dist/cli.js.map +1 -1
- package/dist/common_types.d.ts +156 -34
- package/dist/common_types.d.ts.map +1 -1
- package/dist/config.d.ts +2 -5
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +5 -5
- package/dist/config.js.map +1 -1
- package/dist/core/browser-service.js +5 -5
- package/dist/core/browser-service.js.map +1 -1
- package/dist/core/gatherer.d.ts +4 -8
- package/dist/core/gatherer.d.ts.map +1 -1
- package/dist/core/gatherer.js +46 -14
- package/dist/core/gatherer.js.map +1 -1
- package/dist/core/index.d.ts +5 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +23 -11
- package/dist/core/index.js.map +1 -1
- package/dist/core/logger.d.ts +0 -1
- package/dist/core/logger.d.ts.map +1 -1
- package/dist/core/logger.js +3 -16
- package/dist/core/logger.js.map +1 -1
- package/dist/core/runner.d.ts +21 -65
- package/dist/core/runner.d.ts.map +1 -1
- package/dist/core/runner.js +211 -93
- package/dist/core/runner.js.map +1 -1
- package/dist/dsl/journey.d.ts +7 -3
- package/dist/dsl/journey.d.ts.map +1 -1
- package/dist/dsl/journey.js +22 -6
- package/dist/dsl/journey.js.map +1 -1
- package/{src/reporters/reporter.ts → dist/dsl/locations.d.ts} +12 -10
- package/dist/dsl/locations.d.ts.map +1 -0
- package/dist/dsl/locations.js +41 -0
- package/dist/dsl/locations.js.map +1 -0
- package/dist/dsl/monitor.d.ts +65 -0
- package/dist/dsl/monitor.d.ts.map +1 -0
- package/dist/dsl/monitor.js +63 -0
- package/dist/dsl/monitor.js.map +1 -0
- package/dist/dsl/step.d.ts +3 -2
- package/dist/dsl/step.d.ts.map +1 -1
- package/dist/dsl/step.js +2 -1
- package/dist/dsl/step.js.map +1 -1
- package/dist/formatter/javascript.d.ts +98 -0
- package/dist/formatter/javascript.d.ts.map +1 -0
- package/dist/formatter/javascript.js +295 -0
- package/dist/formatter/javascript.js.map +1 -0
- package/dist/generator/index.d.ts +21 -0
- package/dist/generator/index.d.ts.map +1 -0
- package/dist/generator/index.js +169 -0
- package/dist/generator/index.js.map +1 -0
- package/dist/{reporters/reporter.d.ts → generator/utils.d.ts} +4 -9
- package/dist/generator/utils.d.ts.map +1 -0
- package/dist/generator/utils.js +57 -0
- package/dist/generator/utils.js.map +1 -0
- package/dist/helpers.d.ts +20 -1
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +98 -18
- package/dist/helpers.js.map +1 -1
- package/dist/index.d.ts +5 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -26
- package/dist/index.js.map +1 -1
- package/dist/{parse_args.d.ts → loader.d.ts} +2 -5
- package/dist/loader.d.ts.map +1 -0
- package/dist/loader.js +144 -0
- package/dist/loader.js.map +1 -0
- package/dist/options.d.ts +34 -0
- package/dist/options.d.ts.map +1 -0
- package/dist/options.js +162 -0
- package/dist/options.js.map +1 -0
- package/dist/plugins/browser-console.d.ts +5 -4
- package/dist/plugins/browser-console.d.ts.map +1 -1
- package/dist/plugins/browser-console.js +27 -8
- package/dist/plugins/browser-console.js.map +1 -1
- package/dist/plugins/network.d.ts +20 -33
- package/dist/plugins/network.d.ts.map +1 -1
- package/dist/plugins/network.js +173 -214
- package/dist/plugins/network.js.map +1 -1
- package/dist/plugins/performance.d.ts +4 -19
- package/dist/plugins/performance.d.ts.map +1 -1
- package/dist/plugins/performance.js +5 -5
- package/dist/plugins/performance.js.map +1 -1
- package/dist/plugins/plugin-manager.d.ts +9 -5
- package/dist/plugins/plugin-manager.d.ts.map +1 -1
- package/dist/plugins/plugin-manager.js +44 -29
- package/dist/plugins/plugin-manager.js.map +1 -1
- package/dist/plugins/tracing.d.ts +6 -6
- package/dist/plugins/tracing.d.ts.map +1 -1
- package/dist/plugins/tracing.js +8 -7
- package/dist/plugins/tracing.js.map +1 -1
- package/dist/push/bundler.d.ts +34 -0
- package/dist/push/bundler.d.ts.map +1 -0
- package/dist/push/bundler.js +114 -0
- package/dist/push/bundler.js.map +1 -0
- package/dist/{reporters/reporter.js → push/index.d.ts} +4 -3
- package/dist/push/index.d.ts.map +1 -0
- package/dist/push/index.js +55 -0
- package/dist/push/index.js.map +1 -0
- package/dist/push/monitor.d.ts +32 -0
- package/dist/push/monitor.d.ts.map +1 -0
- package/dist/push/monitor.js +62 -0
- package/dist/push/monitor.js.map +1 -0
- package/dist/push/plugin.d.ts +33 -0
- package/dist/push/plugin.d.ts.map +1 -0
- package/dist/push/plugin.js +124 -0
- package/dist/push/plugin.js.map +1 -0
- package/dist/push/request.d.ts +42 -0
- package/dist/push/request.d.ts.map +1 -0
- package/dist/push/request.js +84 -0
- package/dist/push/request.js.map +1 -0
- package/dist/reporters/base.d.ts +14 -6
- package/dist/reporters/base.d.ts.map +1 -1
- package/dist/reporters/base.js +54 -48
- package/dist/reporters/base.js.map +1 -1
- package/dist/reporters/index.d.ts +18 -8
- package/dist/reporters/index.d.ts.map +1 -1
- package/dist/reporters/index.js.map +1 -1
- package/dist/reporters/json.d.ts +18 -67
- package/dist/reporters/json.d.ts.map +1 -1
- package/dist/reporters/json.js +153 -175
- package/dist/reporters/json.js.map +1 -1
- package/dist/reporters/junit.d.ts +7 -1
- package/dist/reporters/junit.d.ts.map +1 -1
- package/dist/reporters/junit.js +94 -89
- package/dist/reporters/junit.js.map +1 -1
- package/dist/sdk/lh-trace-processor.d.ts +35 -9
- package/dist/sdk/lh-trace-processor.d.ts.map +1 -1
- package/dist/sdk/lh-trace-processor.js +114 -53
- package/dist/sdk/lh-trace-processor.js.map +1 -1
- package/dist/sdk/trace-metrics.d.ts +4 -4
- package/dist/sdk/trace-metrics.d.ts.map +1 -1
- package/dist/sdk/trace-metrics.js +5 -6
- package/dist/sdk/trace-metrics.js.map +1 -1
- package/dist/sdk/trace-processor.d.ts +11 -3
- package/dist/sdk/trace-processor.d.ts.map +1 -1
- package/dist/sdk/trace-processor.js +17 -9
- package/dist/sdk/trace-processor.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1888
- package/package.json +31 -19
- package/src/cli.ts +187 -154
- package/src/common_types.ts +188 -34
- package/src/config.ts +2 -5
- package/src/core/gatherer.ts +55 -27
- package/src/core/index.ts +36 -15
- package/src/core/logger.ts +1 -12
- package/src/core/runner.ts +216 -152
- package/src/dsl/journey.ts +29 -5
- package/src/dsl/locations.ts +38 -0
- package/src/dsl/monitor.ts +87 -0
- package/src/dsl/step.ts +9 -2
- package/src/formatter/javascript.ts +367 -0
- package/src/generator/index.ts +212 -0
- package/src/generator/utils.ts +54 -0
- package/src/helpers.ts +106 -10
- package/src/index.ts +21 -22
- package/src/loader.ts +162 -0
- package/src/options.ts +173 -0
- package/src/plugins/browser-console.ts +30 -8
- package/src/plugins/network.ts +208 -267
- package/src/plugins/performance.ts +6 -22
- package/src/plugins/plugin-manager.ts +49 -31
- package/src/plugins/tracing.ts +8 -9
- package/src/push/bundler.ts +95 -0
- package/src/push/index.ts +59 -0
- package/src/push/monitor.ts +68 -0
- package/src/push/plugin.ts +114 -0
- package/src/push/request.ts +111 -0
- package/src/reporters/base.ts +63 -52
- package/src/reporters/index.ts +26 -3
- package/src/reporters/json.ts +203 -206
- package/src/reporters/junit.ts +98 -93
- package/src/sdk/lh-trace-processor.ts +132 -68
- package/src/sdk/trace-metrics.ts +10 -6
- package/src/sdk/trace-processor.ts +28 -13
- package/templates/.github/workflows/run-synthetics.yml +26 -0
- package/templates/README.md +21 -0
- package/templates/journeys/advanced-example-helpers.ts +54 -0
- package/templates/journeys/advanced-example.journey.ts +43 -0
- package/templates/journeys/example.journey.ts +18 -0
- package/templates/synthetics.config.ts +26 -0
- package/CHANGELOG.md +0 -102
- package/NOTICE.txt +0 -221
- package/dist/parse_args.d.ts.map +0 -1
- package/dist/parse_args.js +0 -89
- package/dist/parse_args.js.map +0 -1
- package/dist/reporters/reporter.d.ts.map +0 -1
- package/dist/reporters/reporter.js.map +0 -1
- package/src/parse_args.ts +0 -127
package/dist/core/runner.js
CHANGED
|
@@ -23,28 +23,47 @@
|
|
|
23
23
|
* THE SOFTWARE.
|
|
24
24
|
*
|
|
25
25
|
*/
|
|
26
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
27
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
28
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
29
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
30
|
+
};
|
|
31
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
32
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
33
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
34
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
35
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
36
|
+
};
|
|
37
|
+
var _Runner_active, _Runner_reporter, _Runner_currentJourney;
|
|
26
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
const events_1 = require("events");
|
|
28
39
|
const path_1 = require("path");
|
|
29
|
-
const
|
|
40
|
+
const promises_1 = require("fs/promises");
|
|
30
41
|
const reporters_1 = require("../reporters");
|
|
31
42
|
const helpers_1 = require("../helpers");
|
|
32
|
-
const plugins_1 = require("../plugins");
|
|
33
43
|
const gatherer_1 = require("./gatherer");
|
|
34
44
|
const logger_1 = require("./logger");
|
|
35
|
-
|
|
45
|
+
const monitor_1 = require("../dsl/monitor");
|
|
46
|
+
class Runner {
|
|
36
47
|
constructor() {
|
|
37
|
-
|
|
38
|
-
this
|
|
39
|
-
this
|
|
48
|
+
_Runner_active.set(this, false);
|
|
49
|
+
_Runner_reporter.set(this, void 0);
|
|
50
|
+
_Runner_currentJourney.set(this, null);
|
|
40
51
|
this.journeys = [];
|
|
41
52
|
this.hooks = { beforeAll: [], afterAll: [] };
|
|
42
|
-
this.screenshotPath = path_1.join(helpers_1.CACHE_PATH, 'screenshots');
|
|
43
53
|
}
|
|
44
54
|
static async createContext(options) {
|
|
45
|
-
const start = helpers_1.monotonicTimeInSeconds();
|
|
46
55
|
const driver = await gatherer_1.Gatherer.setupDriver(options);
|
|
56
|
+
/**
|
|
57
|
+
* Do not include browser launch/context creation duration
|
|
58
|
+
* as part of journey duration
|
|
59
|
+
*/
|
|
60
|
+
const start = (0, helpers_1.monotonicTimeInSeconds)();
|
|
47
61
|
const pluginManager = await gatherer_1.Gatherer.beginRecording(driver, options);
|
|
62
|
+
/**
|
|
63
|
+
* For each journey we create the screenshots folder for
|
|
64
|
+
* caching all screenshots and clear them at end of each journey
|
|
65
|
+
*/
|
|
66
|
+
await (0, helpers_1.mkdirAsync)(this.screenshotPath, { recursive: true });
|
|
48
67
|
return {
|
|
49
68
|
start,
|
|
50
69
|
params: options.params,
|
|
@@ -52,36 +71,79 @@ class Runner extends events_1.EventEmitter {
|
|
|
52
71
|
pluginManager,
|
|
53
72
|
};
|
|
54
73
|
}
|
|
74
|
+
async captureScreenshot(page, step) {
|
|
75
|
+
const buffer = await page
|
|
76
|
+
.screenshot({
|
|
77
|
+
type: 'jpeg',
|
|
78
|
+
quality: 80,
|
|
79
|
+
timeout: 5000,
|
|
80
|
+
})
|
|
81
|
+
.catch(() => { });
|
|
82
|
+
/**
|
|
83
|
+
* Write the screenshot image buffer with additional details (step
|
|
84
|
+
* information) which could be extracted at the end of
|
|
85
|
+
* each journey without impacting the step timing information
|
|
86
|
+
*/
|
|
87
|
+
if (buffer) {
|
|
88
|
+
const fileName = `${(0, helpers_1.generateUniqueId)()}.json`;
|
|
89
|
+
const screenshot = {
|
|
90
|
+
step,
|
|
91
|
+
timestamp: (0, helpers_1.getTimestamp)(),
|
|
92
|
+
data: buffer.toString('base64'),
|
|
93
|
+
};
|
|
94
|
+
await (0, helpers_1.writeFileAsync)((0, path_1.join)(Runner.screenshotPath, fileName), JSON.stringify(screenshot));
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
get currentJourney() {
|
|
98
|
+
return __classPrivateFieldGet(this, _Runner_currentJourney, "f");
|
|
99
|
+
}
|
|
55
100
|
addHook(type, callback) {
|
|
56
101
|
this.hooks[type].push(callback);
|
|
57
102
|
}
|
|
103
|
+
updateMonitor(config) {
|
|
104
|
+
if (!this.monitor) {
|
|
105
|
+
this.monitor = new monitor_1.Monitor(config);
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
this.monitor.update(config);
|
|
109
|
+
}
|
|
58
110
|
addJourney(journey) {
|
|
59
111
|
this.journeys.push(journey);
|
|
60
|
-
this
|
|
112
|
+
__classPrivateFieldSet(this, _Runner_currentJourney, journey, "f");
|
|
113
|
+
}
|
|
114
|
+
setReporter(options) {
|
|
115
|
+
/**
|
|
116
|
+
* Set up the corresponding reporter and fallback
|
|
117
|
+
* to default reporter if not provided
|
|
118
|
+
*/
|
|
119
|
+
const { reporter, outfd } = options;
|
|
120
|
+
const Reporter = typeof reporter === 'function'
|
|
121
|
+
? reporter
|
|
122
|
+
: reporters_1.reporters[reporter] || reporters_1.reporters['default'];
|
|
123
|
+
__classPrivateFieldSet(this, _Runner_reporter, new Reporter({ fd: outfd }), "f");
|
|
61
124
|
}
|
|
62
125
|
async runBeforeAllHook(args) {
|
|
63
|
-
logger_1.log(`Runner: beforeAll hooks`);
|
|
64
|
-
await helpers_1.runParallel(this.hooks.beforeAll, args);
|
|
126
|
+
(0, logger_1.log)(`Runner: beforeAll hooks`);
|
|
127
|
+
await (0, helpers_1.runParallel)(this.hooks.beforeAll, args);
|
|
65
128
|
}
|
|
66
129
|
async runAfterAllHook(args) {
|
|
67
|
-
logger_1.log(`Runner: afterAll hooks`);
|
|
68
|
-
await helpers_1.runParallel(this.hooks.afterAll, args);
|
|
130
|
+
(0, logger_1.log)(`Runner: afterAll hooks`);
|
|
131
|
+
await (0, helpers_1.runParallel)(this.hooks.afterAll, args);
|
|
69
132
|
}
|
|
70
133
|
async runBeforeHook(journey, args) {
|
|
71
|
-
logger_1.log(`Runner: before hooks for (${journey.name})`);
|
|
72
|
-
await helpers_1.runParallel(journey.hooks.before, args);
|
|
134
|
+
(0, logger_1.log)(`Runner: before hooks for (${journey.name})`);
|
|
135
|
+
await (0, helpers_1.runParallel)(journey.hooks.before, args);
|
|
73
136
|
}
|
|
74
137
|
async runAfterHook(journey, args) {
|
|
75
|
-
logger_1.log(`Runner: after hooks for (${journey.name})`);
|
|
76
|
-
await helpers_1.runParallel(journey.hooks.after, args);
|
|
138
|
+
(0, logger_1.log)(`Runner: after hooks for (${journey.name})`);
|
|
139
|
+
await (0, helpers_1.runParallel)(journey.hooks.after, args);
|
|
77
140
|
}
|
|
78
141
|
async runStep(step, context, options) {
|
|
79
|
-
var _a;
|
|
80
142
|
const data = {
|
|
81
143
|
status: 'succeeded',
|
|
82
144
|
};
|
|
83
|
-
logger_1.log(`Runner: start step (${step.name})`);
|
|
84
|
-
const { metrics, screenshots } = options;
|
|
145
|
+
(0, logger_1.log)(`Runner: start step (${step.name})`);
|
|
146
|
+
const { metrics, screenshots, filmstrips, trace } = options;
|
|
85
147
|
const { driver, pluginManager } = context;
|
|
86
148
|
/**
|
|
87
149
|
* URL needs to be the first navigation request of any step
|
|
@@ -92,14 +154,28 @@ class Runner extends events_1.EventEmitter {
|
|
|
92
154
|
if (!data.url && req.isNavigationRequest()) {
|
|
93
155
|
data.url = req.url();
|
|
94
156
|
}
|
|
95
|
-
driver.
|
|
157
|
+
driver.context.off('request', captureUrl);
|
|
96
158
|
};
|
|
97
|
-
driver.
|
|
159
|
+
driver.context.on('request', captureUrl);
|
|
98
160
|
try {
|
|
161
|
+
/**
|
|
162
|
+
* Set up plugin manager context and also register
|
|
163
|
+
* step level plugins
|
|
164
|
+
*/
|
|
165
|
+
const traceEnabled = trace || filmstrips;
|
|
99
166
|
pluginManager.onStep(step);
|
|
167
|
+
traceEnabled && (await pluginManager.start('trace'));
|
|
168
|
+
// call the step definition
|
|
100
169
|
await step.callback();
|
|
170
|
+
/**
|
|
171
|
+
* Collect all step level metrics
|
|
172
|
+
*/
|
|
101
173
|
if (metrics) {
|
|
102
|
-
data.
|
|
174
|
+
data.pagemetrics = await pluginManager.get('performance').getMetrics();
|
|
175
|
+
}
|
|
176
|
+
if (traceEnabled) {
|
|
177
|
+
const traceOutput = await pluginManager.stop('trace');
|
|
178
|
+
Object.assign(data, traceOutput);
|
|
103
179
|
}
|
|
104
180
|
}
|
|
105
181
|
catch (error) {
|
|
@@ -107,34 +183,30 @@ class Runner extends events_1.EventEmitter {
|
|
|
107
183
|
data.error = error;
|
|
108
184
|
}
|
|
109
185
|
finally {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
fs_1.writeFileSync(path_1.join(this.screenshotPath, fileName), JSON.stringify({
|
|
124
|
-
step,
|
|
125
|
-
data: buffer.toString('base64'),
|
|
126
|
-
}));
|
|
186
|
+
/**
|
|
187
|
+
* Capture screenshot for the newly created pages
|
|
188
|
+
* via popup or new windows/tabs
|
|
189
|
+
*
|
|
190
|
+
* Last open page will get us the correct screenshot
|
|
191
|
+
*/
|
|
192
|
+
const pages = driver.context.pages();
|
|
193
|
+
const page = pages[pages.length - 1];
|
|
194
|
+
if (page) {
|
|
195
|
+
data.url ?? (data.url = page.url());
|
|
196
|
+
if (screenshots && screenshots !== 'off') {
|
|
197
|
+
await this.captureScreenshot(page, step);
|
|
198
|
+
}
|
|
127
199
|
}
|
|
128
200
|
}
|
|
129
|
-
logger_1.log(`Runner: end step (${step.name})`);
|
|
201
|
+
(0, logger_1.log)(`Runner: end step (${step.name})`);
|
|
130
202
|
return data;
|
|
131
203
|
}
|
|
132
204
|
async runSteps(journey, context, options) {
|
|
133
205
|
const results = [];
|
|
134
206
|
let skipStep = false;
|
|
135
207
|
for (const step of journey.steps) {
|
|
136
|
-
const start = helpers_1.monotonicTimeInSeconds();
|
|
137
|
-
this
|
|
208
|
+
const start = (0, helpers_1.monotonicTimeInSeconds)();
|
|
209
|
+
__classPrivateFieldGet(this, _Runner_reporter, "f")?.onStepStart?.(journey, step);
|
|
138
210
|
let data = { status: 'succeeded' };
|
|
139
211
|
if (skipStep) {
|
|
140
212
|
data.status = 'skipped';
|
|
@@ -147,11 +219,9 @@ class Runner extends events_1.EventEmitter {
|
|
|
147
219
|
if (data.error)
|
|
148
220
|
skipStep = true;
|
|
149
221
|
}
|
|
150
|
-
this
|
|
151
|
-
journey,
|
|
152
|
-
step,
|
|
222
|
+
__classPrivateFieldGet(this, _Runner_reporter, "f")?.onStepEnd?.(journey, step, {
|
|
153
223
|
start,
|
|
154
|
-
end: helpers_1.monotonicTimeInSeconds(),
|
|
224
|
+
end: (0, helpers_1.monotonicTimeInSeconds)(),
|
|
155
225
|
...data,
|
|
156
226
|
});
|
|
157
227
|
if (options.pauseOnError && data.error) {
|
|
@@ -162,43 +232,62 @@ class Runner extends events_1.EventEmitter {
|
|
|
162
232
|
return results;
|
|
163
233
|
}
|
|
164
234
|
registerJourney(journey, context) {
|
|
165
|
-
this
|
|
166
|
-
const timestamp = helpers_1.getTimestamp();
|
|
235
|
+
__classPrivateFieldSet(this, _Runner_currentJourney, journey, "f");
|
|
236
|
+
const timestamp = (0, helpers_1.getTimestamp)();
|
|
167
237
|
const { params } = context;
|
|
168
|
-
this
|
|
238
|
+
__classPrivateFieldGet(this, _Runner_reporter, "f")?.onJourneyStart?.(journey, {
|
|
239
|
+
timestamp,
|
|
240
|
+
params,
|
|
241
|
+
});
|
|
169
242
|
/**
|
|
170
|
-
*
|
|
243
|
+
* Exeucute the journey callback which would
|
|
244
|
+
* register the steps for the current journey
|
|
171
245
|
*/
|
|
172
246
|
journey.callback({ ...context.driver, params });
|
|
173
247
|
}
|
|
174
248
|
async endJourney(journey, result, options) {
|
|
175
|
-
const
|
|
249
|
+
const end = (0, helpers_1.monotonicTimeInSeconds)();
|
|
250
|
+
const { pluginManager, start, status, error } = result;
|
|
176
251
|
const pluginOutput = await pluginManager.output();
|
|
177
|
-
this
|
|
178
|
-
journey,
|
|
252
|
+
await __classPrivateFieldGet(this, _Runner_reporter, "f")?.onJourneyEnd?.(journey, {
|
|
179
253
|
status,
|
|
180
254
|
error,
|
|
181
|
-
params,
|
|
182
255
|
start,
|
|
183
|
-
end
|
|
184
|
-
|
|
256
|
+
end,
|
|
257
|
+
timestamp: (0, helpers_1.getTimestamp)(),
|
|
258
|
+
options,
|
|
185
259
|
...pluginOutput,
|
|
186
260
|
browserconsole: status == 'failed' ? pluginOutput.browserconsole : [],
|
|
187
261
|
});
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
* by reporter.
|
|
191
|
-
*/
|
|
192
|
-
if (options.reporter == 'json') {
|
|
193
|
-
await events_1.once(this, 'journey:end:reported');
|
|
194
|
-
}
|
|
262
|
+
// clear screenshots cache after each journey
|
|
263
|
+
await (0, promises_1.rm)(Runner.screenshotPath, { recursive: true, force: true });
|
|
195
264
|
}
|
|
196
|
-
|
|
265
|
+
/**
|
|
266
|
+
* Simulate a journey run to capture errors in the beforeAll hook
|
|
267
|
+
*/
|
|
268
|
+
async runFakeJourney(journey, options) {
|
|
269
|
+
const start = (0, helpers_1.monotonicTimeInSeconds)();
|
|
270
|
+
__classPrivateFieldGet(this, _Runner_reporter, "f").onJourneyStart?.(journey, {
|
|
271
|
+
timestamp: (0, helpers_1.getTimestamp)(),
|
|
272
|
+
params: options.params,
|
|
273
|
+
});
|
|
197
274
|
const result = {
|
|
198
|
-
status: '
|
|
275
|
+
status: 'failed',
|
|
276
|
+
error: this.hookError,
|
|
199
277
|
};
|
|
200
|
-
|
|
278
|
+
await __classPrivateFieldGet(this, _Runner_reporter, "f").onJourneyEnd?.(journey, {
|
|
279
|
+
timestamp: (0, helpers_1.getTimestamp)(),
|
|
280
|
+
start,
|
|
281
|
+
options,
|
|
282
|
+
end: (0, helpers_1.monotonicTimeInSeconds)(),
|
|
283
|
+
...result,
|
|
284
|
+
});
|
|
285
|
+
return result;
|
|
286
|
+
}
|
|
287
|
+
async runJourney(journey, options) {
|
|
288
|
+
const result = { status: 'succeeded' };
|
|
201
289
|
const context = await Runner.createContext(options);
|
|
290
|
+
(0, logger_1.log)(`Runner: start journey (${journey.name})`);
|
|
202
291
|
try {
|
|
203
292
|
this.registerJourney(journey, context);
|
|
204
293
|
const hookArgs = {
|
|
@@ -226,70 +315,99 @@ class Runner extends events_1.EventEmitter {
|
|
|
226
315
|
await this.endJourney(journey, { ...context, ...result }, options);
|
|
227
316
|
await gatherer_1.Gatherer.dispose(context.driver);
|
|
228
317
|
}
|
|
229
|
-
logger_1.log(`Runner: end journey (${journey.name})`);
|
|
318
|
+
(0, logger_1.log)(`Runner: end journey (${journey.name})`);
|
|
230
319
|
return result;
|
|
231
320
|
}
|
|
232
|
-
init(options) {
|
|
233
|
-
|
|
321
|
+
async init(options) {
|
|
322
|
+
this.setReporter(options);
|
|
323
|
+
__classPrivateFieldGet(this, _Runner_reporter, "f").onStart?.({
|
|
324
|
+
numJourneys: this.journeys.length,
|
|
325
|
+
networkConditions: options.networkConditions,
|
|
326
|
+
});
|
|
234
327
|
/**
|
|
235
|
-
* Set up the
|
|
328
|
+
* Set up the directory for caching screenshots
|
|
236
329
|
*/
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
new Reporter(this, { fd: outfd });
|
|
241
|
-
this.emit('start', { numJourneys: this.journeys.length });
|
|
330
|
+
await (0, helpers_1.mkdirAsync)(helpers_1.CACHE_PATH, { recursive: true });
|
|
331
|
+
}
|
|
332
|
+
buildMonitors(options) {
|
|
242
333
|
/**
|
|
243
|
-
*
|
|
334
|
+
* Update the global monitor configuration required for
|
|
335
|
+
* setting defaults
|
|
244
336
|
*/
|
|
245
|
-
|
|
337
|
+
this.updateMonitor({
|
|
338
|
+
throttling: options.throttling,
|
|
339
|
+
schedule: options.schedule,
|
|
340
|
+
locations: options.locations,
|
|
341
|
+
params: options.params,
|
|
342
|
+
playwrightOptions: options.playwrightOptions,
|
|
343
|
+
});
|
|
344
|
+
const { match, tags } = options;
|
|
345
|
+
const monitors = [];
|
|
346
|
+
for (const journey of this.journeys) {
|
|
347
|
+
if (!journey.isMatch(match, tags)) {
|
|
348
|
+
continue;
|
|
349
|
+
}
|
|
350
|
+
__classPrivateFieldSet(this, _Runner_currentJourney, journey, "f");
|
|
351
|
+
/**
|
|
352
|
+
* Execute dummy callback to get all monitor specific
|
|
353
|
+
* configurations for the current journey
|
|
354
|
+
*/
|
|
355
|
+
journey.callback({ params: options.params });
|
|
356
|
+
journey.monitor.update(this.monitor?.config);
|
|
357
|
+
monitors.push(journey.monitor);
|
|
358
|
+
}
|
|
359
|
+
return monitors;
|
|
246
360
|
}
|
|
247
361
|
async run(options) {
|
|
248
362
|
const result = {};
|
|
249
|
-
if (this
|
|
363
|
+
if (__classPrivateFieldGet(this, _Runner_active, "f")) {
|
|
250
364
|
return result;
|
|
251
365
|
}
|
|
252
|
-
this
|
|
253
|
-
logger_1.log(`Runner: run ${this.journeys.length} journeys`);
|
|
366
|
+
__classPrivateFieldSet(this, _Runner_active, true, "f");
|
|
367
|
+
(0, logger_1.log)(`Runner: run ${this.journeys.length} journeys`);
|
|
254
368
|
this.init(options);
|
|
255
369
|
await this.runBeforeAllHook({
|
|
256
370
|
env: options.environment,
|
|
257
371
|
params: options.params,
|
|
258
|
-
});
|
|
372
|
+
}).catch(e => (this.hookError = e));
|
|
259
373
|
const { dryRun, match, tags } = options;
|
|
260
374
|
for (const journey of this.journeys) {
|
|
261
375
|
/**
|
|
262
376
|
* Used by heartbeat to gather all registered journeys
|
|
263
377
|
*/
|
|
264
378
|
if (dryRun) {
|
|
265
|
-
this
|
|
379
|
+
__classPrivateFieldGet(this, _Runner_reporter, "f").onJourneyRegister?.(journey);
|
|
266
380
|
continue;
|
|
267
381
|
}
|
|
268
382
|
if (!journey.isMatch(match, tags)) {
|
|
269
383
|
continue;
|
|
270
384
|
}
|
|
271
|
-
const journeyResult =
|
|
385
|
+
const journeyResult = this.hookError
|
|
386
|
+
? await this.runFakeJourney(journey, options)
|
|
387
|
+
: await this.runJourney(journey, options);
|
|
272
388
|
result[journey.name] = journeyResult;
|
|
273
|
-
await gatherer_1.Gatherer.stop();
|
|
274
389
|
}
|
|
390
|
+
await gatherer_1.Gatherer.stop();
|
|
275
391
|
await this.runAfterAllHook({
|
|
276
392
|
env: options.environment,
|
|
277
393
|
params: options.params,
|
|
278
394
|
});
|
|
279
|
-
this.reset();
|
|
395
|
+
await this.reset();
|
|
280
396
|
return result;
|
|
281
397
|
}
|
|
282
|
-
reset() {
|
|
398
|
+
async reset() {
|
|
399
|
+
__classPrivateFieldSet(this, _Runner_currentJourney, null, "f");
|
|
400
|
+
this.journeys = [];
|
|
401
|
+
__classPrivateFieldSet(this, _Runner_active, false, "f");
|
|
283
402
|
/**
|
|
284
403
|
* Clear all cache data stored for post processing by
|
|
285
404
|
* the current synthetic agent run
|
|
286
405
|
*/
|
|
287
|
-
|
|
288
|
-
this
|
|
289
|
-
this.journeys = [];
|
|
290
|
-
this.active = false;
|
|
291
|
-
this.emit('end', {});
|
|
406
|
+
await (0, promises_1.rm)(helpers_1.CACHE_PATH, { recursive: true, force: true });
|
|
407
|
+
await __classPrivateFieldGet(this, _Runner_reporter, "f")?.onEnd?.();
|
|
292
408
|
}
|
|
293
409
|
}
|
|
294
410
|
exports.default = Runner;
|
|
411
|
+
_Runner_active = new WeakMap(), _Runner_reporter = new WeakMap(), _Runner_currentJourney = new WeakMap();
|
|
412
|
+
Runner.screenshotPath = (0, path_1.join)(helpers_1.CACHE_PATH, 'screenshots');
|
|
295
413
|
//# sourceMappingURL=runner.js.map
|
package/dist/core/runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/core/runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/core/runner.ts"],"names":[],"mappings":"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"}
|
package/dist/dsl/journey.d.ts
CHANGED
|
@@ -24,7 +24,8 @@
|
|
|
24
24
|
*/
|
|
25
25
|
import { Browser, Page, BrowserContext, CDPSession } from 'playwright-chromium';
|
|
26
26
|
import { Step } from './step';
|
|
27
|
-
import { VoidCallback, HooksCallback, Params } from '../common_types';
|
|
27
|
+
import { VoidCallback, HooksCallback, Params, Location } from '../common_types';
|
|
28
|
+
import { Monitor, MonitorConfig } from './monitor';
|
|
28
29
|
export declare type JourneyOptions = {
|
|
29
30
|
name: string;
|
|
30
31
|
id?: string;
|
|
@@ -44,11 +45,14 @@ export declare class Journey {
|
|
|
44
45
|
id?: string;
|
|
45
46
|
tags?: string[];
|
|
46
47
|
callback: JourneyCallback;
|
|
48
|
+
location?: Location;
|
|
47
49
|
steps: Step[];
|
|
48
50
|
hooks: Hooks;
|
|
49
|
-
|
|
50
|
-
|
|
51
|
+
monitor: Monitor;
|
|
52
|
+
constructor(options: JourneyOptions, callback: JourneyCallback, location?: Location);
|
|
53
|
+
addStep(name: string, callback: VoidCallback, location?: Location): Step;
|
|
51
54
|
addHook(type: HookType, callback: HooksCallback): void;
|
|
55
|
+
updateMonitor(config: MonitorConfig): void;
|
|
52
56
|
/**
|
|
53
57
|
* Matches journeys based on the provided args. Proitize tags over match
|
|
54
58
|
* - tags pattern that matches only tags
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"journey.d.ts","sourceRoot":"","sources":["../../src/dsl/journey.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEhF,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"journey.d.ts","sourceRoot":"","sources":["../../src/dsl/journey.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEhF,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAEnD,oBAAY,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAEF,aAAK,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AACnC,oBAAY,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;AAC3D,oBAAY,eAAe,GAAG,CAAC,OAAO,EAAE;IACtC,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,KAAK,IAAI,CAAC;AAEX,qBAAa,OAAO;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,EAAE,IAAI,EAAE,CAAM;IACnB,KAAK,EAAE,KAAK,CAA6B;IACzC,OAAO,EAAE,OAAO,CAAC;gBAGf,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,eAAe,EACzB,QAAQ,CAAC,EAAE,QAAQ;IAUrB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,QAAQ;IAMjE,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa;IAI/C,aAAa,CAAC,MAAM,EAAE,aAAa;IAcnC;;;;OAIG;IACH,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;IAUxD,SAAS,CAAC,OAAO,KAAA;CAIlB"}
|
package/dist/dsl/journey.js
CHANGED
|
@@ -46,23 +46,39 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
46
46
|
exports.Journey = void 0;
|
|
47
47
|
const micromatch_1 = __importStar(require("micromatch"));
|
|
48
48
|
const step_1 = require("./step");
|
|
49
|
+
const monitor_1 = require("./monitor");
|
|
49
50
|
class Journey {
|
|
50
|
-
constructor(options, callback) {
|
|
51
|
+
constructor(options, callback, location) {
|
|
51
52
|
this.steps = [];
|
|
52
53
|
this.hooks = { before: [], after: [] };
|
|
53
54
|
this.name = options.name;
|
|
54
|
-
this.id = options.id;
|
|
55
|
+
this.id = options.id || options.name;
|
|
55
56
|
this.tags = options.tags;
|
|
56
57
|
this.callback = callback;
|
|
58
|
+
this.location = location;
|
|
59
|
+
this.updateMonitor({});
|
|
57
60
|
}
|
|
58
|
-
addStep(name, callback) {
|
|
59
|
-
const step = new step_1.Step(name, this.steps.length + 1, callback);
|
|
61
|
+
addStep(name, callback, location) {
|
|
62
|
+
const step = new step_1.Step(name, this.steps.length + 1, callback, location);
|
|
60
63
|
this.steps.push(step);
|
|
61
64
|
return step;
|
|
62
65
|
}
|
|
63
66
|
addHook(type, callback) {
|
|
64
67
|
this.hooks[type].push(callback);
|
|
65
68
|
}
|
|
69
|
+
updateMonitor(config) {
|
|
70
|
+
/**
|
|
71
|
+
* Use defaults values from journey for monitor object (id, name and tags)
|
|
72
|
+
*/
|
|
73
|
+
this.monitor = new monitor_1.Monitor({
|
|
74
|
+
name: this.name,
|
|
75
|
+
id: this.id,
|
|
76
|
+
tags: this.tags ?? [],
|
|
77
|
+
...config,
|
|
78
|
+
});
|
|
79
|
+
this.monitor.setSource(this.location);
|
|
80
|
+
this.monitor.setFilter({ match: this.name });
|
|
81
|
+
}
|
|
66
82
|
/**
|
|
67
83
|
* Matches journeys based on the provided args. Proitize tags over match
|
|
68
84
|
* - tags pattern that matches only tags
|
|
@@ -73,12 +89,12 @@ class Journey {
|
|
|
73
89
|
return this.tagsMatch(tagsPattern);
|
|
74
90
|
}
|
|
75
91
|
if (matchPattern) {
|
|
76
|
-
return micromatch_1.isMatch(this.name, matchPattern) || this.tagsMatch(matchPattern);
|
|
92
|
+
return (0, micromatch_1.isMatch)(this.name, matchPattern) || this.tagsMatch(matchPattern);
|
|
77
93
|
}
|
|
78
94
|
return true;
|
|
79
95
|
}
|
|
80
96
|
tagsMatch(pattern) {
|
|
81
|
-
const matchess = micromatch_1.default(this.tags || ['*'], pattern);
|
|
97
|
+
const matchess = (0, micromatch_1.default)(this.tags || ['*'], pattern);
|
|
82
98
|
return matchess.length > 0;
|
|
83
99
|
}
|
|
84
100
|
}
|
package/dist/dsl/journey.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"journey.js","sourceRoot":"","sources":["../../src/dsl/journey.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;;;;;;;;;;;;;;;;;;;;AAGH,yDAAiD;AACjD,iCAA8B;
|
|
1
|
+
{"version":3,"file":"journey.js","sourceRoot":"","sources":["../../src/dsl/journey.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;;;;;;;;;;;;;;;;;;;;AAGH,yDAAiD;AACjD,iCAA8B;AAE9B,uCAAmD;AAkBnD,MAAa,OAAO;IAUlB,YACE,OAAuB,EACvB,QAAyB,EACzB,QAAmB;QAPrB,UAAK,GAAW,EAAE,CAAC;QACnB,UAAK,GAAU,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAQvC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,OAAO,CAAC,IAAY,EAAE,QAAsB,EAAE,QAAmB;QAC/D,MAAM,IAAI,GAAG,IAAI,WAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,IAAc,EAAE,QAAuB;QAC7C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,aAAa,CAAC,MAAqB;QACjC;;WAEG;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,iBAAO,CAAC;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;YACrB,GAAG,MAAM;SACV,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,YAAoB,EAAE,WAA0B;QACtD,IAAI,WAAW,EAAE;YACf,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;SACpC;QACD,IAAI,YAAY,EAAE;YAChB,OAAO,IAAA,oBAAO,EAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;SACzE;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,OAAO;QACf,MAAM,QAAQ,GAAG,IAAA,oBAAU,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;QACzD,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,CAAC;CACF;AAlED,0BAkEC"}
|
|
@@ -22,14 +22,16 @@
|
|
|
22
22
|
* THE SOFTWARE.
|
|
23
23
|
*
|
|
24
24
|
*/
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
25
|
+
export declare const LocationsMap: {
|
|
26
|
+
japan: string;
|
|
27
|
+
india: string;
|
|
28
|
+
singapore: string;
|
|
29
|
+
australia_east: string;
|
|
30
|
+
united_kingdom: string;
|
|
31
|
+
germany: string;
|
|
32
|
+
canada_east: string;
|
|
33
|
+
brazil: string;
|
|
34
|
+
us_east: string;
|
|
35
|
+
us_west: string;
|
|
31
36
|
};
|
|
32
|
-
|
|
33
|
-
export default interface Reporter {
|
|
34
|
-
new (runner: Runner, options: ReporterOptions): any;
|
|
35
|
-
}
|
|
37
|
+
//# sourceMappingURL=locations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locations.d.ts","sourceRoot":"","sources":["../../src/dsl/locations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,eAAO,MAAM,YAAY;;;;;;;;;;;CAWxB,CAAC"}
|