callman-core 1.14.0 → 1.16.0

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 (94) hide show
  1. package/dist/host/connections.d.ts +3 -0
  2. package/dist/host/connections.d.ts.map +1 -1
  3. package/dist/host/connections.js +3 -0
  4. package/dist/host/connections.js.map +1 -1
  5. package/dist/host/db/connectionMapping.d.ts +3 -1
  6. package/dist/host/db/connectionMapping.d.ts.map +1 -1
  7. package/dist/host/db/connectionMapping.js +3 -0
  8. package/dist/host/db/connectionMapping.js.map +1 -1
  9. package/dist/host/db/db-query-reference.d.ts.map +1 -1
  10. package/dist/host/db/db-query-reference.js +12 -1
  11. package/dist/host/db/db-query-reference.js.map +1 -1
  12. package/dist/host/db/mssqlAdapter.d.ts +8 -0
  13. package/dist/host/db/mssqlAdapter.d.ts.map +1 -0
  14. package/dist/host/db/mssqlAdapter.js +118 -0
  15. package/dist/host/db/mssqlAdapter.js.map +1 -0
  16. package/dist/host/db/queryExecutor.d.ts.map +1 -1
  17. package/dist/host/db/queryExecutor.js +8 -0
  18. package/dist/host/db/queryExecutor.js.map +1 -1
  19. package/dist/host/db/sqlNormalize.d.ts +1 -1
  20. package/dist/host/db/sqlNormalize.d.ts.map +1 -1
  21. package/dist/host/db/types.d.ts +5 -1
  22. package/dist/host/db/types.d.ts.map +1 -1
  23. package/dist/host/index.d.ts +2 -1
  24. package/dist/host/index.d.ts.map +1 -1
  25. package/dist/host/index.js +2 -1
  26. package/dist/host/index.js.map +1 -1
  27. package/dist/host/redis/redisService.d.ts +17 -0
  28. package/dist/host/redis/redisService.d.ts.map +1 -1
  29. package/dist/host/redis/redisService.js +233 -40
  30. package/dist/host/redis/redisService.js.map +1 -1
  31. package/dist/host/redis/types.d.ts +4 -0
  32. package/dist/host/redis/types.d.ts.map +1 -1
  33. package/dist/request/oauth2.d.ts +1 -1
  34. package/dist/request/oauth2.d.ts.map +1 -1
  35. package/dist/runner/applyRequestAuth.d.ts +8 -0
  36. package/dist/runner/applyRequestAuth.d.ts.map +1 -0
  37. package/dist/runner/applyRequestAuth.js +71 -0
  38. package/dist/runner/applyRequestAuth.js.map +1 -0
  39. package/dist/runner/requestRunner.d.ts.map +1 -1
  40. package/dist/runner/requestRunner.js +23 -0
  41. package/dist/runner/requestRunner.js.map +1 -1
  42. package/dist/scenario-runner/adapters/helpers/request-helpers.d.ts.map +1 -1
  43. package/dist/scenario-runner/adapters/helpers/request-helpers.js +28 -2
  44. package/dist/scenario-runner/adapters/helpers/request-helpers.js.map +1 -1
  45. package/dist/scenario-runner/condition.d.ts +4 -0
  46. package/dist/scenario-runner/condition.d.ts.map +1 -1
  47. package/dist/scenario-runner/condition.js +66 -7
  48. package/dist/scenario-runner/condition.js.map +1 -1
  49. package/dist/scenario-runner/conditionTypes.d.ts +14 -0
  50. package/dist/scenario-runner/conditionTypes.d.ts.map +1 -1
  51. package/dist/scenario-runner/extraction.d.ts +10 -0
  52. package/dist/scenario-runner/extraction.d.ts.map +1 -0
  53. package/dist/scenario-runner/extraction.js +147 -0
  54. package/dist/scenario-runner/extraction.js.map +1 -0
  55. package/dist/scenario-runner/index.d.ts +1 -0
  56. package/dist/scenario-runner/index.d.ts.map +1 -1
  57. package/dist/scenario-runner/index.js +2 -0
  58. package/dist/scenario-runner/index.js.map +1 -1
  59. package/dist/scenario-runner/runScenario.d.ts.map +1 -1
  60. package/dist/scenario-runner/runScenario.js +113 -6
  61. package/dist/scenario-runner/runScenario.js.map +1 -1
  62. package/dist/scenario-runner/types.d.ts +25 -17
  63. package/dist/scenario-runner/types.d.ts.map +1 -1
  64. package/dist/types/index.d.ts +26 -0
  65. package/dist/types/index.d.ts.map +1 -1
  66. package/dist-cjs/host/connections.js +3 -0
  67. package/dist-cjs/host/connections.js.map +1 -1
  68. package/dist-cjs/host/db/connectionMapping.js +3 -0
  69. package/dist-cjs/host/db/connectionMapping.js.map +1 -1
  70. package/dist-cjs/host/db/db-query-reference.js +12 -1
  71. package/dist-cjs/host/db/db-query-reference.js.map +1 -1
  72. package/dist-cjs/host/db/mssqlAdapter.js +124 -0
  73. package/dist-cjs/host/db/mssqlAdapter.js.map +1 -0
  74. package/dist-cjs/host/db/queryExecutor.js +8 -0
  75. package/dist-cjs/host/db/queryExecutor.js.map +1 -1
  76. package/dist-cjs/host/index.js +8 -1
  77. package/dist-cjs/host/index.js.map +1 -1
  78. package/dist-cjs/host/redis/redisService.js +237 -42
  79. package/dist-cjs/host/redis/redisService.js.map +1 -1
  80. package/dist-cjs/runner/applyRequestAuth.js +75 -0
  81. package/dist-cjs/runner/applyRequestAuth.js.map +1 -0
  82. package/dist-cjs/runner/requestRunner.js +23 -0
  83. package/dist-cjs/runner/requestRunner.js.map +1 -1
  84. package/dist-cjs/scenario-runner/adapters/helpers/request-helpers.js +28 -2
  85. package/dist-cjs/scenario-runner/adapters/helpers/request-helpers.js.map +1 -1
  86. package/dist-cjs/scenario-runner/condition.js +68 -8
  87. package/dist-cjs/scenario-runner/condition.js.map +1 -1
  88. package/dist-cjs/scenario-runner/extraction.js +151 -0
  89. package/dist-cjs/scenario-runner/extraction.js.map +1 -0
  90. package/dist-cjs/scenario-runner/index.js +2 -0
  91. package/dist-cjs/scenario-runner/index.js.map +1 -1
  92. package/dist-cjs/scenario-runner/runScenario.js +112 -5
  93. package/dist-cjs/scenario-runner/runScenario.js.map +1 -1
  94. package/package.json +3 -1
