@loadmill/executer 0.1.159 → 0.1.161
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/dist/mill-info.d.ts +4 -0
- package/dist/step-handlers/playwright/constants.d.ts +2 -0
- package/dist/step-handlers/playwright/constants.js +3 -1
- package/dist/step-handlers/playwright/constants.js.map +1 -1
- package/dist/step-handlers/playwright/files-manager.d.ts +1 -0
- package/dist/step-handlers/playwright/files-manager.js +23 -0
- package/dist/step-handlers/playwright/files-manager.js.map +1 -1
- package/dist/step-handlers/playwright/index.d.ts +1 -0
- package/dist/step-handlers/playwright/index.js +32 -13
- package/dist/step-handlers/playwright/index.js.map +1 -1
- package/dist/step-handlers/playwright-step-handler.js +19 -18
- package/dist/step-handlers/playwright-step-handler.js.map +1 -1
- package/package.json +3 -3
package/dist/mill-info.d.ts
CHANGED
|
@@ -5,3 +5,5 @@ export declare const RESULT_JSON_FILE_NAME = "result.json";
|
|
|
5
5
|
export declare const CONFIG_FILE_NAME = "playwright.config.ts";
|
|
6
6
|
export declare const RESULT_HTML_DIR = "html-report";
|
|
7
7
|
export declare const RESULT_HTML_FILE_NAME = "index.html";
|
|
8
|
+
export declare const REPORTS_GENERATION_INTERVAL_MS = 500;
|
|
9
|
+
export declare const REPORTS_GENERATION_TIMEOUT_MS = 5000;
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.RESULT_HTML_FILE_NAME = exports.RESULT_HTML_DIR = exports.CONFIG_FILE_NAME = exports.RESULT_JSON_FILE_NAME = exports.EXTRACTED_EXEC_DATA_FILE_NAME = exports.PLAYWRIGHT_TESTS_DIR = exports.PLAYWRIGHT_FILES_DIR_PATH = void 0;
|
|
6
|
+
exports.REPORTS_GENERATION_TIMEOUT_MS = exports.REPORTS_GENERATION_INTERVAL_MS = exports.RESULT_HTML_FILE_NAME = exports.RESULT_HTML_DIR = exports.CONFIG_FILE_NAME = exports.RESULT_JSON_FILE_NAME = exports.EXTRACTED_EXEC_DATA_FILE_NAME = exports.PLAYWRIGHT_TESTS_DIR = exports.PLAYWRIGHT_FILES_DIR_PATH = void 0;
|
|
7
7
|
var path_1 = __importDefault(require("path"));
|
|
8
8
|
var os_1 = __importDefault(require("os"));
|
|
9
9
|
var LOADMILL_DIR = '.loadmill';
|
|
@@ -17,4 +17,6 @@ exports.RESULT_JSON_FILE_NAME = 'result.json';
|
|
|
17
17
|
exports.CONFIG_FILE_NAME = 'playwright.config.ts';
|
|
18
18
|
exports.RESULT_HTML_DIR = 'html-report';
|
|
19
19
|
exports.RESULT_HTML_FILE_NAME = 'index.html';
|
|
20
|
+
exports.REPORTS_GENERATION_INTERVAL_MS = 500;
|
|
21
|
+
exports.REPORTS_GENERATION_TIMEOUT_MS = 5000; // 5 seconds
|
|
20
22
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/step-handlers/playwright/constants.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAwB;AACxB,0CAAoB;AAEpB,IAAM,YAAY,GAAG,WAAW,CAAC;AACjC,IAAM,SAAS,GAAG,gBAAgB,CAAC;AACnC,IAAM,cAAc,GAAG,YAAY,CAAC;AACpC,IAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,YAAE,CAAC,OAAO,EAAE,CAAC;AAEzC,QAAA,yBAAyB,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;AACzF,QAAA,oBAAoB,GAAG,OAAO,CAAC;AAC/B,QAAA,6BAA6B,GAAG,0BAA0B,CAAC;AAC3D,QAAA,qBAAqB,GAAG,aAAa,CAAC;AACtC,QAAA,gBAAgB,GAAG,sBAAsB,CAAC;AAC1C,QAAA,eAAe,GAAG,aAAa,CAAC;AAChC,QAAA,qBAAqB,GAAG,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/step-handlers/playwright/constants.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAwB;AACxB,0CAAoB;AAEpB,IAAM,YAAY,GAAG,WAAW,CAAC;AACjC,IAAM,SAAS,GAAG,gBAAgB,CAAC;AACnC,IAAM,cAAc,GAAG,YAAY,CAAC;AACpC,IAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,YAAE,CAAC,OAAO,EAAE,CAAC;AAEzC,QAAA,yBAAyB,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;AACzF,QAAA,oBAAoB,GAAG,OAAO,CAAC;AAC/B,QAAA,6BAA6B,GAAG,0BAA0B,CAAC;AAC3D,QAAA,qBAAqB,GAAG,aAAa,CAAC;AACtC,QAAA,gBAAgB,GAAG,sBAAsB,CAAC;AAC1C,QAAA,eAAe,GAAG,aAAa,CAAC;AAChC,QAAA,qBAAqB,GAAG,YAAY,CAAC;AAErC,QAAA,8BAA8B,GAAG,GAAG,CAAC;AACrC,QAAA,6BAA6B,GAAG,IAAI,CAAC,CAAC,YAAY"}
|
|
@@ -25,6 +25,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
25
25
|
exports.PlaywrightFilesManager = void 0;
|
|
26
26
|
var path = __importStar(require("path"));
|
|
27
27
|
var v4_1 = __importDefault(require("uuid/v4"));
|
|
28
|
+
var log_1 = __importDefault(require("@loadmill/universal/dist/log"));
|
|
28
29
|
var file_system_1 = require("@loadmill/core/dist/utils/file-system");
|
|
29
30
|
var constants_1 = require("./constants");
|
|
30
31
|
var PlaywrightFilesManager = /** @class */ (function () {
|
|
@@ -139,6 +140,28 @@ var PlaywrightFilesManager = /** @class */ (function () {
|
|
|
139
140
|
file_system_1.writeFileToDisk(this.getConfigFilePath(), content);
|
|
140
141
|
}
|
|
141
142
|
});
|
|
143
|
+
Object.defineProperty(PlaywrightFilesManager.prototype, "waitForReportsGeneration", {
|
|
144
|
+
enumerable: false,
|
|
145
|
+
configurable: true,
|
|
146
|
+
writable: true,
|
|
147
|
+
value: function () {
|
|
148
|
+
var _this = this;
|
|
149
|
+
log_1.default.debug('Waiting for Playwright step reports generation...');
|
|
150
|
+
return new Promise(function (resolve, reject) {
|
|
151
|
+
var interval = setInterval(function () {
|
|
152
|
+
if (_this.getTestResult() && _this.getHtmlReport()) {
|
|
153
|
+
log_1.default.debug('Playwright step reports generated');
|
|
154
|
+
clearInterval(interval);
|
|
155
|
+
resolve();
|
|
156
|
+
}
|
|
157
|
+
}, constants_1.REPORTS_GENERATION_INTERVAL_MS);
|
|
158
|
+
setTimeout(function () {
|
|
159
|
+
clearInterval(interval);
|
|
160
|
+
reject(new Error('Playwright step reports generation timed out'));
|
|
161
|
+
}, constants_1.REPORTS_GENERATION_TIMEOUT_MS);
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
});
|
|
142
165
|
return PlaywrightFilesManager;
|
|
143
166
|
}());
|
|
144
167
|
exports.PlaywrightFilesManager = PlaywrightFilesManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"files-manager.js","sourceRoot":"","sources":["../../../src/step-handlers/playwright/files-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA6B;AAC7B,+CAA6B;
|
|
1
|
+
{"version":3,"file":"files-manager.js","sourceRoot":"","sources":["../../../src/step-handlers/playwright/files-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,3 +4,4 @@ import { CookiesDetails } from '@loadmill/core/dist/conf/types';
|
|
|
4
4
|
import { PlaywrightFilesManager } from './files-manager';
|
|
5
5
|
import { PlaywrightExecutionResult } from './types';
|
|
6
6
|
export declare const executePlaywrightStep: (step: PlaywrightStep, filesManager: PlaywrightFilesManager, params: SequenceExecutorParameters, cookies: CookiesDetails) => Promise<PlaywrightExecutionResult>;
|
|
7
|
+
export declare const missingDepsErrMsg = "Playwright missing dependencies";
|
|
@@ -36,17 +36,25 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.executePlaywrightStep = void 0;
|
|
39
|
+
exports.missingDepsErrMsg = exports.executePlaywrightStep = void 0;
|
|
40
40
|
var child_process_1 = require("child_process");
|
|
41
41
|
var transformer_1 = require("./transformer");
|
|
42
42
|
var executePlaywrightStep = function (step, filesManager, params, cookies) { return __awaiter(void 0, void 0, void 0, function () {
|
|
43
|
+
var output;
|
|
43
44
|
return __generator(this, function (_a) {
|
|
44
45
|
switch (_a.label) {
|
|
45
46
|
case 0:
|
|
46
47
|
_generateAndSaveTestFiles(step, filesManager, params, cookies);
|
|
47
48
|
return [4 /*yield*/, _runPlaywrightTest(filesManager.getConfigFilePath(), filesManager.getRootDir())];
|
|
48
49
|
case 1:
|
|
50
|
+
output = (_a.sent()).output;
|
|
51
|
+
if (!_shouldWaitForReportsGeneration(output)) return [3 /*break*/, 3];
|
|
52
|
+
return [4 /*yield*/, filesManager.waitForReportsGeneration()];
|
|
53
|
+
case 2:
|
|
49
54
|
_a.sent();
|
|
55
|
+
_a.label = 3;
|
|
56
|
+
case 3:
|
|
57
|
+
_handleMissingDepsError(output);
|
|
50
58
|
return [2 /*return*/, {
|
|
51
59
|
result: filesManager.getTestResult(),
|
|
52
60
|
htmlReport: filesManager.getHtmlReport(),
|
|
@@ -64,25 +72,19 @@ var _generateAndSaveTestFiles = function (step, filesManager, params, cookies) {
|
|
|
64
72
|
var _runPlaywrightTest = function (configFilePath, executionDir) { return __awaiter(void 0, void 0, void 0, function () {
|
|
65
73
|
return __generator(this, function (_a) {
|
|
66
74
|
return [2 /*return*/, new Promise(function (resolve, reject) {
|
|
75
|
+
var output = [];
|
|
67
76
|
var process = child_process_1.spawn('npx', ['@playwright/test', 'test', '--config', configFilePath], {
|
|
68
77
|
stdio: ['ignore', 'pipe', 'pipe'],
|
|
69
78
|
cwd: executionDir,
|
|
70
79
|
});
|
|
71
|
-
var handleError = function (message) {
|
|
72
|
-
reject(new Error(message + " We recommend using our pre-configured Docker image for a seamless setup."));
|
|
73
|
-
};
|
|
74
80
|
process.stdout.on('data', function (data) {
|
|
75
|
-
|
|
76
|
-
handleError(browserNotInstalledErrMsg);
|
|
77
|
-
}
|
|
81
|
+
output.push(data.toString());
|
|
78
82
|
});
|
|
79
83
|
process.stderr.on('data', function (data) {
|
|
80
|
-
|
|
81
|
-
handleError(playwrightNotInstalledErrMsg);
|
|
82
|
-
}
|
|
84
|
+
output.push(data.toString());
|
|
83
85
|
});
|
|
84
86
|
process.on('close', function (code) {
|
|
85
|
-
resolve({ code: code });
|
|
87
|
+
resolve({ code: code, output: output });
|
|
86
88
|
});
|
|
87
89
|
process.on('error', function (error) {
|
|
88
90
|
reject(error);
|
|
@@ -90,12 +92,29 @@ var _runPlaywrightTest = function (configFilePath, executionDir) { return __awai
|
|
|
90
92
|
})];
|
|
91
93
|
});
|
|
92
94
|
}); };
|
|
95
|
+
var _shouldWaitForReportsGeneration = function (output) {
|
|
96
|
+
return !output.some(_isPlaywrightNotInstalled);
|
|
97
|
+
};
|
|
98
|
+
var _handleMissingDepsError = function (output) {
|
|
99
|
+
output.forEach(function (log) {
|
|
100
|
+
if (_isPlaywrightNotInstalled(log)) {
|
|
101
|
+
_throwMissingDepsError(playwrightNotInstalledErrMsg);
|
|
102
|
+
}
|
|
103
|
+
else if (_isBrowsersNotInstalled(log)) {
|
|
104
|
+
_throwMissingDepsError(browserNotInstalledErrMsg);
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
};
|
|
93
108
|
var _isPlaywrightNotInstalled = function (log) {
|
|
94
109
|
return log.includes('Cannot find module \'@playwright/test\'');
|
|
95
110
|
};
|
|
96
|
-
var playwrightNotInstalledErrMsg = 'Playwright is not installed on this agent.
|
|
111
|
+
var playwrightNotInstalledErrMsg = 'Playwright is not installed on this agent.';
|
|
97
112
|
var _isBrowsersNotInstalled = function (log) {
|
|
98
113
|
return log.includes('Error: browserType.launch: Executable doesn\'t exist');
|
|
99
114
|
};
|
|
100
|
-
var browserNotInstalledErrMsg = 'Playwright couldn\'t find the required browser on this agent.
|
|
115
|
+
var browserNotInstalledErrMsg = 'Playwright couldn\'t find the required browser on this agent.';
|
|
116
|
+
var _throwMissingDepsError = function (message) {
|
|
117
|
+
throw new Error(exports.missingDepsErrMsg + "- " + message);
|
|
118
|
+
};
|
|
119
|
+
exports.missingDepsErrMsg = 'Playwright missing dependencies';
|
|
101
120
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/step-handlers/playwright/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAsC;AAQtC,6CAAqE;AAE9D,IAAM,qBAAqB,GAAG,UACnC,IAAoB,EACpB,YAAoC,EACpC,MAAkC,EAClC,OAAuB
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/step-handlers/playwright/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,24 +77,17 @@ var PlaywrightStepHandler = /** @class */ (function () {
|
|
|
77
77
|
configurable: true,
|
|
78
78
|
writable: true,
|
|
79
79
|
value: function (playwrightStep, stepIndex) {
|
|
80
|
-
var _a;
|
|
81
80
|
return __awaiter(this, void 0, void 0, function () {
|
|
82
|
-
var
|
|
83
|
-
return __generator(this, function (
|
|
84
|
-
switch (
|
|
81
|
+
var requestStartTime, beforeTime, res, errMsg, _a, params, cookies, err_1;
|
|
82
|
+
return __generator(this, function (_b) {
|
|
83
|
+
switch (_b.label) {
|
|
85
84
|
case 0:
|
|
86
|
-
|
|
87
|
-
if (!isUiTestsEnabled) {
|
|
88
|
-
throw new errors_1.RequestFailuresError('Running Playwright steps is not enabled. Make sure you have a private agent with UI tests enabled.');
|
|
89
|
-
}
|
|
90
|
-
_c.label = 1;
|
|
91
|
-
case 1:
|
|
92
|
-
_c.trys.push([1, 3, , 4]);
|
|
85
|
+
_b.trys.push([0, 2, 3, 4]);
|
|
93
86
|
requestStartTime = Date.now();
|
|
94
87
|
beforeTime = performance_1.isPerformance ? performance.now() : requestStartTime;
|
|
95
88
|
return [4 /*yield*/, playwright_1.executePlaywrightStep(playwrightStep, this.fileManager, this.context.parameters, this.context.getCurrentCookies())];
|
|
96
|
-
case
|
|
97
|
-
res =
|
|
89
|
+
case 1:
|
|
90
|
+
res = _b.sent();
|
|
98
91
|
res.htmlReport && this.context.setHtmlReport(stepIndex, res.htmlReport);
|
|
99
92
|
this.context.saveStdout(stepIndex, _getLogs(res));
|
|
100
93
|
errMsg = _getErrMsg(res);
|
|
@@ -102,19 +95,21 @@ var PlaywrightStepHandler = /** @class */ (function () {
|
|
|
102
95
|
this.context.setPostParameters(stepIndex);
|
|
103
96
|
throw new errors_1.RequestFailuresError(errMsg);
|
|
104
97
|
}
|
|
105
|
-
|
|
98
|
+
_a = this.fileManager.getExtractedExecData(), params = _a.params, cookies = _a.cookies;
|
|
106
99
|
this.context.assignParameters(params);
|
|
107
100
|
this.context.setCookies(_formatCookies(cookies));
|
|
108
|
-
this.fileManager.cleanup();
|
|
109
101
|
this.context.setTimeParams(requestStartTime, beforeTime);
|
|
110
102
|
return [2 /*return*/, {}];
|
|
111
|
-
case
|
|
112
|
-
err_1 =
|
|
103
|
+
case 2:
|
|
104
|
+
err_1 = _b.sent();
|
|
113
105
|
if (!(err_1 instanceof errors_1.RequestFailuresError)) {
|
|
114
106
|
log_1.default.error('Error executing Playwright step:', err_1);
|
|
115
107
|
}
|
|
116
|
-
|
|
108
|
+
_handleMissingDepsError(err_1);
|
|
117
109
|
throw new errors_1.RequestFailuresError(err_1.message);
|
|
110
|
+
case 3:
|
|
111
|
+
this.fileManager.cleanup();
|
|
112
|
+
return [7 /*endfinally*/];
|
|
118
113
|
case 4: return [2 /*return*/];
|
|
119
114
|
}
|
|
120
115
|
});
|
|
@@ -163,4 +158,10 @@ var _getLogs = function (res) {
|
|
|
163
158
|
var _a, _b, _c, _d, _e;
|
|
164
159
|
return ((_e = (_d = (_c = (_b = (_a = res.result) === null || _a === void 0 ? void 0 : _a.suites[0]) === null || _b === void 0 ? void 0 : _b.specs[0]) === null || _c === void 0 ? void 0 : _c.tests[0]) === null || _d === void 0 ? void 0 : _d.results[0]) === null || _e === void 0 ? void 0 : _e.stdout.map(function (log) { return 'text' in log ? log.text : log.buffer.toString(); })) || [];
|
|
165
160
|
};
|
|
161
|
+
var _handleMissingDepsError = function (err) {
|
|
162
|
+
if (err.message.startsWith(playwright_1.missingDepsErrMsg)) {
|
|
163
|
+
throw new errors_1.RequestFailuresError('Running Playwright steps is not supported on this agent. ' +
|
|
164
|
+
'Use our pre-configured Docker image for a seamless setup (https://hub.docker.com/r/loadmill/agent).');
|
|
165
|
+
}
|
|
166
|
+
};
|
|
166
167
|
//# sourceMappingURL=playwright-step-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playwright-step-handler.js","sourceRoot":"","sources":["../../src/step-handlers/playwright-step-handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAAmC;AAGnC,qEAA+C;AAG/C,oEAAwE;AAIxE,8CAA+C;AAG/C,sCAA0C;AAC1C,oCAAiD;AAEjD,
|
|
1
|
+
{"version":3,"file":"playwright-step-handler.js","sourceRoot":"","sources":["../../src/step-handlers/playwright-step-handler.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loadmill/executer",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.161",
|
|
4
4
|
"description": "Loadmill executer library",
|
|
5
5
|
"main": "dist/",
|
|
6
6
|
"scripts": {
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
"dependencies": {
|
|
18
18
|
"@grpc/grpc-js": "^1.9.8",
|
|
19
19
|
"@grpc/proto-loader": "^0.7.10",
|
|
20
|
-
"@loadmill/core": "0.3.
|
|
21
|
-
"@loadmill/universal": "0.3.
|
|
20
|
+
"@loadmill/core": "0.3.160",
|
|
21
|
+
"@loadmill/universal": "0.3.155",
|
|
22
22
|
"@playwright/test": "1.50.0",
|
|
23
23
|
"@types/estree": "^0.0.50",
|
|
24
24
|
"acorn": "^8.4.1",
|