1
1
import { LanguageModelV2CallOptions } from '@ai-sdk/provider' ;
2
2
import { defaultSettingsMiddleware } from './default-settings-middleware' ;
3
+ import { MockLanguageModelV2 } from '../test/mock-language-model-v2' ;
3
4
4
5
const BASE_PARAMS : LanguageModelV2CallOptions = {
5
6
prompt : [
6
7
{ role : 'user' , content : [ { type : 'text' , text : 'Hello, world!' } ] } ,
7
8
] ,
8
9
} ;
9
10
11
+ const MOCK_MODEL = new MockLanguageModelV2 ( ) ;
12
+
10
13
describe ( 'defaultSettingsMiddleware' , ( ) => {
11
14
describe ( 'transformParams' , ( ) => {
12
15
it ( 'should apply default settings' , async ( ) => {
@@ -16,9 +19,8 @@ describe('defaultSettingsMiddleware', () => {
16
19
17
20
const result = await middleware . transformParams ! ( {
18
21
type : 'generate' ,
19
- params : {
20
- ...BASE_PARAMS ,
21
- } ,
22
+ params : { ...BASE_PARAMS } ,
23
+ model : MOCK_MODEL ,
22
24
} ) ;
23
25
24
26
expect ( result . temperature ) . toBe ( 0.7 ) ;
@@ -35,6 +37,7 @@ describe('defaultSettingsMiddleware', () => {
35
37
...BASE_PARAMS ,
36
38
temperature : 0.5 ,
37
39
} ,
40
+ model : MOCK_MODEL ,
38
41
} ) ;
39
42
40
43
expect ( result . temperature ) . toBe ( 0.5 ) ;
@@ -54,9 +57,8 @@ describe('defaultSettingsMiddleware', () => {
54
57
55
58
const result = await middleware . transformParams ! ( {
56
59
type : 'generate' ,
57
- params : {
58
- ...BASE_PARAMS ,
59
- } ,
60
+ params : { ...BASE_PARAMS } ,
61
+ model : MOCK_MODEL ,
60
62
} ) ;
61
63
62
64
expect ( result . temperature ) . toBe ( 0.7 ) ;
@@ -93,6 +95,7 @@ describe('defaultSettingsMiddleware', () => {
93
95
} ,
94
96
} ,
95
97
} ,
98
+ model : MOCK_MODEL ,
96
99
} ) ;
97
100
98
101
expect ( result . providerOptions ) . toEqual ( {
@@ -134,6 +137,7 @@ describe('defaultSettingsMiddleware', () => {
134
137
} ,
135
138
} ,
136
139
} ,
140
+ model : MOCK_MODEL ,
137
141
} ) ;
138
142
139
143
expect ( result . providerOptions ) . toEqual ( {
@@ -157,6 +161,7 @@ describe('defaultSettingsMiddleware', () => {
157
161
const result = await middleware . transformParams ! ( {
158
162
type : 'generate' ,
159
163
params : { ...BASE_PARAMS , temperature : 0 } ,
164
+ model : MOCK_MODEL ,
160
165
} ) ;
161
166
162
167
expect ( result . temperature ) . toBe ( 0 ) ;
@@ -170,6 +175,7 @@ describe('defaultSettingsMiddleware', () => {
170
175
const result = await middleware . transformParams ! ( {
171
176
type : 'generate' ,
172
177
params : { ...BASE_PARAMS , temperature : undefined } ,
178
+ model : MOCK_MODEL ,
173
179
} ) ;
174
180
175
181
expect ( result . temperature ) . toBe ( 0.7 ) ;
@@ -183,6 +189,7 @@ describe('defaultSettingsMiddleware', () => {
183
189
const result = await middleware . transformParams ! ( {
184
190
type : 'generate' ,
185
191
params : { ...BASE_PARAMS , temperature : null as any } ,
192
+ model : MOCK_MODEL ,
186
193
} ) ;
187
194
188
195
expect ( result . temperature ) . toBe ( null ) ;
@@ -196,6 +203,7 @@ describe('defaultSettingsMiddleware', () => {
196
203
const result = await middleware . transformParams ! ( {
197
204
type : 'generate' ,
198
205
params : { ...BASE_PARAMS , temperature : 0.9 } ,
206
+ model : MOCK_MODEL ,
199
207
} ) ;
200
208
201
209
expect ( result . temperature ) . toBe ( 0.9 ) ;
@@ -210,6 +218,7 @@ describe('defaultSettingsMiddleware', () => {
210
218
const result = await middleware . transformParams ! ( {
211
219
type : 'generate' ,
212
220
params : BASE_PARAMS ,
221
+ model : MOCK_MODEL ,
213
222
} ) ;
214
223
expect ( result . maxOutputTokens ) . toBe ( 100 ) ;
215
224
} ) ;
@@ -221,6 +230,7 @@ describe('defaultSettingsMiddleware', () => {
221
230
const result = await middleware . transformParams ! ( {
222
231
type : 'generate' ,
223
232
params : { ...BASE_PARAMS , maxOutputTokens : 50 } ,
233
+ model : MOCK_MODEL ,
224
234
} ) ;
225
235
expect ( result . maxOutputTokens ) . toBe ( 50 ) ;
226
236
} ) ;
@@ -232,6 +242,7 @@ describe('defaultSettingsMiddleware', () => {
232
242
const result = await middleware . transformParams ! ( {
233
243
type : 'generate' ,
234
244
params : BASE_PARAMS ,
245
+ model : MOCK_MODEL ,
235
246
} ) ;
236
247
expect ( result . stopSequences ) . toEqual ( [ 'stop' ] ) ;
237
248
} ) ;
@@ -243,6 +254,7 @@ describe('defaultSettingsMiddleware', () => {
243
254
const result = await middleware . transformParams ! ( {
244
255
type : 'generate' ,
245
256
params : { ...BASE_PARAMS , stopSequences : [ 'end' ] } ,
257
+ model : MOCK_MODEL ,
246
258
} ) ;
247
259
expect ( result . stopSequences ) . toEqual ( [ 'end' ] ) ;
248
260
} ) ;
@@ -252,6 +264,7 @@ describe('defaultSettingsMiddleware', () => {
252
264
const result = await middleware . transformParams ! ( {
253
265
type : 'generate' ,
254
266
params : BASE_PARAMS ,
267
+ model : MOCK_MODEL ,
255
268
} ) ;
256
269
expect ( result . topP ) . toBe ( 0.9 ) ;
257
270
} ) ;
@@ -261,6 +274,7 @@ describe('defaultSettingsMiddleware', () => {
261
274
const result = await middleware . transformParams ! ( {
262
275
type : 'generate' ,
263
276
params : { ...BASE_PARAMS , topP : 0.5 } ,
277
+ model : MOCK_MODEL ,
264
278
} ) ;
265
279
expect ( result . topP ) . toBe ( 0.5 ) ;
266
280
} ) ;
@@ -280,6 +294,7 @@ describe('defaultSettingsMiddleware', () => {
280
294
...BASE_PARAMS ,
281
295
headers : { 'X-Custom-Header' : 'test2' } ,
282
296
} ,
297
+ model : MOCK_MODEL ,
283
298
} ) ;
284
299
285
300
expect ( result . headers ) . toEqual ( {
@@ -295,6 +310,7 @@ describe('defaultSettingsMiddleware', () => {
295
310
const result = await middleware . transformParams ! ( {
296
311
type : 'generate' ,
297
312
params : { ...BASE_PARAMS , headers : { 'X-Param-Header' : 'param' } } ,
313
+ model : MOCK_MODEL ,
298
314
} ) ;
299
315
expect ( result . headers ) . toEqual ( { 'X-Param-Header' : 'param' } ) ;
300
316
} ) ;
@@ -306,6 +322,7 @@ describe('defaultSettingsMiddleware', () => {
306
322
const result = await middleware . transformParams ! ( {
307
323
type : 'generate' ,
308
324
params : { ...BASE_PARAMS , headers : { } } ,
325
+ model : MOCK_MODEL ,
309
326
} ) ;
310
327
expect ( result . headers ) . toEqual ( { 'X-Default-Header' : 'default' } ) ;
311
328
} ) ;
@@ -317,6 +334,7 @@ describe('defaultSettingsMiddleware', () => {
317
334
const result = await middleware . transformParams ! ( {
318
335
type : 'generate' ,
319
336
params : { ...BASE_PARAMS } ,
337
+ model : MOCK_MODEL ,
320
338
} ) ;
321
339
expect ( result . headers ) . toBeUndefined ( ) ;
322
340
} ) ;
@@ -333,6 +351,7 @@ describe('defaultSettingsMiddleware', () => {
333
351
...BASE_PARAMS ,
334
352
providerOptions : { openai : { user : 'param-user' } } ,
335
353
} ,
354
+ model : MOCK_MODEL ,
336
355
} ) ;
337
356
expect ( result . providerOptions ) . toEqual ( {
338
357
openai : { user : 'param-user' } ,
@@ -346,6 +365,7 @@ describe('defaultSettingsMiddleware', () => {
346
365
const result = await middleware . transformParams ! ( {
347
366
type : 'generate' ,
348
367
params : { ...BASE_PARAMS , providerOptions : { } } ,
368
+ model : MOCK_MODEL ,
349
369
} ) ;
350
370
expect ( result . providerOptions ) . toEqual ( {
351
371
anthropic : { user : 'default-user' } ,
@@ -359,6 +379,7 @@ describe('defaultSettingsMiddleware', () => {
359
379
const result = await middleware . transformParams ! ( {
360
380
type : 'generate' ,
361
381
params : { ...BASE_PARAMS } ,
382
+ model : MOCK_MODEL ,
362
383
} ) ;
363
384
expect ( result . providerOptions ) . toBeUndefined ( ) ;
364
385
} ) ;
0 commit comments