@loadmill/executer 0.1.118 → 0.1.119
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/post-script/constants.d.ts +4 -0
- package/dist/post-script/constants.js +9 -0
- package/dist/post-script/constants.js.map +1 -0
- package/dist/redact-data.js +8 -23
- package/dist/redact-data.js.map +1 -1
- package/dist/test-run-event-emitter.d.ts +1 -1
- package/dist/test-run-event-emitter.js +18 -2
- package/dist/test-run-event-emitter.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.POSTSCRIPT = void 0;
|
|
4
|
+
var POSTSCRIPT;
|
|
5
|
+
(function (POSTSCRIPT) {
|
|
6
|
+
POSTSCRIPT["STARTED"] = "postscript-started";
|
|
7
|
+
POSTSCRIPT["FINISHED"] = "postscript-finished";
|
|
8
|
+
})(POSTSCRIPT = exports.POSTSCRIPT || (exports.POSTSCRIPT = {}));
|
|
9
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/post-script/constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,4CAA8B,CAAA;IAC9B,8CAAgC,CAAA;AACpC,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB"}
|
package/dist/redact-data.js
CHANGED
|
@@ -10,27 +10,27 @@ var jsonpath_1 = __importDefault(require("jsonpath"));
|
|
|
10
10
|
var lodash_1 = require("lodash");
|
|
11
11
|
var qs_1 = __importDefault(require("qs"));
|
|
12
12
|
var utils_1 = require("./utils");
|
|
13
|
-
var
|
|
13
|
+
var BODY_DATA_REDACTED = 'Body Data Redacted';
|
|
14
14
|
function redactSensitiveData(resolvedRequests, sensitiveKeys) {
|
|
15
15
|
if (sensitiveKeys === void 0) { sensitiveKeys = []; }
|
|
16
16
|
resolvedRequests.forEach(function (rr) {
|
|
17
17
|
var _a, _b;
|
|
18
18
|
if ((_a = rr.postData) === null || _a === void 0 ? void 0 : _a.text) {
|
|
19
|
-
rr.postData.text = !lodash_1.isEmpty(sensitiveKeys) ? redactKeysFromBody(sensitiveKeys, rr.postData.text, rr.postData.mimeType) :
|
|
19
|
+
rr.postData.text = !lodash_1.isEmpty(sensitiveKeys) ? redactKeysFromBody(sensitiveKeys, rr.postData.text, rr.postData.mimeType) : BODY_DATA_REDACTED;
|
|
20
20
|
}
|
|
21
21
|
if ((_b = rr.response) === null || _b === void 0 ? void 0 : _b.text) {
|
|
22
|
-
rr.response.text = !lodash_1.isEmpty(sensitiveKeys) ? redactKeysFromBody(sensitiveKeys, rr.response.text, rr.response.type) :
|
|
22
|
+
rr.response.text = !lodash_1.isEmpty(sensitiveKeys) ? redactKeysFromBody(sensitiveKeys, rr.response.text, rr.response.type) : BODY_DATA_REDACTED;
|
|
23
23
|
}
|
|
24
24
|
if (rr.postParameters) {
|
|
25
|
-
redactPostParameters(rr.postParameters, sensitiveKeys);
|
|
25
|
+
parameters_1.redactPostParameters(rr.postParameters, sensitiveKeys);
|
|
26
26
|
}
|
|
27
27
|
});
|
|
28
28
|
}
|
|
29
29
|
exports.redactSensitiveData = redactSensitiveData;
|
|
30
30
|
function redactKeysFromBody(sensitiveKeys, text, mimeType) {
|
|
31
31
|
try {
|
|
32
|
-
if (utils_1.hasBeenTrimmed(text)) {
|
|
33
|
-
return
|
|
32
|
+
if (typeof text != 'string' || utils_1.hasBeenTrimmed(text)) {
|
|
33
|
+
return BODY_DATA_REDACTED;
|
|
34
34
|
}
|
|
35
35
|
if (mimeType === null || mimeType === void 0 ? void 0 : mimeType.startsWith('application/x-www-form-urlencoded')) {
|
|
36
36
|
var params = qs_1.default.parse(text);
|
|
@@ -49,27 +49,12 @@ function redactKeysFromBody(sensitiveKeys, text, mimeType) {
|
|
|
49
49
|
}
|
|
50
50
|
catch (e) {
|
|
51
51
|
log_1.default.error('Failed to redact request / response body', e);
|
|
52
|
-
return
|
|
52
|
+
return BODY_DATA_REDACTED;
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
function redactKeysFromJson(json, sensitiveKeys) {
|
|
56
56
|
sensitiveKeys.forEach(function (key) {
|
|
57
|
-
jsonpath_1.default.apply(json, "$.." + key, function (_value) { return
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
function redactPostParameters(postParameters, sensitiveKeys) {
|
|
61
|
-
if (postParameters === void 0) { postParameters = []; }
|
|
62
|
-
if (sensitiveKeys === void 0) { sensitiveKeys = []; }
|
|
63
|
-
postParameters.forEach(function (p) {
|
|
64
|
-
var paramName = parameters_1.parameterUtils.getParameterName(p);
|
|
65
|
-
if (!lodash_1.isEmpty(sensitiveKeys)) {
|
|
66
|
-
if (sensitiveKeys.includes(paramName)) {
|
|
67
|
-
p[paramName] = 'Redacted';
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
p[paramName] = 'Redacted';
|
|
72
|
-
}
|
|
57
|
+
jsonpath_1.default.apply(json, "$.." + key, function (_value) { return parameters_1.DATA_REDACTED; });
|
|
73
58
|
});
|
|
74
59
|
}
|
|
75
60
|
//# sourceMappingURL=redact-data.js.map
|
package/dist/redact-data.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redact-data.js","sourceRoot":"","sources":["../src/redact-data.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"redact-data.js","sourceRoot":"","sources":["../src/redact-data.ts"],"names":[],"mappings":";;;;;;AAAA,6DAAqF;AACrF,qEAA+C;AAC/C,sDAAgC;AAChC,iCAAiC;AACjC,0CAAoB;AAEpB,iCAAyC;AAEzC,IAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAEhD,SAAgB,mBAAmB,CAAC,gBAAmC,EAAE,aAA4B;IAA5B,8BAAA,EAAA,kBAA4B;IACnG,gBAAgB,CAAC,OAAO,CAAC,UAAA,EAAE;;QACzB,IAAI,MAAA,EAAE,CAAC,QAAQ,0CAAE,IAAI,EAAE;YACrB,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,gBAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,aAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC;SAC7I;QACD,IAAI,MAAA,EAAE,CAAC,QAAQ,0CAAE,IAAI,EAAE;YACrB,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,gBAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,aAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC;SACzI;QACD,IAAI,EAAE,CAAC,cAAc,EAAE;YACrB,iCAAoB,CAAC,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;SACxD;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAZD,kDAYC;AAED,SAAS,kBAAkB,CAAC,aAAuB,EAAE,IAAa,EAAE,QAAiB;IACnF,IAAI;QAEF,IAAI,OAAO,IAAI,IAAI,QAAQ,IAAI,sBAAc,CAAC,IAAI,CAAC,EAAE;YACnD,OAAO,kBAAkB,CAAC;SAC3B;QAED,IAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,CAAC,mCAAmC,CAAC,EAAE;YAC7D,IAAM,MAAM,GAAG,YAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9B,kBAAkB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YAC1C,OAAO,YAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;SAC7B;aAAM,IAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,CAAC,kBAAkB,CAAC,EAAE;YACjD,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9B,IAAI,CAAC,IAAI,EAAE;gBACT,OAAO,IAAI,CAAC;aACb;YACD,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;SAC7B;QAED,OAAO,IAAI,CAAC;KACb;IAAC,OAAO,CAAC,EAAE;QACV,aAAG,CAAC,KAAK,CAAC,0CAA0C,EAAE,CAAC,CAAC,CAAC;QACzD,OAAO,kBAAkB,CAAC;KAC3B;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAS,EAAE,aAAuB;IAC5D,aAAa,CAAC,OAAO,CAAC,UAAA,GAAG;QACvB,kBAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,QAAM,GAAK,EAAE,UAAC,MAAM,IAAK,OAAA,0BAAa,EAAb,CAAa,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -2,7 +2,7 @@ import { Socket } from 'socket.io-client';
|
|
|
2
2
|
declare class TestRunEventsEmitter {
|
|
3
3
|
postScript: EventsEmitter;
|
|
4
4
|
constructor();
|
|
5
|
-
setPostScriptHandlers: (socket: Socket, token: string) => void;
|
|
5
|
+
setPostScriptHandlers: (socket: Socket | null, token: string) => void;
|
|
6
6
|
}
|
|
7
7
|
declare const testRunEventsEmitter: TestRunEventsEmitter;
|
|
8
8
|
export { testRunEventsEmitter };
|
|
@@ -5,6 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.testRunEventsEmitter = void 0;
|
|
7
7
|
var log_1 = __importDefault(require("@loadmill/universal/dist/log"));
|
|
8
|
+
var worker_threads_1 = require("worker_threads");
|
|
9
|
+
var constants_1 = require("./post-script/constants");
|
|
8
10
|
var TestRunEventsEmitter = /** @class */ (function () {
|
|
9
11
|
function TestRunEventsEmitter() {
|
|
10
12
|
var _this = this;
|
|
@@ -19,8 +21,22 @@ var TestRunEventsEmitter = /** @class */ (function () {
|
|
|
19
21
|
configurable: true,
|
|
20
22
|
writable: true,
|
|
21
23
|
value: function (socket, token) {
|
|
22
|
-
_this.postScript.started = function () {
|
|
23
|
-
|
|
24
|
+
_this.postScript.started = function () {
|
|
25
|
+
if (socket) {
|
|
26
|
+
socket.emit("postscript-started:" + token);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
worker_threads_1.parentPort ? worker_threads_1.parentPort.postMessage({ event: constants_1.POSTSCRIPT.STARTED }) : log_1.default.warn('no parent port');
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
_this.postScript.finished = function () {
|
|
33
|
+
if (socket) {
|
|
34
|
+
socket.emit("postscript-finished:" + token);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
worker_threads_1.parentPort ? worker_threads_1.parentPort.postMessage({ event: constants_1.POSTSCRIPT.FINISHED }) : log_1.default.warn('no parent port');
|
|
38
|
+
}
|
|
39
|
+
};
|
|
24
40
|
}
|
|
25
41
|
});
|
|
26
42
|
var warningMsg = ' event emitter callback not assigned';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-run-event-emitter.js","sourceRoot":"","sources":["../src/test-run-event-emitter.ts"],"names":[],"mappings":";;;;;;AAAA,qEAA+C;
|
|
1
|
+
{"version":3,"file":"test-run-event-emitter.js","sourceRoot":"","sources":["../src/test-run-event-emitter.ts"],"names":[],"mappings":";;;;;;AAAA,qEAA+C;AAE/C,iDAA4C;AAC5C,qDAAqD;AAErD;IAEE;QAAA,iBAMC;QAPD;;;;;WAA0B;QAS1B;;;;mBAAwB,UAAC,MAAqB,EAAE,KAAa;gBAC3D,KAAI,CAAC,UAAU,CAAC,OAAO,GAAG;oBACxB,IAAI,MAAM,EAAE;wBACV,MAAM,CAAC,IAAI,CAAC,wBAAsB,KAAO,CAAC,CAAC;qBAC5C;yBAAM;wBACL,2BAAU,CAAC,CAAC,CAAC,2BAAU,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,sBAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,aAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;qBACjG;gBACH,CAAC,CAAC;gBACF,KAAI,CAAC,UAAU,CAAC,QAAQ,GAAG;oBACzB,IAAI,MAAM,EAAE;wBACV,MAAM,CAAC,IAAI,CAAC,yBAAuB,KAAO,CAAC,CAAC;qBAC7C;yBAAM;wBACL,2BAAU,CAAC,CAAC,CAAC,2BAAU,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,sBAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,aAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;qBAClG;gBACH,CAAC,CAAC;YACJ,CAAC;WAAC;QAtBA,IAAM,UAAU,GAAG,sCAAsC,CAAC;QAC1D,IAAI,CAAC,UAAU,GAAG;YAChB,OAAO,EAAE,cAAM,OAAA,aAAG,CAAC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,EAAnC,CAAmC;YAClD,QAAQ,EAAE,cAAM,OAAA,aAAG,CAAC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,EAAnC,CAAmC;SACpD,CAAC;IACJ,CAAC;IAkBH,2BAAC;AAAD,CAAC,AA1BD,IA0BC;AAED,IAAM,oBAAoB,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC/C,oDAAoB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loadmill/executer",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.119",
|
|
4
4
|
"description": "Loadmill executer library",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"ts-watch": "rimraf dist && tsc -w -p tsconfig.json",
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@grpc/grpc-js": "^1.9.8",
|
|
18
18
|
"@grpc/proto-loader": "^0.7.10",
|
|
19
|
-
"@loadmill/core": "0.3.
|
|
20
|
-
"@loadmill/universal": "0.3.
|
|
19
|
+
"@loadmill/core": "0.3.118",
|
|
20
|
+
"@loadmill/universal": "0.3.113",
|
|
21
21
|
"@types/estree": "^0.0.50",
|
|
22
22
|
"acorn": "^8.4.1",
|
|
23
23
|
"agentkeepalive": "^4.1.3",
|