@elastic/synthetics 1.0.0-beta.4 → 1.0.0-beta.41
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 +137 -160
- package/dist/cli.js.map +1 -1
- package/dist/common_types.d.ts +161 -31
- package/dist/common_types.d.ts.map +1 -1
- package/dist/config.d.ts +3 -5
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +7 -6
- package/dist/config.js.map +1 -1
- package/dist/core/browser-service.d.ts +1 -1
- package/dist/core/browser-service.d.ts.map +1 -1
- package/dist/core/browser-service.js +7 -6
- package/dist/core/browser-service.js.map +1 -1
- package/dist/core/expect.d.ts +25 -25
- package/dist/core/expect.d.ts.map +1 -1
- package/dist/core/expect.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 +53 -15
- 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 +12 -63
- package/dist/core/runner.d.ts.map +1 -1
- package/dist/core/runner.js +156 -90
- package/dist/core/runner.js.map +1 -1
- package/dist/core/transform.d.ts +37 -0
- package/dist/core/transform.d.ts.map +1 -0
- package/dist/core/transform.js +148 -0
- package/dist/core/transform.js.map +1 -0
- package/dist/dsl/index.js +5 -1
- package/dist/dsl/index.js.map +1 -1
- package/dist/dsl/journey.d.ts +9 -4
- package/dist/dsl/journey.d.ts.map +1 -1
- package/dist/dsl/journey.js +37 -9
- package/dist/dsl/journey.js.map +1 -1
- package/dist/dsl/monitor.d.ts +83 -0
- package/dist/dsl/monitor.d.ts.map +1 -0
- package/dist/dsl/monitor.js +108 -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 +6 -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 +298 -0
- package/dist/formatter/javascript.js.map +1 -0
- package/dist/generator/index.d.ts +24 -0
- package/dist/generator/index.d.ts.map +1 -0
- package/dist/generator/index.js +241 -0
- package/dist/generator/index.js.map +1 -0
- package/dist/{reporters/reporter.js → generator/utils.d.ts} +5 -3
- package/dist/generator/utils.d.ts.map +1 -0
- package/dist/generator/utils.js +84 -0
- package/dist/generator/utils.js.map +1 -0
- package/dist/helpers.d.ts +28 -3
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +152 -20
- package/dist/helpers.js.map +1 -1
- package/dist/index.d.ts +6 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -26
- package/dist/index.js.map +1 -1
- package/dist/loader.d.ts +34 -0
- package/dist/loader.d.ts.map +1 -0
- package/dist/loader.js +149 -0
- package/dist/loader.js.map +1 -0
- package/dist/locations/index.d.ts +45 -0
- package/dist/locations/index.d.ts.map +1 -0
- package/dist/locations/index.js +83 -0
- package/dist/locations/index.js.map +1 -0
- package/dist/{reporters/reporter.d.ts → locations/public-locations.d.ts} +12 -8
- package/dist/locations/public-locations.d.ts.map +1 -0
- package/dist/locations/public-locations.js +41 -0
- package/dist/locations/public-locations.js.map +1 -0
- package/dist/options.d.ts +41 -0
- package/dist/options.d.ts.map +1 -0
- package/dist/options.js +198 -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 +44 -24
- package/dist/plugins/browser-console.js.map +1 -1
- package/dist/plugins/index.js +5 -1
- package/dist/plugins/index.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 +177 -216
- 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 +6 -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 +46 -30
- 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 +10 -7
- package/dist/plugins/tracing.js.map +1 -1
- package/dist/push/bundler.d.ts +35 -0
- package/dist/push/bundler.d.ts.map +1 -0
- package/dist/push/bundler.js +131 -0
- package/dist/push/bundler.js.map +1 -0
- package/dist/push/index.d.ts +9 -0
- package/dist/push/index.d.ts.map +1 -0
- package/dist/push/index.js +227 -0
- package/dist/push/index.js.map +1 -0
- package/dist/push/kibana_api.d.ts +56 -0
- package/dist/push/kibana_api.d.ts.map +1 -0
- package/dist/push/kibana_api.js +135 -0
- package/dist/push/kibana_api.js.map +1 -0
- package/dist/push/monitor.d.ts +51 -0
- package/dist/push/monitor.d.ts.map +1 -0
- package/dist/push/monitor.js +244 -0
- package/dist/push/monitor.js.map +1 -0
- package/dist/{parse_args.d.ts → push/plugin.d.ts} +9 -6
- package/dist/push/plugin.d.ts.map +1 -0
- package/dist/push/plugin.js +66 -0
- package/dist/push/plugin.js.map +1 -0
- package/dist/push/request.d.ts +45 -0
- package/dist/push/request.d.ts.map +1 -0
- package/dist/push/request.js +109 -0
- package/dist/push/request.js.map +1 -0
- package/dist/push/utils.d.ts +31 -0
- package/dist/push/utils.d.ts.map +1 -0
- package/dist/push/utils.js +64 -0
- package/dist/push/utils.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 +58 -50
- 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 +17 -62
- package/dist/reporters/json.d.ts.map +1 -1
- package/dist/reporters/json.js +149 -179
- 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 +90 -95
- 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 +3 -4
- 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/package.json +39 -24
- package/src/cli.ts +219 -151
- package/src/common_types.ts +193 -31
- package/src/config.ts +3 -6
- package/src/core/expect.ts +58 -24
- package/src/core/gatherer.ts +64 -24
- package/src/core/index.ts +36 -15
- package/src/core/logger.ts +1 -12
- package/src/core/runner.ts +151 -136
- package/src/core/transform.ts +160 -0
- package/src/dsl/journey.ts +39 -6
- package/src/dsl/monitor.ts +140 -0
- package/src/dsl/step.ts +9 -2
- package/src/formatter/javascript.ts +367 -0
- package/src/generator/index.ts +308 -0
- package/src/generator/utils.ts +84 -0
- package/src/helpers.ts +159 -13
- package/src/index.ts +22 -22
- package/src/loader.ts +167 -0
- package/src/locations/index.ts +95 -0
- package/src/{reporters/reporter.ts → locations/public-locations.ts} +12 -9
- package/src/options.ts +227 -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 +112 -0
- package/src/push/index.ts +282 -0
- package/src/push/kibana_api.ts +191 -0
- package/src/push/monitor.ts +276 -0
- package/src/push/plugin.ts +66 -0
- package/src/push/request.ts +141 -0
- package/src/push/utils.ts +77 -0
- package/src/reporters/base.ts +63 -52
- package/src/reporters/index.ts +26 -3
- package/src/reporters/json.ts +183 -202
- package/src/reporters/junit.ts +98 -93
- package/src/sdk/lh-trace-processor.ts +132 -68
- package/src/sdk/trace-metrics.ts +8 -4
- package/src/sdk/trace-processor.ts +28 -13
- package/templates/.github/workflows/run-synthetics.yml +27 -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/lightweight/heartbeat.yml +8 -0
- package/templates/synthetics.config.ts +35 -0
- package/CHANGELOG.md +0 -131
- package/NOTICE.txt +0 -221
- package/dist/parse_args.d.ts.map +0 -1
- package/dist/parse_args.js +0 -95
- 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/dist/tsconfig.tsbuildinfo +0 -1888
- package/src/parse_args.ts +0 -135
package/dist/core/logger.js
CHANGED
|
@@ -23,23 +23,10 @@
|
|
|
23
23
|
* THE SOFTWARE.
|
|
24
24
|
*
|
|
25
25
|
*/
|
|
26
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
27
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
28
|
-
};
|
|
29
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
exports.log =
|
|
31
|
-
const sonic_boom_1 = __importDefault(require("sonic-boom"));
|
|
27
|
+
exports.log = void 0;
|
|
32
28
|
const colors_1 = require("kleur/colors");
|
|
33
29
|
const helpers_1 = require("../helpers");
|
|
34
|
-
const defaultFd = process.stdout.fd;
|
|
35
|
-
let logger = new sonic_boom_1.default({ fd: defaultFd, sync: true });
|
|
36
|
-
const setLogger = (fd) => {
|
|
37
|
-
if (fd && fd !== defaultFd) {
|
|
38
|
-
logger = new sonic_boom_1.default({ fd });
|
|
39
|
-
}
|
|
40
|
-
return logger;
|
|
41
|
-
};
|
|
42
|
-
exports.setLogger = setLogger;
|
|
43
30
|
function log(msg) {
|
|
44
31
|
if (!process.env.DEBUG || !msg) {
|
|
45
32
|
return;
|
|
@@ -47,8 +34,8 @@ function log(msg) {
|
|
|
47
34
|
if (typeof msg === 'object') {
|
|
48
35
|
msg = JSON.stringify(msg);
|
|
49
36
|
}
|
|
50
|
-
const time = colors_1.dim(colors_1.cyan(`at ${parseInt(String(helpers_1.now()))} ms `));
|
|
51
|
-
|
|
37
|
+
const time = (0, colors_1.dim)((0, colors_1.cyan)(`at ${parseInt(String((0, helpers_1.now)()))} ms `));
|
|
38
|
+
console.log(time + (0, colors_1.italic)((0, colors_1.grey)(msg)) + '\n');
|
|
52
39
|
}
|
|
53
40
|
exports.log = log;
|
|
54
41
|
//# sourceMappingURL=logger.js.map
|
package/dist/core/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/core/logger.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/core/logger.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;AAEH,yCAAuD;AACvD,wCAAiC;AAEjC,SAAgB,GAAG,CAAC,GAAG;IACrB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE;QAC9B,OAAO;KACR;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;KAC3B;IACD,MAAM,IAAI,GAAG,IAAA,YAAG,EAAC,IAAA,aAAI,EAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAA,aAAG,GAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAA,eAAM,EAAC,IAAA,aAAI,EAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAC/C,CAAC;AATD,kBASC"}
|
package/dist/core/runner.d.ts
CHANGED
|
@@ -22,86 +22,34 @@
|
|
|
22
22
|
* THE SOFTWARE.
|
|
23
23
|
*
|
|
24
24
|
*/
|
|
25
|
-
/// <reference types="node" />
|
|
26
|
-
import { EventEmitter } from 'events';
|
|
27
25
|
import { Journey } from '../dsl/journey';
|
|
28
26
|
import { Step } from '../dsl/step';
|
|
29
|
-
import {
|
|
30
|
-
import { StatusValue, HooksCallback, Params, PluginOutput, CliArgs, HooksArgs } from '../common_types';
|
|
27
|
+
import { HooksCallback, Params, HooksArgs, Driver, RunOptions, JourneyResult, StepResult } from '../common_types';
|
|
31
28
|
import { PluginManager } from '../plugins';
|
|
32
|
-
import {
|
|
33
|
-
|
|
34
|
-
export declare type
|
|
35
|
-
|
|
36
|
-
params?: Params;
|
|
37
|
-
reporter?: CliArgs['reporter'] | Reporter;
|
|
38
|
-
};
|
|
39
|
-
declare type BaseContext = {
|
|
29
|
+
import { Monitor, MonitorConfig } from '../dsl/monitor';
|
|
30
|
+
declare type HookType = 'beforeAll' | 'afterAll';
|
|
31
|
+
export declare type SuiteHooks = Record<HookType, Array<HooksCallback>>;
|
|
32
|
+
declare type JourneyContext = {
|
|
40
33
|
params?: Params;
|
|
41
34
|
start: number;
|
|
42
|
-
end?: number;
|
|
43
|
-
};
|
|
44
|
-
declare type JourneyContext = BaseContext & {
|
|
45
35
|
driver: Driver;
|
|
46
36
|
pluginManager: PluginManager;
|
|
47
37
|
};
|
|
48
|
-
declare type StepResult = {
|
|
49
|
-
status: StatusValue;
|
|
50
|
-
url?: string;
|
|
51
|
-
metrics?: Metrics;
|
|
52
|
-
error?: Error;
|
|
53
|
-
};
|
|
54
|
-
declare type JourneyResult = {
|
|
55
|
-
status: StatusValue;
|
|
56
|
-
error?: Error;
|
|
57
|
-
};
|
|
58
38
|
declare type RunResult = Record<string, JourneyResult>;
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
interface Events {
|
|
62
|
-
start: {
|
|
63
|
-
numJourneys: number;
|
|
64
|
-
};
|
|
65
|
-
'journey:register': {
|
|
66
|
-
journey: Journey;
|
|
67
|
-
};
|
|
68
|
-
'journey:start': {
|
|
69
|
-
journey: Journey;
|
|
70
|
-
timestamp: number;
|
|
71
|
-
params: Params;
|
|
72
|
-
};
|
|
73
|
-
'journey:end': BaseContext & JourneyResult & PluginOutput & {
|
|
74
|
-
journey: Journey;
|
|
75
|
-
options: RunOptions;
|
|
76
|
-
};
|
|
77
|
-
'journey:end:reported': unknown;
|
|
78
|
-
'step:start': {
|
|
79
|
-
journey: Journey;
|
|
80
|
-
step: Step;
|
|
81
|
-
};
|
|
82
|
-
'step:end': StepResult & {
|
|
83
|
-
start: number;
|
|
84
|
-
end: number;
|
|
85
|
-
journey: Journey;
|
|
86
|
-
step: Step;
|
|
87
|
-
};
|
|
88
|
-
end: unknown;
|
|
89
|
-
}
|
|
90
|
-
export default interface Runner {
|
|
91
|
-
on<K extends keyof Events>(name: K, listener: (v: Events[K]) => void): this;
|
|
92
|
-
emit<K extends keyof Events>(event: K, args: Events[K]): boolean;
|
|
93
|
-
}
|
|
94
|
-
export default class Runner extends EventEmitter {
|
|
95
|
-
active: boolean;
|
|
96
|
-
currentJourney?: Journey;
|
|
39
|
+
export default class Runner {
|
|
40
|
+
#private;
|
|
97
41
|
journeys: Journey[];
|
|
98
42
|
hooks: SuiteHooks;
|
|
99
43
|
hookError: Error | undefined;
|
|
44
|
+
monitor?: Monitor;
|
|
100
45
|
static screenshotPath: string;
|
|
101
46
|
static createContext(options: RunOptions): Promise<JourneyContext>;
|
|
102
47
|
captureScreenshot(page: Driver['page'], step: Step): Promise<void>;
|
|
48
|
+
get currentJourney(): Journey;
|
|
103
49
|
addHook(type: HookType, callback: HooksCallback): void;
|
|
50
|
+
updateMonitor(config: MonitorConfig): void;
|
|
104
51
|
addJourney(journey: Journey): void;
|
|
52
|
+
setReporter(options: RunOptions): void;
|
|
105
53
|
runBeforeAllHook(args: HooksArgs): Promise<void>;
|
|
106
54
|
runAfterAllHook(args: HooksArgs): Promise<void>;
|
|
107
55
|
runBeforeHook(journey: Journey, args: HooksArgs): Promise<void>;
|
|
@@ -116,6 +64,7 @@ export default class Runner extends EventEmitter {
|
|
|
116
64
|
runFakeJourney(journey: Journey, options: RunOptions): Promise<JourneyResult>;
|
|
117
65
|
runJourney(journey: Journey, options: RunOptions): Promise<JourneyResult>;
|
|
118
66
|
init(options: RunOptions): Promise<void>;
|
|
67
|
+
buildMonitors(options: RunOptions): Monitor[];
|
|
119
68
|
run(options: RunOptions): Promise<RunResult>;
|
|
120
69
|
reset(): Promise<void>;
|
|
121
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/core/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/core/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AASnC,OAAO,EACL,aAAa,EACb,MAAM,EACN,SAAS,EACT,MAAM,EAEN,UAAU,EACV,aAAa,EACb,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI3C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAExD,aAAK,QAAQ,GAAG,WAAW,GAAG,UAAU,CAAC;AACzC,oBAAY,UAAU,GAAG,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;AAEhE,aAAK,cAAc,GAAG;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,aAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,MAAM;;IAIzB,QAAQ,EAAE,OAAO,EAAE,CAAM;IACzB,KAAK,EAAE,UAAU,CAAmC;IACpD,SAAS,EAAE,KAAK,GAAG,SAAS,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,cAAc,SAAmC;WAE3C,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC;IAqBlE,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI;IA2BxD,IAAI,cAAc,YAEjB;IAED,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa;IAI/C,aAAa,CAAC,MAAM,EAAE,aAAa;IAQnC,UAAU,CAAC,OAAO,EAAE,OAAO;IAK3B,WAAW,CAAC,OAAO,EAAE,UAAU;IAazB,gBAAgB,CAAC,IAAI,EAAE,SAAS;IAKhC,eAAe,CAAC,IAAI,EAAE,SAAS;IAK/B,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;IAK/C,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;IAK9C,OAAO,CACX,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,UAAU,CAAC;IAiEhB,QAAQ,CACZ,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,UAAU;IA8BrB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc;IAenD,UAAU,CACd,OAAO,KAAA,EACP,MAAM,EAAE,cAAc,GAAG,aAAa,EACtC,OAAO,EAAE,UAAU;IAmBrB;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU;IAoBpD,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU;IAiChD,IAAI,CAAC,OAAO,EAAE,UAAU;IAY9B,aAAa,CAAC,OAAO,EAAE,UAAU;IAiC3B,GAAG,CAAC,OAAO,EAAE,UAAU;IAuCvB,KAAK;CAWZ"}
|
package/dist/core/runner.js
CHANGED
|
@@ -24,31 +24,35 @@
|
|
|
24
24
|
*
|
|
25
25
|
*/
|
|
26
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
const events_1 = require("events");
|
|
28
27
|
const path_1 = require("path");
|
|
29
28
|
const promises_1 = require("fs/promises");
|
|
30
29
|
const reporters_1 = require("../reporters");
|
|
31
30
|
const helpers_1 = require("../helpers");
|
|
32
|
-
const plugins_1 = require("../plugins");
|
|
33
31
|
const gatherer_1 = require("./gatherer");
|
|
34
32
|
const logger_1 = require("./logger");
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
33
|
+
const monitor_1 = require("../dsl/monitor");
|
|
34
|
+
class Runner {
|
|
35
|
+
#active = false;
|
|
36
|
+
#reporter;
|
|
37
|
+
#currentJourney = null;
|
|
38
|
+
journeys = [];
|
|
39
|
+
hooks = { beforeAll: [], afterAll: [] };
|
|
40
|
+
hookError;
|
|
41
|
+
monitor;
|
|
42
|
+
static screenshotPath = (0, path_1.join)(helpers_1.CACHE_PATH, 'screenshots');
|
|
43
43
|
static async createContext(options) {
|
|
44
|
-
const start = helpers_1.monotonicTimeInSeconds();
|
|
45
44
|
const driver = await gatherer_1.Gatherer.setupDriver(options);
|
|
45
|
+
/**
|
|
46
|
+
* Do not include browser launch/context creation duration
|
|
47
|
+
* as part of journey duration
|
|
48
|
+
*/
|
|
49
|
+
const start = (0, helpers_1.monotonicTimeInSeconds)();
|
|
46
50
|
const pluginManager = await gatherer_1.Gatherer.beginRecording(driver, options);
|
|
47
51
|
/**
|
|
48
52
|
* For each journey we create the screenshots folder for
|
|
49
53
|
* caching all screenshots and clear them at end of each journey
|
|
50
54
|
*/
|
|
51
|
-
await promises_1.mkdir(this.screenshotPath, { recursive: true });
|
|
55
|
+
await (0, promises_1.mkdir)(this.screenshotPath, { recursive: true });
|
|
52
56
|
return {
|
|
53
57
|
start,
|
|
54
58
|
params: options.params,
|
|
@@ -57,11 +61,11 @@ class Runner extends events_1.EventEmitter {
|
|
|
57
61
|
};
|
|
58
62
|
}
|
|
59
63
|
async captureScreenshot(page, step) {
|
|
60
|
-
await page.waitForLoadState('load');
|
|
61
64
|
const buffer = await page
|
|
62
65
|
.screenshot({
|
|
63
66
|
type: 'jpeg',
|
|
64
67
|
quality: 80,
|
|
68
|
+
timeout: 5000,
|
|
65
69
|
})
|
|
66
70
|
.catch(() => { });
|
|
67
71
|
/**
|
|
@@ -70,43 +74,65 @@ class Runner extends events_1.EventEmitter {
|
|
|
70
74
|
* each journey without impacting the step timing information
|
|
71
75
|
*/
|
|
72
76
|
if (buffer) {
|
|
73
|
-
const fileName = `${helpers_1.generateUniqueId()}.json`;
|
|
74
|
-
|
|
77
|
+
const fileName = `${(0, helpers_1.generateUniqueId)()}.json`;
|
|
78
|
+
const screenshot = {
|
|
75
79
|
step,
|
|
80
|
+
timestamp: (0, helpers_1.getTimestamp)(),
|
|
76
81
|
data: buffer.toString('base64'),
|
|
77
|
-
}
|
|
82
|
+
};
|
|
83
|
+
await (0, promises_1.writeFile)((0, path_1.join)(Runner.screenshotPath, fileName), JSON.stringify(screenshot));
|
|
78
84
|
}
|
|
79
85
|
}
|
|
86
|
+
get currentJourney() {
|
|
87
|
+
return this.#currentJourney;
|
|
88
|
+
}
|
|
80
89
|
addHook(type, callback) {
|
|
81
90
|
this.hooks[type].push(callback);
|
|
82
91
|
}
|
|
92
|
+
updateMonitor(config) {
|
|
93
|
+
if (!this.monitor) {
|
|
94
|
+
this.monitor = new monitor_1.Monitor(config);
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
this.monitor.update(config);
|
|
98
|
+
}
|
|
83
99
|
addJourney(journey) {
|
|
84
100
|
this.journeys.push(journey);
|
|
85
|
-
this
|
|
101
|
+
this.#currentJourney = journey;
|
|
102
|
+
}
|
|
103
|
+
setReporter(options) {
|
|
104
|
+
/**
|
|
105
|
+
* Set up the corresponding reporter and fallback
|
|
106
|
+
* to default reporter if not provided
|
|
107
|
+
*/
|
|
108
|
+
const { reporter, outfd } = options;
|
|
109
|
+
const Reporter = typeof reporter === 'function'
|
|
110
|
+
? reporter
|
|
111
|
+
: reporters_1.reporters[reporter] || reporters_1.reporters['default'];
|
|
112
|
+
this.#reporter = new Reporter({ fd: outfd });
|
|
86
113
|
}
|
|
87
114
|
async runBeforeAllHook(args) {
|
|
88
|
-
logger_1.log(`Runner: beforeAll hooks`);
|
|
89
|
-
await helpers_1.runParallel(this.hooks.beforeAll, args);
|
|
115
|
+
(0, logger_1.log)(`Runner: beforeAll hooks`);
|
|
116
|
+
await (0, helpers_1.runParallel)(this.hooks.beforeAll, args);
|
|
90
117
|
}
|
|
91
118
|
async runAfterAllHook(args) {
|
|
92
|
-
logger_1.log(`Runner: afterAll hooks`);
|
|
93
|
-
await helpers_1.runParallel(this.hooks.afterAll, args);
|
|
119
|
+
(0, logger_1.log)(`Runner: afterAll hooks`);
|
|
120
|
+
await (0, helpers_1.runParallel)(this.hooks.afterAll, args);
|
|
94
121
|
}
|
|
95
122
|
async runBeforeHook(journey, args) {
|
|
96
|
-
logger_1.log(`Runner: before hooks for (${journey.name})`);
|
|
97
|
-
await helpers_1.runParallel(journey.hooks.before, args);
|
|
123
|
+
(0, logger_1.log)(`Runner: before hooks for (${journey.name})`);
|
|
124
|
+
await (0, helpers_1.runParallel)(journey.hooks.before, args);
|
|
98
125
|
}
|
|
99
126
|
async runAfterHook(journey, args) {
|
|
100
|
-
logger_1.log(`Runner: after hooks for (${journey.name})`);
|
|
101
|
-
await helpers_1.runParallel(journey.hooks.after, args);
|
|
127
|
+
(0, logger_1.log)(`Runner: after hooks for (${journey.name})`);
|
|
128
|
+
await (0, helpers_1.runParallel)(journey.hooks.after, args);
|
|
102
129
|
}
|
|
103
130
|
async runStep(step, context, options) {
|
|
104
|
-
var _a;
|
|
105
131
|
const data = {
|
|
106
132
|
status: 'succeeded',
|
|
107
133
|
};
|
|
108
|
-
logger_1.log(`Runner: start step (${step.name})`);
|
|
109
|
-
const { metrics, screenshots } = options;
|
|
134
|
+
(0, logger_1.log)(`Runner: start step (${step.name})`);
|
|
135
|
+
const { metrics, screenshots, filmstrips, trace } = options;
|
|
110
136
|
const { driver, pluginManager } = context;
|
|
111
137
|
/**
|
|
112
138
|
* URL needs to be the first navigation request of any step
|
|
@@ -117,14 +143,28 @@ class Runner extends events_1.EventEmitter {
|
|
|
117
143
|
if (!data.url && req.isNavigationRequest()) {
|
|
118
144
|
data.url = req.url();
|
|
119
145
|
}
|
|
120
|
-
driver.
|
|
146
|
+
driver.context.off('request', captureUrl);
|
|
121
147
|
};
|
|
122
|
-
driver.
|
|
148
|
+
driver.context.on('request', captureUrl);
|
|
123
149
|
try {
|
|
150
|
+
/**
|
|
151
|
+
* Set up plugin manager context and also register
|
|
152
|
+
* step level plugins
|
|
153
|
+
*/
|
|
154
|
+
const traceEnabled = trace || filmstrips;
|
|
124
155
|
pluginManager.onStep(step);
|
|
156
|
+
traceEnabled && (await pluginManager.start('trace'));
|
|
157
|
+
// call the step definition
|
|
125
158
|
await step.callback();
|
|
159
|
+
/**
|
|
160
|
+
* Collect all step level metrics
|
|
161
|
+
*/
|
|
126
162
|
if (metrics) {
|
|
127
|
-
data.
|
|
163
|
+
data.pagemetrics = await pluginManager.get('performance').getMetrics();
|
|
164
|
+
}
|
|
165
|
+
if (traceEnabled) {
|
|
166
|
+
const traceOutput = await pluginManager.stop('trace');
|
|
167
|
+
Object.assign(data, traceOutput);
|
|
128
168
|
}
|
|
129
169
|
}
|
|
130
170
|
catch (error) {
|
|
@@ -132,20 +172,30 @@ class Runner extends events_1.EventEmitter {
|
|
|
132
172
|
data.error = error;
|
|
133
173
|
}
|
|
134
174
|
finally {
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
175
|
+
/**
|
|
176
|
+
* Capture screenshot for the newly created pages
|
|
177
|
+
* via popup or new windows/tabs
|
|
178
|
+
*
|
|
179
|
+
* Last open page will get us the correct screenshot
|
|
180
|
+
*/
|
|
181
|
+
const pages = driver.context.pages();
|
|
182
|
+
const page = pages[pages.length - 1];
|
|
183
|
+
if (page) {
|
|
184
|
+
data.url ??= page.url();
|
|
185
|
+
if (screenshots && screenshots !== 'off') {
|
|
186
|
+
await this.captureScreenshot(page, step);
|
|
187
|
+
}
|
|
138
188
|
}
|
|
139
189
|
}
|
|
140
|
-
logger_1.log(`Runner: end step (${step.name})`);
|
|
190
|
+
(0, logger_1.log)(`Runner: end step (${step.name})`);
|
|
141
191
|
return data;
|
|
142
192
|
}
|
|
143
193
|
async runSteps(journey, context, options) {
|
|
144
194
|
const results = [];
|
|
145
195
|
let skipStep = false;
|
|
146
196
|
for (const step of journey.steps) {
|
|
147
|
-
const start = helpers_1.monotonicTimeInSeconds();
|
|
148
|
-
this
|
|
197
|
+
const start = (0, helpers_1.monotonicTimeInSeconds)();
|
|
198
|
+
this.#reporter?.onStepStart?.(journey, step);
|
|
149
199
|
let data = { status: 'succeeded' };
|
|
150
200
|
if (skipStep) {
|
|
151
201
|
data.status = 'skipped';
|
|
@@ -158,11 +208,9 @@ class Runner extends events_1.EventEmitter {
|
|
|
158
208
|
if (data.error)
|
|
159
209
|
skipStep = true;
|
|
160
210
|
}
|
|
161
|
-
this
|
|
162
|
-
journey,
|
|
163
|
-
step,
|
|
211
|
+
this.#reporter?.onStepEnd?.(journey, step, {
|
|
164
212
|
start,
|
|
165
|
-
end: helpers_1.monotonicTimeInSeconds(),
|
|
213
|
+
end: (0, helpers_1.monotonicTimeInSeconds)(),
|
|
166
214
|
...data,
|
|
167
215
|
});
|
|
168
216
|
if (options.pauseOnError && data.error) {
|
|
@@ -173,70 +221,62 @@ class Runner extends events_1.EventEmitter {
|
|
|
173
221
|
return results;
|
|
174
222
|
}
|
|
175
223
|
registerJourney(journey, context) {
|
|
176
|
-
this
|
|
177
|
-
const timestamp = helpers_1.getTimestamp();
|
|
224
|
+
this.#currentJourney = journey;
|
|
225
|
+
const timestamp = (0, helpers_1.getTimestamp)();
|
|
178
226
|
const { params } = context;
|
|
179
|
-
this
|
|
227
|
+
this.#reporter?.onJourneyStart?.(journey, {
|
|
228
|
+
timestamp,
|
|
229
|
+
params,
|
|
230
|
+
});
|
|
180
231
|
/**
|
|
181
|
-
*
|
|
232
|
+
* Exeucute the journey callback which would
|
|
233
|
+
* register the steps for the current journey
|
|
182
234
|
*/
|
|
183
235
|
journey.callback({ ...context.driver, params });
|
|
184
236
|
}
|
|
185
237
|
async endJourney(journey, result, options) {
|
|
238
|
+
const end = (0, helpers_1.monotonicTimeInSeconds)();
|
|
186
239
|
const { pluginManager, start, status, error } = result;
|
|
187
240
|
const pluginOutput = await pluginManager.output();
|
|
188
|
-
this
|
|
189
|
-
journey,
|
|
241
|
+
await this.#reporter?.onJourneyEnd?.(journey, {
|
|
190
242
|
status,
|
|
191
243
|
error,
|
|
192
244
|
start,
|
|
193
|
-
end
|
|
245
|
+
end,
|
|
246
|
+
timestamp: (0, helpers_1.getTimestamp)(),
|
|
194
247
|
options,
|
|
195
248
|
...pluginOutput,
|
|
196
249
|
browserconsole: status == 'failed' ? pluginOutput.browserconsole : [],
|
|
197
250
|
});
|
|
198
|
-
/**
|
|
199
|
-
* Wait for the all the reported events to be consumed aschronously
|
|
200
|
-
* by reporter.
|
|
201
|
-
*/
|
|
202
|
-
if (options.reporter === 'json') {
|
|
203
|
-
await events_1.once(this, 'journey:end:reported');
|
|
204
|
-
}
|
|
205
251
|
// clear screenshots cache after each journey
|
|
206
|
-
await promises_1.rm(Runner.screenshotPath, { recursive: true, force: true });
|
|
252
|
+
await (0, promises_1.rm)(Runner.screenshotPath, { recursive: true, force: true });
|
|
207
253
|
}
|
|
208
254
|
/**
|
|
209
255
|
* Simulate a journey run to capture errors in the beforeAll hook
|
|
210
256
|
*/
|
|
211
257
|
async runFakeJourney(journey, options) {
|
|
212
|
-
const start = helpers_1.monotonicTimeInSeconds();
|
|
213
|
-
this.
|
|
214
|
-
|
|
215
|
-
timestamp: helpers_1.getTimestamp(),
|
|
258
|
+
const start = (0, helpers_1.monotonicTimeInSeconds)();
|
|
259
|
+
this.#reporter.onJourneyStart?.(journey, {
|
|
260
|
+
timestamp: (0, helpers_1.getTimestamp)(),
|
|
216
261
|
params: options.params,
|
|
217
262
|
});
|
|
218
263
|
const result = {
|
|
219
264
|
status: 'failed',
|
|
220
265
|
error: this.hookError,
|
|
221
266
|
};
|
|
222
|
-
this.
|
|
223
|
-
|
|
267
|
+
await this.#reporter.onJourneyEnd?.(journey, {
|
|
268
|
+
timestamp: (0, helpers_1.getTimestamp)(),
|
|
224
269
|
start,
|
|
225
270
|
options,
|
|
226
|
-
end: helpers_1.monotonicTimeInSeconds(),
|
|
271
|
+
end: (0, helpers_1.monotonicTimeInSeconds)(),
|
|
227
272
|
...result,
|
|
228
273
|
});
|
|
229
|
-
if (options.reporter === 'json') {
|
|
230
|
-
await events_1.once(this, 'journey:end:reported');
|
|
231
|
-
}
|
|
232
274
|
return result;
|
|
233
275
|
}
|
|
234
276
|
async runJourney(journey, options) {
|
|
235
|
-
const result = {
|
|
236
|
-
status: 'succeeded',
|
|
237
|
-
};
|
|
238
|
-
logger_1.log(`Runner: start journey (${journey.name})`);
|
|
277
|
+
const result = { status: 'succeeded' };
|
|
239
278
|
const context = await Runner.createContext(options);
|
|
279
|
+
(0, logger_1.log)(`Runner: start journey (${journey.name})`);
|
|
240
280
|
try {
|
|
241
281
|
this.registerJourney(journey, context);
|
|
242
282
|
const hookArgs = {
|
|
@@ -264,31 +304,58 @@ class Runner extends events_1.EventEmitter {
|
|
|
264
304
|
await this.endJourney(journey, { ...context, ...result }, options);
|
|
265
305
|
await gatherer_1.Gatherer.dispose(context.driver);
|
|
266
306
|
}
|
|
267
|
-
logger_1.log(`Runner: end journey (${journey.name})`);
|
|
307
|
+
(0, logger_1.log)(`Runner: end journey (${journey.name})`);
|
|
268
308
|
return result;
|
|
269
309
|
}
|
|
270
310
|
async init(options) {
|
|
271
|
-
|
|
311
|
+
this.setReporter(options);
|
|
312
|
+
this.#reporter.onStart?.({
|
|
313
|
+
numJourneys: this.journeys.length,
|
|
314
|
+
networkConditions: options.networkConditions,
|
|
315
|
+
});
|
|
272
316
|
/**
|
|
273
|
-
* Set up the
|
|
317
|
+
* Set up the directory for caching screenshots
|
|
274
318
|
*/
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
new Reporter(this, { fd: outfd });
|
|
279
|
-
this.emit('start', { numJourneys: this.journeys.length });
|
|
319
|
+
await (0, promises_1.mkdir)(helpers_1.CACHE_PATH, { recursive: true });
|
|
320
|
+
}
|
|
321
|
+
buildMonitors(options) {
|
|
280
322
|
/**
|
|
281
|
-
*
|
|
323
|
+
* Update the global monitor configuration required for
|
|
324
|
+
* setting defaults
|
|
282
325
|
*/
|
|
283
|
-
|
|
326
|
+
this.updateMonitor({
|
|
327
|
+
throttling: options.throttling,
|
|
328
|
+
schedule: options.schedule,
|
|
329
|
+
locations: options.locations,
|
|
330
|
+
privateLocations: options.privateLocations,
|
|
331
|
+
params: options.params,
|
|
332
|
+
playwrightOptions: options.playwrightOptions,
|
|
333
|
+
});
|
|
334
|
+
const { match, tags } = options;
|
|
335
|
+
const monitors = [];
|
|
336
|
+
for (const journey of this.journeys) {
|
|
337
|
+
if (!journey.isMatch(match, tags)) {
|
|
338
|
+
continue;
|
|
339
|
+
}
|
|
340
|
+
this.#currentJourney = journey;
|
|
341
|
+
/**
|
|
342
|
+
* Execute dummy callback to get all monitor specific
|
|
343
|
+
* configurations for the current journey
|
|
344
|
+
*/
|
|
345
|
+
journey.callback({ params: options.params });
|
|
346
|
+
journey.monitor.update(this.monitor?.config);
|
|
347
|
+
journey.monitor.validate();
|
|
348
|
+
monitors.push(journey.monitor);
|
|
349
|
+
}
|
|
350
|
+
return monitors;
|
|
284
351
|
}
|
|
285
352
|
async run(options) {
|
|
286
353
|
const result = {};
|
|
287
|
-
if (this
|
|
354
|
+
if (this.#active) {
|
|
288
355
|
return result;
|
|
289
356
|
}
|
|
290
|
-
this
|
|
291
|
-
logger_1.log(`Runner: run ${this.journeys.length} journeys`);
|
|
357
|
+
this.#active = true;
|
|
358
|
+
(0, logger_1.log)(`Runner: run ${this.journeys.length} journeys`);
|
|
292
359
|
this.init(options);
|
|
293
360
|
await this.runBeforeAllHook({
|
|
294
361
|
env: options.environment,
|
|
@@ -300,7 +367,7 @@ class Runner extends events_1.EventEmitter {
|
|
|
300
367
|
* Used by heartbeat to gather all registered journeys
|
|
301
368
|
*/
|
|
302
369
|
if (dryRun) {
|
|
303
|
-
this.
|
|
370
|
+
this.#reporter.onJourneyRegister?.(journey);
|
|
304
371
|
continue;
|
|
305
372
|
}
|
|
306
373
|
if (!journey.isMatch(match, tags)) {
|
|
@@ -320,17 +387,16 @@ class Runner extends events_1.EventEmitter {
|
|
|
320
387
|
return result;
|
|
321
388
|
}
|
|
322
389
|
async reset() {
|
|
390
|
+
this.#currentJourney = null;
|
|
391
|
+
this.journeys = [];
|
|
392
|
+
this.#active = false;
|
|
323
393
|
/**
|
|
324
394
|
* Clear all cache data stored for post processing by
|
|
325
395
|
* the current synthetic agent run
|
|
326
396
|
*/
|
|
327
|
-
await promises_1.rm(helpers_1.CACHE_PATH, { recursive: true, force: true });
|
|
328
|
-
this
|
|
329
|
-
this.journeys = [];
|
|
330
|
-
this.active = false;
|
|
331
|
-
this.emit('end', {});
|
|
397
|
+
await (0, promises_1.rm)(helpers_1.CACHE_PATH, { recursive: true, force: true });
|
|
398
|
+
await this.#reporter?.onEnd?.();
|
|
332
399
|
}
|
|
333
400
|
}
|
|
334
401
|
exports.default = Runner;
|
|
335
|
-
Runner.screenshotPath = path_1.join(helpers_1.CACHE_PATH, 'screenshots');
|
|
336
402
|
//# 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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"}
|