@powerduck/openapi-cli 0.2.7 → 0.2.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -33
- package/dist/chunk-674PEZ5S.js +1 -0
- package/dist/cli.cjs +1 -1
- package/dist/cli.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +301 -56
- package/dist/index.d.ts +301 -56
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-6VN2PVGQ.js +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,6 +1,64 @@
|
|
|
1
|
+
import { RequestValues, createClient } from '@powerduck/openapi-request';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Assertion engine. Supports two sources:
|
|
5
|
+
* 1. Declarative `x-tests` array on the operation (simple, JSON-serializable).
|
|
6
|
+
* 2. Postman `x-postman-scripts.test` string (full pm.* API, executed by
|
|
7
|
+
* @powerduck/openapi-request's script sandbox and surfaced via onAssertion).
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
interface DeclarativeAssertion {
|
|
11
|
+
name: string;
|
|
12
|
+
/** What to assert. */
|
|
13
|
+
assert: "status" | "header" | "bodyContains" | "jsonPath" | "responseTime" | "bodyEquals";
|
|
14
|
+
/** Expected status code (for assert=status). */
|
|
15
|
+
value?: number;
|
|
16
|
+
/** Header name (for assert=header). */
|
|
17
|
+
key?: string;
|
|
18
|
+
/** Substring to check (for assert=header / bodyContains). */
|
|
19
|
+
contains?: string;
|
|
20
|
+
/** JSONPath expression (for assert=jsonPath). Simple dot-notation supported. */
|
|
21
|
+
path?: string;
|
|
22
|
+
/** Expected value at path (for assert=jsonPath). */
|
|
23
|
+
equals?: unknown;
|
|
24
|
+
/** Whether the path must exist (for assert=jsonPath). */
|
|
25
|
+
exists?: boolean;
|
|
26
|
+
/** Max response time in ms (for assert=responseTime). */
|
|
27
|
+
max?: number;
|
|
28
|
+
/** Expected body string (for assert=bodyEquals). */
|
|
29
|
+
body?: string;
|
|
30
|
+
}
|
|
31
|
+
interface AssertionContext {
|
|
32
|
+
status?: number;
|
|
33
|
+
headers?: Record<string, string>;
|
|
34
|
+
body?: unknown;
|
|
35
|
+
bodyText?: string;
|
|
36
|
+
durationMs: number;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Run declarative assertions against a response context.
|
|
40
|
+
*/
|
|
41
|
+
declare function runDeclarativeAssertions(assertions: DeclarativeAssertion[], ctx: AssertionContext): AssertionResult[];
|
|
42
|
+
/**
|
|
43
|
+
* Minimal JSONPath resolver supporting dot notation and array indices.
|
|
44
|
+
* e.g. "$.data.items[0].id" or "data.user.name"
|
|
45
|
+
*/
|
|
46
|
+
declare function resolveJsonPath(obj: unknown, path: string): unknown;
|
|
47
|
+
/**
|
|
48
|
+
* Extract declarative assertions from an OpenAPI operation.
|
|
49
|
+
* Looks for `x-tests` on the operation or path item.
|
|
50
|
+
*/
|
|
51
|
+
declare function extractAssertions(operation: any, pathItem?: any): DeclarativeAssertion[];
|
|
52
|
+
/**
|
|
53
|
+
* Extract Postman test scripts from an operation.
|
|
54
|
+
* Looks for `x-postman-scripts.test` on the operation.
|
|
55
|
+
*/
|
|
56
|
+
declare function extractPostmanScripts(operation: any): string | undefined;
|
|
57
|
+
|
|
1
58
|
/**
|
|
2
59
|
* Public types for @powerduck/openapi-cli.
|
|
3
60
|
*/
|
|
61
|
+
|
|
4
62
|
type ProtocolName = "http" | "sse" | "websocket" | "graphql" | "grpc" | "mcp";
|
|
5
63
|
type ReportFormat = "json" | "cli" | "html";
|
|
6
64
|
type TestStatus = "passed" | "failed" | "skipped" | "error";
|
|
@@ -80,6 +138,21 @@ interface AssertionResult {
|
|
|
80
138
|
passed: boolean;
|
|
81
139
|
error?: string;
|
|
82
140
|
}
|
|
141
|
+
/**
|
|
142
|
+
* Best-effort snapshot of the request actually sent, after variable
|
|
143
|
+
* substitution and header merging. Secrets are included as sent; callers
|
|
144
|
+
* decide what to redact before persisting or displaying.
|
|
145
|
+
*/
|
|
146
|
+
interface RequestSnapshot {
|
|
147
|
+
method?: string;
|
|
148
|
+
/** Fully resolved URL for HTTP-style protocols. */
|
|
149
|
+
url?: string;
|
|
150
|
+
headers?: Record<string, string>;
|
|
151
|
+
/** Request body, gRPC message, WS payload or MCP arguments. */
|
|
152
|
+
body?: unknown;
|
|
153
|
+
/** Protocol-specific target, e.g. "package.Service/Method" or an MCP tool. */
|
|
154
|
+
target?: string;
|
|
155
|
+
}
|
|
83
156
|
interface TestResult {
|
|
84
157
|
operationId: string;
|
|
85
158
|
path: string;
|
|
@@ -87,6 +160,8 @@ interface TestResult {
|
|
|
87
160
|
protocol: ProtocolName | string;
|
|
88
161
|
status: TestStatus;
|
|
89
162
|
durationMs: number;
|
|
163
|
+
/** Snapshot of the resolved request, when the protocol could capture it. */
|
|
164
|
+
request?: RequestSnapshot;
|
|
90
165
|
response?: {
|
|
91
166
|
status?: number;
|
|
92
167
|
statusText?: string;
|
|
@@ -118,11 +193,236 @@ interface TestReport {
|
|
|
118
193
|
generatedAt: string;
|
|
119
194
|
version: string;
|
|
120
195
|
}
|
|
196
|
+
/** Pull a value out of one step's response into the shared scenario scope. */
|
|
197
|
+
interface ScenarioExtract {
|
|
198
|
+
/** Variable name written into the scenario scope. */
|
|
199
|
+
name: string;
|
|
200
|
+
/** Response part to read from. */
|
|
201
|
+
from: "body" | "header" | "status";
|
|
202
|
+
/** Dot/JSONPath into the JSON body when from="body" (e.g. "$.data.token"). */
|
|
203
|
+
path?: string;
|
|
204
|
+
/** Response header name when from="header". */
|
|
205
|
+
key?: string;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* One row of data-driven values. Keys are variable names referenced as
|
|
209
|
+
* {{name}} in step values; values use the same string contract as scenario
|
|
210
|
+
* variables.
|
|
211
|
+
*/
|
|
212
|
+
type ScenarioDataRow = Record<string, string>;
|
|
213
|
+
/** Per-step request overrides and verification rules. */
|
|
214
|
+
interface ScenarioStepRequest {
|
|
215
|
+
/** Request values merged over the operation's sampled defaults. */
|
|
216
|
+
values?: RequestValues;
|
|
217
|
+
/** Override the resolved server URL for this step only. */
|
|
218
|
+
serverUrl?: string;
|
|
219
|
+
/** Declarative variables extracted after the response arrives. */
|
|
220
|
+
extract?: ScenarioExtract[];
|
|
221
|
+
/** Declarative assertions added on top of the operation's spec assertions. */
|
|
222
|
+
assertions?: DeclarativeAssertion[];
|
|
223
|
+
/**
|
|
224
|
+
* Step-level data rows. The step executes once per row; each row's values
|
|
225
|
+
* layer over the scenario scope only for that execution. Extracts from the
|
|
226
|
+
* last execution are written back into the scenario scope.
|
|
227
|
+
*/
|
|
228
|
+
data?: ScenarioDataRow[];
|
|
229
|
+
}
|
|
230
|
+
/** A single ordered operation invocation inside a scenario. */
|
|
231
|
+
interface ScenarioStep {
|
|
232
|
+
/** Reference as "METHOD /path" (e.g. "POST /login") or an operationId. */
|
|
233
|
+
ref?: string;
|
|
234
|
+
/** Explicit method, paired with `path`; an alternative to `ref`. */
|
|
235
|
+
method?: string;
|
|
236
|
+
/** Explicit path, paired with `method`; an alternative to `ref`. */
|
|
237
|
+
path?: string;
|
|
238
|
+
/** Human-readable step label shown in reports and live events. */
|
|
239
|
+
name?: string;
|
|
240
|
+
request?: ScenarioStepRequest;
|
|
241
|
+
/** Compile-time skip; the step is reported as skipped and never sent. */
|
|
242
|
+
skip?: boolean;
|
|
243
|
+
}
|
|
244
|
+
/** A named, ordered sequence of operations with shared variable scope. */
|
|
245
|
+
interface ScenarioDefinition {
|
|
246
|
+
name: string;
|
|
247
|
+
description?: string;
|
|
248
|
+
steps: ScenarioStep[];
|
|
249
|
+
/** Initial scenario variables, merged over CliConfig.variables. */
|
|
250
|
+
variables?: Record<string, string>;
|
|
251
|
+
/** Stop at the first failed/error step. Default: true. */
|
|
252
|
+
stopOnFailure?: boolean;
|
|
253
|
+
/**
|
|
254
|
+
* Scenario-level data rows. The whole step sequence runs once per row, each
|
|
255
|
+
* time with a fresh variable scope seeded from the row; extracts never leak
|
|
256
|
+
* across iterations. An empty/absent array means a single iteration.
|
|
257
|
+
*/
|
|
258
|
+
data?: ScenarioDataRow[];
|
|
259
|
+
/**
|
|
260
|
+
* Declared number of full-sequence repetitions. The effective iteration
|
|
261
|
+
* count is max(iterations, data.length); iterations beyond the data rows
|
|
262
|
+
* run with an empty scope. Useful for "run this flow N times" requests that
|
|
263
|
+
* carry no row-specific values. Defaults to 1 when omitted.
|
|
264
|
+
*/
|
|
265
|
+
iterations?: number;
|
|
266
|
+
}
|
|
267
|
+
type ScenarioStatus = "passed" | "failed" | "error" | "cancelled";
|
|
268
|
+
/** Result of executing one scenario step. */
|
|
269
|
+
interface ScenarioStepResult extends TestResult {
|
|
270
|
+
/** Zero-based position in the scenario. */
|
|
271
|
+
index: number;
|
|
272
|
+
/** Resolved operation reference ("METHOD /path"). */
|
|
273
|
+
ref: string;
|
|
274
|
+
name?: string;
|
|
275
|
+
/** Zero-based scenario-level iteration (definition.data row index). */
|
|
276
|
+
scenarioIteration?: number;
|
|
277
|
+
/** Total scenario-level iterations for this run. */
|
|
278
|
+
scenarioIterations?: number;
|
|
279
|
+
/** Zero-based step-level iteration (step.request.data row index). */
|
|
280
|
+
stepIteration?: number;
|
|
281
|
+
/** Total step-level iterations for this step (>=1). */
|
|
282
|
+
stepIterations?: number;
|
|
283
|
+
/** Variables written by this step (declarative extraction + scripts). */
|
|
284
|
+
extracted?: Record<string, string>;
|
|
285
|
+
/** Full scenario variable scope after this step completed. */
|
|
286
|
+
variablesAfter?: Record<string, string>;
|
|
287
|
+
/** True when the step never executed (explicit skip or halted by a prior failure). */
|
|
288
|
+
notRun?: boolean;
|
|
289
|
+
notRunReason?: string;
|
|
290
|
+
}
|
|
291
|
+
type ScenarioEventType = "scenario:start" | "step:start" | "step:finish" | "step:skip" | "scenario:finish" | "scenario:cancel";
|
|
292
|
+
/** Live progress event emitted while a scenario runs. */
|
|
293
|
+
interface ScenarioEvent {
|
|
294
|
+
type: ScenarioEventType;
|
|
295
|
+
scenario: string;
|
|
296
|
+
stepIndex?: number;
|
|
297
|
+
step?: ScenarioStepResult;
|
|
298
|
+
status?: ScenarioStatus;
|
|
299
|
+
message?: string;
|
|
300
|
+
/** Zero-based scenario-level iteration (definition.data row index). */
|
|
301
|
+
scenarioIteration?: number;
|
|
302
|
+
/** Total scenario-level iterations. */
|
|
303
|
+
scenarioIterations?: number;
|
|
304
|
+
/** Zero-based step-level iteration (step.request.data row index). */
|
|
305
|
+
stepIteration?: number;
|
|
306
|
+
/** Total step-level iterations for the current step. */
|
|
307
|
+
stepIterations?: number;
|
|
308
|
+
}
|
|
309
|
+
/** Iteration shape of a run: how many times the sequence and each step run. */
|
|
310
|
+
interface ScenarioIterations {
|
|
311
|
+
/** Number of full sequence runs (definition.data rows, defaults to 1). */
|
|
312
|
+
scenarioCount: number;
|
|
313
|
+
/** Number of executions per step index (step.request.data rows, >=1). */
|
|
314
|
+
stepCounts: number[];
|
|
315
|
+
}
|
|
316
|
+
/** Aggregate result of a full scenario execution. */
|
|
317
|
+
interface ScenarioReport {
|
|
318
|
+
name: string;
|
|
319
|
+
description?: string;
|
|
320
|
+
status: ScenarioStatus;
|
|
321
|
+
summary: TestSummary;
|
|
322
|
+
steps: ScenarioStepResult[];
|
|
323
|
+
/** Final shared variable scope. */
|
|
324
|
+
variables: Record<string, string>;
|
|
325
|
+
/** Declared execution grid (iteration counts) for report grouping. */
|
|
326
|
+
iterations?: ScenarioIterations;
|
|
327
|
+
config: CliConfig;
|
|
328
|
+
startedAt: string;
|
|
329
|
+
durationMs: number;
|
|
330
|
+
generatedAt: string;
|
|
331
|
+
version: string;
|
|
332
|
+
}
|
|
333
|
+
/** Options for {@link runScenario}. */
|
|
334
|
+
interface RunScenarioOptions {
|
|
335
|
+
/** Runner configuration (server, auth, proxy, TLS, timeouts, ...). */
|
|
336
|
+
config: CliConfig;
|
|
337
|
+
/** Pre-parsed spec document; when omitted it is loaded from config.specPath. */
|
|
338
|
+
spec?: unknown;
|
|
339
|
+
/** Live progress callback, invoked defensively (a throw never aborts the run). */
|
|
340
|
+
onEvent?: (event: ScenarioEvent) => void;
|
|
341
|
+
/** Aborting cancels the scenario; remaining steps are reported as skipped. */
|
|
342
|
+
signal?: AbortSignal;
|
|
343
|
+
}
|
|
121
344
|
|
|
345
|
+
/**
|
|
346
|
+
* Batch test runner. Iterates over all operations in an OpenAPI spec,
|
|
347
|
+
* executes each via @powerduck/openapi-request, runs assertions, and collects
|
|
348
|
+
* results. Supports HTTP, SSE, GraphQL, gRPC (unary/server-streaming),
|
|
349
|
+
* MCP (one-shot), and WebSocket (connect-send-close).
|
|
350
|
+
*/
|
|
351
|
+
|
|
352
|
+
interface OperationInfo {
|
|
353
|
+
path: string;
|
|
354
|
+
method: string;
|
|
355
|
+
operation: any;
|
|
356
|
+
pathItem: any;
|
|
357
|
+
operationId: string;
|
|
358
|
+
protocol: string;
|
|
359
|
+
}
|
|
360
|
+
/** Extract a readable message from any assertion error shape. */
|
|
361
|
+
declare function formatAssertionError(err: unknown): string | undefined;
|
|
362
|
+
/**
|
|
363
|
+
* Build implicit assertions when the user defined none.
|
|
364
|
+
*
|
|
365
|
+
* Conventional success criteria per protocol:
|
|
366
|
+
* HTTP / SSE : HTTP status 2xx (200-299)
|
|
367
|
+
* GraphQL : HTTP status 2xx AND no top-level "errors" array in the body
|
|
368
|
+
* gRPC : status code 0 (OK)
|
|
369
|
+
* MCP : JSON-RPC response has a "result" and no "error"
|
|
370
|
+
* WebSocket : connection reached the "open" state
|
|
371
|
+
*/
|
|
372
|
+
declare function buildImplicitAssertions(protocol: string, response: TestResult["response"]): Array<{
|
|
373
|
+
name: string;
|
|
374
|
+
passed: boolean;
|
|
375
|
+
error?: string;
|
|
376
|
+
}>;
|
|
122
377
|
/**
|
|
123
378
|
* Run all tests defined in the spec.
|
|
124
379
|
*/
|
|
125
380
|
declare function runTests(config: CliConfig): Promise<TestReport>;
|
|
381
|
+
declare function collectOperations(spec: any, config: CliConfig): OperationInfo[];
|
|
382
|
+
interface StepExecutionOptions {
|
|
383
|
+
config: CliConfig;
|
|
384
|
+
spec: any;
|
|
385
|
+
/** Active variable scope injected as {{name}} values. */
|
|
386
|
+
variables?: Record<string, string>;
|
|
387
|
+
/** Per-step request values (path/query/header/body). */
|
|
388
|
+
values?: any;
|
|
389
|
+
/** Override the resolved server URL for this invocation. */
|
|
390
|
+
serverUrl?: string;
|
|
391
|
+
/** Declarative assertions added beyond those declared on the operation. */
|
|
392
|
+
extraAssertions?: DeclarativeAssertion[];
|
|
393
|
+
}
|
|
394
|
+
interface StepExecution {
|
|
395
|
+
result: TestResult;
|
|
396
|
+
response: TestResult["response"];
|
|
397
|
+
/** Resolved request snapshot for the result card. */
|
|
398
|
+
request?: TestResult["request"];
|
|
399
|
+
/** Variable scope produced by Postman scripts during this step. */
|
|
400
|
+
env: Record<string, string>;
|
|
401
|
+
}
|
|
402
|
+
/**
|
|
403
|
+
* Execute a single operation with per-step overrides and return the result,
|
|
404
|
+
* the normalized response, and any variables produced by its scripts. Shared
|
|
405
|
+
* by the batch runner (runTests) and the ordered scenario engine (runScenario).
|
|
406
|
+
*/
|
|
407
|
+
declare function executeStep(client: ReturnType<typeof createClient>, op: OperationInfo, options: StepExecutionOptions): Promise<StepExecution>;
|
|
408
|
+
declare function buildSummary(results: TestResult[], durationMs: number): TestSummary;
|
|
409
|
+
|
|
410
|
+
interface ResolvedStep {
|
|
411
|
+
step: ScenarioStep;
|
|
412
|
+
op: OperationInfo;
|
|
413
|
+
ref: string;
|
|
414
|
+
}
|
|
415
|
+
/** Normalize a step reference to "METHOD /path". */
|
|
416
|
+
declare function stepRef(step: ScenarioStep): string;
|
|
417
|
+
/** Resolve every step reference up front so a bad plan fails before any call. */
|
|
418
|
+
declare function resolveSteps(definition: ScenarioDefinition, operations: OperationInfo[]): ResolvedStep[];
|
|
419
|
+
/** Read declared extracts out of a normalized response. Missing values are omitted. */
|
|
420
|
+
declare function applyExtracts(extracts: ScenarioExtract[] | undefined, response: TestResult["response"]): Record<string, string>;
|
|
421
|
+
/**
|
|
422
|
+
* Execute a scenario in order with a shared variable scope per scenario
|
|
423
|
+
* iteration. See the file header for data-driven iteration semantics.
|
|
424
|
+
*/
|
|
425
|
+
declare function runScenario(definition: ScenarioDefinition, options: RunScenarioOptions): Promise<ScenarioReport>;
|
|
126
426
|
|
|
127
427
|
declare const DEFAULT_CONFIG: Required<Pick<CliConfig, "outputDir" | "formats" | "concurrency" | "timeout" | "failOnError" | "grpcReflection" | "mcpTransport">>;
|
|
128
428
|
interface CliArgs {
|
|
@@ -168,61 +468,6 @@ declare function isRemoteSpec(specPath: string): boolean;
|
|
|
168
468
|
*/
|
|
169
469
|
declare function loadSpec(config: CliConfig): Promise<any>;
|
|
170
470
|
|
|
171
|
-
/**
|
|
172
|
-
* Assertion engine. Supports two sources:
|
|
173
|
-
* 1. Declarative `x-tests` array on the operation (simple, JSON-serializable).
|
|
174
|
-
* 2. Postman `x-postman-scripts.test` string (full pm.* API, executed by
|
|
175
|
-
* @powerduck/openapi-request's script sandbox and surfaced via onAssertion).
|
|
176
|
-
*/
|
|
177
|
-
|
|
178
|
-
interface DeclarativeAssertion {
|
|
179
|
-
name: string;
|
|
180
|
-
/** What to assert. */
|
|
181
|
-
assert: "status" | "header" | "bodyContains" | "jsonPath" | "responseTime" | "bodyEquals";
|
|
182
|
-
/** Expected status code (for assert=status). */
|
|
183
|
-
value?: number;
|
|
184
|
-
/** Header name (for assert=header). */
|
|
185
|
-
key?: string;
|
|
186
|
-
/** Substring to check (for assert=header / bodyContains). */
|
|
187
|
-
contains?: string;
|
|
188
|
-
/** JSONPath expression (for assert=jsonPath). Simple dot-notation supported. */
|
|
189
|
-
path?: string;
|
|
190
|
-
/** Expected value at path (for assert=jsonPath). */
|
|
191
|
-
equals?: unknown;
|
|
192
|
-
/** Whether the path must exist (for assert=jsonPath). */
|
|
193
|
-
exists?: boolean;
|
|
194
|
-
/** Max response time in ms (for assert=responseTime). */
|
|
195
|
-
max?: number;
|
|
196
|
-
/** Expected body string (for assert=bodyEquals). */
|
|
197
|
-
body?: string;
|
|
198
|
-
}
|
|
199
|
-
interface AssertionContext {
|
|
200
|
-
status?: number;
|
|
201
|
-
headers?: Record<string, string>;
|
|
202
|
-
body?: unknown;
|
|
203
|
-
bodyText?: string;
|
|
204
|
-
durationMs: number;
|
|
205
|
-
}
|
|
206
|
-
/**
|
|
207
|
-
* Run declarative assertions against a response context.
|
|
208
|
-
*/
|
|
209
|
-
declare function runDeclarativeAssertions(assertions: DeclarativeAssertion[], ctx: AssertionContext): AssertionResult[];
|
|
210
|
-
/**
|
|
211
|
-
* Minimal JSONPath resolver supporting dot notation and array indices.
|
|
212
|
-
* e.g. "$.data.items[0].id" or "data.user.name"
|
|
213
|
-
*/
|
|
214
|
-
declare function resolveJsonPath(obj: unknown, path: string): unknown;
|
|
215
|
-
/**
|
|
216
|
-
* Extract declarative assertions from an OpenAPI operation.
|
|
217
|
-
* Looks for `x-tests` on the operation or path item.
|
|
218
|
-
*/
|
|
219
|
-
declare function extractAssertions(operation: any, pathItem?: any): DeclarativeAssertion[];
|
|
220
|
-
/**
|
|
221
|
-
* Extract Postman test scripts from an operation.
|
|
222
|
-
* Looks for `x-postman-scripts.test` on the operation.
|
|
223
|
-
*/
|
|
224
|
-
declare function extractPostmanScripts(operation: any): string | undefined;
|
|
225
|
-
|
|
226
471
|
declare function generateJsonReport(report: TestReport, outputDir: string): string;
|
|
227
472
|
|
|
228
473
|
/**
|
|
@@ -238,4 +483,4 @@ declare function printCliReport(report: TestReport): string;
|
|
|
238
483
|
|
|
239
484
|
declare function generateHtmlReport(report: TestReport, outputDir: string): string;
|
|
240
485
|
|
|
241
|
-
export { type AssertionResult, type AuthConfig, type CliArgs, type CliConfig, DEFAULT_CONFIG, type DeclarativeAssertion, type FilterConfig, type ProtocolName, type ReportFormat, type TestReport, type TestResult, type TestStatus, type TestSummary, type TlsConfig, extractAssertions, extractPostmanScripts, generateCliReport, generateHtmlReport, generateJsonReport, isRemoteSpec, loadSpec, printCliReport, resolveConfig, resolveJsonPath, runDeclarativeAssertions, runTests };
|
|
486
|
+
export { type AssertionResult, type AuthConfig, type CliArgs, type CliConfig, DEFAULT_CONFIG, type DeclarativeAssertion, type FilterConfig, type ProtocolName, type ReportFormat, type RunScenarioOptions, type ScenarioDefinition, type ScenarioEvent, type ScenarioEventType, type ScenarioExtract, type ScenarioReport, type ScenarioStatus, type ScenarioStep, type ScenarioStepRequest, type ScenarioStepResult, type TestReport, type TestResult, type TestStatus, type TestSummary, type TlsConfig, applyExtracts, buildImplicitAssertions, buildSummary, collectOperations, executeStep, extractAssertions, extractPostmanScripts, formatAssertionError, generateCliReport, generateHtmlReport, generateJsonReport, isRemoteSpec, loadSpec, printCliReport, resolveConfig, resolveJsonPath, resolveSteps, runDeclarativeAssertions, runScenario, runTests, stepRef };
|