@@ -5,12 +5,20 @@
5
5
  // the caller MUST provide the resolved `connection`. `ioredis` is loaded lazily
6
6
  // via `loadOptionalModule`.
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.executeRedisCommands = void 0;
8
+ exports.executeRedisCommands = exports.parseRedisCommand = exports.REDIS_COMMAND_SPECS = exports.__setRedisDriverForTests = void 0;
9
9
  const node_perf_hooks_1 = require("node:perf_hooks");
10
10
  const lazy_js_1 = require("../lazy.js");
11
11
  const templateResolver_js_1 = require("../db/templateResolver.js");
12
12
  const unwrap = (mod) => (mod && mod.default ? mod.default : mod);
13
+ let redisDriverOverride = null;
14
+ const __setRedisDriverForTests = (driver) => {
15
+ redisDriverOverride = driver;
16
+ };
17
+ exports.__setRedisDriverForTests = __setRedisDriverForTests;
13
18
  const loadRedisDriver = async () => {
19
+ if (redisDriverOverride) {
20
+ return redisDriverOverride;
21
+ }
14
22
  try {
15
23
  const mod = await (0, lazy_js_1.loadOptionalModule)("ioredis");
16
24
  // ioredis exports both `default` and a named `Redis`. Prefer the named
@@ -35,49 +43,248 @@ const tokenizeRedisCommand = (input) => {
35
43
  }
36
44
  return tokens;
37
45
  };
46
+ const integerArgError = (values, message) => values.every((value) => Number.isInteger(Number(value)) && value.trim() !== "")
47
+ ? null
48
+ : message;
49
+ // SCAN is Callman-managed: the cursor loop runs internally with hard caps so
50
+ // a broad pattern on a shared bank Redis cannot walk the whole keyspace.
51
+ const SCAN_MAX_ITERATIONS = 100;
52
+ const SCAN_MAX_KEYS = 1000;
53
+ const runScanLoop = async (client, args) => {
54
+ const pattern = args[0] ?? "*";
55
+ const pageSize = args.length === 2 ? Math.min(Math.max(Math.trunc(Number(args[1])), 1), SCAN_MAX_KEYS) : 100;
56
+ const keys = [];
57
+ let cursor = "0";
58
+ let iterations = 0;
59
+ let truncated = false;
60
+ do {
61
+ const [nextCursor, batch] = (await client.scan(cursor, "MATCH", pattern, "COUNT", pageSize));
62
+ cursor = nextCursor;
63
+ for (const key of batch) {
64
+ if (keys.length >= SCAN_MAX_KEYS) {
65
+ truncated = true;
66
+ break;
67
+ }
68
+ keys.push(key);
69
+ }
70
+ iterations += 1;
71
+ if (truncated) {
72
+ break;
73
+ }
74
+ if (iterations >= SCAN_MAX_ITERATIONS && cursor !== "0") {
75
+ truncated = true;
76
+ break;
77
+ }
78
+ } while (cursor !== "0");
79
+ return { keys, count: keys.length, truncated };
80
+ };
81
+ // One spec per supported command: arity + shape validation and a typed
82
+ // ioredis call, so structured replies (HGETALL → object, LRANGE → array)
83
+ // land in `result` as real values. Args always travel as protocol frames —
84
+ // never re-parsed — so template values cannot inject extra commands.
85
+ exports.REDIS_COMMAND_SPECS = {
86
+ GET: { minArgs: 1, maxArgs: 1, usage: "GET key", execute: (c, [key]) => c.get(key) },
87
+ SET: {
88
+ minArgs: 2,
89
+ maxArgs: null,
90
+ usage: "SET key value",
91
+ // Legacy quirk kept for existing scenarios: everything after the key is
92
+ // joined into ONE value, so `SET k v with spaces` writes "v with spaces".
93
+ execute: async (c, args) => {
94
+ const value = args.slice(1).join(" ");
95
+ await c.set(args[0], value);
96
+ return value;
97
+ },
98
+ },
99
+ DEL: {
100
+ minArgs: 1,
101
+ maxArgs: null,
102
+ usage: "DEL key [key ...]",
103
+ execute: (c, args) => c.del(...args),
104
+ },
105
+ EXISTS: {
106
+ minArgs: 1,
107
+ maxArgs: 1,
108
+ usage: "EXISTS key",
109
+ execute: async (c, [key]) => (await c.exists(key)) > 0,
110
+ },
111
+ TTL: { minArgs: 1, maxArgs: 1, usage: "TTL key", execute: (c, [key]) => c.ttl(key) },
112
+ HGET: {
113
+ minArgs: 2,
114
+ maxArgs: 2,
115
+ usage: "HGET key field",
116
+ execute: (c, [key, field]) => c.hget(key, field),
117
+ },
118
+ HSET: {
119
+ minArgs: 3,
120
+ maxArgs: null,
121
+ usage: "HSET key field value [field value ...]",
122
+ validate: (args) => (args.length - 1) % 2 === 0 ? null : "HSET requires a key followed by field/value pairs",
123
+ execute: (c, args) => c.hset(args[0], ...args.slice(1)),
124
+ },
125
+ HGETALL: {
126
+ minArgs: 1,
127
+ maxArgs: 1,
128
+ usage: "HGETALL key",
129
+ execute: (c, [key]) => c.hgetall(key),
130
+ },
131
+ HDEL: {
132
+ minArgs: 2,
133
+ maxArgs: null,
134
+ usage: "HDEL key field [field ...]",
135
+ execute: (c, args) => c.hdel(args[0], ...args.slice(1)),
136
+ },
137
+ LPUSH: {
138
+ minArgs: 2,
139
+ maxArgs: null,
140
+ usage: "LPUSH key value [value ...]",
141
+ execute: (c, args) => c.lpush(args[0], ...args.slice(1)),
142
+ },
143
+ RPUSH: {
144
+ minArgs: 2,
145
+ maxArgs: null,
146
+ usage: "RPUSH key value [value ...]",
147
+ execute: (c, args) => c.rpush(args[0], ...args.slice(1)),
148
+ },
149
+ LRANGE: {
150
+ minArgs: 3,
151
+ maxArgs: 3,
152
+ usage: "LRANGE key start stop",
153
+ validate: (args) => integerArgError(args.slice(1), "LRANGE start/stop must be integers"),
154
+ execute: (c, [key, start, stop]) => c.lrange(key, Number(start), Number(stop)),
155
+ },
156
+ LLEN: { minArgs: 1, maxArgs: 1, usage: "LLEN key", execute: (c, [key]) => c.llen(key) },
157
+ SADD: {
158
+ minArgs: 2,
159
+ maxArgs: null,
160
+ usage: "SADD key member [member ...]",
161
+ execute: (c, args) => c.sadd(args[0], ...args.slice(1)),
162
+ },
163
+ SMEMBERS: {
164
+ minArgs: 1,
165
+ maxArgs: 1,
166
+ usage: "SMEMBERS key",
167
+ execute: (c, [key]) => c.smembers(key),
168
+ },
169
+ SISMEMBER: {
170
+ minArgs: 2,
171
+ maxArgs: 2,
172
+ usage: "SISMEMBER key member",
173
+ execute: async (c, [key, member]) => (await c.sismember(key, member)) > 0,
174
+ },
175
+ INCR: { minArgs: 1, maxArgs: 1, usage: "INCR key", execute: (c, [key]) => c.incr(key) },
176
+ DECR: { minArgs: 1, maxArgs: 1, usage: "DECR key", execute: (c, [key]) => c.decr(key) },
177
+ INCRBY: {
178
+ minArgs: 2,
179
+ maxArgs: 2,
180
+ usage: "INCRBY key increment",
181
+ validate: (args) => integerArgError([args[1] ?? ""], "INCRBY increment must be an integer"),
182
+ execute: (c, [key, by]) => c.incrby(key, Number(by)),
183
+ },
184
+ EXPIRE: {
185
+ minArgs: 2,
186
+ maxArgs: 2,
187
+ usage: "EXPIRE key seconds",
188
+ validate: (args) => integerArgError([args[1] ?? ""], "EXPIRE seconds must be an integer"),
189
+ execute: async (c, [key, seconds]) => (await c.expire(key, Number(seconds))) === 1,
190
+ },
191
+ PERSIST: {
192
+ minArgs: 1,
193
+ maxArgs: 1,
194
+ usage: "PERSIST key",
195
+ execute: async (c, [key]) => (await c.persist(key)) === 1,
196
+ },
197
+ TYPE: { minArgs: 1, maxArgs: 1, usage: "TYPE key", execute: (c, [key]) => c.type(key) },
198
+ ZADD: {
199
+ minArgs: 3,
200
+ maxArgs: null,
201
+ usage: "ZADD key score member [score member ...]",
202
+ validate: (args) => {
203
+ if ((args.length - 1) % 2 !== 0) {
204
+ return "ZADD requires a key followed by score/member pairs";
205
+ }
206
+ for (let index = 1; index < args.length; index += 2) {
207
+ if (!Number.isFinite(Number(args[index])) || args[index]?.trim() === "") {
208
+ return `ZADD score "${args[index]}" is not a number`;
209
+ }
210
+ }
211
+ return null;
212
+ },
213
+ execute: (c, args) => c.zadd(args[0], ...args.slice(1)),
214
+ },
215
+ ZRANGE: {
216
+ minArgs: 3,
217
+ maxArgs: 4,
218
+ usage: "ZRANGE key start stop [WITHSCORES]",
219
+ validate: (args) => {
220
+ const rangeError = integerArgError([args[1] ?? "", args[2] ?? ""], "ZRANGE start/stop must be integers");
221
+ if (rangeError) {
222
+ return rangeError;
223
+ }
224
+ if (args.length === 4 && args[3]?.toUpperCase() !== "WITHSCORES") {
225
+ return "ZRANGE only supports the WITHSCORES modifier";
226
+ }
227
+ return null;
228
+ },
229
+ execute: (c, args) => args.length === 4
230
+ ? c.zrange(args[0], Number(args[1]), Number(args[2]), "WITHSCORES")
231
+ : c.zrange(args[0], Number(args[1]), Number(args[2])),
232
+ },
233
+ ZSCORE: {
234
+ minArgs: 2,
235
+ maxArgs: 2,
236
+ usage: "ZSCORE key member",
237
+ execute: (c, [key, member]) => c.zscore(key, member),
238
+ },
239
+ SCAN: {
240
+ minArgs: 1,
241
+ maxArgs: 2,
242
+ usage: "SCAN pattern [count]",
243
+ keyless: true,
244
+ validate: (args) => args.length === 2
245
+ ? integerArgError([args[1] ?? ""], "SCAN count must be a positive integer")
246
+ : null,
247
+ execute: runScanLoop,
248
+ },
249
+ };
250
+ const SUPPORTED_COMMAND_LIST = Object.keys(exports.REDIS_COMMAND_SPECS).join(", ");
38
251
  const parseRedisCommand = (command) => {
39
252
  const tokens = tokenizeRedisCommand(command.trim());
40
253
  if (tokens.length === 0) {
41
254
  throw new Error("Redis command cannot be empty");
42
255
  }
43
- const commandName = tokens[0]?.toUpperCase();
44
- if (commandName !== "GET" &&
45
- commandName !== "SET" &&
46
- commandName !== "DEL" &&
47
- commandName !== "EXISTS" &&
48
- commandName !== "TTL") {
49
- throw new Error("Supported Redis commands are GET, SET, DEL, EXISTS, and TTL");
256
+ const rawName = tokens[0] ?? "";
257
+ const commandName = rawName.toUpperCase();
258
+ const spec = exports.REDIS_COMMAND_SPECS[commandName];
259
+ if (!spec) {
260
+ throw new Error(`Unsupported Redis command "${rawName}". Supported commands: ${SUPPORTED_COMMAND_LIST}`);
50
261
  }
51
- const key = tokens[1]?.trim() ?? "";
52
- if (!key) {
53
- throw new Error(`${commandName} requires a key`);
262
+ const args = tokens.slice(1);
263
+ if (args.length < spec.minArgs || (spec.maxArgs !== null && args.length > spec.maxArgs)) {
264
+ throw new Error(`Usage: ${spec.usage}`);
54
265
  }
55
- if (commandName === "SET") {
56
- if (tokens.length < 3) {
57
- throw new Error("SET requires a key and a value");
58
- }
59
- return {
60
- commandName,
61
- key,
62
- args: [tokens.slice(2).join(" ")],
63
- };
64
- }
65
- if (tokens.length > 2) {
66
- throw new Error(`${commandName} accepts only a single key`);
266
+ const validationError = spec.validate?.(args) ?? null;
267
+ if (validationError) {
268
+ throw new Error(validationError);
67
269
  }
68
270
  return {
69
271
  commandName,
70
- key,
71
- args: [],
272
+ key: spec.keyless ? null : (args[0] ?? null),
273
+ args,
72
274
  };
73
275
  };
276
+ exports.parseRedisCommand = parseRedisCommand;
74
277
  const createRedisClient = async (connection) => {
75
278
  const IORedis = await loadRedisDriver();
76
279
  return new IORedis({
77
280
  host: connection.host,
78
281
  port: connection.port,
282
+ username: connection.username,
79
283
  password: connection.password,
80
284
  db: connection.dbIndex,
285
+ // `ssl` must reach the socket — a TLS-only Redis otherwise accepts the
286
+ // validator's probe (which honors tls) but fails at scenario runtime.
287
+ tls: connection.ssl ? {} : undefined,
81
288
  lazyConnect: true,
82
289
  enableOfflineQueue: false,
83
290
  maxRetriesPerRequest: 1,
@@ -116,21 +323,7 @@ const normalizeRedisResultValue = (value) => {
116
323
  }
117
324
  return String(value);
118
325
  };
119
- const executeParsedCommand = async (client, parsedCommand) => {
120
- switch (parsedCommand.commandName) {
121
- case "GET":
122
- return await client.get(parsedCommand.key);
123
- case "SET":
124
- await client.set(parsedCommand.key, parsedCommand.args[0] ?? "");
125
- return parsedCommand.args[0] ?? "";
126
- case "DEL":
127
- return await client.del(parsedCommand.key);
128
- case "EXISTS":
129
- return (await client.exists(parsedCommand.key)) > 0;
130
- case "TTL":
131
- return await client.ttl(parsedCommand.key);
132
- }
133
- };
326
+ const executeParsedCommand = async (client, parsedCommand) => exports.REDIS_COMMAND_SPECS[parsedCommand.commandName].execute(client, parsedCommand.args);
134
327
  const buildFailureResult = ({ connectionId, connectionName, command, resolvedCommand, phase, error, startedAt, commandName = "", key = null, }) => ({
135
328
  success: false,
136
329
  phase,
@@ -149,7 +342,7 @@ const buildFailureResult = ({ connectionId, connectionName, command, resolvedCom
149
342
  const executeResolvedCommand = async ({ client, connection, command, resolvedCommand, phase, }) => {
150
343
  const startedAt = node_perf_hooks_1.performance.now();
151
344
  try {
152
- const parsedCommand = parseRedisCommand(resolvedCommand);
345
+ const parsedCommand = (0, exports.parseRedisCommand)(resolvedCommand);
153
346
  const rawResult = await executeParsedCommand(client, parsedCommand);
154
347
  const normalizedResult = normalizeRedisResultValue(rawResult);
155
348
  return {
@@ -171,7 +364,7 @@ const executeResolvedCommand = async ({ client, connection, command, resolvedCom
171
364
  let commandName = "";
172
365
  let key = null;
173
366
  try {
174
- const parsedCommand = parseRedisCommand(resolvedCommand);
367
+ const parsedCommand = (0, exports.parseRedisCommand)(resolvedCommand);
175
368
  commandName = parsedCommand.commandName;
176
369
  key = parsedCommand.key;
177
370
  }
@@ -222,10 +415,12 @@ const normalizeConnectionInput = (input) => ({
222
415
  type: "redis",
223
416
  host: input.host.trim(),
224
417
  port: Number(input.port),
418
+ username: input.username?.trim() ? input.username.trim() : undefined,
225
419
  password: input.password?.trim() ? input.password : undefined,
226
420
  dbIndex: typeof input.dbIndex === "number" && Number.isFinite(input.dbIndex) && input.dbIndex >= 0
227
421
  ? Math.trunc(input.dbIndex)
228
422
  : undefined,
423
+ ssl: input.ssl === true ? true : undefined,
229
424
  });
230
425
  const executeRedisCommands = async ({ connectionId, connection: connectionInput, commands, phase, context, }) => {
231
426
  const normalizedCommands = commands.map((command) => command.trim()).filter(Boolean);
@@ -1 +1 @@
1
- {"version":3,"file":"redisService.js","sourceRoot":"","sources":["../../../src/host/redis/redisService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redisService.js","sourceRoot":"","sources":["../../../src/host/redis/redisService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyRequestAuth = void 0;
4
+ const oauth2_js_1 = require("../request/oauth2.js");
5
+ // Apply a request's auth config to the already-resolved runtime request, so the
6
+ // collection/pipeline runner honors the Auth tab (bearer/basic/apikey/oauth2)
7
+ // the same way the desktop send does. Additive: `none`/absent leaves the
8
+ // request untouched, and a manual Authorization header is only overridden when
9
+ // an auth scheme is actually configured.
10
+ const BASE64_CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
11
+ const encodeBase64 = (input) => {
12
+ const bytes = new TextEncoder().encode(input);
13
+ let output = "";
14
+ for (let index = 0; index < bytes.length; index += 3) {
15
+ const b0 = bytes[index];
16
+ const b1 = index + 1 < bytes.length ? bytes[index + 1] : 0;
17
+ const b2 = index + 2 < bytes.length ? bytes[index + 2] : 0;
18
+ const triplet = (b0 << 16) | (b1 << 8) | b2;
19
+ output += BASE64_CHARS[(triplet >> 18) & 0x3f];
20
+ output += BASE64_CHARS[(triplet >> 12) & 0x3f];
21
+ output += index + 1 < bytes.length ? BASE64_CHARS[(triplet >> 6) & 0x3f] : "=";
22
+ output += index + 2 < bytes.length ? BASE64_CHARS[triplet & 0x3f] : "=";
23
+ }
24
+ return output;
25
+ };
26
+ const applyRequestAuth = async (request, auth, resolve, deps) => {
27
+ if (!auth || auth.type === "none") {
28
+ return request;
29
+ }
30
+ const headers = { ...(request.headers ?? {}) };
31
+ const query = { ...(request.query ?? {}) };
32
+ if (auth.type === "bearer") {
33
+ const token = resolve(auth.bearerToken ?? "");
34
+ if (token.trim()) {
35
+ headers.Authorization = `Bearer ${token}`;
36
+ }
37
+ }
38
+ else if (auth.type === "basic") {
39
+ const username = resolve(auth.basicUsername ?? "");
40
+ const password = resolve(auth.basicPassword ?? "");
41
+ if (username || password) {
42
+ headers.Authorization = `Basic ${encodeBase64(`${username}:${password}`)}`;
43
+ }
44
+ }
45
+ else if (auth.type === "apikey") {
46
+ const key = resolve(auth.apiKeyKey ?? "");
47
+ if (key.trim()) {
48
+ const value = resolve(auth.apiKeyValue ?? "");
49
+ if (auth.apiKeyLocation === "query") {
50
+ query[key] = value;
51
+ }
52
+ else {
53
+ headers[key] = value;
54
+ }
55
+ }
56
+ }
57
+ else if (auth.type === "oauth2" && auth.oauth2) {
58
+ const raw = auth.oauth2;
59
+ const token = await (0, oauth2_js_1.resolveOAuth2Token)({
60
+ ...raw,
61
+ tokenUrl: resolve(raw.tokenUrl),
62
+ clientId: resolve(raw.clientId),
63
+ clientSecret: resolve(raw.clientSecret),
64
+ scope: resolve(raw.scope),
65
+ username: resolve(raw.username),
66
+ password: resolve(raw.password),
67
+ refreshToken: resolve(raw.refreshToken),
68
+ audience: resolve(raw.audience),
69
+ }, deps.oauthPost, deps.cache);
70
+ headers.Authorization = `Bearer ${token}`;
71
+ }
72
+ return { ...request, headers, query };
73
+ };
74
+ exports.applyRequestAuth = applyRequestAuth;
75
+ //# sourceMappingURL=applyRequestAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyRequestAuth.js","sourceRoot":"","sources":["../../src/runner/applyRequestAuth.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,13 @@ exports.runRequest = void 0;
4
4
  const contractValidator_js_1 = require("../contract/contractValidator.js");
5
5
  const connections_js_1 = require("../host/connections.js");
6
6
  const executeRequest_js_1 = require("../request/executeRequest.js");
7
+ const applyRequestAuth_js_1 = require("./applyRequestAuth.js");
7
8
  const executor_js_1 = require("../script/executor.js");
8
9
  const scriptEngine_js_1 = require("../script/scriptEngine.js");
9
10
  const urlQuery_js_1 = require("../utils/urlQuery.js");
10
11
  const resolver_js_1 = require("../variables/resolver.js");
12
+ // Process-wide OAuth 2.0 token cache for the collection runner.
13
+ const oauth2TokenCache = new Map();
11
14
  const stringifyEnv = (env) => {
12
15
  const out = {};
13
16
  for (const [key, value] of Object.entries(env)) {
@@ -256,6 +259,26 @@ const runRequest = async (input) => {
256
259
  phase: "pre",
257
260
  context: { response: null, env: envBefore, global: {} },
258
261
  });
262
+ // ── Auth: apply the request's Auth tab (bearer/basic/apikey/oauth2) to the
263
+ // resolved request. For oauth2 the token is fetched (+ cached) via a POST
264
+ // through `executeRequest`, so it shares the same HTTP path.
265
+ const authResolveContext = {
266
+ env: input.env,
267
+ response: input.previousResponse,
268
+ request: input.request,
269
+ };
270
+ runtimeRequest = await (0, applyRequestAuth_js_1.applyRequestAuth)(runtimeRequest, input.request.auth, (value) => (0, resolver_js_1.resolveTemplateValue)(value, authResolveContext), {
271
+ oauthPost: async (tokenRequest) => {
272
+ const result = await (0, executeRequest_js_1.executeRequest)({
273
+ method: tokenRequest.method,
274
+ url: tokenRequest.url,
275
+ headers: tokenRequest.headers,
276
+ body: tokenRequest.body,
277
+ });
278
+ return { status: result.status, data: result.data };
279
+ },
280
+ cache: oauth2TokenCache,
281
+ });
259
282
  const response = await (0, executeRequest_js_1.executeRequest)(runtimeRequest);
260
283
  const contractResults = (0, contractValidator_js_1.validateContracts)(input.request.contracts, response);
261
284
  const responseRoot = buildResponseRoot(response);
@@ -1 +1 @@
1
- {"version":3,"file":"requestRunner.js","sourceRoot":"","sources":["../../src/runner/requestRunner.ts"],"names":[],"mappings":";;;AAAA,2EAAqE;AACrE,2DAMgC;AAChC,oEAA8D;AAC9D,uDAAsD;AACtD,+DAAsD;AAmBtD,sDAI8B;AAC9B,0DAAgE;AAGhE,MAAM,YAAY,GAAG,CAAC,GAA4B,EAA0B,EAAE;IAC5E,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,8EAA8E;AAC9E,4EAA4E;AAC5E,4EAA4E;AAC5E,yEAAyE;AACzE,MAAM,oBAAoB,GAAG,CAC3B,MAA0C,EACpB,EAAE,CACxB,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAEtF,MAAM,mBAAmB,GAAG,CAAC,KAA2B,EAA0B,EAAE;IAClF,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,SAAS;QAClD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,OAAmC,EAAsB,EAAE,CAAC,CAAC;IACzF,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,GAAG,EAAE,OAAO,CAAC,GAAG;IAChB,OAAO,EAAE,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC;IAC9C,KAAK,EAAE,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC;IAC1C,IAAI,EAAE;QACJ,IAAI,EAAE,KAAK;QACX,GAAG,EACD,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;YAC9B,CAAC,CAAC,OAAO,CAAC,IAAI;YACd,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI;gBACpB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC9B,CAAC,CAAC,EAAE;QACV,WAAW,EAAE,EAAE;KAChB;CACF,CAAC,CAAC;AAEH,6EAA6E;AAC7E,+DAA+D;AAC/D,MAAM,uBAAuB,GAAG,CAC9B,GAA2B,EAC3B,SAAmC,EAC7B,EAAE;IACR,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,QAAQ,CAAC,KAAK,KAAK,aAAa;YAAE,SAAS;QAC/C,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;AACH,CAAC,CAAC;AAEF,8EAA8E;AAC9E,0EAA0E;AAC1E,+BAA+B;AAC/B,MAAM,iBAAiB,GAAG,CACxB,QAAqC,EACL,EAAE;IAClC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3B,MAAM,QAAQ,GAAG,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnF,MAAM,OAAO,GACX,QAAQ,CAAC,OAAO,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,OAAO;QACL,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAE,IAAgC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,IAAI,EACF,QAAQ,IAAI,MAAM,IAAK,IAAgC;YACrD,CAAC,CAAE,IAAgC,CAAC,IAAI;YACxC,CAAC,CAAC,IAAI;QACV,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,IAAI,EAAE,QAAQ,CAAC,MAAM;QACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,UAAU,EAAE,QAAQ,CAAC,QAAQ;KAC9B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,KAAc,EAAU,EAAE;IAC/C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,OAA2C,EAC3C,OAAmD,EACf,EAAE;IACtC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAA,kCAAoB,EAAC,GAAG,EAAE,OAAO,CAAC;QAClC,IAAA,kCAAoB,EAAC,KAAK,EAAE,OAAO,CAAC;KACrC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CACpB,MAA0C,EAC1C,OAAmD,EACf,EAAE;IACtC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QAC3C,IAAA,kCAAoB,EAAC,GAAG,EAAE,OAAO,CAAC;QAClC,IAAA,kCAAoB,EAAC,KAAK,EAAE,OAAO,CAAC;KACrC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAClC,KAAc,EAId,EAAE;IACF,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEvE,OAAO;QACL,QAAQ,EAAE;YACR,MAAM,EAAE,CAAC;YACT,IAAI,EAAE;gBACJ,KAAK,EAAE,OAAO;aACf;YACD,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,CAAC;SACZ;QACD,aAAa,EAAE;YACb;gBACE,IAAI,EAAE,mBAAmB;gBACzB,MAAM,EAAE,MAAM;gBACd,OAAO;aACR;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,CAAC,EACpC,OAAO,EACP,GAAG,EACH,gBAAgB,GACA,EAAuB,EAAE;IACzC,MAAM,cAAc,GAAG;QACrB,GAAG;QACH,QAAQ,EAAE,gBAAgB;QAC1B,OAAO;KACR,CAAC;IAEF,yEAAyE;IACzE,uEAAuE;IACvE,yEAAyE;IACzE,uEAAuE;IACvE,wEAAwE;IACxE,wEAAwE;IACxE,uDAAuD;IACvD,MAAM,YAAY,GAAG,IAAA,kCAAoB,EAAC,IAAA,2BAAa,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC;IACtF,MAAM,aAAa,GAA4B,IAAA,kCAAoB,EAAC,YAAY,CAAC,CAAC,GAAG,CACnF,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAA,qCAAuB,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAA,qCAAuB,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CACnF,CAAC;IACF,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IACnE,MAAM,QAAQ,GACZ,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC;QACzC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,IAAA,kCAAoB,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9C,IAAA,qCAAuB,EAAC,IAAA,kCAAoB,EAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YACvE,IAAA,qCAAuB,EAAC,IAAA,kCAAoB,EAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;SAC1E,CAAC,CAAC;IACT,MAAM,UAAU,GAAG;QACjB,GAAG,aAAa;QAChB,GAAG,QAAQ;QACX,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;KACvC,CAAC;IAEF,OAAO;QACL,MAAM,EAAE,IAAA,kCAAoB,EAAC,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,WAAW,EAAE;QAC1E,GAAG,EAAE,IAAA,2BAAa,EAAC,YAAY,CAAC;QAChC,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC;QACxD,KAAK,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,aAAa;QAC7E,IAAI,EAAE,IAAA,kCAAoB,EAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC;KACzD,CAAC;AACJ,CAAC,CAAC;AAEF,2EAA2E;AAC3E,8EAA8E;AAC9E,2EAA2E;AAC3E,8DAA8D;AAC9D,MAAM,qBAAqB,GAAG,CAAC,KAQ9B,EAA8D,EAAE;IAC/D,MAAM,EAAE,GAAmC,KAAK,CAAC,eAAe;QAC9D,CAAC,CAAC;YACE,OAAO,EAAE,IAAA,yCAAwB,EAAC,KAAK,CAAC,WAAW,CAAC;YACpD,SAAS,EAAE,KAAK,CAAC,WAAW;YAC5B,UAAU,EAAE,KAAK,CAAC,YAAY;YAC9B,aAAa,EAAE;gBACb,UAAU,EAAE;oBACV,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,IAAI,SAAS;iBAC5E;gBACD,YAAY,EAAE;oBACZ,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,YAAY,IAAI,SAAS;iBAC9E;aACF;SACF;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,QAAQ,GACZ,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC;QAC1C,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YACtD,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;YACnD,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAE1D,MAAM,KAAK,GAAsC,QAAQ;QACvD,CAAC,CAAC,IAAA,qCAAoB,EAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;QACvD,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;AACvB,CAAC,CAAC;AAEK,MAAM,UAAU,GAAG,KAAK,EAC7B,KAAsB,EACK,EAAE;IAC7B,6EAA6E;IAC7E,2EAA2E;IAC3E,IAAI,cAAc,GAAG,4BAA4B,CAAC,KAAK,CAAC,CAAC;IACzD,MAAM,WAAW,GAAyB,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC;IAClE,MAAM,aAAa,GAAoC,KAAK,CAAC,aAAa,CAAC;IAC3E,MAAM,eAAe,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;IAExC,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;QAEhD,wEAAwE;QACxE,wEAAwE;QACxE,sEAAsE;QACtE,kDAAkD;QAClD,IAAI,qBAAqB,GAAiB,EAAE,CAAC;QAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,EAAE,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,MAAM,IAAA,2BAAa,EAAC;gBACpC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB;gBACtC,KAAK,EAAE,aAAa;gBACpB,QAAQ,EAAE,2BAA2B;gBACrC,YAAY,EAAE;oBACZ,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE;oBACvD,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC;oBAC5C,UAAU,EAAE;wBACV,GAAG,EAAE,IAAI;wBACT,IAAI,EAAE,IAAI;wBACV,MAAM,EAAE,IAAI;wBACZ,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;wBACzB,QAAQ,EAAE,IAAI;wBACd,SAAS,EAAE,IAAI;qBAChB;iBACF;aACF,CAAC,CAAC;YACH,uBAAuB,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;YAChE,qBAAqB,GAAG,SAAS,CAAC,WAA2B,CAAC;YAC9D,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO;gBACtC,CAAC,CAAC;oBACE,GAAG,KAAK,CAAC,OAAO;oBAChB,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM;oBAChC,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG;oBAC1B,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;oBACvD,KAAK,EAAE,mBAAmB,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;oBACnD,IAAI,EACF,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK;wBACnC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;wBAC5B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI;iBACzB;gBACH,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;YAClB,kEAAkE;YAClE,cAAc,GAAG,4BAA4B,CAAC;gBAC5C,GAAG,KAAK;gBACR,OAAO,EAAE,cAAc;aACxB,CAAC,CAAC;QACL,CAAC;QAED,2EAA2E;QAC3E,MAAM,WAAW,GAAG,eAAe;YACjC,CAAC,CAAC,MAAM,IAAA,qCAAoB,EAAC;gBACzB,WAAW;gBACX,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU;gBAC1C,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE;aACxD,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,QAAQ,GAAG,MAAM,IAAA,yCAAwB,EAAC;YAC9C,WAAW;YACX,YAAY,EAAE,WAAW,EAAE,YAAY;YACvC,QAAQ,EAAE,WAAW,EAAE,WAAW,IAAI,EAAE;YACxC,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE;SACxD,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAA,kCAAc,EAAC,cAAc,CAAC,CAAC;QACtD,MAAM,eAAe,GAAG,IAAA,wCAAiB,EAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC7E,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAEjD,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,eAAe;YAClC,CAAC,CAAC,MAAM,IAAA,qCAAoB,EAAC;gBACzB,WAAW;gBACX,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY;gBAC5C,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;aAC/D,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,SAAS,GAAG,MAAM,IAAA,yCAAwB,EAAC;YAC/C,WAAW;YACX,YAAY,EAAE,WAAW,EAAE,YAAY;YACvC,QAAQ,EAAE,WAAW,EAAE,YAAY,IAAI,EAAE;YACzC,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;SAC/D,CAAC,CAAC;QAEH,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,qBAAqB,CAAC;YAC1C,WAAW;YACX,eAAe;YACf,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,WAAW;YACX,YAAY;YACZ,QAAQ;YACR,SAAS;SACV,CAAC,CAAC;QAEH,MAAM,kBAAkB,GAAG,MAAM,IAAA,2BAAS,EAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE;YAC9D,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,QAAQ;YACR,OAAO,EAAE,cAAc;YACvB,EAAE;YACF,KAAK;YACL,aAAa;SACd,CAAC,CAAC;QAEH,OAAO;YACL,QAAQ;YACR,MAAM,EAAE;gBACN,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE;gBAC3B,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;gBAC/B,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,QAAQ;gBACR,OAAO,EAAE,cAAc;gBACvB,aAAa,EAAE,CAAC,GAAG,qBAAqB,EAAE,GAAG,kBAAkB,CAAC;gBAChE,eAAe;aAChB;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,2BAA2B,CAAC,KAAK,CAAC,CAAC;QAEnD,OAAO;YACL,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE;gBACN,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE;gBAC3B,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;gBAC/B,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAC/B,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,OAAO,EAAE,cAAc;gBACvB,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,eAAe,EAAE,EAAE;aACpB;SACF,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAnJW,QAAA,UAAU,cAmJrB"}
1
+ {"version":3,"file":"requestRunner.js","sourceRoot":"","sources":["../../src/runner/requestRunner.ts"],"names":[],"mappings":"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"}
@@ -155,12 +155,29 @@ const resolveRequestBody = (request, helpers, templateValues) => {
155
155
  }
156
156
  return helpers.resolveScenarioTemplateString(raw, templateValues);
157
157
  }
158
- return Object.fromEntries(request.body.formEntries
158
+ // Form modes produce REAL form payloads: urlencoded → URLSearchParams,
159
+ // formdata → FormData, both serialized by the driver (axios) which also
160
+ // owns the Content-Type. `append` keeps duplicate keys — valid form
161
+ // semantics an object map cannot express. Both globals exist in Node 18+
162
+ // and the browser, so the helpers stay isomorphic.
163
+ const formPairs = request.body.formEntries
159
164
  .filter((entry) => entry.enabled !== false && entry.key.trim())
160
165
  .map((entry) => [
161
166
  helpers.resolveScenarioTemplateString(entry.key, templateValues),
162
167
  helpers.resolveScenarioTemplateString(entry.value, templateValues),
163
- ]));
168
+ ]);
169
+ if (request.body.mode === "urlencoded") {
170
+ const params = new URLSearchParams();
171
+ for (const [key, value] of formPairs) {
172
+ params.append(key, value);
173
+ }
174
+ return params;
175
+ }
176
+ const form = new FormData();
177
+ for (const [key, value] of formPairs) {
178
+ form.append(key, value);
179
+ }
180
+ return form;
164
181
  };
165
182
  exports.resolveRequestBody = resolveRequestBody;
166
183
  // Build the script-shaped request state from a node config (initial state
@@ -249,6 +266,15 @@ const normalizeRequestForExecution = (request, auth, helpers, templateValues) =>
249
266
  // Later entries win a key collision: explicit rows (and auth) override
250
267
  // URL-derived params, which override variable-injected ones.
251
268
  const query = Object.fromEntries([...injectedPairs, ...urlPairs, ...rowPairs]);
269
+ // Multipart Content-Type must come from the driver — a user-set header
270
+ // carries no (or a stale) boundary and breaks the receiving parser.
271
+ if (mutableRequest.body.mode === "formdata") {
272
+ for (const key of Object.keys(headers)) {
273
+ if (key.toLowerCase() === "content-type") {
274
+ delete headers[key];
275
+ }
276
+ }
277
+ }
252
278
  // Auto Content-Type for raw bodies (parity with the desktop builder) so
253
279
  // an XML/text/html payload isn't sent as application/json. Only added
254
280
  // when the user hasn't set a Content-Type header explicitly.