@loadmill/executer 0.1.48 → 0.1.51
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/extraction-combiner.js +6 -6
- package/dist/extraction-combiner.js.map +1 -1
- package/dist/mill-info.d.ts +4 -0
- package/dist/mill-version.js +1 -1
- package/dist/post-script/console-log.d.ts +7 -0
- package/dist/post-script/console-log.js +31 -0
- package/dist/post-script/console-log.js.map +1 -0
- package/dist/post-script/post-script-executor.d.ts +2 -1
- package/dist/post-script/post-script-executor.js +21 -4
- package/dist/post-script/post-script-executor.js.map +1 -1
- package/dist/post-script/virtual-machine/vm2-virtual-machine.d.ts +1 -1
- package/dist/request-sequence-result.d.ts +1 -0
- package/dist/sequence.js +7 -3
- package/dist/sequence.js.map +1 -1
- package/package.json +4 -4
- package/src/mill-info.ts +5 -0
- package/src/mill-version.ts +1 -1
- package/src/post-script/console-log.ts +24 -0
- package/src/post-script/post-script-executor.ts +18 -5
- package/src/post-script/virtual-machine/vm2-virtual-machine.ts +1 -1
- package/src/request-sequence-result.ts +1 -1
- package/src/sequence.ts +7 -4
- package/test/post-script-console-log.spec.ts +73 -0
- package/test/post-script-executor.spec.ts +121 -110
|
@@ -102,7 +102,7 @@ var ExtractionCombiner = /** @class */ (function () {
|
|
|
102
102
|
writable: true,
|
|
103
103
|
value: function (extraction) {
|
|
104
104
|
return __awaiter(this, void 0, void 0, function () {
|
|
105
|
-
var query, extractor, header,
|
|
105
|
+
var query, extractor, header, jQuery, jsonPath, edn, regex, ws, converted;
|
|
106
106
|
var _this = this;
|
|
107
107
|
return __generator(this, function (_a) {
|
|
108
108
|
if (typeof extraction === 'string') {
|
|
@@ -110,19 +110,19 @@ var ExtractionCombiner = /** @class */ (function () {
|
|
|
110
110
|
extractor = this.expressionExtractor;
|
|
111
111
|
}
|
|
112
112
|
else {
|
|
113
|
-
header = extraction.header,
|
|
113
|
+
header = extraction.header, jQuery = extraction.jQuery, jsonPath = extraction.jsonPath, edn = extraction.edn, regex = extraction.regex, ws = extraction.ws;
|
|
114
114
|
if (header != null) {
|
|
115
115
|
query = header;
|
|
116
116
|
extractor = this.headerExtractor;
|
|
117
117
|
}
|
|
118
|
-
else if (
|
|
118
|
+
else if (jQuery != null) {
|
|
119
119
|
if (!this.cheerioExtractor) {
|
|
120
120
|
this.cheerioExtractor = new extractors_1.CheerioExtractor(this.res.text, this.contextParameters);
|
|
121
121
|
}
|
|
122
122
|
query =
|
|
123
|
-
typeof
|
|
124
|
-
?
|
|
125
|
-
: [
|
|
123
|
+
typeof jQuery === 'string'
|
|
124
|
+
? jQuery
|
|
125
|
+
: [jQuery.query, '0', jQuery.attr || ''];
|
|
126
126
|
extractor = this.cheerioExtractor;
|
|
127
127
|
}
|
|
128
128
|
else if (jsonPath != null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extraction-combiner.js","sourceRoot":"","sources":["../src/extraction-combiner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wEASmD;AAGnD,qEAA+C;AAC/C,gDAA8B;AAG9B;IAOE,4BAAoB,iBAA6B,EAAU,GAAQ,EAAU,gBAAkC;;;;;mBAA3F;;;;;;mBAAuC;;;;;;mBAAkB;;QAN7E;;;;;WAAiC;QACjC;;;;;WAAmC;QACnC;;;;;WAAqC;QACrC;;;;;WAAoC;QACpC;;;;;WAAyC;QAGvC,IAAI,CAAC,eAAe,GAAG,IAAI,4BAAe,CAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACxE,IAAI,CAAC,mBAAmB,GAAG,IAAI,gCAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC7E,CAAC;;;;;eAED,UAAc,UAAsB;;;;;oBAGlC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;wBAClC,KAAK,GAAG,UAAU,CAAC;wBACnB,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC;qBACtC;yBAAM;wBACG,MAAM,GAAuC,UAAU,OAAjD,EAAE,
|
|
1
|
+
{"version":3,"file":"extraction-combiner.js","sourceRoot":"","sources":["../src/extraction-combiner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wEASmD;AAGnD,qEAA+C;AAC/C,gDAA8B;AAG9B;IAOE,4BAAoB,iBAA6B,EAAU,GAAQ,EAAU,gBAAkC;;;;;mBAA3F;;;;;;mBAAuC;;;;;;mBAAkB;;QAN7E;;;;;WAAiC;QACjC;;;;;WAAmC;QACnC;;;;;WAAqC;QACrC;;;;;WAAoC;QACpC;;;;;WAAyC;QAGvC,IAAI,CAAC,eAAe,GAAG,IAAI,4BAAe,CAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACxE,IAAI,CAAC,mBAAmB,GAAG,IAAI,gCAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC7E,CAAC;;;;;eAED,UAAc,UAAsB;;;;;oBAGlC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;wBAClC,KAAK,GAAG,UAAU,CAAC;wBACnB,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC;qBACtC;yBAAM;wBACG,MAAM,GAAuC,UAAU,OAAjD,EAAE,MAAM,GAA+B,UAAU,OAAzC,EAAE,QAAQ,GAAqB,UAAU,SAA/B,EAAE,GAAG,GAAgB,UAAU,IAA1B,EAAE,KAAK,GAAS,UAAU,MAAnB,EAAE,EAAE,GAAK,UAAU,GAAf,CAAgB;wBAEhE,IAAI,MAAM,IAAI,IAAI,EAAE;4BAClB,KAAK,GAAG,MAAM,CAAC;4BACf,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC;yBAClC;6BAAM,IAAI,MAAM,IAAI,IAAI,EAAE;4BACzB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;gCAC1B,IAAI,CAAC,gBAAgB,GAAG,IAAI,6BAAgB,CAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,EACb,IAAI,CAAC,iBAAiB,CACvB,CAAC;6BACH;4BAED,KAAK;gCACH,OAAO,MAAM,KAAK,QAAQ;oCACxB,CAAC,CAAC,MAAM;oCACR,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;4BAE7C,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;yBACnC;6BAAM,IAAI,QAAQ,IAAI,IAAI,EAAE;4BAC3B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;gCAC3B,IAAI,CAAC,iBAAiB,GAAG,IAAI,8BAAiB,CAC5C,IAAI,CAAC,GAAG,CAAC,IAAI,EACb,IAAI,CAAC,iBAAiB,CACvB,CAAC;6BACH;4BAED,KAAK,GAAG,QAAQ,CAAC;4BACjB,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC;yBACpC;6BAAM,IAAI,GAAG,IAAI,IAAI,EAAE;4BACtB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;gCACtB,SAAS,GAAW,EAAE,CAAC;gCAC3B,IAAI;oCACF,SAAS,GAAG,IAAI,CAAC,SAAS,CACxB,eAAS,CAAC,IAAI,CAAC,eAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAC/C,CAAC;iCACH;gCAAC,OAAO,CAAC,EAAE;oCACV,aAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,+EAA+E;iCAC9F;gCACD,IAAI,CAAC,gBAAgB,GAAG,IAAI,8BAAiB,CAC3C,SAAS,EACT,IAAI,CAAC,iBAAiB,CACvB,CAAC;6BACH;4BAED,KAAK,GAAG,GAAG,CAAC;4BACZ,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;yBACnC;wBAED,IAAI,KAAK,IAAI,IAAI,EAAE;4BACjB,SAAS,GAAG,IAAI,2BAAc,CAC5B,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,KAAM,CAAC,CAAC,CAAC,CAAC,cAAM,OAAA,KAAI,CAAC,GAAG,CAAC,IAAI,EAAb,CAAa,EACzD,IAAI,CAAC,iBAAiB,CACvB,CAAC;4BAEF,KAAK,GAAG,KAAK,CAAC;yBACf;wBAED,IAAI,EAAE,IAAI,IAAI,EAAE;4BACd,SAAS,GAAG,IAAI,wBAAW,CACzB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,iBAAiB,CACvB,CAAC;4BAEF,KAAK,GAAG,EAAE,CAAC;yBACZ;qBACF;oBAED,sBAAO,cAAM,OAAA,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAxB,CAAwB,EAAC;;;SACvC;;IACH,yBAAC;AAAD,CAAC,AAzFD,IAyFC;AAzFY,gDAAkB;AA2F/B,SAAS,IAAI,CAAC,SAAoB,EAAE,KAAK;IACvC,OAAO,cAAM,OAAA,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAxB,CAAwB,CAAC;AACxC,CAAC"}
|
package/dist/mill-info.d.ts
CHANGED
package/dist/mill-version.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.millVersionString = exports.millVersion = void 0;
|
|
4
4
|
exports.millVersion = {
|
|
5
5
|
major: 9,
|
|
6
|
-
minor:
|
|
6
|
+
minor: 55,
|
|
7
7
|
patch: 0,
|
|
8
8
|
};
|
|
9
9
|
exports.millVersionString = exports.millVersion.major + "." + exports.millVersion.minor + "." + exports.millVersion.patch;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.myConsole = exports.CONSOLE_LOG_LIMIT = exports.LINE_LIMIT = void 0;
|
|
4
|
+
exports.LINE_LIMIT = 1000;
|
|
5
|
+
exports.CONSOLE_LOG_LIMIT = 100;
|
|
6
|
+
var isPassedTheLimit = function (line) { return line.length > exports.LINE_LIMIT; };
|
|
7
|
+
exports.myConsole = {
|
|
8
|
+
stdout: [],
|
|
9
|
+
log: function () {
|
|
10
|
+
var args = [];
|
|
11
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
12
|
+
args[_i] = arguments[_i];
|
|
13
|
+
}
|
|
14
|
+
if (exports.myConsole.stdout.length >= exports.CONSOLE_LOG_LIMIT) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
var line = '';
|
|
18
|
+
for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {
|
|
19
|
+
var item = args_1[_a];
|
|
20
|
+
line += typeof item === 'object' ? JSON.stringify(item, undefined, 2) : item;
|
|
21
|
+
if (isPassedTheLimit(line)) {
|
|
22
|
+
line = line.substring(0, exports.LINE_LIMIT) + '\n...';
|
|
23
|
+
break;
|
|
24
|
+
}
|
|
25
|
+
line += ' ';
|
|
26
|
+
}
|
|
27
|
+
!!line && exports.myConsole.stdout.push(line);
|
|
28
|
+
},
|
|
29
|
+
setStdout: function (newStdout) { return exports.myConsole.stdout = newStdout; },
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=console-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"console-log.js","sourceRoot":"","sources":["../../src/post-script/console-log.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,IAAI,CAAC;AAClB,QAAA,iBAAiB,GAAG,GAAG,CAAC;AAErC,IAAM,gBAAgB,GAAG,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,MAAM,GAAG,kBAAU,EAAxB,CAAwB,CAAC;AAE/C,QAAA,SAAS,GAAG;IACvB,MAAM,EAAE,EAAc;IACtB,GAAG,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QACX,IAAI,iBAAS,CAAC,MAAM,CAAC,MAAM,IAAI,yBAAiB,EAAE;YAChD,OAAO;SACR;QACD,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,KAAmB,UAAI,EAAJ,aAAI,EAAJ,kBAAI,EAAJ,IAAI,EAAE;YAApB,IAAM,IAAI,aAAA;YACb,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7E,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;gBAC1B,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAU,CAAC,GAAG,OAAO,CAAC;gBAC/C,MAAM;aACP;YACD,IAAI,IAAI,GAAG,CAAC;SACb;QACD,CAAC,CAAC,IAAI,IAAI,iBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IACD,SAAS,EAAE,UAAC,SAAS,IAAK,OAAA,iBAAS,CAAC,MAAM,GAAG,SAAS,EAA5B,CAA4B;CACvD,CAAC"}
|
|
@@ -3,7 +3,8 @@ import { ParameterFunctionOperations } from '@loadmill/core/dist/parameters/para
|
|
|
3
3
|
export declare class PostScriptRunner {
|
|
4
4
|
run: (staticContext?: OuterStaticContext, dynamicContext?: SequenceExecutorParameters, userCode?: string) => SequenceExecutorParameters;
|
|
5
5
|
private wrapUserCode;
|
|
6
|
-
validateCircularDependency: (obj: SequenceExecutorParameters
|
|
6
|
+
validateCircularDependency: (obj: SequenceExecutorParameters) => void;
|
|
7
|
+
private removeAssertModule;
|
|
7
8
|
}
|
|
8
9
|
declare type OuterStaticContext = {
|
|
9
10
|
staticContext: StaticContext;
|
|
@@ -20,6 +20,7 @@ exports.PostScriptRunner = void 0;
|
|
|
20
20
|
var assert_1 = require("assert");
|
|
21
21
|
var ast_walker_1 = require("./ast-walker");
|
|
22
22
|
var vm2_virtual_machine_1 = require("./virtual-machine/vm2-virtual-machine");
|
|
23
|
+
var console_log_1 = require("./console-log");
|
|
23
24
|
var PostScriptRunner = /** @class */ (function () {
|
|
24
25
|
function PostScriptRunner() {
|
|
25
26
|
var _this = this;
|
|
@@ -33,14 +34,17 @@ var PostScriptRunner = /** @class */ (function () {
|
|
|
33
34
|
if (userCode === void 0) { userCode = ''; }
|
|
34
35
|
var newVariables = new ast_walker_1.ASTWalker(userCode).detectDeclarations(Object.keys(staticContext));
|
|
35
36
|
var wrappedUserCode = _this.wrapUserCode(dynamicContext, userCode, newVariables);
|
|
37
|
+
var stdout = [];
|
|
38
|
+
console_log_1.myConsole.setStdout(stdout);
|
|
36
39
|
var vm = new vm2_virtual_machine_1.VM2VirtualMachine();
|
|
37
40
|
vm.create({
|
|
38
|
-
globalObject: __assign({ assert: assert_1.strict }, dynamicContext),
|
|
41
|
+
globalObject: __assign(__assign({ assert: assert_1.strict }, dynamicContext), { console: console_log_1.myConsole }),
|
|
39
42
|
staticObject: staticContext,
|
|
40
43
|
});
|
|
41
44
|
var modifiedDynamicContext = vm.run(wrappedUserCode);
|
|
42
45
|
_this.validateCircularDependency(modifiedDynamicContext);
|
|
43
|
-
|
|
46
|
+
_this.removeAssertModule(modifiedDynamicContext);
|
|
47
|
+
return { result: modifiedDynamicContext, stdout: console_log_1.myConsole.stdout };
|
|
44
48
|
}
|
|
45
49
|
});
|
|
46
50
|
Object.defineProperty(this, "wrapUserCode", {
|
|
@@ -51,8 +55,8 @@ var PostScriptRunner = /** @class */ (function () {
|
|
|
51
55
|
if (dynamicContext === void 0) { dynamicContext = {}; }
|
|
52
56
|
if (userCode === void 0) { userCode = ''; }
|
|
53
57
|
if (newVariables === void 0) { newVariables = []; }
|
|
54
|
-
var prefix = "\n Buffer = {};\n global = { assert: global.assert };\n const $ = staticContext.$;\n const __ = staticContext.__;\n ";
|
|
55
|
-
var suffix = "\n exports = {\n
|
|
58
|
+
var prefix = "\n Buffer = {};\n global = { assert: global.assert, console: global.console };\n const $ = staticContext.$;\n const __ = staticContext.__;\n ";
|
|
59
|
+
var suffix = "\n exports = {\n " + __spreadArray(__spreadArray([], Object.keys(dynamicContext)), newVariables).join() + "\n };\n ";
|
|
56
60
|
return prefix + userCode + suffix;
|
|
57
61
|
}
|
|
58
62
|
});
|
|
@@ -81,6 +85,19 @@ var PostScriptRunner = /** @class */ (function () {
|
|
|
81
85
|
}
|
|
82
86
|
});
|
|
83
87
|
}
|
|
88
|
+
Object.defineProperty(PostScriptRunner.prototype, "removeAssertModule", {
|
|
89
|
+
enumerable: false,
|
|
90
|
+
configurable: true,
|
|
91
|
+
writable: true,
|
|
92
|
+
value: function (context) {
|
|
93
|
+
Object.keys(context).forEach(function (key) {
|
|
94
|
+
var _a, _b;
|
|
95
|
+
if (((_b = (_a = context[key]) === null || _a === void 0 ? void 0 : _a.assert) === null || _b === void 0 ? void 0 : _b.name) === 'strict') {
|
|
96
|
+
context[key] = {};
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
});
|
|
84
101
|
return PostScriptRunner;
|
|
85
102
|
}());
|
|
86
103
|
exports.PostScriptRunner = PostScriptRunner;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-script-executor.js","sourceRoot":"","sources":["../../src/post-script/post-script-executor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,iCAA0C;AAG1C,2CAAyC;AACzC,6EAA0E;
|
|
1
|
+
{"version":3,"file":"post-script-executor.js","sourceRoot":"","sources":["../../src/post-script/post-script-executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,5 +8,5 @@ export declare class VM2VirtualMachine implements VirtualMachine {
|
|
|
8
8
|
makeStatic(obj?: object): void;
|
|
9
9
|
deepFreeze: (obj: object) => any;
|
|
10
10
|
setGlobals: (globalObject?: SequenceExecutorParameters) => void;
|
|
11
|
-
run(code: string): SequenceExecutorParameters
|
|
11
|
+
run(code: string): SequenceExecutorParameters;
|
|
12
12
|
}
|
package/dist/sequence.js
CHANGED
|
@@ -766,6 +766,7 @@ var SequenceExecutor = /** @class */ (function () {
|
|
|
766
766
|
setTCPReuse(request, this.keepaliveHTTPAgent, this.keepaliveHTTPSAgent);
|
|
767
767
|
}
|
|
768
768
|
request.timeout(requestConf.timeout);
|
|
769
|
+
requestConf.noRedirects && request.redirects(0);
|
|
769
770
|
var auth = requestConf.auth;
|
|
770
771
|
if (auth != null && request._header['authorization'] == null) {
|
|
771
772
|
request.auth(auth.user || '', auth.password || '');
|
|
@@ -999,7 +1000,7 @@ var SequenceExecutor = /** @class */ (function () {
|
|
|
999
1000
|
// modifies parameters:
|
|
1000
1001
|
_a.sent();
|
|
1001
1002
|
if (!envUtils.isBrowser()) {
|
|
1002
|
-
this.handlePostScript(requestConf, res);
|
|
1003
|
+
this.handlePostScript(requestConf, res, reqIndex);
|
|
1003
1004
|
}
|
|
1004
1005
|
this.setPostParameters(reqIndex);
|
|
1005
1006
|
assertionResults = this.handleAssertions(requestConf) || [];
|
|
@@ -1141,14 +1142,17 @@ var SequenceExecutor = /** @class */ (function () {
|
|
|
1141
1142
|
enumerable: false,
|
|
1142
1143
|
configurable: true,
|
|
1143
1144
|
writable: true,
|
|
1144
|
-
value: function (_a, _b) {
|
|
1145
|
+
value: function (_a, _b, reqIndex) {
|
|
1145
1146
|
var postScript = _a.postScript;
|
|
1146
1147
|
var _c = _b.text, text = _c === void 0 ? '' : _c;
|
|
1147
1148
|
if (postScript) {
|
|
1148
1149
|
test_run_event_emitter_1.testRunEventsEmitter.postScript.started();
|
|
1149
1150
|
try {
|
|
1150
|
-
var
|
|
1151
|
+
var _d = this.runPostScript(postScript, text), result = _d.result, stdout = _d.stdout;
|
|
1151
1152
|
Object.assign(this.parameters, result);
|
|
1153
|
+
if (!isEmpty_1.default(stdout)) {
|
|
1154
|
+
this.resolvedRequests[reqIndex].stdout = stdout;
|
|
1155
|
+
}
|
|
1152
1156
|
}
|
|
1153
1157
|
catch (e) {
|
|
1154
1158
|
var message = ['Post Script', e.name + ':', e.message].join(' ');
|
package/dist/sequence.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequence.js","sourceRoot":"","sources":["../src/sequence.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sequence.js","sourceRoot":"","sources":["../src/sequence.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.51",
|
|
4
4
|
"description": "Loadmill executer library",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"ts-watch": "rimraf dist && tsc -w -p tsconfig.json",
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
},
|
|
15
15
|
"license": "Apache-2.0",
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@loadmill/core": "0.3.
|
|
18
|
-
"@loadmill/universal": "0.3.
|
|
17
|
+
"@loadmill/core": "0.3.50",
|
|
18
|
+
"@loadmill/universal": "0.3.45",
|
|
19
19
|
"@types/estree": "^0.0.50",
|
|
20
20
|
"acorn": "^8.4.1",
|
|
21
21
|
"agentkeepalive": "^4.1.3",
|
|
@@ -25,6 +25,6 @@
|
|
|
25
25
|
"randomstring": "^1.1.5",
|
|
26
26
|
"superagent": "^6.1.0",
|
|
27
27
|
"urijs": "^1.18.1",
|
|
28
|
-
"vm2": "^3.9.
|
|
28
|
+
"vm2": "^3.9.6"
|
|
29
29
|
}
|
|
30
30
|
}
|
package/src/mill-info.ts
CHANGED
package/src/mill-version.ts
CHANGED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export const LINE_LIMIT = 1000;
|
|
2
|
+
export const CONSOLE_LOG_LIMIT = 100;
|
|
3
|
+
|
|
4
|
+
const isPassedTheLimit = (line) => line.length > LINE_LIMIT;
|
|
5
|
+
|
|
6
|
+
export const myConsole = {
|
|
7
|
+
stdout: [] as string[],
|
|
8
|
+
log: (...args) => {
|
|
9
|
+
if (myConsole.stdout.length >= CONSOLE_LOG_LIMIT) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
let line = '';
|
|
13
|
+
for (const item of args) {
|
|
14
|
+
line += typeof item === 'object' ? JSON.stringify(item, undefined, 2) : item;
|
|
15
|
+
if (isPassedTheLimit(line)) {
|
|
16
|
+
line = line.substring(0, LINE_LIMIT) + '\n...';
|
|
17
|
+
break;
|
|
18
|
+
}
|
|
19
|
+
line += ' ';
|
|
20
|
+
}
|
|
21
|
+
!!line && myConsole.stdout.push(line);
|
|
22
|
+
},
|
|
23
|
+
setStdout: (newStdout) => myConsole.stdout = newStdout,
|
|
24
|
+
};
|
|
@@ -3,6 +3,7 @@ import { SequenceExecutorParameters } from '@loadmill/core/dist/parameters';
|
|
|
3
3
|
import { ParameterFunctionOperations } from '@loadmill/core/dist/parameters/parameter-functions/parameter-functions';
|
|
4
4
|
import { ASTWalker } from './ast-walker';
|
|
5
5
|
import { VM2VirtualMachine } from './virtual-machine/vm2-virtual-machine';
|
|
6
|
+
import { myConsole } from './console-log';
|
|
6
7
|
|
|
7
8
|
export class PostScriptRunner {
|
|
8
9
|
public run = (
|
|
@@ -12,15 +13,19 @@ export class PostScriptRunner {
|
|
|
12
13
|
): SequenceExecutorParameters => {
|
|
13
14
|
const newVariables = new ASTWalker(userCode).detectDeclarations(Object.keys(staticContext));
|
|
14
15
|
const wrappedUserCode = this.wrapUserCode(dynamicContext, userCode, newVariables);
|
|
16
|
+
const stdout = [];
|
|
17
|
+
myConsole.setStdout(stdout);
|
|
18
|
+
|
|
15
19
|
const vm = new VM2VirtualMachine();
|
|
16
20
|
vm.create({
|
|
17
|
-
globalObject: { assert, ...dynamicContext },
|
|
21
|
+
globalObject: { assert, ...dynamicContext, console: myConsole },
|
|
18
22
|
staticObject: staticContext,
|
|
19
23
|
});
|
|
20
24
|
|
|
21
25
|
const modifiedDynamicContext = vm.run(wrappedUserCode);
|
|
22
26
|
this.validateCircularDependency(modifiedDynamicContext);
|
|
23
|
-
|
|
27
|
+
this.removeAssertModule(modifiedDynamicContext);
|
|
28
|
+
return { result: modifiedDynamicContext, stdout: myConsole.stdout };
|
|
24
29
|
};
|
|
25
30
|
|
|
26
31
|
private wrapUserCode = (
|
|
@@ -31,7 +36,7 @@ export class PostScriptRunner {
|
|
|
31
36
|
const prefix =
|
|
32
37
|
`
|
|
33
38
|
Buffer = {};
|
|
34
|
-
global = { assert: global.assert };
|
|
39
|
+
global = { assert: global.assert, console: global.console };
|
|
35
40
|
const $ = staticContext.$;
|
|
36
41
|
const __ = staticContext.__;
|
|
37
42
|
`;
|
|
@@ -39,14 +44,14 @@ export class PostScriptRunner {
|
|
|
39
44
|
const suffix =
|
|
40
45
|
`
|
|
41
46
|
exports = {
|
|
42
|
-
|
|
47
|
+
${[...Object.keys(dynamicContext), ...newVariables].join()}
|
|
43
48
|
};
|
|
44
49
|
`;
|
|
45
50
|
|
|
46
51
|
return prefix + userCode + suffix;
|
|
47
52
|
}
|
|
48
53
|
|
|
49
|
-
validateCircularDependency = (obj: SequenceExecutorParameters
|
|
54
|
+
validateCircularDependency = (obj: SequenceExecutorParameters) => {
|
|
50
55
|
function circularError (propName: string) {
|
|
51
56
|
return new TypeError(`Cyclic object value. Circular reference in property ${propName}`);
|
|
52
57
|
}
|
|
@@ -69,6 +74,14 @@ export class PostScriptRunner {
|
|
|
69
74
|
}
|
|
70
75
|
}
|
|
71
76
|
};
|
|
77
|
+
|
|
78
|
+
private removeAssertModule(context: SequenceExecutorParameters) {
|
|
79
|
+
Object.keys(context).forEach(key => {
|
|
80
|
+
if (context[key]?.assert?.name === 'strict') {
|
|
81
|
+
context[key] = {};
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
}
|
|
72
85
|
}
|
|
73
86
|
type OuterStaticContext = {
|
|
74
87
|
staticContext: StaticContext;
|
package/src/sequence.ts
CHANGED
|
@@ -122,7 +122,6 @@ export const sequence = {
|
|
|
122
122
|
class SequenceExecutor {
|
|
123
123
|
parameters: SequenceExecutorParameters;
|
|
124
124
|
postScriptRunner: PostScriptRunner;
|
|
125
|
-
|
|
126
125
|
avgResTime = 0;
|
|
127
126
|
successfulHits = 0;
|
|
128
127
|
lastStartedIndex = 0;
|
|
@@ -572,6 +571,7 @@ class SequenceExecutor {
|
|
|
572
571
|
}
|
|
573
572
|
|
|
574
573
|
request.timeout(requestConf.timeout);
|
|
574
|
+
requestConf.noRedirects && request.redirects(0);
|
|
575
575
|
|
|
576
576
|
const auth = requestConf.auth;
|
|
577
577
|
|
|
@@ -878,7 +878,7 @@ class SequenceExecutor {
|
|
|
878
878
|
await this.handleExtractions(requestConf, res);
|
|
879
879
|
|
|
880
880
|
if (!envUtils.isBrowser()) {
|
|
881
|
-
this.handlePostScript(requestConf, res);
|
|
881
|
+
this.handlePostScript(requestConf, res, reqIndex);
|
|
882
882
|
}
|
|
883
883
|
|
|
884
884
|
this.setPostParameters(reqIndex);
|
|
@@ -962,13 +962,16 @@ class SequenceExecutor {
|
|
|
962
962
|
);
|
|
963
963
|
}
|
|
964
964
|
|
|
965
|
-
handlePostScript({ postScript }: LoadmillRequest, { text = '' }) {
|
|
965
|
+
handlePostScript({ postScript }: LoadmillRequest, { text = '' }, reqIndex) {
|
|
966
966
|
if (postScript) {
|
|
967
967
|
testRunEventsEmitter.postScript.started();
|
|
968
968
|
|
|
969
969
|
try {
|
|
970
|
-
const result = this.runPostScript(postScript, text);
|
|
970
|
+
const { result, stdout } = this.runPostScript(postScript, text);
|
|
971
971
|
Object.assign(this.parameters, result);
|
|
972
|
+
if (!isEmpty(stdout)) {
|
|
973
|
+
this.resolvedRequests[reqIndex].stdout = stdout;
|
|
974
|
+
}
|
|
972
975
|
} catch (e) {
|
|
973
976
|
const message = ['Post Script', e.name + ':', e.message].join(' ');
|
|
974
977
|
throw new RequestFailuresError(message);
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { strict as assert } from 'assert';
|
|
2
|
+
import { describe, it } from 'mocha';
|
|
3
|
+
|
|
4
|
+
import { myConsole, LINE_LIMIT, CONSOLE_LOG_LIMIT } from '../src/post-script/console-log';
|
|
5
|
+
|
|
6
|
+
describe('override console.log', () => {
|
|
7
|
+
|
|
8
|
+
it('Simple console.log', () => {
|
|
9
|
+
myConsole.setStdout([]);
|
|
10
|
+
myConsole.log(1);
|
|
11
|
+
assert.deepEqual(myConsole.stdout, ['1 ']);
|
|
12
|
+
myConsole.setStdout([]);
|
|
13
|
+
myConsole.log('a');
|
|
14
|
+
assert.deepEqual(myConsole.stdout, ['a ']);
|
|
15
|
+
});
|
|
16
|
+
it('Empty console.log', () => {
|
|
17
|
+
myConsole.setStdout([]);
|
|
18
|
+
myConsole.log();
|
|
19
|
+
assert.deepEqual(myConsole.stdout, []);
|
|
20
|
+
});
|
|
21
|
+
it('console.log with empty string', () => {
|
|
22
|
+
myConsole.setStdout([]);
|
|
23
|
+
myConsole.log('');
|
|
24
|
+
assert.deepEqual(myConsole.stdout, [' ']);
|
|
25
|
+
});
|
|
26
|
+
it('console.log of more than one element in one line', () => {
|
|
27
|
+
myConsole.setStdout([]);
|
|
28
|
+
myConsole.log(1,2,3,'a','b','c');
|
|
29
|
+
assert.deepEqual(myConsole.stdout, ['1 2 3 a b c ']);
|
|
30
|
+
});
|
|
31
|
+
it('console.log of an object', () => {
|
|
32
|
+
myConsole.setStdout([]);
|
|
33
|
+
const a = { 'A':1,'B':2 };
|
|
34
|
+
myConsole.log(a);
|
|
35
|
+
assert.deepEqual(myConsole.stdout, ['{\n "A": 1,\n "B": 2\n} ']);
|
|
36
|
+
});
|
|
37
|
+
it('console.log of a function', () => {
|
|
38
|
+
myConsole.setStdout([]);
|
|
39
|
+
const func = () => { };
|
|
40
|
+
myConsole.log(func);
|
|
41
|
+
assert.deepEqual(myConsole.stdout, ['function () { } ']);
|
|
42
|
+
});
|
|
43
|
+
it('console.log of an array', () => {
|
|
44
|
+
myConsole.setStdout([]);
|
|
45
|
+
const a = [1,2,3];
|
|
46
|
+
myConsole.log(a);
|
|
47
|
+
assert.deepEqual(myConsole.stdout, ['[\n 1,\n 2,\n 3\n] ']);
|
|
48
|
+
});
|
|
49
|
+
it('console.log of an array that contains objects', () => {
|
|
50
|
+
myConsole.setStdout([]);
|
|
51
|
+
const a = [1,2,3,{ 'A':1,'B':2 },{ 'C':3,'D':4 }];
|
|
52
|
+
myConsole.log(a);
|
|
53
|
+
assert.deepEqual(myConsole.stdout, ['[\n 1,\n 2,\n 3,\n {\n "A": 1,\n "B": 2\n },\n {\n "C": 3,\n "D": 4\n }\n] ']);
|
|
54
|
+
});
|
|
55
|
+
it('check the line limit', () => {
|
|
56
|
+
myConsole.setStdout([]);
|
|
57
|
+
const a = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
|
|
58
|
+
let b = '';
|
|
59
|
+
for (let i = 0; i<11; i++) {
|
|
60
|
+
b += a;
|
|
61
|
+
}
|
|
62
|
+
myConsole.log(b);
|
|
63
|
+
assert.deepEqual(myConsole.stdout, [b.substring(0, LINE_LIMIT) + '\n...']);
|
|
64
|
+
});
|
|
65
|
+
it('check the console.log limit', () => {
|
|
66
|
+
myConsole.setStdout([]);
|
|
67
|
+
const a = 123;
|
|
68
|
+
for (let i = 0; i<110; i++) {
|
|
69
|
+
myConsole.log(a);
|
|
70
|
+
}
|
|
71
|
+
assert.equal(myConsole.stdout.length, CONSOLE_LOG_LIMIT);
|
|
72
|
+
});
|
|
73
|
+
});
|
|
@@ -9,30 +9,30 @@ const runPostScript = new PostScriptRunner().run;
|
|
|
9
9
|
suite('Post Script Executor', () => {
|
|
10
10
|
describe('Empty user code', () => {
|
|
11
11
|
it('should return empty object', () => {
|
|
12
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, { }, '');
|
|
12
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, { }, '');
|
|
13
13
|
assert.deepStrictEqual(result, { });
|
|
14
14
|
});
|
|
15
15
|
|
|
16
16
|
it('should return empty object when static not empty', () => {
|
|
17
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, { }, '');
|
|
17
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, { }, '');
|
|
18
18
|
assert.deepStrictEqual(result, { });
|
|
19
19
|
});
|
|
20
20
|
|
|
21
21
|
it('should return identical dynamic object', () => {
|
|
22
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, { key: 'value' }, '');
|
|
22
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, { key: 'value' }, '');
|
|
23
23
|
assert.deepStrictEqual(result, { key: 'value' });
|
|
24
24
|
});
|
|
25
25
|
|
|
26
26
|
it('should return identical dynamic function', () => {
|
|
27
27
|
const func = (a, b) => a + b;
|
|
28
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, { func }, '');
|
|
28
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, { func }, '');
|
|
29
29
|
assert.deepStrictEqual(result, { func });
|
|
30
30
|
assert.equal(result.func(1, 2), 3);
|
|
31
31
|
});
|
|
32
32
|
|
|
33
33
|
it('should return identical dynamic array', () => {
|
|
34
34
|
const arr = [1, '2', null, {}, [], undefined];
|
|
35
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, { arr }, '');
|
|
35
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, { arr }, '');
|
|
36
36
|
assert.deepStrictEqual(result, { arr });
|
|
37
37
|
assert.equal(result.arr, arr);
|
|
38
38
|
assert.deepStrictEqual(result.arr, [1, '2', null, {}, [], undefined]);
|
|
@@ -42,7 +42,7 @@ suite('Post Script Executor', () => {
|
|
|
42
42
|
describe('Override dynamic data', () => {
|
|
43
43
|
it('should override dynamic var with user code', () => {
|
|
44
44
|
const dynamicVar = 'arnon';
|
|
45
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, { dynamicVar }, `
|
|
45
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, { dynamicVar }, `
|
|
46
46
|
dynamicVar = 'yochai';
|
|
47
47
|
`);
|
|
48
48
|
assert.notDeepStrictEqual(result, { dynamicVar });
|
|
@@ -51,7 +51,7 @@ suite('Post Script Executor', () => {
|
|
|
51
51
|
|
|
52
52
|
it('should override dynamic function with user code', () => {
|
|
53
53
|
const dynamicFunc = (a, b) => a + b;
|
|
54
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, { dynamicFunc }, `
|
|
54
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, { dynamicFunc }, `
|
|
55
55
|
dynamicFunc = (a, b) => a - b;
|
|
56
56
|
`);
|
|
57
57
|
assert.notDeepStrictEqual(result, { dynamicFunc });
|
|
@@ -61,24 +61,24 @@ suite('Post Script Executor', () => {
|
|
|
61
61
|
|
|
62
62
|
describe('simple variable declaration', () => {
|
|
63
63
|
it('should detect var declaration', () => {
|
|
64
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'var myVar = 123;');
|
|
64
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'var myVar = 123;');
|
|
65
65
|
assert.equal(result.myVar, 123);
|
|
66
66
|
});
|
|
67
67
|
|
|
68
68
|
it('should detect let declaration', () => {
|
|
69
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'let myVar = 123;');
|
|
69
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'let myVar = 123;');
|
|
70
70
|
assert.equal(result.myVar, 123);
|
|
71
71
|
});
|
|
72
72
|
|
|
73
73
|
it('should detect const declaration', () => {
|
|
74
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'const myVar = 123;');
|
|
74
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'const myVar = 123;');
|
|
75
75
|
assert.equal(result.myVar, 123);
|
|
76
76
|
});
|
|
77
77
|
});
|
|
78
78
|
|
|
79
79
|
describe('multiple declarations in one line', () => {
|
|
80
80
|
it('should detect 2 declarations in one line', () => {
|
|
81
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
81
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
82
82
|
'let username = \'ido\', password = \'solarwinds123\';'
|
|
83
83
|
);
|
|
84
84
|
|
|
@@ -88,7 +88,7 @@ suite('Post Script Executor', () => {
|
|
|
88
88
|
});
|
|
89
89
|
|
|
90
90
|
describe('implicit declaration', () => {
|
|
91
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
91
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
92
92
|
'implicitDeclaration = \'with not let, const or var\';'
|
|
93
93
|
);
|
|
94
94
|
|
|
@@ -98,7 +98,7 @@ suite('Post Script Executor', () => {
|
|
|
98
98
|
});
|
|
99
99
|
|
|
100
100
|
describe('implicit & multiple declarations in one line', () => {
|
|
101
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
101
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
102
102
|
'p1 = 1, p2 = 2;'
|
|
103
103
|
);
|
|
104
104
|
|
|
@@ -110,7 +110,7 @@ suite('Post Script Executor', () => {
|
|
|
110
110
|
|
|
111
111
|
describe('simple function declarations', () => {
|
|
112
112
|
it('should detect function declaration', () => {
|
|
113
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
113
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
114
114
|
`function add(x,y) {
|
|
115
115
|
return x + y;
|
|
116
116
|
}`
|
|
@@ -119,7 +119,7 @@ suite('Post Script Executor', () => {
|
|
|
119
119
|
});
|
|
120
120
|
|
|
121
121
|
it('should detect pointer to function', () => {
|
|
122
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
122
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
123
123
|
`const add = function(x,y) {
|
|
124
124
|
return x + y;
|
|
125
125
|
}`
|
|
@@ -129,7 +129,7 @@ suite('Post Script Executor', () => {
|
|
|
129
129
|
});
|
|
130
130
|
|
|
131
131
|
describe('arrow function declarations', () => {
|
|
132
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
132
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {},
|
|
133
133
|
`const add = (x,y) => {
|
|
134
134
|
return x + y;
|
|
135
135
|
}`
|
|
@@ -202,15 +202,15 @@ suite('Post Script Executor', () => {
|
|
|
202
202
|
};
|
|
203
203
|
|
|
204
204
|
it('should read values from static data', () => {
|
|
205
|
-
const
|
|
205
|
+
const { result } = runPostScript({ staticContext: { $, __: {} } }, {},
|
|
206
206
|
`
|
|
207
207
|
resBodyCopy = $;
|
|
208
208
|
a = $.a;
|
|
209
209
|
b = $.b;
|
|
210
210
|
`);
|
|
211
|
-
assert.deepStrictEqual(
|
|
212
|
-
assert.deepStrictEqual(
|
|
213
|
-
assert.deepStrictEqual(
|
|
211
|
+
assert.deepStrictEqual(result.a, 1);
|
|
212
|
+
assert.deepStrictEqual(result.b, 2);
|
|
213
|
+
assert.deepStrictEqual(result.resBodyCopy, { a: 1, b: 2 });
|
|
214
214
|
});
|
|
215
215
|
});
|
|
216
216
|
|
|
@@ -300,104 +300,105 @@ suite('Post Script Executor', () => {
|
|
|
300
300
|
});
|
|
301
301
|
});
|
|
302
302
|
|
|
303
|
-
it('should throw if referencing vm global object', () => {
|
|
304
|
-
assert.throws(() => runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'c=global'), {
|
|
305
|
-
name: 'TypeError',
|
|
306
|
-
message: 'Cyclic object value. Circular reference in property c'
|
|
307
|
-
});
|
|
308
|
-
});
|
|
309
|
-
|
|
310
303
|
it('should not throw if nested object exists more than once but not cyclic ', () => {
|
|
311
304
|
const obj = { };
|
|
312
305
|
const containsObj = { obj: obj };
|
|
313
306
|
const $ = { containsObj, obj };
|
|
314
307
|
assert.doesNotThrow(() => JSON.stringify($));
|
|
315
|
-
assert.doesNotThrow(() => runPostScript({ staticContext: { $: $, __: {} } }, {},
|
|
316
|
-
|
|
317
|
-
|
|
308
|
+
assert.doesNotThrow(() => runPostScript({ staticContext: { $: $, __: {} } }, {}, 'res = $;'));
|
|
309
|
+
});
|
|
310
|
+
});
|
|
311
|
+
|
|
312
|
+
describe('global object', () => {
|
|
313
|
+
it('should return an empty object for a variable referencing the global object', () => {
|
|
314
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'c=global');
|
|
315
|
+
assert.deepEqual(
|
|
316
|
+
result.c,
|
|
317
|
+
{}
|
|
318
|
+
);
|
|
318
319
|
});
|
|
319
320
|
});
|
|
320
321
|
|
|
321
322
|
describe('destructuring', () => {
|
|
322
323
|
describe('object', () => {
|
|
323
324
|
it('should detect declaration of root property', () => {
|
|
324
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'const { x } = { x: 1 };');
|
|
325
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'const { x } = { x: 1 };');
|
|
325
326
|
assert.equal(result.x, 1);
|
|
326
327
|
});
|
|
327
328
|
|
|
328
329
|
it('should detect declaration of 2-level nested property', () => {
|
|
329
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
330
|
-
|
|
331
|
-
|
|
330
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
331
|
+
let { x: { y } } = { x: { y: 1 } };
|
|
332
|
+
`);
|
|
332
333
|
assert.equal(result.y, 1);
|
|
333
334
|
});
|
|
334
335
|
|
|
335
336
|
it('should detect declaration of 3-level nested property', () => {
|
|
336
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
337
|
-
|
|
338
|
-
|
|
337
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
338
|
+
let { x: { y: { z } } } = { x: { y: { z: 1 } } };
|
|
339
|
+
`);
|
|
339
340
|
assert.equal(result.z, 1);
|
|
340
341
|
});
|
|
341
342
|
|
|
342
343
|
it('should detect declaration of 4-level nested property', () => {
|
|
343
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
344
|
-
|
|
345
|
-
|
|
344
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
345
|
+
let { x: { y: { z: { w } } } } = { x: { y: { z: { w: 1 } } } };
|
|
346
|
+
`);
|
|
346
347
|
assert.equal(result.w, 1);
|
|
347
348
|
});
|
|
348
349
|
|
|
349
350
|
it('should detect declaration of two (2) root properties', () => {
|
|
350
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
351
|
-
|
|
352
|
-
|
|
351
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
352
|
+
let { x, y } = { x: 1, y: 2 };
|
|
353
|
+
`);
|
|
353
354
|
assert.equal(result.x, 1);
|
|
354
355
|
assert.equal(result.y, 2);
|
|
355
356
|
});
|
|
356
357
|
|
|
357
358
|
it('should detect declaration of a root property and a nested property', () => {
|
|
358
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
359
|
-
|
|
360
|
-
|
|
359
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
360
|
+
let { x, y: { z } } = { x: 1, y: { z: 2 } };
|
|
361
|
+
`);
|
|
361
362
|
assert.equal(result.x, 1);
|
|
362
363
|
assert.equal(result.z, 2);
|
|
363
364
|
});
|
|
364
365
|
|
|
365
366
|
it('should detect rest element object declaration', () => {
|
|
366
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
367
|
-
|
|
368
|
-
|
|
367
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
368
|
+
const {x, ...theRest } = { x: 1, y: 2, z: 3 };
|
|
369
|
+
`);
|
|
369
370
|
assert.equal(result.x, 1);
|
|
370
371
|
assert.equal(result.theRest.y, 2);
|
|
371
372
|
assert.equal(result.theRest.z, 3);
|
|
372
373
|
});
|
|
373
374
|
|
|
374
375
|
it('should detect implicit declaration of root property ', () => {
|
|
375
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '({ x } = { x: 1 });');
|
|
376
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '({ x } = { x: 1 });');
|
|
376
377
|
assert.equal(result.x, 1);
|
|
377
378
|
});
|
|
378
379
|
|
|
379
380
|
it('should detect implicit declaration of 2-level nested property ', () => {
|
|
380
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '({ x: { y } } = { x: { y: 1 } });');
|
|
381
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '({ x: { y } } = { x: { y: 1 } });');
|
|
381
382
|
assert.equal(result.y, 1);
|
|
382
383
|
});
|
|
383
384
|
|
|
384
385
|
it('should detect implicit declaration of 3-level nested property ', () => {
|
|
385
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '({ x: { y: { z } } } = { x: { y: { z: 1 } } });');
|
|
386
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '({ x: { y: { z } } } = { x: { y: { z: 1 } } });');
|
|
386
387
|
assert.equal(result.z, 1);
|
|
387
388
|
});
|
|
388
389
|
|
|
389
390
|
it('should detect implicit declaration of two (2) root properties', () => {
|
|
390
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
391
|
-
|
|
392
|
-
|
|
391
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
392
|
+
({ x, y } = { x: 1, y: 2 });
|
|
393
|
+
`);
|
|
393
394
|
assert.equal(result.x, 1);
|
|
394
395
|
assert.equal(result.y, 2);
|
|
395
396
|
});
|
|
396
397
|
|
|
397
398
|
it('should detect implicit declaration of a root property and a nested property', () => {
|
|
398
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
399
|
-
|
|
400
|
-
|
|
399
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
400
|
+
({ x, y: { z } } = { x: 1, y: { z: 2 } });
|
|
401
|
+
`);
|
|
401
402
|
assert.equal(result.x, 1);
|
|
402
403
|
assert.equal(result.z, 2);
|
|
403
404
|
});
|
|
@@ -405,50 +406,50 @@ suite('Post Script Executor', () => {
|
|
|
405
406
|
|
|
406
407
|
describe('array', () => {
|
|
407
408
|
it('should detect destructured array value', () => {
|
|
408
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
409
|
-
|
|
410
|
-
|
|
409
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
410
|
+
const [ x ] = [ 1 ];
|
|
411
|
+
`);
|
|
411
412
|
assert.equal(result.x, 1);
|
|
412
413
|
});
|
|
413
414
|
|
|
414
415
|
it('should detect 2 destructured array values', () => {
|
|
415
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
416
|
-
|
|
417
|
-
|
|
416
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
417
|
+
const [ x, y ] = [ 1, 2 ];
|
|
418
|
+
`);
|
|
418
419
|
assert.equal(result.x, 1);
|
|
419
420
|
assert.equal(result.y, 2);
|
|
420
421
|
});
|
|
421
422
|
|
|
422
423
|
it('should detect spread array values', () => {
|
|
423
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'let [...elements] = [1, 2];');
|
|
424
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'let [...elements] = [1, 2];');
|
|
424
425
|
assert.equal(result.elements.length, 2);
|
|
425
426
|
});
|
|
426
427
|
|
|
427
428
|
it('should detect "regular" & spread array values', () => {
|
|
428
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'let [a, b, ...rest] = [10, 20, 30, 40, 50];');
|
|
429
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'let [a, b, ...rest] = [10, 20, 30, 40, 50];');
|
|
429
430
|
assert.equal(result.a,10);
|
|
430
431
|
assert.equal(result.b,20);
|
|
431
432
|
assert.equal(result.rest.length,3);
|
|
432
433
|
});
|
|
433
434
|
|
|
434
435
|
it('should detect implicit declaration of array destructuring ', () => {
|
|
435
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '([ x ] = [ 1 ]);');
|
|
436
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '([ x ] = [ 1 ]);');
|
|
436
437
|
assert.equal(result.x, 1);
|
|
437
438
|
});
|
|
438
439
|
|
|
439
440
|
it('should detect 2 implicit declarations of array destructuring ', () => {
|
|
440
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '([ x, y ] = [ 1, 2 ]);');
|
|
441
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '([ x, y ] = [ 1, 2 ]);');
|
|
441
442
|
assert.equal(result.x, 1);
|
|
442
443
|
assert.equal(result.y, 2);
|
|
443
444
|
});
|
|
444
445
|
|
|
445
446
|
it('should detect implicit spread array values', () => {
|
|
446
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '[...elements] = [1, 2];');
|
|
447
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, '[...elements] = [1, 2];');
|
|
447
448
|
assert.equal(result.elements.length, 2);
|
|
448
449
|
});
|
|
449
450
|
|
|
450
451
|
it('should detect implicit "regular" & spread array values', () => {
|
|
451
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'let [a, b, ...rest] = [10, 20, 30, 40, 50];');
|
|
452
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, 'let [a, b, ...rest] = [10, 20, 30, 40, 50];');
|
|
452
453
|
assert.equal(result.a,10);
|
|
453
454
|
assert.equal(result.b,20);
|
|
454
455
|
assert.equal(result.rest.length,3);
|
|
@@ -457,41 +458,41 @@ suite('Post Script Executor', () => {
|
|
|
457
458
|
|
|
458
459
|
describe('array of objects', () => {
|
|
459
460
|
it('should detect destructured object from array', () => {
|
|
460
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
461
|
-
|
|
462
|
-
|
|
461
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
462
|
+
const [ { x } ] = [ { x: 1 } ];
|
|
463
|
+
`);
|
|
463
464
|
assert.equal(result.x, 1);
|
|
464
465
|
});
|
|
465
466
|
it('should detect nested destructured object from array', () => {
|
|
466
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
467
|
-
|
|
468
|
-
|
|
467
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
468
|
+
const [ { x: { y } } ] = [ { x: { y: 1 } } ];
|
|
469
|
+
`);
|
|
469
470
|
assert.equal(result.y, 1);
|
|
470
471
|
});
|
|
471
472
|
it('should detect destructuring of 3-level nested property from array', () => {
|
|
472
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
473
|
-
|
|
474
|
-
|
|
473
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
474
|
+
let [{ x: { y: { z } } }] = [{ x: { y: { z: 1 } } }];
|
|
475
|
+
`);
|
|
475
476
|
assert.equal(result.z, 1);
|
|
476
477
|
});
|
|
477
478
|
it('should detect destructuring of two (2) root properties from array', () => {
|
|
478
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
479
|
-
|
|
480
|
-
|
|
479
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
480
|
+
let [{ x, y }] = [{ x: 1, y: 2 }];
|
|
481
|
+
`);
|
|
481
482
|
assert.equal(result.x, 1);
|
|
482
483
|
assert.equal(result.y, 2);
|
|
483
484
|
});
|
|
484
485
|
it('should detect destructuring of a root property and a nested property from array', () => {
|
|
485
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
486
|
-
|
|
487
|
-
|
|
486
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
487
|
+
let [{ x, y: { z } }] = [{ x: 1, y: { z: 2 } }];
|
|
488
|
+
`);
|
|
488
489
|
assert.equal(result.x, 1);
|
|
489
490
|
assert.equal(result.z, 2);
|
|
490
491
|
});
|
|
491
492
|
it('should detect destructuring of mixed type elements of array', () => {
|
|
492
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
493
|
-
|
|
494
|
-
|
|
493
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
494
|
+
let [{ x }, y, z, w, q, t] = [{ x: 1 }, 2, 'a', false, undefined, null];
|
|
495
|
+
`);
|
|
495
496
|
assert.equal(result.x, 1);
|
|
496
497
|
assert.equal(result.y, 2);
|
|
497
498
|
assert.equal(result.z, 'a');
|
|
@@ -503,23 +504,23 @@ suite('Post Script Executor', () => {
|
|
|
503
504
|
|
|
504
505
|
describe('object with array value', () => {
|
|
505
506
|
it('should detect an array value destructured from object', () => {
|
|
506
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
507
|
-
|
|
508
|
-
|
|
507
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
508
|
+
const { x } = { x: [1,2] };
|
|
509
|
+
`);
|
|
509
510
|
assert.ok(Array.isArray(result.x));
|
|
510
511
|
assert.equal(result.x[0], 1);
|
|
511
512
|
assert.equal(result.x[1], 2);
|
|
512
513
|
});
|
|
513
514
|
it('should detect an object destructured from array destructured from object', () => {
|
|
514
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
515
|
-
|
|
516
|
-
|
|
515
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
516
|
+
const { x: [ { y } ] } = { x: [ { y: 1 } ] };
|
|
517
|
+
`);
|
|
517
518
|
assert.equal(result.y, 1);
|
|
518
519
|
});
|
|
519
520
|
it('should detect a deep nested destructuring mix of obj and arr', () => {
|
|
520
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
521
|
-
|
|
522
|
-
|
|
521
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
522
|
+
const { a: [ { b: [ { c } ], } ], } = { a: [ { b: [ { c: ['unacceptable'] } ] } ] }
|
|
523
|
+
`);
|
|
523
524
|
assert.ok(Array.isArray(result.c));
|
|
524
525
|
assert.equal(result.c[0], 'unacceptable');
|
|
525
526
|
assert.equal(result.c.length, 1);
|
|
@@ -528,45 +529,55 @@ suite('Post Script Executor', () => {
|
|
|
528
529
|
|
|
529
530
|
describe('implicit object with array value', () => {
|
|
530
531
|
it('should detect an implicit array value destructured from object', () => {
|
|
531
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
532
|
-
|
|
533
|
-
|
|
532
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
533
|
+
({ x } = { x: [1,2] });
|
|
534
|
+
`);
|
|
534
535
|
assert.ok(Array.isArray(result.x));
|
|
535
536
|
assert.equal(result.x[0], 1);
|
|
536
537
|
assert.equal(result.x[1], 2);
|
|
537
538
|
});
|
|
538
539
|
it('should detect an object destructured from array destructured from object', () => {
|
|
539
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
540
|
-
|
|
541
|
-
|
|
540
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
541
|
+
({ x: [ { y } ] } = { x: [ { y: 1 } ] });
|
|
542
|
+
`);
|
|
542
543
|
assert.equal(result.y, 1);
|
|
543
544
|
});
|
|
544
545
|
it('should detect a deep nested destructuring mix of obj and arr', () => {
|
|
545
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
546
|
-
|
|
547
|
-
|
|
546
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
547
|
+
({ a: [ { b: [ { c } ], } ], } = { a: [ { b: [ { c: ['unacceptable'] } ] } ] });
|
|
548
|
+
`);
|
|
548
549
|
assert.ok(Array.isArray(result.c));
|
|
549
550
|
assert.equal(result.c[0], 'unacceptable');
|
|
550
551
|
assert.equal(result.c.length, 1);
|
|
551
552
|
});
|
|
553
|
+
it('console.log in post script', () => {
|
|
554
|
+
const { stdout } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
555
|
+
const a = { "A":1,"B":2,"C":3 };
|
|
556
|
+
const b = 'print me';
|
|
557
|
+
const c = [ 1,2,3 ];
|
|
558
|
+
console.log(a);
|
|
559
|
+
console.log(b,c);
|
|
560
|
+
`);
|
|
561
|
+
assert.deepEqual(stdout , ['{\n "A": 1,\n "B": 2,\n "C": 3\n} ','print me [\n 1,\n 2,\n 3\n] ']);
|
|
562
|
+
});
|
|
552
563
|
});
|
|
553
564
|
|
|
554
565
|
describe('array of arrays', () => {
|
|
555
566
|
it('should find destructured array element of array', () => {
|
|
556
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
567
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
557
568
|
const [ [ x ] ] = [ [ 1 ] ];
|
|
558
569
|
`);
|
|
559
570
|
assert.equal(result.x, 1);
|
|
560
571
|
});
|
|
561
572
|
it('should find destructured array elements of array', () => {
|
|
562
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
573
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
563
574
|
const [ [ x, y ] ] = [ [ 1, 2 ] ];
|
|
564
575
|
`);
|
|
565
576
|
assert.equal(result.x, 1);
|
|
566
577
|
assert.equal(result.y, 2);
|
|
567
578
|
});
|
|
568
579
|
it('should find destructured array element of array inside an object', () => {
|
|
569
|
-
const result = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
580
|
+
const { result } = runPostScript({ staticContext: { $: {}, __: {} } }, {}, `
|
|
570
581
|
const { x: [ [ y ] ] } = { x: [ [ 1 ] ] };
|
|
571
582
|
`);
|
|
572
583
|
assert.equal(result.y, 1);
|
|
@@ -587,7 +598,7 @@ suite('Post Script Executor', () => {
|
|
|
587
598
|
|
|
588
599
|
const staticContext = { $, __: parameterFunctionOperations };
|
|
589
600
|
it('should have access to both built-in function and response body', () => {
|
|
590
|
-
const result = runPostScript( { staticContext }, {}, `
|
|
601
|
+
const { result } = runPostScript( { staticContext }, {}, `
|
|
591
602
|
const x = __.usd();
|
|
592
603
|
const res = $;
|
|
593
604
|
`);
|