@loadmill/core 0.3.139 → 0.3.141

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 (232) hide show
  1. package/dist/assertions/index.d.ts +32 -0
  2. package/dist/assertions/index.js +52 -0
  3. package/dist/assertions/index.js.map +1 -0
  4. package/dist/code-step/index.d.ts +23 -0
  5. package/dist/code-step/index.js +97 -0
  6. package/dist/code-step/index.js.map +1 -0
  7. package/dist/conf/defaults.d.ts +1 -0
  8. package/dist/conf/defaults.js +11 -0
  9. package/dist/conf/defaults.js.map +1 -0
  10. package/dist/conf/extrema.d.ts +7 -0
  11. package/dist/conf/extrema.js +12 -0
  12. package/dist/conf/extrema.js.map +1 -0
  13. package/dist/conf/index.d.ts +15 -0
  14. package/dist/conf/index.js +80 -0
  15. package/dist/conf/index.js.map +1 -0
  16. package/dist/conf/notifications.d.ts +2 -0
  17. package/dist/conf/notifications.js +19 -0
  18. package/dist/conf/notifications.js.map +1 -0
  19. package/dist/conf/types.d.ts +122 -0
  20. package/dist/conf/types.js +38 -0
  21. package/dist/conf/types.js.map +1 -0
  22. package/dist/conf/validate.d.ts +69 -0
  23. package/dist/conf/validate.js +509 -0
  24. package/dist/conf/validate.js.map +1 -0
  25. package/dist/distributed-logger-reporter.d.ts +3 -0
  26. package/dist/distributed-logger-reporter.js +74 -0
  27. package/dist/distributed-logger-reporter.js.map +1 -0
  28. package/dist/echo/firehose.d.ts +7 -0
  29. package/dist/echo/firehose.js +130 -0
  30. package/dist/echo/firehose.js.map +1 -0
  31. package/dist/echo/index.d.ts +3 -0
  32. package/dist/echo/index.js +8 -0
  33. package/dist/echo/index.js.map +1 -0
  34. package/dist/echo/stats.d.ts +8 -0
  35. package/dist/echo/stats.js +152 -0
  36. package/dist/echo/stats.js.map +1 -0
  37. package/dist/extract-and-assert-step/index.d.ts +29 -0
  38. package/dist/extract-and-assert-step/index.js +108 -0
  39. package/dist/extract-and-assert-step/index.js.map +1 -0
  40. package/dist/extractions/index.d.ts +36 -0
  41. package/dist/extractions/index.js +49 -0
  42. package/dist/extractions/index.js.map +1 -0
  43. package/dist/har/index.d.ts +71 -0
  44. package/dist/har/index.js +61 -0
  45. package/dist/har/index.js.map +1 -0
  46. package/dist/labels/constants.d.ts +1 -0
  47. package/dist/labels/constants.js +5 -0
  48. package/dist/labels/constants.js.map +1 -0
  49. package/dist/multipart-form-data/files.d.ts +2 -0
  50. package/dist/multipart-form-data/files.js +63 -0
  51. package/dist/multipart-form-data/files.js.map +1 -0
  52. package/dist/multipart-form-data/form-data-utils.d.ts +19 -0
  53. package/dist/multipart-form-data/form-data-utils.js +118 -0
  54. package/dist/multipart-form-data/form-data-utils.js.map +1 -0
  55. package/dist/multipart-form-data/is-binary-file.d.ts +2 -0
  56. package/dist/multipart-form-data/is-binary-file.js +215 -0
  57. package/dist/multipart-form-data/is-binary-file.js.map +1 -0
  58. package/dist/multipart-form-data/multipart-text-to-post-form-data.d.ts +3 -0
  59. package/dist/multipart-form-data/multipart-text-to-post-form-data.js +93 -0
  60. package/dist/multipart-form-data/multipart-text-to-post-form-data.js.map +1 -0
  61. package/dist/parameters/extractions.d.ts +27 -0
  62. package/dist/parameters/extractions.js +51 -0
  63. package/dist/parameters/extractions.js.map +1 -0
  64. package/dist/parameters/extractors/cheerio-extractor.d.ts +11 -0
  65. package/dist/parameters/extractors/cheerio-extractor.js +84 -0
  66. package/dist/parameters/extractors/cheerio-extractor.js.map +1 -0
  67. package/dist/parameters/extractors/expression-extractor.d.ts +6 -0
  68. package/dist/parameters/extractors/expression-extractor.js +38 -0
  69. package/dist/parameters/extractors/expression-extractor.js.map +1 -0
  70. package/dist/parameters/extractors/extractor.d.ts +3 -0
  71. package/dist/parameters/extractors/extractor.js +3 -0
  72. package/dist/parameters/extractors/extractor.js.map +1 -0
  73. package/dist/parameters/extractors/header-extractor.d.ts +7 -0
  74. package/dist/parameters/extractors/header-extractor.js +51 -0
  75. package/dist/parameters/extractors/header-extractor.js.map +1 -0
  76. package/dist/parameters/extractors/index.d.ts +10 -0
  77. package/dist/parameters/extractors/index.js +20 -0
  78. package/dist/parameters/extractors/index.js.map +1 -0
  79. package/dist/parameters/extractors/json-path-extractor.d.ts +11 -0
  80. package/dist/parameters/extractors/json-path-extractor.js +127 -0
  81. package/dist/parameters/extractors/json-path-extractor.js.map +1 -0
  82. package/dist/parameters/extractors/parametrized-extractor.d.ts +10 -0
  83. package/dist/parameters/extractors/parametrized-extractor.js +34 -0
  84. package/dist/parameters/extractors/parametrized-extractor.js.map +1 -0
  85. package/dist/parameters/extractors/regex-extractor.d.ts +7 -0
  86. package/dist/parameters/extractors/regex-extractor.js +46 -0
  87. package/dist/parameters/extractors/regex-extractor.js.map +1 -0
  88. package/dist/parameters/extractors/regex-matcher.d.ts +1 -0
  89. package/dist/parameters/extractors/regex-matcher.js +22 -0
  90. package/dist/parameters/extractors/regex-matcher.js.map +1 -0
  91. package/dist/parameters/extractors/ws-extractor.d.ts +33 -0
  92. package/dist/parameters/extractors/ws-extractor.js +215 -0
  93. package/dist/parameters/extractors/ws-extractor.js.map +1 -0
  94. package/dist/parameters/extractors/x-path-extractor.d.ts +9 -0
  95. package/dist/parameters/extractors/x-path-extractor.js +77 -0
  96. package/dist/parameters/extractors/x-path-extractor.js.map +1 -0
  97. package/dist/parameters/generate-random.d.ts +13 -0
  98. package/dist/parameters/generate-random.js +108 -0
  99. package/dist/parameters/generate-random.js.map +1 -0
  100. package/dist/parameters/html-utils.d.ts +1 -0
  101. package/dist/parameters/html-utils.js +18 -0
  102. package/dist/parameters/html-utils.js.map +1 -0
  103. package/dist/parameters/index.d.ts +94 -0
  104. package/dist/parameters/index.js +619 -0
  105. package/dist/parameters/index.js.map +1 -0
  106. package/dist/parameters/json-path-utils.d.ts +1 -0
  107. package/dist/parameters/json-path-utils.js +16 -0
  108. package/dist/parameters/json-path-utils.js.map +1 -0
  109. package/dist/parameters/operators/binary-operator.d.ts +13 -0
  110. package/dist/parameters/operators/binary-operator.js +39 -0
  111. package/dist/parameters/operators/binary-operator.js.map +1 -0
  112. package/dist/parameters/operators/index.d.ts +5 -0
  113. package/dist/parameters/operators/index.js +21 -0
  114. package/dist/parameters/operators/index.js.map +1 -0
  115. package/dist/parameters/parameter-functions/aws-cognito.d.ts +3 -0
  116. package/dist/parameters/parameter-functions/aws-cognito.js +119 -0
  117. package/dist/parameters/parameter-functions/aws-cognito.js.map +1 -0
  118. package/dist/parameters/parameter-functions/boolean-parameter-functions.d.ts +12 -0
  119. package/dist/parameters/parameter-functions/boolean-parameter-functions.js +47 -0
  120. package/dist/parameters/parameter-functions/boolean-parameter-functions.js.map +1 -0
  121. package/dist/parameters/parameter-functions/crypto.d.ts +11 -0
  122. package/dist/parameters/parameter-functions/crypto.js +71 -0
  123. package/dist/parameters/parameter-functions/crypto.js.map +1 -0
  124. package/dist/parameters/parameter-functions/json-schema.d.ts +1 -0
  125. package/dist/parameters/parameter-functions/json-schema.js +33 -0
  126. package/dist/parameters/parameter-functions/json-schema.js.map +1 -0
  127. package/dist/parameters/parameter-functions/numeric-input-parameter-functions.d.ts +11 -0
  128. package/dist/parameters/parameter-functions/numeric-input-parameter-functions.js +34 -0
  129. package/dist/parameters/parameter-functions/numeric-input-parameter-functions.js.map +1 -0
  130. package/dist/parameters/parameter-functions/numeric-parameter-functions.d.ts +15 -0
  131. package/dist/parameters/parameter-functions/numeric-parameter-functions.js +56 -0
  132. package/dist/parameters/parameter-functions/numeric-parameter-functions.js.map +1 -0
  133. package/dist/parameters/parameter-functions/parameter-function-utils.d.ts +5 -0
  134. package/dist/parameters/parameter-functions/parameter-function-utils.js +82 -0
  135. package/dist/parameters/parameter-functions/parameter-function-utils.js.map +1 -0
  136. package/dist/parameters/parameter-functions/parameter-function.d.ts +6 -0
  137. package/dist/parameters/parameter-functions/parameter-function.js +28 -0
  138. package/dist/parameters/parameter-functions/parameter-function.js.map +1 -0
  139. package/dist/parameters/parameter-functions/parameter-functions.d.ts +7 -0
  140. package/dist/parameters/parameter-functions/parameter-functions.js +53 -0
  141. package/dist/parameters/parameter-functions/parameter-functions.js.map +1 -0
  142. package/dist/parameters/parameter-functions/random-parameter-functions.d.ts +1 -0
  143. package/dist/parameters/parameter-functions/random-parameter-functions.js +43 -0
  144. package/dist/parameters/parameter-functions/random-parameter-functions.js.map +1 -0
  145. package/dist/parameters/parameter-functions/textual-parameter-functions.d.ts +72 -0
  146. package/dist/parameters/parameter-functions/textual-parameter-functions.js +389 -0
  147. package/dist/parameters/parameter-functions/textual-parameter-functions.js.map +1 -0
  148. package/dist/parameters/parameter-name-utils.d.ts +6 -0
  149. package/dist/parameters/parameter-name-utils.js +124 -0
  150. package/dist/parameters/parameter-name-utils.js.map +1 -0
  151. package/dist/parameters/parameter-regex-providers.d.ts +24 -0
  152. package/dist/parameters/parameter-regex-providers.js +70 -0
  153. package/dist/parameters/parameter-regex-providers.js.map +1 -0
  154. package/dist/parameters/resolvers/random-parameters-resolver.d.ts +1 -0
  155. package/dist/parameters/resolvers/random-parameters-resolver.js +12 -0
  156. package/dist/parameters/resolvers/random-parameters-resolver.js.map +1 -0
  157. package/dist/parameters/type.d.ts +10 -0
  158. package/dist/parameters/type.js +9 -0
  159. package/dist/parameters/type.js.map +1 -0
  160. package/dist/parameters/value-utils.d.ts +5 -0
  161. package/dist/parameters/value-utils.js +44 -0
  162. package/dist/parameters/value-utils.js.map +1 -0
  163. package/dist/request/index.d.ts +174 -0
  164. package/dist/request/index.js +356 -0
  165. package/dist/request/index.js.map +1 -0
  166. package/dist/schema/json-schema-generator.d.ts +20 -0
  167. package/dist/schema/json-schema-generator.js +135 -0
  168. package/dist/schema/json-schema-generator.js.map +1 -0
  169. package/dist/signals.d.ts +4 -0
  170. package/dist/signals.js +9 -0
  171. package/dist/signals.js.map +1 -0
  172. package/dist/socket-events/index.d.ts +13 -0
  173. package/dist/socket-events/index.js +17 -0
  174. package/dist/socket-events/index.js.map +1 -0
  175. package/dist/step/assertable.d.ts +4 -0
  176. package/dist/step/assertable.js +3 -0
  177. package/dist/step/assertable.js.map +1 -0
  178. package/dist/step/codeable.d.ts +3 -0
  179. package/dist/step/codeable.js +3 -0
  180. package/dist/step/codeable.js.map +1 -0
  181. package/dist/step/extractable.d.ts +4 -0
  182. package/dist/step/extractable.js +3 -0
  183. package/dist/step/extractable.js.map +1 -0
  184. package/dist/step/index.d.ts +72 -0
  185. package/dist/step/index.js +71 -0
  186. package/dist/step/index.js.map +1 -0
  187. package/dist/step/step-type.d.ts +4 -0
  188. package/dist/step/step-type.js +3 -0
  189. package/dist/step/step-type.js.map +1 -0
  190. package/dist/step/type-guards.d.ts +7 -0
  191. package/dist/step/type-guards.js +18 -0
  192. package/dist/step/type-guards.js.map +1 -0
  193. package/dist/subset/index.d.ts +3 -0
  194. package/dist/subset/index.js +8 -0
  195. package/dist/subset/index.js.map +1 -0
  196. package/dist/subset/is-subset.d.ts +2 -0
  197. package/dist/subset/is-subset.js +29 -0
  198. package/dist/subset/is-subset.js.map +1 -0
  199. package/dist/subset/json-contains.d.ts +1 -0
  200. package/dist/subset/json-contains.js +24 -0
  201. package/dist/subset/json-contains.js.map +1 -0
  202. package/dist/team-options/constants.d.ts +3 -0
  203. package/dist/team-options/constants.js +7 -0
  204. package/dist/team-options/constants.js.map +1 -0
  205. package/dist/xml/decode.d.ts +2 -0
  206. package/dist/xml/decode.js +91 -0
  207. package/dist/xml/decode.js.map +1 -0
  208. package/dist/xml/encode.d.ts +1 -0
  209. package/dist/xml/encode.js +14 -0
  210. package/dist/xml/encode.js.map +1 -0
  211. package/dist/xml/escape-reserved-chars.d.ts +6 -0
  212. package/dist/xml/escape-reserved-chars.js +57 -0
  213. package/dist/xml/escape-reserved-chars.js.map +1 -0
  214. package/dist/xml/is-xml.d.ts +1 -0
  215. package/dist/xml/is-xml.js +9 -0
  216. package/dist/xml/is-xml.js.map +1 -0
  217. package/dist/xml/json-to-xml.d.ts +2 -0
  218. package/dist/xml/json-to-xml.js +11 -0
  219. package/dist/xml/json-to-xml.js.map +1 -0
  220. package/dist/xml/namespaces.d.ts +7 -0
  221. package/dist/xml/namespaces.js +16 -0
  222. package/dist/xml/namespaces.js.map +1 -0
  223. package/dist/xml/remove-invisible-chars.d.ts +2 -0
  224. package/dist/xml/remove-invisible-chars.js +13 -0
  225. package/dist/xml/remove-invisible-chars.js.map +1 -0
  226. package/dist/xml/replace-s-tags.d.ts +4 -0
  227. package/dist/xml/replace-s-tags.js +21 -0
  228. package/dist/xml/replace-s-tags.js.map +1 -0
  229. package/dist/xml/xml-to-json.d.ts +7 -0
  230. package/dist/xml/xml-to-json.js +21 -0
  231. package/dist/xml/xml-to-json.js.map +1 -0
  232. package/package.json +3 -2
