@loadmill/executer 0.1.142 → 0.1.144

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.
Files changed (139) hide show
  1. package/dist/request-stats.d.ts +2 -1
  2. package/dist/request-stats.js +4 -4
  3. package/dist/request-stats.js.map +1 -1
  4. package/dist/sampler.js +2 -1
  5. package/dist/sampler.js.map +1 -1
  6. package/dist/sequence-executor-like.d.ts +1 -0
  7. package/dist/sequence.js +40 -16
  8. package/dist/sequence.js.map +1 -1
  9. package/{package/dist/step-handlers/code-step-handler.d.ts → dist/step-handlers/wait-step-handler.d.ts} +3 -3
  10. package/{package/dist/step-handlers/extract-step-handler.js → dist/step-handlers/wait-step-handler.js} +16 -19
  11. package/dist/step-handlers/wait-step-handler.js.map +1 -0
  12. package/package.json +3 -3
  13. package/package/dist/asserter.d.ts +0 -9
  14. package/package/dist/asserter.js +0 -158
  15. package/package/dist/asserter.js.map +0 -1
  16. package/package/dist/constants.d.ts +0 -7
  17. package/package/dist/constants.js +0 -13
  18. package/package/dist/constants.js.map +0 -1
  19. package/package/dist/cookies.d.ts +0 -4
  20. package/package/dist/cookies.js +0 -79
  21. package/package/dist/cookies.js.map +0 -1
  22. package/package/dist/errors.d.ts +0 -5
  23. package/package/dist/errors.js +0 -38
  24. package/package/dist/errors.js.map +0 -1
  25. package/package/dist/extraction-combiner.d.ts +0 -17
  26. package/package/dist/extraction-combiner.js +0 -182
  27. package/package/dist/extraction-combiner.js.map +0 -1
  28. package/package/dist/failures.d.ts +0 -24
  29. package/package/dist/failures.js +0 -67
  30. package/package/dist/failures.js.map +0 -1
  31. package/package/dist/grpc.d.ts +0 -34
  32. package/package/dist/grpc.js +0 -269
  33. package/package/dist/grpc.js.map +0 -1
  34. package/package/dist/iteration-stats.d.ts +0 -2
  35. package/package/dist/iteration-stats.js +0 -38
  36. package/package/dist/iteration-stats.js.map +0 -1
  37. package/package/dist/message-creators.d.ts +0 -31
  38. package/package/dist/message-creators.js +0 -90
  39. package/package/dist/message-creators.js.map +0 -1
  40. package/package/dist/mill-info.d.ts +0 -70
  41. package/package/dist/mill-info.js +0 -3
  42. package/package/dist/mill-info.js.map +0 -1
  43. package/package/dist/mill-version.d.ts +0 -6
  44. package/package/dist/mill-version.js +0 -10
  45. package/package/dist/mill-version.js.map +0 -1
  46. package/package/dist/parameter-pools.d.ts +0 -3
  47. package/package/dist/parameter-pools.js +0 -69
  48. package/package/dist/parameter-pools.js.map +0 -1
  49. package/package/dist/performance.d.ts +0 -1
  50. package/package/dist/performance.js +0 -10
  51. package/package/dist/performance.js.map +0 -1
  52. package/package/dist/post-script/ast-walker/index.d.ts +0 -18
  53. package/package/dist/post-script/ast-walker/index.js +0 -215
  54. package/package/dist/post-script/ast-walker/index.js.map +0 -1
  55. package/package/dist/post-script/ast-walker/type-guard.d.ts +0 -11
  56. package/package/dist/post-script/ast-walker/type-guard.js +0 -56
  57. package/package/dist/post-script/ast-walker/type-guard.js.map +0 -1
  58. package/package/dist/post-script/ast-walker/types.d.ts +0 -24
  59. package/package/dist/post-script/ast-walker/types.js +0 -25
  60. package/package/dist/post-script/ast-walker/types.js.map +0 -1
  61. package/package/dist/post-script/console-log.d.ts +0 -7
  62. package/package/dist/post-script/console-log.js +0 -31
  63. package/package/dist/post-script/console-log.js.map +0 -1
  64. package/package/dist/post-script/constants.d.ts +0 -4
  65. package/package/dist/post-script/constants.js +0 -9
  66. package/package/dist/post-script/constants.js.map +0 -1
  67. package/package/dist/post-script/parser/acorn-js-parser.d.ts +0 -5
  68. package/package/dist/post-script/parser/acorn-js-parser.js +0 -20
  69. package/package/dist/post-script/parser/acorn-js-parser.js.map +0 -1
  70. package/package/dist/post-script/parser/js-parser.d.ts +0 -16
  71. package/package/dist/post-script/parser/js-parser.js +0 -3
  72. package/package/dist/post-script/parser/js-parser.js.map +0 -1
  73. package/package/dist/post-script/parser/parser.d.ts +0 -6
  74. package/package/dist/post-script/parser/parser.js +0 -3
  75. package/package/dist/post-script/parser/parser.js.map +0 -1
  76. package/package/dist/post-script/post-script-executor.d.ts +0 -24
  77. package/package/dist/post-script/post-script-executor.js +0 -125
  78. package/package/dist/post-script/post-script-executor.js.map +0 -1
  79. package/package/dist/post-script/virtual-machine/virtual-machine.d.ts +0 -13
  80. package/package/dist/post-script/virtual-machine/virtual-machine.js +0 -3
  81. package/package/dist/post-script/virtual-machine/virtual-machine.js.map +0 -1
  82. package/package/dist/post-script/virtual-machine/vm2-virtual-machine.d.ts +0 -12
  83. package/package/dist/post-script/virtual-machine/vm2-virtual-machine.js +0 -81
  84. package/package/dist/post-script/virtual-machine/vm2-virtual-machine.js.map +0 -1
  85. package/package/dist/post-sequence.d.ts +0 -2
  86. package/package/dist/post-sequence.js +0 -192
  87. package/package/dist/post-sequence.js.map +0 -1
  88. package/package/dist/redact-data.d.ts +0 -2
  89. package/package/dist/redact-data.js +0 -60
  90. package/package/dist/redact-data.js.map +0 -1
  91. package/package/dist/report-types.d.ts +0 -102
  92. package/package/dist/report-types.js +0 -11
  93. package/package/dist/report-types.js.map +0 -1
  94. package/package/dist/request-sequence-result.d.ts +0 -37
  95. package/package/dist/request-sequence-result.js +0 -19
  96. package/package/dist/request-sequence-result.js.map +0 -1
  97. package/package/dist/request-stats.d.ts +0 -13
  98. package/package/dist/request-stats.js +0 -14
  99. package/package/dist/request-stats.js.map +0 -1
  100. package/package/dist/res-keeper.d.ts +0 -16
  101. package/package/dist/res-keeper.js +0 -104
  102. package/package/dist/res-keeper.js.map +0 -1
  103. package/package/dist/sampler.d.ts +0 -29
  104. package/package/dist/sampler.js +0 -276
  105. package/package/dist/sampler.js.map +0 -1
  106. package/package/dist/sequence-executor-like.d.ts +0 -23
  107. package/package/dist/sequence-executor-like.js +0 -3
  108. package/package/dist/sequence-executor-like.js.map +0 -1
  109. package/package/dist/sequence.d.ts +0 -16
  110. package/package/dist/sequence.js +0 -1738
  111. package/package/dist/sequence.js.map +0 -1
  112. package/package/dist/single-runner.d.ts +0 -29
  113. package/package/dist/single-runner.js +0 -147
  114. package/package/dist/single-runner.js.map +0 -1
  115. package/package/dist/step-handlers/code-step-handler.js +0 -93
  116. package/package/dist/step-handlers/code-step-handler.js.map +0 -1
  117. package/package/dist/step-handlers/extract-step-handler.d.ts +0 -12
  118. package/package/dist/step-handlers/extract-step-handler.js.map +0 -1
  119. package/package/dist/step-handlers/request-step-handler.d.ts +0 -13
  120. package/package/dist/step-handlers/request-step-handler.js +0 -94
  121. package/package/dist/step-handlers/request-step-handler.js.map +0 -1
  122. package/package/dist/step-handlers/step-handler.d.ts +0 -11
  123. package/package/dist/step-handlers/step-handler.js +0 -3
  124. package/package/dist/step-handlers/step-handler.js.map +0 -1
  125. package/package/dist/test-run-event-emitter.d.ts +0 -15
  126. package/package/dist/test-run-event-emitter.js +0 -36
  127. package/package/dist/test-run-event-emitter.js.map +0 -1
  128. package/package/dist/types/grpc.d.ts +0 -14
  129. package/package/dist/types/grpc.js +0 -3
  130. package/package/dist/types/grpc.js.map +0 -1
  131. package/package/dist/utils.d.ts +0 -3
  132. package/package/dist/utils.js +0 -32
  133. package/package/dist/utils.js.map +0 -1
  134. package/package/dist/work.d.ts +0 -15
  135. package/package/dist/work.js +0 -3
  136. package/package/dist/work.js.map +0 -1
  137. package/package/dist/ws.d.ts +0 -71
  138. package/package/dist/ws.js +0 -474
  139. package/package/dist/ws.js.map +0 -1
