@ai-sdk/provider-utils 2.2.4 → 3.0.0-canary.1
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/CHANGELOG.md +15 -2
- package/dist/index.js +15 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +14 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -3
- package/test/dist/index.d.mts +1 -78
- package/test/dist/index.d.ts +1 -78
- package/test/dist/index.js +11 -318
- package/test/dist/index.js.map +1 -1
- package/test/dist/index.mjs +10 -313
- package/test/dist/index.mjs.map +1 -1
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@ai-sdk/provider-utils",
|
3
|
-
"version": "
|
3
|
+
"version": "3.0.0-canary.1",
|
4
4
|
"license": "Apache-2.0",
|
5
5
|
"sideEffects": false,
|
6
6
|
"main": "./dist/index.js",
|
@@ -26,8 +26,7 @@
|
|
26
26
|
}
|
27
27
|
},
|
28
28
|
"dependencies": {
|
29
|
-
"@ai-sdk/provider": "
|
30
|
-
"nanoid": "^3.3.8",
|
29
|
+
"@ai-sdk/provider": "2.0.0-canary.0",
|
31
30
|
"secure-json-parse": "^2.7.0"
|
32
31
|
},
|
33
32
|
"devDependencies": {
|
package/test/dist/index.d.mts
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
import { SetupServer } from 'msw/node';
|
2
1
|
import { JsonBodyType } from 'msw';
|
3
2
|
|
4
3
|
declare function convertArrayToAsyncIterable<T>(values: T[]): AsyncIterable<T>;
|
@@ -11,86 +10,10 @@ declare function convertReadableStreamToArray<T>(stream: ReadableStream<T>): Pro
|
|
11
10
|
|
12
11
|
declare function convertResponseStreamToArray(response: Response): Promise<string[]>;
|
13
12
|
|
14
|
-
/**
|
15
|
-
* @deprecated Use createTestServer instead
|
16
|
-
*/
|
17
|
-
declare class JsonTestServer {
|
18
|
-
readonly server: SetupServer;
|
19
|
-
responseHeaders: Record<string, string>;
|
20
|
-
responseBodyJson: any;
|
21
|
-
request: Request | undefined;
|
22
|
-
/**
|
23
|
-
* @deprecated Use createTestServer instead
|
24
|
-
*/
|
25
|
-
constructor(url: string);
|
26
|
-
getRequestBodyJson(): Promise<any>;
|
27
|
-
getRequestHeaders(): Promise<Record<string, string>>;
|
28
|
-
getRequestUrlSearchParams(): Promise<URLSearchParams>;
|
29
|
-
getRequestUrl(): Promise<string>;
|
30
|
-
setupTestEnvironment(): void;
|
31
|
-
}
|
32
|
-
|
33
13
|
declare function mockId({ prefix, }?: {
|
34
14
|
prefix?: string;
|
35
15
|
}): () => string;
|
36
16
|
|
37
|
-
/**
|
38
|
-
* @deprecated Use createTestServer instead
|
39
|
-
*/
|
40
|
-
declare class StreamingTestServer {
|
41
|
-
readonly server: SetupServer;
|
42
|
-
responseHeaders: Record<string, string>;
|
43
|
-
responseChunks: any[];
|
44
|
-
request: Request | undefined;
|
45
|
-
/**
|
46
|
-
* @deprecated Use createTestServer instead
|
47
|
-
*/
|
48
|
-
constructor(url: string);
|
49
|
-
getRequestBodyJson(): Promise<any>;
|
50
|
-
getRequestHeaders(): Promise<Record<string, string>>;
|
51
|
-
getRequestUrlSearchParams(): Promise<URLSearchParams>;
|
52
|
-
setupTestEnvironment(): void;
|
53
|
-
}
|
54
|
-
|
55
|
-
type TestServerJsonBodyType = JsonBodyType;
|
56
|
-
type TestServerResponse = {
|
57
|
-
url: string;
|
58
|
-
headers?: Record<string, string>;
|
59
|
-
} & ({
|
60
|
-
type: 'json-value';
|
61
|
-
content: TestServerJsonBodyType;
|
62
|
-
} | {
|
63
|
-
type: 'stream-values';
|
64
|
-
content: Array<string>;
|
65
|
-
} | {
|
66
|
-
type: 'controlled-stream';
|
67
|
-
id?: string;
|
68
|
-
} | {
|
69
|
-
type: 'error';
|
70
|
-
status: number;
|
71
|
-
content?: string;
|
72
|
-
});
|
73
|
-
declare class TestServerCall$1 {
|
74
|
-
private request;
|
75
|
-
constructor(request: Request);
|
76
|
-
getRequestBodyJson(): Promise<any>;
|
77
|
-
getRequestCredentials(): RequestCredentials;
|
78
|
-
getRequestHeaders(): Record<string, string>;
|
79
|
-
getRequestUrlSearchParams(): URLSearchParams;
|
80
|
-
}
|
81
|
-
declare function withTestServer(responses: Array<TestServerResponse> | TestServerResponse, testFunction: (options: {
|
82
|
-
calls: () => Array<TestServerCall$1>;
|
83
|
-
call: (index: number) => TestServerCall$1;
|
84
|
-
getStreamController: (id: string) => ReadableStreamDefaultController<string>;
|
85
|
-
streamController: ReadableStreamDefaultController<string>;
|
86
|
-
}) => Promise<void>): () => Promise<void>;
|
87
|
-
declare function describeWithTestServer(description: string, responses: Array<TestServerResponse> | TestServerResponse, testFunction: (options: {
|
88
|
-
calls: () => Array<TestServerCall$1>;
|
89
|
-
call: (index: number) => TestServerCall$1;
|
90
|
-
getStreamController: (id: string) => ReadableStreamDefaultController<string>;
|
91
|
-
streamController: ReadableStreamDefaultController<string>;
|
92
|
-
}) => void): void;
|
93
|
-
|
94
17
|
type UrlResponse = {
|
95
18
|
type: 'json-value';
|
96
19
|
headers?: Record<string, string>;
|
@@ -158,4 +81,4 @@ declare class TestResponseController {
|
|
158
81
|
close(): Promise<void>;
|
159
82
|
}
|
160
83
|
|
161
|
-
export {
|
84
|
+
export { TestResponseController, type UrlHandler, type UrlHandlers, type UrlResponse, convertArrayToAsyncIterable, convertArrayToReadableStream, convertAsyncIterableToArray, convertReadableStreamToArray, convertResponseStreamToArray, createTestServer, mockId };
|
package/test/dist/index.d.ts
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
import { SetupServer } from 'msw/node';
|
2
1
|
import { JsonBodyType } from 'msw';
|
3
2
|
|
4
3
|
declare function convertArrayToAsyncIterable<T>(values: T[]): AsyncIterable<T>;
|
@@ -11,86 +10,10 @@ declare function convertReadableStreamToArray<T>(stream: ReadableStream<T>): Pro
|
|
11
10
|
|
12
11
|
declare function convertResponseStreamToArray(response: Response): Promise<string[]>;
|
13
12
|
|
14
|
-
/**
|
15
|
-
* @deprecated Use createTestServer instead
|
16
|
-
*/
|
17
|
-
declare class JsonTestServer {
|
18
|
-
readonly server: SetupServer;
|
19
|
-
responseHeaders: Record<string, string>;
|
20
|
-
responseBodyJson: any;
|
21
|
-
request: Request | undefined;
|
22
|
-
/**
|
23
|
-
* @deprecated Use createTestServer instead
|
24
|
-
*/
|
25
|
-
constructor(url: string);
|
26
|
-
getRequestBodyJson(): Promise<any>;
|
27
|
-
getRequestHeaders(): Promise<Record<string, string>>;
|
28
|
-
getRequestUrlSearchParams(): Promise<URLSearchParams>;
|
29
|
-
getRequestUrl(): Promise<string>;
|
30
|
-
setupTestEnvironment(): void;
|
31
|
-
}
|
32
|
-
|
33
13
|
declare function mockId({ prefix, }?: {
|
34
14
|
prefix?: string;
|
35
15
|
}): () => string;
|
36
16
|
|
37
|
-
/**
|
38
|
-
* @deprecated Use createTestServer instead
|
39
|
-
*/
|
40
|
-
declare class StreamingTestServer {
|
41
|
-
readonly server: SetupServer;
|
42
|
-
responseHeaders: Record<string, string>;
|
43
|
-
responseChunks: any[];
|
44
|
-
request: Request | undefined;
|
45
|
-
/**
|
46
|
-
* @deprecated Use createTestServer instead
|
47
|
-
*/
|
48
|
-
constructor(url: string);
|
49
|
-
getRequestBodyJson(): Promise<any>;
|
50
|
-
getRequestHeaders(): Promise<Record<string, string>>;
|
51
|
-
getRequestUrlSearchParams(): Promise<URLSearchParams>;
|
52
|
-
setupTestEnvironment(): void;
|
53
|
-
}
|
54
|
-
|
55
|
-
type TestServerJsonBodyType = JsonBodyType;
|
56
|
-
type TestServerResponse = {
|
57
|
-
url: string;
|
58
|
-
headers?: Record<string, string>;
|
59
|
-
} & ({
|
60
|
-
type: 'json-value';
|
61
|
-
content: TestServerJsonBodyType;
|
62
|
-
} | {
|
63
|
-
type: 'stream-values';
|
64
|
-
content: Array<string>;
|
65
|
-
} | {
|
66
|
-
type: 'controlled-stream';
|
67
|
-
id?: string;
|
68
|
-
} | {
|
69
|
-
type: 'error';
|
70
|
-
status: number;
|
71
|
-
content?: string;
|
72
|
-
});
|
73
|
-
declare class TestServerCall$1 {
|
74
|
-
private request;
|
75
|
-
constructor(request: Request);
|
76
|
-
getRequestBodyJson(): Promise<any>;
|
77
|
-
getRequestCredentials(): RequestCredentials;
|
78
|
-
getRequestHeaders(): Record<string, string>;
|
79
|
-
getRequestUrlSearchParams(): URLSearchParams;
|
80
|
-
}
|
81
|
-
declare function withTestServer(responses: Array<TestServerResponse> | TestServerResponse, testFunction: (options: {
|
82
|
-
calls: () => Array<TestServerCall$1>;
|
83
|
-
call: (index: number) => TestServerCall$1;
|
84
|
-
getStreamController: (id: string) => ReadableStreamDefaultController<string>;
|
85
|
-
streamController: ReadableStreamDefaultController<string>;
|
86
|
-
}) => Promise<void>): () => Promise<void>;
|
87
|
-
declare function describeWithTestServer(description: string, responses: Array<TestServerResponse> | TestServerResponse, testFunction: (options: {
|
88
|
-
calls: () => Array<TestServerCall$1>;
|
89
|
-
call: (index: number) => TestServerCall$1;
|
90
|
-
getStreamController: (id: string) => ReadableStreamDefaultController<string>;
|
91
|
-
streamController: ReadableStreamDefaultController<string>;
|
92
|
-
}) => void): void;
|
93
|
-
|
94
17
|
type UrlResponse = {
|
95
18
|
type: 'json-value';
|
96
19
|
headers?: Record<string, string>;
|
@@ -158,4 +81,4 @@ declare class TestResponseController {
|
|
158
81
|
close(): Promise<void>;
|
159
82
|
}
|
160
83
|
|
161
|
-
export {
|
84
|
+
export { TestResponseController, type UrlHandler, type UrlHandlers, type UrlResponse, convertArrayToAsyncIterable, convertArrayToReadableStream, convertAsyncIterableToArray, convertReadableStreamToArray, convertResponseStreamToArray, createTestServer, mockId };
|
package/test/dist/index.js
CHANGED
@@ -57,8 +57,6 @@ var __privateMethod = (obj, member, method) => {
|
|
57
57
|
// src/test/index.ts
|
58
58
|
var test_exports = {};
|
59
59
|
__export(test_exports, {
|
60
|
-
JsonTestServer: () => JsonTestServer,
|
61
|
-
StreamingTestServer: () => StreamingTestServer,
|
62
60
|
TestResponseController: () => TestResponseController,
|
63
61
|
convertArrayToAsyncIterable: () => convertArrayToAsyncIterable,
|
64
62
|
convertArrayToReadableStream: () => convertArrayToReadableStream,
|
@@ -66,9 +64,7 @@ __export(test_exports, {
|
|
66
64
|
convertReadableStreamToArray: () => convertReadableStreamToArray,
|
67
65
|
convertResponseStreamToArray: () => convertResponseStreamToArray,
|
68
66
|
createTestServer: () => createTestServer,
|
69
|
-
|
70
|
-
mockId: () => mockId,
|
71
|
-
withTestServer: () => withTestServer
|
67
|
+
mockId: () => mockId
|
72
68
|
});
|
73
69
|
module.exports = __toCommonJS(test_exports);
|
74
70
|
|
@@ -127,6 +123,14 @@ async function convertResponseStreamToArray(response) {
|
|
127
123
|
);
|
128
124
|
}
|
129
125
|
|
126
|
+
// src/test/mock-id.ts
|
127
|
+
function mockId({
|
128
|
+
prefix = "id"
|
129
|
+
} = {}) {
|
130
|
+
let counter = 0;
|
131
|
+
return () => `${prefix}-${counter++}`;
|
132
|
+
}
|
133
|
+
|
130
134
|
// ../../node_modules/.pnpm/outvariant@1.4.3/node_modules/outvariant/lib/index.mjs
|
131
135
|
var POSITIONALS_EXP = /(%?)(%([sdijo]))/g;
|
132
136
|
function serializePositional(positional, flag) {
|
@@ -18489,315 +18493,8 @@ var setupServer = (...handlers) => {
|
|
18489
18493
|
return new SetupServerApi(handlers);
|
18490
18494
|
};
|
18491
18495
|
|
18492
|
-
// src/test/json-test-server.ts
|
18493
|
-
var JsonTestServer = class {
|
18494
|
-
/**
|
18495
|
-
* @deprecated Use createTestServer instead
|
18496
|
-
*/
|
18497
|
-
constructor(url) {
|
18498
|
-
this.responseHeaders = {};
|
18499
|
-
this.responseBodyJson = {};
|
18500
|
-
const responseBodyJson = () => this.responseBodyJson;
|
18501
|
-
this.server = setupServer(
|
18502
|
-
http.post(url, ({ request }) => {
|
18503
|
-
this.request = request;
|
18504
|
-
return HttpResponse.json(responseBodyJson(), {
|
18505
|
-
headers: {
|
18506
|
-
"Content-Type": "application/json",
|
18507
|
-
...this.responseHeaders
|
18508
|
-
}
|
18509
|
-
});
|
18510
|
-
})
|
18511
|
-
);
|
18512
|
-
}
|
18513
|
-
async getRequestBodyJson() {
|
18514
|
-
expect(this.request).toBeDefined();
|
18515
|
-
return JSON.parse(await this.request.text());
|
18516
|
-
}
|
18517
|
-
async getRequestHeaders() {
|
18518
|
-
expect(this.request).toBeDefined();
|
18519
|
-
const requestHeaders = this.request.headers;
|
18520
|
-
const headersObject = {};
|
18521
|
-
requestHeaders.forEach((value, key) => {
|
18522
|
-
headersObject[key] = value;
|
18523
|
-
});
|
18524
|
-
return headersObject;
|
18525
|
-
}
|
18526
|
-
async getRequestUrlSearchParams() {
|
18527
|
-
expect(this.request).toBeDefined();
|
18528
|
-
return new URL(this.request.url).searchParams;
|
18529
|
-
}
|
18530
|
-
async getRequestUrl() {
|
18531
|
-
expect(this.request).toBeDefined();
|
18532
|
-
return new URL(this.request.url).toString();
|
18533
|
-
}
|
18534
|
-
setupTestEnvironment() {
|
18535
|
-
beforeAll(() => this.server.listen());
|
18536
|
-
beforeEach(() => {
|
18537
|
-
this.responseBodyJson = {};
|
18538
|
-
this.request = void 0;
|
18539
|
-
});
|
18540
|
-
afterEach(() => this.server.resetHandlers());
|
18541
|
-
afterAll(() => this.server.close());
|
18542
|
-
}
|
18543
|
-
};
|
18544
|
-
|
18545
|
-
// src/test/mock-id.ts
|
18546
|
-
function mockId({
|
18547
|
-
prefix = "id"
|
18548
|
-
} = {}) {
|
18549
|
-
let counter = 0;
|
18550
|
-
return () => `${prefix}-${counter++}`;
|
18551
|
-
}
|
18552
|
-
|
18553
|
-
// src/test/streaming-test-server.ts
|
18554
|
-
var StreamingTestServer = class {
|
18555
|
-
/**
|
18556
|
-
* @deprecated Use createTestServer instead
|
18557
|
-
*/
|
18558
|
-
constructor(url) {
|
18559
|
-
this.responseHeaders = {};
|
18560
|
-
this.responseChunks = [];
|
18561
|
-
const responseChunks = () => this.responseChunks;
|
18562
|
-
this.server = setupServer(
|
18563
|
-
http.post(url, ({ request }) => {
|
18564
|
-
this.request = request;
|
18565
|
-
const encoder2 = new TextEncoder();
|
18566
|
-
const stream = new ReadableStream({
|
18567
|
-
async start(controller) {
|
18568
|
-
try {
|
18569
|
-
for (const chunk of responseChunks()) {
|
18570
|
-
controller.enqueue(encoder2.encode(chunk));
|
18571
|
-
}
|
18572
|
-
} finally {
|
18573
|
-
controller.close();
|
18574
|
-
}
|
18575
|
-
}
|
18576
|
-
});
|
18577
|
-
return new HttpResponse(stream, {
|
18578
|
-
status: 200,
|
18579
|
-
headers: {
|
18580
|
-
"Content-Type": "text/event-stream",
|
18581
|
-
"Cache-Control": "no-cache",
|
18582
|
-
Connection: "keep-alive",
|
18583
|
-
...this.responseHeaders
|
18584
|
-
}
|
18585
|
-
});
|
18586
|
-
})
|
18587
|
-
);
|
18588
|
-
}
|
18589
|
-
async getRequestBodyJson() {
|
18590
|
-
expect(this.request).toBeDefined();
|
18591
|
-
return JSON.parse(await this.request.text());
|
18592
|
-
}
|
18593
|
-
async getRequestHeaders() {
|
18594
|
-
expect(this.request).toBeDefined();
|
18595
|
-
const requestHeaders = this.request.headers;
|
18596
|
-
const headersObject = {};
|
18597
|
-
requestHeaders.forEach((value, key) => {
|
18598
|
-
headersObject[key] = value;
|
18599
|
-
});
|
18600
|
-
return headersObject;
|
18601
|
-
}
|
18602
|
-
async getRequestUrlSearchParams() {
|
18603
|
-
expect(this.request).toBeDefined();
|
18604
|
-
return new URL(this.request.url).searchParams;
|
18605
|
-
}
|
18606
|
-
setupTestEnvironment() {
|
18607
|
-
beforeAll(() => this.server.listen());
|
18608
|
-
beforeEach(() => {
|
18609
|
-
this.responseChunks = [];
|
18610
|
-
this.request = void 0;
|
18611
|
-
});
|
18612
|
-
afterEach(() => this.server.resetHandlers());
|
18613
|
-
afterAll(() => this.server.close());
|
18614
|
-
}
|
18615
|
-
};
|
18616
|
-
|
18617
18496
|
// src/test/test-server.ts
|
18618
18497
|
var TestServerCall = class {
|
18619
|
-
constructor(request) {
|
18620
|
-
this.request = request;
|
18621
|
-
}
|
18622
|
-
async getRequestBodyJson() {
|
18623
|
-
expect(this.request).toBeDefined();
|
18624
|
-
return JSON.parse(await this.request.text());
|
18625
|
-
}
|
18626
|
-
getRequestCredentials() {
|
18627
|
-
expect(this.request).toBeDefined();
|
18628
|
-
return this.request.credentials;
|
18629
|
-
}
|
18630
|
-
getRequestHeaders() {
|
18631
|
-
expect(this.request).toBeDefined();
|
18632
|
-
const requestHeaders = this.request.headers;
|
18633
|
-
const headersObject = {};
|
18634
|
-
requestHeaders.forEach((value, key) => {
|
18635
|
-
headersObject[key] = value;
|
18636
|
-
});
|
18637
|
-
return headersObject;
|
18638
|
-
}
|
18639
|
-
getRequestUrlSearchParams() {
|
18640
|
-
expect(this.request).toBeDefined();
|
18641
|
-
return new URL(this.request.url).searchParams;
|
18642
|
-
}
|
18643
|
-
};
|
18644
|
-
function createServer({
|
18645
|
-
responses,
|
18646
|
-
pushCall,
|
18647
|
-
pushController
|
18648
|
-
}) {
|
18649
|
-
const responsesArray = Array.isArray(responses) ? responses : [responses];
|
18650
|
-
const responsesByUrl = responsesArray.reduce(
|
18651
|
-
(responsesByUrl2, response) => {
|
18652
|
-
if (!responsesByUrl2[response.url]) {
|
18653
|
-
responsesByUrl2[response.url] = [];
|
18654
|
-
}
|
18655
|
-
responsesByUrl2[response.url].push(response);
|
18656
|
-
return responsesByUrl2;
|
18657
|
-
},
|
18658
|
-
{}
|
18659
|
-
);
|
18660
|
-
const streams = {};
|
18661
|
-
responsesArray.filter(
|
18662
|
-
(response) => response.type === "controlled-stream"
|
18663
|
-
).forEach((response) => {
|
18664
|
-
var _a4, _b2;
|
18665
|
-
let streamController;
|
18666
|
-
const stream = new ReadableStream({
|
18667
|
-
start(controller) {
|
18668
|
-
streamController = controller;
|
18669
|
-
}
|
18670
|
-
});
|
18671
|
-
pushController((_a4 = response.id) != null ? _a4 : "", () => streamController);
|
18672
|
-
streams[(_b2 = response.id) != null ? _b2 : ""] = stream;
|
18673
|
-
});
|
18674
|
-
const urlInvocationCounts = Object.fromEntries(
|
18675
|
-
Object.entries(responsesByUrl).map(([url]) => [url, 0])
|
18676
|
-
);
|
18677
|
-
return setupServer(
|
18678
|
-
...Object.entries(responsesByUrl).map(([url, responses2]) => {
|
18679
|
-
return http.post(url, ({ request }) => {
|
18680
|
-
var _a4, _b2;
|
18681
|
-
pushCall(new TestServerCall(request));
|
18682
|
-
const invocationCount = urlInvocationCounts[url]++;
|
18683
|
-
const response = responses2[
|
18684
|
-
// TODO bug needs to be >=
|
18685
|
-
invocationCount > responses2.length ? responses2.length - 1 : invocationCount
|
18686
|
-
];
|
18687
|
-
switch (response.type) {
|
18688
|
-
case "json-value":
|
18689
|
-
return HttpResponse.json(response.content, {
|
18690
|
-
status: 200,
|
18691
|
-
headers: {
|
18692
|
-
"Content-Type": "application/json",
|
18693
|
-
...response.headers
|
18694
|
-
}
|
18695
|
-
});
|
18696
|
-
case "stream-values":
|
18697
|
-
return new HttpResponse(
|
18698
|
-
convertArrayToReadableStream(response.content).pipeThrough(
|
18699
|
-
new TextEncoderStream()
|
18700
|
-
),
|
18701
|
-
{
|
18702
|
-
status: 200,
|
18703
|
-
headers: {
|
18704
|
-
"Content-Type": "text/event-stream",
|
18705
|
-
"Cache-Control": "no-cache",
|
18706
|
-
Connection: "keep-alive",
|
18707
|
-
...response.headers
|
18708
|
-
}
|
18709
|
-
}
|
18710
|
-
);
|
18711
|
-
case "controlled-stream": {
|
18712
|
-
return new HttpResponse(
|
18713
|
-
streams[(_a4 = response.id) != null ? _a4 : ""].pipeThrough(new TextEncoderStream()),
|
18714
|
-
{
|
18715
|
-
status: 200,
|
18716
|
-
headers: {
|
18717
|
-
"Content-Type": "text/event-stream",
|
18718
|
-
"Cache-Control": "no-cache",
|
18719
|
-
Connection: "keep-alive",
|
18720
|
-
...response.headers
|
18721
|
-
}
|
18722
|
-
}
|
18723
|
-
);
|
18724
|
-
}
|
18725
|
-
case "error":
|
18726
|
-
return HttpResponse.text((_b2 = response.content) != null ? _b2 : "Error", {
|
18727
|
-
status: response.status,
|
18728
|
-
headers: {
|
18729
|
-
...response.headers
|
18730
|
-
}
|
18731
|
-
});
|
18732
|
-
}
|
18733
|
-
});
|
18734
|
-
})
|
18735
|
-
);
|
18736
|
-
}
|
18737
|
-
function withTestServer(responses, testFunction) {
|
18738
|
-
return async () => {
|
18739
|
-
const calls = [];
|
18740
|
-
const controllers = {};
|
18741
|
-
const server = createServer({
|
18742
|
-
responses,
|
18743
|
-
pushCall: (call) => calls.push(call),
|
18744
|
-
pushController: (id, controller) => {
|
18745
|
-
controllers[id] = controller;
|
18746
|
-
}
|
18747
|
-
});
|
18748
|
-
try {
|
18749
|
-
server.listen();
|
18750
|
-
await testFunction({
|
18751
|
-
calls: () => calls,
|
18752
|
-
call: (index) => calls[index],
|
18753
|
-
getStreamController: (id) => {
|
18754
|
-
return controllers[id]();
|
18755
|
-
},
|
18756
|
-
get streamController() {
|
18757
|
-
return controllers[""]();
|
18758
|
-
}
|
18759
|
-
});
|
18760
|
-
} finally {
|
18761
|
-
server.close();
|
18762
|
-
}
|
18763
|
-
};
|
18764
|
-
}
|
18765
|
-
function describeWithTestServer(description, responses, testFunction) {
|
18766
|
-
describe(description, () => {
|
18767
|
-
let calls;
|
18768
|
-
let controllers;
|
18769
|
-
let server;
|
18770
|
-
beforeAll(() => {
|
18771
|
-
server = createServer({
|
18772
|
-
responses,
|
18773
|
-
pushCall: (call) => calls.push(call),
|
18774
|
-
pushController: (id, controller) => {
|
18775
|
-
controllers[id] = controller;
|
18776
|
-
}
|
18777
|
-
});
|
18778
|
-
server.listen();
|
18779
|
-
});
|
18780
|
-
beforeEach(() => {
|
18781
|
-
calls = [];
|
18782
|
-
controllers = {};
|
18783
|
-
server.resetHandlers();
|
18784
|
-
});
|
18785
|
-
afterAll(() => {
|
18786
|
-
server.close();
|
18787
|
-
});
|
18788
|
-
testFunction({
|
18789
|
-
calls: () => calls,
|
18790
|
-
call: (index) => calls[index],
|
18791
|
-
getStreamController: (id) => controllers[id](),
|
18792
|
-
get streamController() {
|
18793
|
-
return controllers[""]();
|
18794
|
-
}
|
18795
|
-
});
|
18796
|
-
});
|
18797
|
-
}
|
18798
|
-
|
18799
|
-
// src/test/unified-test-server.ts
|
18800
|
-
var TestServerCall2 = class {
|
18801
18498
|
constructor(request) {
|
18802
18499
|
this.request = request;
|
18803
18500
|
}
|
@@ -18832,7 +18529,7 @@ function createTestServer(routes) {
|
|
18832
18529
|
return http.all(url, ({ request }) => {
|
18833
18530
|
var _a4, _b2, _c2;
|
18834
18531
|
const callNumber = calls.length;
|
18835
|
-
calls.push(new
|
18532
|
+
calls.push(new TestServerCall(request));
|
18836
18533
|
const response = typeof handler.response === "function" ? handler.response({ callNumber }) : Array.isArray(handler.response) ? handler.response[callNumber] : handler.response;
|
18837
18534
|
if (response === void 0) {
|
18838
18535
|
return HttpResponse.json({ error: "Not Found" }, { status: 404 });
|
@@ -18940,8 +18637,6 @@ var TestResponseController = class {
|
|
18940
18637
|
};
|
18941
18638
|
// Annotate the CommonJS export names for ESM import in node:
|
18942
18639
|
0 && (module.exports = {
|
18943
|
-
JsonTestServer,
|
18944
|
-
StreamingTestServer,
|
18945
18640
|
TestResponseController,
|
18946
18641
|
convertArrayToAsyncIterable,
|
18947
18642
|
convertArrayToReadableStream,
|
@@ -18949,9 +18644,7 @@ var TestResponseController = class {
|
|
18949
18644
|
convertReadableStreamToArray,
|
18950
18645
|
convertResponseStreamToArray,
|
18951
18646
|
createTestServer,
|
18952
|
-
|
18953
|
-
mockId,
|
18954
|
-
withTestServer
|
18647
|
+
mockId
|
18955
18648
|
});
|
18956
18649
|
/*! Bundled license information:
|
18957
18650
|
|