@@ -0,0 +1,619 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
27
+ };
28
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
29
+ if (k2 === undefined) k2 = k;
30
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
31
+ }) : (function(o, m, k, k2) {
32
+ if (k2 === undefined) k2 = k;
33
+ o[k2] = m[k];
34
+ }));
35
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
36
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
37
+ }) : function(o, v) {
38
+ o["default"] = v;
39
+ });
40
+ var __importStar = (this && this.__importStar) || function (mod) {
41
+ if (mod && mod.__esModule) return mod;
42
+ var result = {};
43
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
44
+ __setModuleDefault(result, mod);
45
+ return result;
46
+ };
47
+ Object.defineProperty(exports, "__esModule", { value: true });
48
+ exports.redactPostParameters = exports.DATA_REDACTED = exports.removeNonStringParameters = exports.isParamNameUsedInAssertionValue = exports.isParamUsedInConf = exports.getTokensWithoutOperators = exports.searchExpressionOccurrences = exports.stripParam = exports.stripToFunctionAndArgs = exports.parameterUtils = exports.ParameterError = exports.pathToArray = exports.ordinal = exports.humanizeJSONPath = exports.replaceInvalidCharactersParamName = exports.getCsrfTokensByRegexp = exports.CSRF_REGEXP_SUFFIX = exports.CSRF_REGEXP = exports.valueUtils = exports.usageRegExpProvider = exports.PresentableError = exports.ParametersScope = exports.parameterFunctionOperations = exports.LEGAL_PARAM_CHARS = exports.getLongestJsonPathToken = exports.CAPTURE_REGEX = exports.MAX_PARAM_ARRAY_SIZE = exports.BUILT_IN_PARAMS = exports.BUILT_IN_VOLATILE_PARAMS = void 0;
49
+ var isEmpty = require("lodash/isEmpty");
50
+ var isEqual = require("lodash/isEqual");
51
+ var uniqWith = require("lodash/uniqWith");
52
+ var findLast = require("lodash/findLast");
53
+ var type_1 = require("./type");
54
+ Object.defineProperty(exports, "ParametersScope", { enumerable: true, get: function () { return type_1.ParametersScope; } });
55
+ var value_utils_1 = require("./value-utils");
56
+ var valueUtils = __importStar(require("./value-utils"));
57
+ exports.valueUtils = valueUtils;
58
+ var operators_1 = require("./operators");
59
+ var random_parameters_resolver_1 = require("./resolvers/random-parameters-resolver");
60
+ var parameter_functions_1 = require("./parameter-functions/parameter-functions");
61
+ Object.defineProperty(exports, "parameterFunctionOperations", { enumerable: true, get: function () { return parameter_functions_1.parameterFunctionOperations; } });
62
+ var parameter_regex_providers_1 = require("./parameter-regex-providers");
63
+ Object.defineProperty(exports, "usageRegExpProvider", { enumerable: true, get: function () { return parameter_regex_providers_1.usageRegExpProvider; } });
64
+ Object.defineProperty(exports, "LEGAL_PARAM_CHARS", { enumerable: true, get: function () { return parameter_regex_providers_1.LEGAL_PARAM_CHARS; } });
65
+ Object.defineProperty(exports, "CAPTURE_REGEX", { enumerable: true, get: function () { return parameter_regex_providers_1.CAPTURE_REGEX; } });
66
+ Object.defineProperty(exports, "CSRF_REGEXP", { enumerable: true, get: function () { return parameter_regex_providers_1.CSRF_REGEXP; } });
67
+ Object.defineProperty(exports, "CSRF_REGEXP_SUFFIX", { enumerable: true, get: function () { return parameter_regex_providers_1.CSRF_REGEXP_SUFFIX; } });
68
+ var arrayUtils = __importStar(require("@loadmill/universal/dist/array-utils"));
69
+ var errors_1 = require("@loadmill/universal/dist/errors");
70
+ Object.defineProperty(exports, "PresentableError", { enumerable: true, get: function () { return errors_1.PresentableError; } });
71
+ var json_schema_1 = require("./parameter-functions/json-schema");
72
+ var conf_1 = require("../conf");
73
+ var json_path_utils_1 = require("./json-path-utils");
74
+ Object.defineProperty(exports, "getLongestJsonPathToken", { enumerable: true, get: function () { return json_path_utils_1.getLongestJsonPathToken; } });
75
+ var parameter_name_utils_1 = require("./parameter-name-utils");
76
+ Object.defineProperty(exports, "replaceInvalidCharactersParamName", { enumerable: true, get: function () { return parameter_name_utils_1.replaceInvalidCharactersParamName; } });
77
+ Object.defineProperty(exports, "humanizeJSONPath", { enumerable: true, get: function () { return parameter_name_utils_1.humanizeJSONPath; } });
78
+ Object.defineProperty(exports, "ordinal", { enumerable: true, get: function () { return parameter_name_utils_1.ordinal; } });
79
+ Object.defineProperty(exports, "pathToArray", { enumerable: true, get: function () { return parameter_name_utils_1.pathToArray; } });
80
+ var html_utils_1 = require("./html-utils");
81
+ Object.defineProperty(exports, "getCsrfTokensByRegexp", { enumerable: true, get: function () { return html_utils_1.getCsrfTokensByRegexp; } });
82
+ var ParameterFunctionError = /** @class */ (function (_super) {
83
+ __extends(ParameterFunctionError, _super);
84
+ function ParameterFunctionError(functionName, prettyError) {
85
+ var _this = _super.call(this, "Error in function '" + functionName + "': " + prettyError) || this;
86
+ Object.defineProperty(_this, "functionName", {
87
+ enumerable: true,
88
+ configurable: true,
89
+ writable: true,
90
+ value: functionName
91
+ });
92
+ Object.defineProperty(_this, "prettyError", {
93
+ enumerable: true,
94
+ configurable: true,
95
+ writable: true,
96
+ value: prettyError
97
+ });
98
+ // Workaround suggested in: https://github.com/Microsoft/TypeScript-wiki/blob/master/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work
99
+ Object.setPrototypeOf(_this, ParameterFunctionError.prototype);
100
+ return _this;
101
+ }
102
+ return ParameterFunctionError;
103
+ }(errors_1.PresentableError));
104
+ exports.BUILT_IN_VOLATILE_PARAMS = {
105
+ requestBody: '__requestBody',
106
+ requestURL: '__requestURL',
107
+ requestMethod: '__requestMethod',
108
+ responseBody: '__responseBody',
109
+ };
110
+ exports.BUILT_IN_PARAMS = __assign({ testDraftId: '__testDraftId', launchedBy: '__launchedBy', launchedByUserId: '__launchedByUserId', launchedByTeamId: '__launchedByTeamId', requestStartTime: '__requestStartTime', responseEndTime: '__responseEndTime', responseTime: '__responseTime', status: '__status', statusText: '__statusText', testRunId: '__testRunId', testStartTime: '__testStartTime' }, exports.BUILT_IN_VOLATILE_PARAMS);
111
+ exports.MAX_PARAM_ARRAY_SIZE = 100;
112
+ var ParameterError = /** @class */ (function (_super) {
113
+ __extends(ParameterError, _super);
114
+ function ParameterError(prettyError, parameter) {
115
+ var _this = _super.call(this, "Error in parameter " + exports.parameterUtils.getParameterName(parameter) + ": " + prettyError) || this;
116
+ Object.defineProperty(_this, "prettyError", {
117
+ enumerable: true,
118
+ configurable: true,
119
+ writable: true,
120
+ value: prettyError
121
+ });
122
+ Object.defineProperty(_this, "parameter", {
123
+ enumerable: true,
124
+ configurable: true,
125
+ writable: true,
126
+ value: parameter
127
+ });
128
+ // Workaround suggested in: https://github.com/Microsoft/TypeScript-wiki/blob/master/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work
129
+ Object.setPrototypeOf(_this, ParameterError.prototype);
130
+ return _this;
131
+ }
132
+ return ParameterError;
133
+ }(errors_1.PresentableError));
134
+ exports.ParameterError = ParameterError;
135
+ // Order of resolving!
136
+ var parameterResolvers = [
137
+ resolveNoArgFunctionParameter,
138
+ // This one is legacy for e.g. __random_boolean_75:
139
+ random_parameters_resolver_1.resolveRandomParameter,
140
+ resolvePlainParameter,
141
+ ];
142
+ exports.parameterUtils = {
143
+ isParametrized: function (expression) {
144
+ return parameter_regex_providers_1.globalUsageRegExpProvider.use(function (regExp) { return regExp.test(expression); });
145
+ },
146
+ resolveAllExpressions: function (parameters) {
147
+ var context = {};
148
+ parameters.forEach(function (currentParameters, index) {
149
+ var temp = {};
150
+ Object.keys(currentParameters).forEach(function (name) {
151
+ try {
152
+ var value = currentParameters[name];
153
+ temp[name] = exports.parameterUtils.resolveExpression(pickValue(value), context);
154
+ }
155
+ catch (e) {
156
+ e['parameterName'] = name;
157
+ e['parameterIndex'] = index;
158
+ throw e;
159
+ }
160
+ });
161
+ Object.assign(context, temp);
162
+ });
163
+ return context;
164
+ },
165
+ resolveParameter: function (parameterName, parameters, onError) {
166
+ try {
167
+ for (var _i = 0, parameterResolvers_1 = parameterResolvers; _i < parameterResolvers_1.length; _i++) {
168
+ var resolver = parameterResolvers_1[_i];
169
+ var value = resolver(parameterName, parameters);
170
+ if (value != null) {
171
+ return value;
172
+ }
173
+ }
174
+ }
175
+ catch (e) {
176
+ if (onError) {
177
+ onError(e);
178
+ }
179
+ throw e;
180
+ }
181
+ },
182
+ resolveExpression: function (parametrized, parameters, onError) {
183
+ try {
184
+ if (Array.isArray(parameters)) {
185
+ parameters = exports.parameterUtils.resolveAllExpressions(parameters);
186
+ }
187
+ return parameter_regex_providers_1.globalUsageRegExpProvider.use(function (usageRegExp) { return typeof parametrized !== 'string' ? parametrized :
188
+ parametrized.replace(usageRegExp, function (usage) {
189
+ // No ${}:
190
+ var strippedExpression = usage.slice(2, -1).trim();
191
+ // [expression, ...[operator, expression, ...]]
192
+ var tokens = parameter_regex_providers_1.spacesRegExpProvider.use(function (spacesRegExp) {
193
+ return strippedExpression.split(spacesRegExp);
194
+ });
195
+ // null if undefined or invalid parameters:
196
+ var value = resolveTokens(tokens, parameters);
197
+ /* log.trace(`Parameter found in [${parametrized}]:`, {
198
+ usage,
199
+ tokens,
200
+ value,
201
+ }); */
202
+ return value != null ? value : usage;
203
+ }); });
204
+ }
205
+ catch (e) {
206
+ if (onError) {
207
+ onError(e);
208
+ }
209
+ throw e;
210
+ }
211
+ },
212
+ addParamToArray: function (key, value, arr) {
213
+ var _a;
214
+ arr.push((_a = {}, _a[key] = value, _a));
215
+ },
216
+ findIndex: function (key, arr) {
217
+ if (!arr) {
218
+ return -1;
219
+ }
220
+ return arr.findIndex(function (obj) {
221
+ return Object.keys(obj)[0] === key;
222
+ });
223
+ },
224
+ getParametersRegexGroups: function (src) {
225
+ return {
226
+ functionGroupingRegexp: parameter_regex_providers_1.getParameterfunctionGroupingRegexp(src),
227
+ operatorsGroupingRegexp: parameter_regex_providers_1.getParameterOperatorsGroupingRegexp(src)
228
+ };
229
+ },
230
+ suggestNewParamName: function (paramKey, flowConfParameters) {
231
+ var flowIndex;
232
+ do {
233
+ var suffix = parseInt(paramKey.substr(paramKey.length - 1, paramKey.length), 10);
234
+ if (Number.isInteger(suffix)) {
235
+ suffix += 1;
236
+ paramKey = paramKey.substr(0, paramKey.length - 1) + suffix;
237
+ }
238
+ else {
239
+ paramKey = paramKey + '_1';
240
+ }
241
+ flowIndex = this.findIndex(paramKey, flowConfParameters); // new name might exist in flow conf
242
+ } while (flowIndex > -1);
243
+ return paramKey;
244
+ },
245
+ /** Search any parameters with the following patterns:
246
+ * ${param1}
247
+ * ${__encode_url(param1)}
248
+ * ${__if_then_else(param12,'good','bad')}
249
+ */
250
+ searchParameterizedExpressionOccurrences: function (parameterName, data) {
251
+ return data.match(parameter_regex_providers_1.getParameterUsageRegexp(parameterName)) || [];
252
+ },
253
+ getUsedConfParams: function (conf, parameters) {
254
+ var _this = this;
255
+ var usedParameters = [];
256
+ if (parameters) {
257
+ var stringifyConf_1 = JSON.stringify(conf);
258
+ parameters.forEach(function (p) {
259
+ var paramName = _this.getParameterName(p);
260
+ if (isParamUsedInConf(paramName, conf, stringifyConf_1)) {
261
+ var currentUsedParams = _this.findUsedParameters(parameters, p, []);
262
+ usedParameters = usedParameters.concat(currentUsedParams);
263
+ }
264
+ });
265
+ }
266
+ return uniqWith(usedParameters, isEqual);
267
+ },
268
+ getUsedStepParams: function (step, parameters) {
269
+ return this.getUsedConfParams({ requests: [step] }, parameters);
270
+ },
271
+ getValueByKeyFromArr: function (key, parameters, returnArray) {
272
+ if (parameters === void 0) { parameters = []; }
273
+ if (returnArray === void 0) { returnArray = false; }
274
+ var res;
275
+ var param = getParameterByKey(key, parameters);
276
+ if (param) {
277
+ res = this.getParameterValue(param);
278
+ if (Array.isArray(res)) {
279
+ if (returnArray && res.length > 1) {
280
+ return res;
281
+ }
282
+ return res[0];
283
+ }
284
+ }
285
+ return res;
286
+ },
287
+ pickFirstValue: function (p) {
288
+ var _a, _b;
289
+ var name = exports.parameterUtils.getParameterName(p);
290
+ var value = exports.parameterUtils.getParameterValue(p);
291
+ if (Array.isArray(value) && value.length > 0) {
292
+ return _a = {}, _a[name] = value[0], _a;
293
+ }
294
+ return _b = {}, _b[name] = value, _b;
295
+ },
296
+ getParameterValue: function (parameter) {
297
+ var value = Object.values(parameter)[0];
298
+ return value;
299
+ },
300
+ getParameterName: function (parameter) {
301
+ var name = Object.keys(parameter)[0];
302
+ return name;
303
+ },
304
+ getParametersNames: function (parameters) {
305
+ return parameters.map(function (p) {
306
+ var pName = Object.keys(p)[0];
307
+ return pName;
308
+ });
309
+ },
310
+ setParameterValue: function (name, value, parameters) {
311
+ var index = this.findIndex(name, parameters);
312
+ parameters[index][name] = value;
313
+ },
314
+ getUsedRequestParamNames: function (stringifiedRequest) {
315
+ var usedParams = [];
316
+ var allParametersOccurrences = exports.searchExpressionOccurrences(stringifiedRequest);
317
+ allParametersOccurrences.map(function (paramOccurrence) {
318
+ var tokensWithoutOperators = exports.getTokensWithoutOperators(paramOccurrence);
319
+ for (var _i = 0, tokensWithoutOperators_1 = tokensWithoutOperators; _i < tokensWithoutOperators_1.length; _i++) {
320
+ var token = tokensWithoutOperators_1[_i];
321
+ if (isBuiltInFunction(token)) {
322
+ if (hasLeftParenthesis(token)) {
323
+ var _a = exports.stripToFunctionAndArgs(token), args = _a.slice(1);
324
+ for (var _b = 0, args_1 = args; _b < args_1.length; _b++) {
325
+ var arg = args_1[_b];
326
+ if (!isSingleQuoted(arg)) {
327
+ usedParams.push(arg);
328
+ }
329
+ }
330
+ }
331
+ }
332
+ else {
333
+ if (!isSingleQuoted(token)) {
334
+ usedParams.push(token);
335
+ }
336
+ }
337
+ }
338
+ });
339
+ return usedParams;
340
+ },
341
+ deleteAllSrcElementsFromParamArr: function (paramArr, src) {
342
+ var isSrcInParamArr = this.isParamKeyInArr(src, paramArr);
343
+ while (isSrcInParamArr) {
344
+ this.removeParameterFromArrayByKey(src, paramArr);
345
+ isSrcInParamArr = this.isParamKeyInArr(src, paramArr);
346
+ }
347
+ },
348
+ removeParameterFromArrayByKey: function (src, paramArr) {
349
+ var index = this.findIndex(src, paramArr);
350
+ paramArr.splice(index, 1);
351
+ },
352
+ isParamKeyInArr: function (key, arr) {
353
+ return this.findIndex(key, arr) >= 0;
354
+ },
355
+ /**
356
+ * Returns a Parameter ({name:value}) obj with the given value to search for.
357
+ * if non found, returns undefined
358
+ * @param value string | string[]
359
+ * @param arr Parameters[]
360
+ */
361
+ findParamValueInArr: function (value, arr) {
362
+ var _this = this;
363
+ return arr.find(function (p) { return isEqual(_this.getParameterValue(p), value); });
364
+ },
365
+ findParametersSimilarityByRegex: function (value, arr, regex) {
366
+ var _this = this;
367
+ if (arr === void 0) { arr = []; }
368
+ if (!regex) {
369
+ return;
370
+ }
371
+ var reg = new RegExp(regex);
372
+ if (reg.test(value)) {
373
+ return arr.find(function (p) { return reg.test(_this.getParameterValue(p)); });
374
+ }
375
+ },
376
+ findUsedParameters: function (suiteParameters, param, usedParameters) {
377
+ try {
378
+ return findUsedParametersRecursively(suiteParameters, param, usedParameters).reverse();
379
+ }
380
+ catch (error) {
381
+ if (error instanceof RangeError) {
382
+ throw new ParameterError('circular dependency value', param);
383
+ }
384
+ else {
385
+ throw new Error(error);
386
+ }
387
+ }
388
+ },
389
+ applyJSONSchema: function (instance, schema) {
390
+ return json_schema_1.applyJSONSchema(instance, schema);
391
+ },
392
+ isUsingParameterizedValue: function (value) {
393
+ return parameter_regex_providers_1.PARAM_USAGE_REGEXP.test(value);
394
+ },
395
+ // the last fulfilled request will have all of the results parameters :)
396
+ getRunPostParameters: function (redactableResult) {
397
+ var last = redactableResult && findLast(redactableResult, function (rr) { return !isEmpty(rr.postParameters); });
398
+ return last && last.postParameters;
399
+ }
400
+ };
401
+ function resolvePlainParameter(parameterName, parameters) {
402
+ if (parameters.hasOwnProperty(parameterName)) {
403
+ return pickValue(parameters[parameterName]);
404
+ }
405
+ }
406
+ function resolveNoArgFunctionParameter(parameterName, parameters) {
407
+ return applyParameterFunction(parameterName, parameter_functions_1.getParameterFunction(parameterName), [], parameters);
408
+ }
409
+ function pickValue(parameterValue) {
410
+ return Array.isArray(parameterValue)
411
+ ? value_utils_1.pickRandom(parameterValue)
412
+ : parameterValue;
413
+ }
414
+ function resolveTokens(tokens, parameters) {
415
+ var leftSide = tokens[0], operator = tokens[1], rest = tokens.slice(2);
416
+ var leftSideValue = resolveArgument(leftSide, parameters);
417
+ if (!operator) {
418
+ return leftSideValue;
419
+ }
420
+ if (leftSideValue == null) {
421
+ throw new ParameterFunctionError(operator, "No value for left side operand '" + leftSide + "'");
422
+ }
423
+ var rightSideValue = resolveTokens(rest, parameters);
424
+ if (rightSideValue == null) {
425
+ throw new ParameterFunctionError(operator, "No value for right side operand '" + rest[0] + "'");
426
+ }
427
+ return applyParameterFunction(operator, resolveOperator(operator), [
428
+ leftSideValue,
429
+ rightSideValue,
430
+ ]);
431
+ }
432
+ function resolveArgument(arg, parameters) {
433
+ if (arg.startsWith('\'')) {
434
+ return resolveLiteral(arg);
435
+ }
436
+ else if (arg.includes('(')) {
437
+ return resolveParameterFunction(arg, parameters);
438
+ }
439
+ else {
440
+ return exports.parameterUtils.resolveParameter(arg, parameters);
441
+ }
442
+ }
443
+ function resolveLiteral(literal) {
444
+ return literal.slice(1, -1);
445
+ }
446
+ function resolveParameterFunction(functionUsage, parameters) {
447
+ var _a = functionUsage
448
+ .replace(/\(/, ',')
449
+ .slice(0, -1)
450
+ .split(','), functionName = _a[0], args = _a.slice(1);
451
+ if (args.length === 1 && args[0] === '') {
452
+ /// No args case, e.g. ${func()}
453
+ args = [];
454
+ }
455
+ return applyParameterFunction(functionName, parameter_functions_1.getParameterFunction(functionName), args, parameters);
456
+ }
457
+ function applyParameterFunction(functionName, parameterFunction, args, parameters) {
458
+ if (parameterFunction) {
459
+ var minArgs = parameterFunction.minArgs, maxArgs = parameterFunction.maxArgs, operate = parameterFunction.operate;
460
+ if (minArgs != null && args.length < minArgs) {
461
+ throw new ParameterFunctionError(functionName, "Must have at least " + minArgs + " arguments");
462
+ }
463
+ else if (maxArgs != null && args.length > maxArgs) {
464
+ throw new ParameterFunctionError(functionName, "Cannot have more than " + maxArgs + " arguments");
465
+ }
466
+ if (parameters) {
467
+ args = args.map(function (arg, index) {
468
+ var value = resolveArgument(arg, parameters);
469
+ if (value == null) {
470
+ if (parameter_functions_1.canHaveNullParameterValue(functionName)) {
471
+ return '';
472
+ }
473
+ throw new ParameterFunctionError(functionName, "No value for '" + arg + "' at index " + index);
474
+ }
475
+ return value;
476
+ });
477
+ }
478
+ try {
479
+ return operate.apply(void 0, args);
480
+ }
481
+ catch (e) {
482
+ // log.debug('Parameter function error caught:', { functionName }, e);
483
+ throw new ParameterFunctionError(functionName, e.prettyMessage || 'Unexpected error');
484
+ }
485
+ }
486
+ }
487
+ function resolveOperator(opSymbol) {
488
+ return operators_1.operators[opSymbol].parameterFunction;
489
+ }
490
+ function findUsedParametersRecursively(suiteParameters, param, usedParameters) {
491
+ var paramValueStringified = JSON.stringify(exports.parameterUtils.getParameterValue(param));
492
+ var currentUsedParameterNames = exports.parameterUtils.getUsedRequestParamNames(paramValueStringified);
493
+ if (!usedParameters.some(function (p) { return isEqual(p, param); })) {
494
+ var smallestIndex = getSmallestIndexInParamArr(currentUsedParameterNames, usedParameters);
495
+ usedParameters.splice(smallestIndex, 0, param);
496
+ }
497
+ if (isEmpty(currentUsedParameterNames)) {
498
+ return usedParameters;
499
+ }
500
+ for (var _i = 0, currentUsedParameterNames_1 = currentUsedParameterNames; _i < currentUsedParameterNames_1.length; _i++) {
501
+ var paramName = currentUsedParameterNames_1[_i];
502
+ var newParam = getParameterByKey(paramName, suiteParameters);
503
+ if (newParam) {
504
+ findUsedParametersRecursively(suiteParameters, newParam, usedParameters);
505
+ }
506
+ }
507
+ return usedParameters;
508
+ }
509
+ var getSmallestIndexInParamArr = function (paramNames, parameters) {
510
+ var smallestIndex = 0;
511
+ if (arrayUtils.isNonEmptyArray(parameters)) {
512
+ smallestIndex = parameters.length;
513
+ for (var _i = 0, paramNames_1 = paramNames; _i < paramNames_1.length; _i++) {
514
+ var name_1 = paramNames_1[_i];
515
+ var candidateIndex = exports.parameterUtils.findIndex(name_1, parameters);
516
+ if (candidateIndex > -1 && candidateIndex < smallestIndex) {
517
+ smallestIndex = candidateIndex;
518
+ }
519
+ }
520
+ }
521
+ return smallestIndex;
522
+ };
523
+ var getParameterByKey = function (key, parameters) {
524
+ var index = exports.parameterUtils.findIndex(key, parameters);
525
+ return index > -1 ? parameters[index] : null;
526
+ };
527
+ /**
528
+ * a single quoted string starts and ends with a ' (single quote) char
529
+ * for example str = "'arnon'"
530
+ */
531
+ var isSingleQuoted = function (s) { return s.startsWith('\'') && s.endsWith('\''); };
532
+ var hasLeftParenthesis = function (s) { return s.includes('('); };
533
+ var stripToFunctionAndArgs = function (s) {
534
+ return s.replace(/\(/, ',').slice(0, -1).split(',');
535
+ };
536
+ exports.stripToFunctionAndArgs = stripToFunctionAndArgs;
537
+ var stripParam = function (s) { return s.replace(/\$|{|}/g, ''); };
538
+ exports.stripParam = stripParam;
539
+ var getTokens = function (strippedExpression) {
540
+ return parameter_regex_providers_1.spacesRegExpProvider.use(function (spacesRegExp) {
541
+ return strippedExpression.split(spacesRegExp);
542
+ });
543
+ };
544
+ var stripOperators = function (tokens) {
545
+ return tokens.filter(function (t) { return !operators_1.operatorsAsStrings.includes(t); });
546
+ };
547
+ var getSubstringUntilChar = function (s, c) { return typeof s === 'string' ? s.split(c)[0] : ''; };
548
+ var isBuiltInFunction = function (s) { return parameter_functions_1.getParameterFunction(getSubstringUntilChar(s, '(')); };
549
+ /* gets a string and returns all occurrences of ${...something/nothing..} */
550
+ var searchExpressionOccurrences = function (s) {
551
+ return s.match(new RegExp(parameter_regex_providers_1.PARAMETER_USAGE_PATTERN, 'g')) || [];
552
+ };
553
+ exports.searchExpressionOccurrences = searchExpressionOccurrences;
554
+ var getTokensWithoutOperators = function (paramOccurrence) {
555
+ var strippedParam = exports.stripParam(paramOccurrence);
556
+ var tokens = getTokens(strippedParam);
557
+ return stripOperators(tokens);
558
+ };
559
+ exports.getTokensWithoutOperators = getTokensWithoutOperators;
560
+ function isParamUsedInConf(paramName, conf, stringifyConf) {
561
+ return !isEmpty(exports.parameterUtils.searchParameterizedExpressionOccurrences(paramName, stringifyConf)) ||
562
+ isParamNameUsedInConf(paramName, conf);
563
+ }
564
+ exports.isParamUsedInConf = isParamUsedInConf;
565
+ function isParamNameUsedInField(paramName, fieldValue) {
566
+ return !!fieldValue && fieldValue === paramName;
567
+ }
568
+ function isParamNameUsedInAssertions(paramName, assertions) {
569
+ if (assertions === void 0) { assertions = []; }
570
+ return assertions.some(function (assertion) { return assertion.check === paramName; });
571
+ }
572
+ function isParamNameUsedInAssertionValue(paramName, assertions) {
573
+ if (assertions === void 0) { assertions = []; }
574
+ return assertions.some(function (assertion) { return Object.entries(assertion).some(function (_a) {
575
+ var key = _a[0], value = _a[1];
576
+ return key !== 'check' && typeof value === 'string' && value.includes(paramName);
577
+ }); });
578
+ }
579
+ exports.isParamNameUsedInAssertionValue = isParamNameUsedInAssertionValue;
580
+ function isParamNameUsedInStep(paramName, step) {
581
+ var _a, _b, _c;
582
+ return isParamNameUsedInAssertions(paramName, step.assert) ||
583
+ isParamNameUsedInField(paramName, (_b = (_a = step.loop) === null || _a === void 0 ? void 0 : _a.assert) === null || _b === void 0 ? void 0 : _b.check) ||
584
+ isParamNameUsedInField(paramName, (_c = step.skipBefore) === null || _c === void 0 ? void 0 : _c.condition) ||
585
+ isParamNameUsedInField(paramName, step.stopBefore);
586
+ }
587
+ function isParamNameUsedInConf(paramName, conf) {
588
+ if (!isEmpty(conf.requests)) {
589
+ return conf.requests.some(function (req) { return isParamNameUsedInStep(paramName, req); });
590
+ }
591
+ return false;
592
+ }
593
+ function removeNonStringParameters(conf) {
594
+ var parameters = conf.parameters;
595
+ if (parameters) {
596
+ conf.parameters = parameters.filter(function (p) {
597
+ return isEmpty(conf_1.validate.parameter(exports.parameterUtils.getParameterName(p), exports.parameterUtils.getParameterValue(p)));
598
+ });
599
+ }
600
+ }
601
+ exports.removeNonStringParameters = removeNonStringParameters;
602
+ exports.DATA_REDACTED = 'Redacted';
603
+ function redactPostParameters(postParameters, sensitiveKeys) {
604
+ if (postParameters === void 0) { postParameters = []; }
605
+ if (sensitiveKeys === void 0) { sensitiveKeys = []; }
606
+ postParameters.forEach(function (p) {
607
+ var paramName = exports.parameterUtils.getParameterName(p);
608
+ if (!isEmpty(sensitiveKeys)) {
609
+ if (sensitiveKeys.includes(paramName)) {
610
+ p[paramName] = exports.DATA_REDACTED;
611
+ }
612
+ }
613
+ else {
614
+ p[paramName] = exports.DATA_REDACTED;
615
+ }
616
+ });
617
+ }
618
+ exports.redactPostParameters = redactPostParameters;
619
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parameters/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const getLongestJsonPathToken: (jsonPath: string) => string;