@@ -1,125 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
14
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
15
- to[j] = from[i];
16
- return to;
17
- };
18
- var __importDefault = (this && this.__importDefault) || function (mod) {
19
- return (mod && mod.__esModule) ? mod : { "default": mod };
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.PostScriptRunner = void 0;
23
- var assert_1 = require("assert");
24
- var cloneDeep_1 = __importDefault(require("lodash/cloneDeep"));
25
- var ast_walker_1 = require("./ast-walker");
26
- var vm2_virtual_machine_1 = require("./virtual-machine/vm2-virtual-machine");
27
- var console_log_1 = require("./console-log");
28
- var PostScriptRunner = /** @class */ (function () {
29
- function PostScriptRunner() {
30
- var _this = this;
31
- Object.defineProperty(this, "run", {
32
- enumerable: true,
33
- configurable: true,
34
- writable: true,
35
- value: function (outerStaticContext, dynamicContext, userCode, responseBody) {
36
- if (outerStaticContext === void 0) { outerStaticContext = { staticContext: { __: {} } }; }
37
- if (dynamicContext === void 0) { dynamicContext = {}; }
38
- if (userCode === void 0) { userCode = ''; }
39
- if (responseBody === void 0) { responseBody = {}; }
40
- var newVariables = new ast_walker_1.ASTWalker(userCode).detectDeclarations(Object.keys(outerStaticContext.staticContext));
41
- var wrappedUserCode = _this.wrapUserCode(dynamicContext, userCode, newVariables);
42
- var vm = new vm2_virtual_machine_1.VM2VirtualMachine();
43
- vm.create({
44
- globalObject: __assign(__assign({ assert: assert_1.strict }, dynamicContext), { console: cloneDeep_1.default(console_log_1.myConsole), $: responseBody }),
45
- staticObject: outerStaticContext,
46
- });
47
- var modifiedDynamicContext = vm.run(wrappedUserCode);
48
- _this.validateCircularDependency(modifiedDynamicContext);
49
- _this.removeAssertModule(modifiedDynamicContext);
50
- return { result: _this.unproxify(modifiedDynamicContext) };
51
- }
52
- });
53
- Object.defineProperty(this, "wrapUserCode", {
54
- enumerable: true,
55
- configurable: true,
56
- writable: true,
57
- value: function (dynamicContext, userCode, newVariables) {
58
- if (dynamicContext === void 0) { dynamicContext = {}; }
59
- if (userCode === void 0) { userCode = ''; }
60
- if (newVariables === void 0) { newVariables = []; }
61
- var prefix = "\n Buffer = {};\n global = { assert: global.assert, console: global.console };\n $ = " + _this.unproxifyResponseBody() + ";\n ";
62
- var suffix = "\n exports = {\n " + __spreadArray(__spreadArray([], Object.keys(dynamicContext)), newVariables).join() + "\n };\n ";
63
- return prefix + userCode + suffix;
64
- }
65
- });
66
- /**
67
- * If the response JSON is an array, we need to unproxify it
68
- * https://github.com/patriksimek/vm2/issues/437
69
- */
70
- Object.defineProperty(this, "unproxifyResponseBody", {
71
- enumerable: true,
72
- configurable: true,
73
- writable: true,
74
- value: function () { return 'JSON.parse(JSON.stringify($))'; }
75
- });
76
- Object.defineProperty(this, "validateCircularDependency", {
77
- enumerable: true,
78
- configurable: true,
79
- writable: true,
80
- value: function (obj) {
81
- function circularError(propName) {
82
- return new TypeError("Cyclic object value. Circular reference in property " + propName);
83
- }
84
- findCircular(obj);
85
- function findCircular(obj, _refs) {
86
- if (_refs === void 0) { _refs = new WeakSet(); }
87
- if (typeof obj === 'object' && obj !== null) {
88
- _refs.add(obj);
89
- for (var key in obj) {
90
- if (_refs.has(obj[key])) {
91
- throw circularError(key);
92
- }
93
- findCircular(obj[key], _refs);
94
- }
95
- _refs.delete(obj);
96
- }
97
- }
98
- }
99
- });
100
- }
101
- Object.defineProperty(PostScriptRunner.prototype, "removeAssertModule", {
102
- enumerable: false,
103
- configurable: true,
104
- writable: true,
105
- value: function (context) {
106
- Object.keys(context).forEach(function (key) {
107
- var _a, _b;
108
- if (((_b = (_a = context[key]) === null || _a === void 0 ? void 0 : _a.assert) === null || _b === void 0 ? void 0 : _b.name) === 'strict') {
109
- context[key] = {};
110
- }
111
- });
112
- }
113
- });
114
- Object.defineProperty(PostScriptRunner.prototype, "unproxify", {
115
- enumerable: false,
116
- configurable: true,
117
- writable: true,
118
- value: function (proxy) {
119
- return cloneDeep_1.default(proxy);
120
- }
121
- });
122
- return PostScriptRunner;
123
- }());
124
- exports.PostScriptRunner = PostScriptRunner;
125
- //# sourceMappingURL=post-script-executor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"post-script-executor.js","sourceRoot":"","sources":["../../src/post-script/post-script-executor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,iCAA0C;AAC1C,+DAAyC;AAMzC,2CAAyC;AACzC,6EAA0E;AAC1E,6CAA0C;AAE1C;IAAA;QAAA,iBAqFC;QApFC;;;;mBAAa,UACX,kBAAsE,EACtE,cAA+C,EAC/C,QAAqB,EACrB,YAA4B;gBAH5B,mCAAA,EAAA,uBAA2C,aAAa,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;gBACtE,+BAAA,EAAA,mBAA+C;gBAC/C,yBAAA,EAAA,aAAqB;gBACrB,6BAAA,EAAA,iBAA4B;gBAE5B,IAAM,YAAY,GAAG,IAAI,sBAAS,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;gBAC/G,IAAM,eAAe,GAAG,KAAI,CAAC,YAAY,CAAC,cAAc,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;gBAElF,IAAM,EAAE,GAAG,IAAI,uCAAiB,EAAE,CAAC;gBACnC,EAAE,CAAC,MAAM,CAAC;oBACR,YAAY,sBAAI,MAAM,iBAAA,IAAK,cAAc,KAAE,OAAO,EAAE,mBAAS,CAAC,uBAAS,CAAC,EAAE,CAAC,EAAE,YAAY,GAAE;oBAC3F,YAAY,EAAE,kBAAkB;iBACjC,CAAC,CAAC;gBAEH,IAAM,sBAAsB,GAAG,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBACvD,KAAI,CAAC,0BAA0B,CAAC,sBAAsB,CAAC,CAAC;gBACxD,KAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;gBAChD,OAAO,EAAE,MAAM,EAAE,KAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAC5D,CAAC;WAAC;QAEF;;;;mBAAuB,UACrB,cAA+C,EAC/C,QAAqB,EACrB,YAA2B;gBAF3B,+BAAA,EAAA,mBAA+C;gBAC/C,yBAAA,EAAA,aAAqB;gBACrB,6BAAA,EAAA,iBAA2B;gBAE3B,IAAM,MAAM,GACZ,yGAGQ,KAAI,CAAC,qBAAqB,EAAE,YACnC,CAAC;gBAEF,IAAM,MAAM,GACZ,kCAEM,gCAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,GAAK,YAAY,EAAE,IAAI,EAAE,qBAE7D,CAAC;gBAEF,OAAO,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;YACpC,CAAC;WAAC;QAEF;;;WAGG;QACF;;;;mBAAgC,cAAM,OAAA,+BAA+B,EAA/B,CAA+B;WAAC;QAEvE;;;;mBAA6B,UAAC,GAA+B;gBAC3D,SAAS,aAAa,CAAE,QAAgB;oBACtC,OAAO,IAAI,SAAS,CAAC,yDAAuD,QAAU,CAAC,CAAC;gBAC1F,CAAC;gBAED,YAAY,CAAC,GAAG,CAAC,CAAC;gBAElB,SAAS,YAAY,CACnB,GAA+B,EAC/B,KAA0D;oBAA1D,sBAAA,EAAA,YAAiD,OAAO,EAAE;oBAE1D,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE;wBAC3C,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBACf,KAAK,IAAM,GAAG,IAAI,GAAG,EAAE;4BACrB,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;gCACvB,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;6BAC1B;4BACD,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;yBAC/B;wBACD,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;qBACnB;gBACH,CAAC;YACH,CAAC;WAAC;IAaJ,CAAC;;;;;eAXC,UAA2B,OAAmC;YAC5D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAA,GAAG;;gBAC9B,IAAI,CAAA,MAAA,MAAA,OAAO,CAAC,GAAG,CAAC,0CAAE,MAAM,0CAAE,IAAI,MAAK,QAAQ,EAAE;oBAC3C,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;iBACnB;YACH,CAAC,CAAC,CAAC;QACL,CAAC;;;;;;eAED,UAAkB,KAAwB;YACxC,OAAO,mBAAS,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;;IACH,uBAAC;AAAD,CAAC,AArFD,IAqFC;AArFY,4CAAgB"}
@@ -1,13 +0,0 @@
1
- export interface VirtualMachine {
2
- engine: Engine;
3
- create(options: VirtualMachineOptions): Engine;
4
- run(code: string): object;
5
- }
6
- export interface VirtualMachineOptions {
7
- globalObject?: object;
8
- staticObject?: object;
9
- timeout?: number;
10
- memoryLimit?: number;
11
- async?: boolean;
12
- }
13
- export declare type Engine = any;
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=virtual-machine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"virtual-machine.js","sourceRoot":"","sources":["../../../src/post-script/virtual-machine/virtual-machine.ts"],"names":[],"mappings":""}
@@ -1,12 +0,0 @@
1
- import { VM } from 'vm2';
2
- import { SequenceExecutorParameters } from '../../../../core/dist/parameters';
3
- import { Engine, VirtualMachine, VirtualMachineOptions } from './virtual-machine';
4
- export declare class VM2VirtualMachine implements VirtualMachine {
5
- engine: VM;
6
- private DEFAULT_TIMOUT_MS;
7
- create(options: VirtualMachineOptions): Engine;
8
- makeStatic(obj?: object): void;
9
- deepFreeze: (obj: object) => any;
10
- setGlobals: (globalObject?: SequenceExecutorParameters) => void;
11
- run(code: string): SequenceExecutorParameters;
12
- }
@@ -1,81 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VM2VirtualMachine = void 0;
4
- var vm2_1 = require("vm2");
5
- var VM2VirtualMachine = /** @class */ (function () {
6
- function VM2VirtualMachine() {
7
- var _this = this;
8
- Object.defineProperty(this, "engine", {
9
- enumerable: true,
10
- configurable: true,
11
- writable: true,
12
- value: void 0
13
- });
14
- Object.defineProperty(this, "DEFAULT_TIMOUT_MS", {
15
- enumerable: true,
16
- configurable: true,
17
- writable: true,
18
- value: Number(process.env.POSTSCRIPT_TIMEOUT_MS) || 2000
19
- });
20
- Object.defineProperty(this, "deepFreeze", {
21
- enumerable: true,
22
- configurable: true,
23
- writable: true,
24
- value: function (obj) {
25
- for (var _i = 0, _a = Object.keys(obj); _i < _a.length; _i++) {
26
- var key = _a[_i];
27
- if (typeof obj[key] === 'object' && obj[key] !== null) {
28
- _this.engine.freeze(obj[key], key); // freeze me
29
- _this.deepFreeze(obj[key]); // freeze my childrens
30
- }
31
- }
32
- return _this.engine.freeze(obj); // freeze root
33
- }
34
- });
35
- Object.defineProperty(this, "setGlobals", {
36
- enumerable: true,
37
- configurable: true,
38
- writable: true,
39
- value: function (globalObject) {
40
- if (globalObject === void 0) { globalObject = {}; }
41
- _this.engine.setGlobals(globalObject);
42
- }
43
- });
44
- }
45
- Object.defineProperty(VM2VirtualMachine.prototype, "create", {
46
- enumerable: false,
47
- configurable: true,
48
- writable: true,
49
- value: function (options) {
50
- var timeout = options.timeout, globalObject = options.globalObject, async = options.async, staticObject = options.staticObject;
51
- this.engine = new vm2_1.VM({
52
- timeout: timeout || this.DEFAULT_TIMOUT_MS,
53
- fixAsync: !async,
54
- eval: false,
55
- wasm: false,
56
- });
57
- this.makeStatic(staticObject);
58
- this.setGlobals(globalObject);
59
- }
60
- });
61
- Object.defineProperty(VM2VirtualMachine.prototype, "makeStatic", {
62
- enumerable: false,
63
- configurable: true,
64
- writable: true,
65
- value: function (obj) {
66
- if (obj === void 0) { obj = {}; }
67
- this.deepFreeze(obj);
68
- }
69
- });
70
- Object.defineProperty(VM2VirtualMachine.prototype, "run", {
71
- enumerable: false,
72
- configurable: true,
73
- writable: true,
74
- value: function (code) {
75
- return this.engine.run(code);
76
- }
77
- });
78
- return VM2VirtualMachine;
79
- }());
80
- exports.VM2VirtualMachine = VM2VirtualMachine;
81
- //# sourceMappingURL=vm2-virtual-machine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vm2-virtual-machine.js","sourceRoot":"","sources":["../../../src/post-script/virtual-machine/vm2-virtual-machine.ts"],"names":[],"mappings":";;;AAAA,2BAAyB;AAKzB;IAAA;QAAA,iBAuCC;QAtCC;;;;;WAAkB;QAClB;;;;mBAA4B,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,IAAI;WAAC;QAoB9E;;;;mBAAa,UAAC,GAAW;gBACvB,KAAkB,UAAgB,EAAhB,KAAA,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAhB,cAAgB,EAAhB,IAAgB,EAAE;oBAA/B,IAAM,GAAG,SAAA;oBACZ,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;wBACrD,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY;wBAC/C,KAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,sBAAsB;qBAClD;iBACF;gBACD,OAAO,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc;YAChD,CAAC;WAAC;QAEF;;;;mBAAa,UAAC,YAA6C;gBAA7C,6BAAA,EAAA,iBAA6C;gBACzD,KAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACvC,CAAC;WAAC;IAKJ,CAAC;;;;;eAnCC,UAAO,OAA8B;YAC3B,IAAA,OAAO,GAAwC,OAAO,QAA/C,EAAE,YAAY,GAA0B,OAAO,aAAjC,EAAE,KAAK,GAAmB,OAAO,MAA1B,EAAE,YAAY,GAAK,OAAO,aAAZ,CAAa;YAC/D,IAAI,CAAC,MAAM,GAAG,IAAI,QAAE,CAAC;gBACnB,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,iBAAiB;gBAC1C,QAAQ,EAAE,CAAC,KAAK;gBAChB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YAEH,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YAE9B,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAChC,CAAC;;;;;;eAED,UAAW,GAAgB;YAAhB,oBAAA,EAAA,QAAgB;YACzB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;;;;;;eAgBD,UAAI,IAAY;YACd,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;;IACH,wBAAC;AAAD,CAAC,AAvCD,IAuCC;AAvCY,8CAAiB"}
@@ -1,2 +0,0 @@
1
- import { Parameters } from '@loadmill/core/dist/parameters';
2
- export declare const publishMetrics: (postParameters: Parameters[] | undefined, parametersKeysToPublish: string[] | undefined) => Promise<void>;
@@ -1,192 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
- Object.defineProperty(exports, "__esModule", { value: true });
42
- exports.publishMetrics = void 0;
43
- var client_firehose_1 = require("@aws-sdk/client-firehose");
44
- var client_cognito_identity_1 = require("@aws-sdk/client-cognito-identity");
45
- var isEmpty_1 = __importDefault(require("lodash/isEmpty"));
46
- var v4_1 = __importDefault(require("uuid/v4"));
47
- var log_1 = __importDefault(require("@loadmill/universal/dist/log"));
48
- var parameters_1 = require("@loadmill/core/dist/parameters");
49
- var parameters_2 = require("@loadmill/core/dist/parameters");
50
- var ONE_HOUR = 1000 * 60 * 60;
51
- var FIREHOSE_API_VERSION = '2015-08-04'; //todo chek if need
52
- var REGION = 'us-east-1';
53
- var STREAM_NAME = process.env.AGENTS_PARAMS_METRICS_S3_BUCKET || 'agents-parameters-metrics';
54
- var IdentityPoolId = 'us-east-1:79372411-2664-431b-aa0b-aad9f938f6e9';
55
- var cognito = new client_cognito_identity_1.CognitoIdentity({ region: REGION });
56
- var firehoseClient;
57
- var lastFirehoseClientTimeCreation;
58
- var clientIsOlderThanOneHour = function () {
59
- return lastFirehoseClientTimeCreation &&
60
- Date.now() - lastFirehoseClientTimeCreation > ONE_HOUR;
61
- };
62
- function createClient() {
63
- return __awaiter(this, void 0, void 0, function () {
64
- var identity, credentialResponse;
65
- return __generator(this, function (_a) {
66
- switch (_a.label) {
67
- case 0:
68
- log_1.default.debug('creating FirehoseClient');
69
- return [4 /*yield*/, cognito.getId({ IdentityPoolId: IdentityPoolId })];
70
- case 1:
71
- identity = _a.sent();
72
- return [4 /*yield*/, cognito.getCredentialsForIdentity({ IdentityId: identity.IdentityId })];
73
- case 2:
74
- credentialResponse = _a.sent();
75
- firehoseClient = new client_firehose_1.FirehoseClient({
76
- region: REGION,
77
- apiVersion: FIREHOSE_API_VERSION,
78
- credentials: {
79
- accessKeyId: credentialResponse.Credentials.AccessKeyId,
80
- secretAccessKey: credentialResponse.Credentials.SecretKey,
81
- sessionToken: credentialResponse.Credentials.SessionToken,
82
- expiration: credentialResponse.Credentials.Expiration
83
- }
84
- });
85
- lastFirehoseClientTimeCreation = Date.now();
86
- return [2 /*return*/, firehoseClient];
87
- }
88
- });
89
- });
90
- }
91
- var getFirehoseClient = function () { return __awaiter(void 0, void 0, void 0, function () {
92
- return __generator(this, function (_a) {
93
- switch (_a.label) {
94
- case 0:
95
- if (firehoseClient && (!clientIsOlderThanOneHour())) {
96
- return [2 /*return*/, firehoseClient];
97
- }
98
- return [4 /*yield*/, createClient()];
99
- case 1: return [2 /*return*/, _a.sent()];
100
- }
101
- });
102
- }); };
103
- var sendMetrics = function (metrics) { return __awaiter(void 0, void 0, void 0, function () {
104
- var command, client, err_1;
105
- return __generator(this, function (_a) {
106
- switch (_a.label) {
107
- case 0:
108
- _a.trys.push([0, 3, , 4]);
109
- if (!metrics || isEmpty_1.default(metrics)) {
110
- return [2 /*return*/];
111
- }
112
- log_1.default.debug('Sending metrics to AWS Firhose');
113
- command = new client_firehose_1.PutRecordBatchCommand({
114
- Records: metrics,
115
- DeliveryStreamName: STREAM_NAME
116
- });
117
- return [4 /*yield*/, getFirehoseClient()];
118
- case 1:
119
- client = _a.sent();
120
- return [4 /*yield*/, client.send(command)];
121
- case 2:
122
- _a.sent();
123
- return [3 /*break*/, 4];
124
- case 3:
125
- err_1 = _a.sent();
126
- log_1.default.error(err_1);
127
- return [3 /*break*/, 4];
128
- case 4: return [2 /*return*/];
129
- }
130
- });
131
- }); };
132
- var prepareMetrics = function (testId, teamId, postParameters, parametersKeysToPublish) {
133
- if (parametersKeysToPublish === void 0) { parametersKeysToPublish = []; }
134
- var records = [];
135
- parametersKeysToPublish.forEach(function (paramName) {
136
- var value = parameters_1.parameterUtils.getValueByKeyFromArr(paramName, postParameters);
137
- if (!value) {
138
- return;
139
- }
140
- var record = {
141
- key: paramName,
142
- value: value,
143
- };
144
- records.push(record);
145
- });
146
- var recordsGroup = {
147
- id: v4_1.default(),
148
- testId: testId,
149
- teamId: teamId,
150
- publishedAt: Date.now(),
151
- records: records,
152
- };
153
- if (isEmpty_1.default(records)) {
154
- return;
155
- }
156
- var enc = new TextEncoder(); // always utf-8
157
- var encodedRecords = enc.encode(JSON.stringify(recordsGroup) + "\n");
158
- return [{ Data: encodedRecords }];
159
- };
160
- var publishMetrics = function (postParameters, parametersKeysToPublish) { return __awaiter(void 0, void 0, void 0, function () {
161
- var testId, teamId, e_1;
162
- return __generator(this, function (_a) {
163
- switch (_a.label) {
164
- case 0:
165
- _a.trys.push([0, 2, , 3]);
166
- if (isEmpty_1.default(postParameters) || isEmpty_1.default(parametersKeysToPublish)) {
167
- return [2 /*return*/];
168
- }
169
- testId = parameters_1.parameterUtils.getValueByKeyFromArr(parameters_2.BUILT_IN_PARAMS.testRunId, postParameters);
170
- if (!testId) { // very weird if happened
171
- log_1.default.debug('Test has ended without a testId parameter');
172
- return [2 /*return*/];
173
- }
174
- teamId = parameters_1.parameterUtils.getValueByKeyFromArr(parameters_2.BUILT_IN_PARAMS.launchedByTeamId, postParameters);
175
- if (!teamId) { // very weird if happened
176
- log_1.default.debug('Test has ended without a testId parameter');
177
- return [2 /*return*/];
178
- }
179
- return [4 /*yield*/, sendMetrics(prepareMetrics(testId, teamId, postParameters, parametersKeysToPublish))];
180
- case 1:
181
- _a.sent();
182
- return [3 /*break*/, 3];
183
- case 2:
184
- e_1 = _a.sent();
185
- log_1.default.error('Failed publish metrics at the end of test', { postParameters: postParameters, parametersKeysToPublish: parametersKeysToPublish }, e_1);
186
- return [3 /*break*/, 3];
187
- case 3: return [2 /*return*/];
188
- }
189
- });
190
- }); };
191
- exports.publishMetrics = publishMetrics;
192
- //# sourceMappingURL=post-sequence.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"post-sequence.js","sourceRoot":"","sources":["../src/post-sequence.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { ResolvedRequest } from './request-sequence-result';
2
- export declare function redactSensitiveData(resolvedRequests: ResolvedRequest[], sensitiveKeys?: string[]): void;
@@ -1,60 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.redactSensitiveData = void 0;
7
- var parameters_1 = require("@loadmill/core/dist/parameters");
8
- var log_1 = __importDefault(require("@loadmill/universal/dist/log"));
9
- var jsonpath_1 = __importDefault(require("jsonpath"));
10
- var lodash_1 = require("lodash");
11
- var qs_1 = __importDefault(require("qs"));
12
- var utils_1 = require("./utils");
13
- var BODY_DATA_REDACTED = 'Body Data Redacted';
14
- function redactSensitiveData(resolvedRequests, sensitiveKeys) {
15
- if (sensitiveKeys === void 0) { sensitiveKeys = []; }
16
- resolvedRequests.forEach(function (rr) {
17
- var _a, _b;
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) : BODY_DATA_REDACTED;
20
- }
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) : BODY_DATA_REDACTED;
23
- }
24
- if (rr.postParameters) {
25
- parameters_1.redactPostParameters(rr.postParameters, sensitiveKeys);
26
- }
27
- });
28
- }
29
- exports.redactSensitiveData = redactSensitiveData;
30
- function redactKeysFromBody(sensitiveKeys, text, mimeType) {
31
- try {
32
- if (typeof text != 'string' || utils_1.hasBeenTrimmed(text)) {
33
- return BODY_DATA_REDACTED;
34
- }
35
- if (mimeType === null || mimeType === void 0 ? void 0 : mimeType.startsWith('application/x-www-form-urlencoded')) {
36
- var params = qs_1.default.parse(text);
37
- redactKeysFromJson(params, sensitiveKeys);
38
- return qs_1.default.stringify(params);
39
- }
40
- else if (mimeType === null || mimeType === void 0 ? void 0 : mimeType.includes('application/json')) {
41
- var json = JSON.parse(text);
42
- if (!json) {
43
- return text;
44
- }
45
- redactKeysFromJson(json, sensitiveKeys);
46
- return JSON.stringify(json);
47
- }
48
- return text;
49
- }
50
- catch (e) {
51
- log_1.default.error('Failed to redact request / response body', e);
52
- return BODY_DATA_REDACTED;
53
- }
54
- }
55
- function redactKeysFromJson(json, sensitiveKeys) {
56
- sensitiveKeys.forEach(function (key) {
57
- jsonpath_1.default.apply(json, "$.." + key, function (_value) { return parameters_1.DATA_REDACTED; });
58
- });
59
- }
60
- //# sourceMappingURL=redact-data.js.map
@@ -1 +0,0 @@
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"}
@@ -1,102 +0,0 @@
1
- import { Failures } from './failures';
2
- import { MillInfo } from './mill-info';
3
- import { PerRequestResTime, PerRequestStats } from './request-stats';
4
- export declare type LoadResult = 'done' | 'aborted' | 'failed';
5
- /**
6
- * This report contains all the info that comes from Redis each time there is a status update.
7
- */
8
- export interface LoadStatusReport extends AggregatedStatsReport {
9
- endTime?: number;
10
- startTime?: number;
11
- result?: LoadResult;
12
- activeSessions?: number;
13
- }
14
- /**
15
- * This report contains all the aggregated stats computed from individual mill reports.
16
- */
17
- export interface AggregatedStatsReport extends BasicStatsReport {
18
- /**
19
- * The number of separate sessions / mills that sent at least one report.
20
- */
21
- reportedSessions?: number;
22
- append?: boolean;
23
- failures?: Failures;
24
- browserStatsMap?: StatsMap;
25
- locationStatsMap?: StatsMap;
26
- serverMetrics?: ServerMetrics;
27
- avgResTimeSequence?: SequenceObj;
28
- requestStats?: PerRequestResTime;
29
- failureReportsMap?: HashKeysToReportIds;
30
- avgIterationTimeSequence?: SequenceObj;
31
- }
32
- /**
33
- * A mapping that aggregates stats according to a certain feature, e.g. stats per browser version.
34
- */
35
- export interface StatsMap {
36
- [feature: string]: BasicStatsReport & {
37
- sessions: number;
38
- };
39
- }
40
- /**
41
- * A sequence of stats (currently only the average response time) reported within a certain
42
- * interval (between `firstTime` and `lastTime`).
43
- */
44
- export interface SequenceObj {
45
- append?: boolean;
46
- sequence: ClientMetrics;
47
- }
48
- export declare type ClientMetrics = ClientMetricsClump[];
49
- export declare type ClientMetricsClump = {
50
- s?: number;
51
- f?: number;
52
- avg: number;
53
- time: number;
54
- p50?: number;
55
- p95?: number;
56
- weight: number;
57
- concurrency: number;
58
- };
59
- export declare type ServerMetrics = ServerMetricsClump[];
60
- export declare type ServerMetricsClump = {
61
- _t: number;
62
- uc?: number;
63
- tc?: number;
64
- tm?: number;
65
- hm?: number;
66
- uhm?: number;
67
- };
68
- export declare type HashKeysToReportIds = {
69
- [hashKey: string]: string;
70
- };
71
- /**
72
- * This is the report sent to Redis every time a mill report is received.
73
- */
74
- export declare type ToStoreStatsReport = StatsReportWithMillInfo & {
75
- timestamp: number;
76
- firstReport: boolean;
77
- };
78
- /**
79
- * This report includes a single mill stats report along with additional meta data.
80
- */
81
- export declare type StatsReportWithMillInfo = FromMillStatsReport & MillInfo & {
82
- lordId: string;
83
- };
84
- /**
85
- * The stats report sent by the mill.
86
- */
87
- export interface FromMillStatsReport extends BasicStatsReport {
88
- failures?: Failures;
89
- requestStats?: PerRequestStats;
90
- iterationTimes?: number[];
91
- }
92
- /**
93
- * The basic stats we are usually interested in.
94
- */
95
- export interface BasicStatsReport {
96
- hits?: number;
97
- avgResTime?: number;
98
- failedIterations?: number;
99
- successfulIterations?: number;
100
- avgIterationTime?: number;
101
- }
102
- export declare function isInformative({ hits, avgResTime, failedIterations, successfulIterations, }: FromMillStatsReport): boolean | 0 | undefined;
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isInformative = void 0;
4
- function isInformative(_a) {
5
- var hits = _a.hits, avgResTime = _a.avgResTime, failedIterations = _a.failedIterations, successfulIterations = _a.successfulIterations;
6
- return ((hits && hits > 0 && avgResTime != null && avgResTime >= 0) ||
7
- (failedIterations && failedIterations > 0) ||
8
- (successfulIterations && successfulIterations > 0));
9
- }
10
- exports.isInformative = isInformative;
11
- //# sourceMappingURL=report-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"report-types.js","sourceRoot":"","sources":["../src/report-types.ts"],"names":[],"mappings":";;;AAsHA,SAAgB,aAAa,CAAC,EAKR;QAJpB,IAAI,UAAA,EACJ,UAAU,gBAAA,EACV,gBAAgB,sBAAA,EAChB,oBAAoB,0BAAA;IAEpB,OAAO,CACL,CAAC,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI,UAAU,IAAI,IAAI,IAAI,UAAU,IAAI,CAAC,CAAC;QAC3D,CAAC,gBAAgB,IAAI,gBAAgB,GAAG,CAAC,CAAC;QAC1C,CAAC,oBAAoB,IAAI,oBAAoB,GAAG,CAAC,CAAC,CACnD,CAAC;AACJ,CAAC;AAXD,sCAWC"}