Skip to content

Commit 2c68f5f

Browse files
committed
fix failing tests
1 parent ed7b652 commit 2c68f5f

File tree

1 file changed

+51
-39
lines changed

1 file changed

+51
-39
lines changed

packages/sdk/server-ai/__tests__/LDAIConfigTrackerImpl.test.ts

Lines changed: 51 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ import { LDFeedbackKind } from '../src/api/metrics';
44
import { LDAIConfigTrackerImpl } from '../src/LDAIConfigTrackerImpl';
55
import { LDClientMin } from '../src/LDClientMin';
66

7+
// eslint-disable-next-line @typescript-eslint/no-var-requires
8+
const { version: aiSdkVersion } = require('../package.json');
9+
710
const mockTrack = jest.fn();
811
const mockVariation = jest.fn();
912
const mockLdClient: LDClientMin = {
@@ -18,6 +21,15 @@ const version = 1;
1821
const modelName = 'test-model';
1922
const providerName = 'test-provider';
2023

24+
const getExpectedTrackData = () => ({
25+
configKey,
26+
variationKey,
27+
version,
28+
modelName,
29+
providerName,
30+
aiSdkVersion,
31+
});
32+
2133
beforeEach(() => {
2234
jest.clearAllMocks();
2335
});
@@ -37,7 +49,7 @@ it('tracks duration', () => {
3749
expect(mockTrack).toHaveBeenCalledWith(
3850
'$ld:ai:duration:total',
3951
testContext,
40-
{ configKey, variationKey, version, modelName, providerName },
52+
getExpectedTrackData(),
4153
1000,
4254
);
4355
});
@@ -60,7 +72,7 @@ it('tracks duration of async function', async () => {
6072
expect(mockTrack).toHaveBeenCalledWith(
6173
'$ld:ai:duration:total',
6274
testContext,
63-
{ configKey, variationKey, version, modelName, providerName },
75+
getExpectedTrackData(),
6476
1000,
6577
);
6678
});
@@ -80,7 +92,7 @@ it('tracks time to first token', () => {
8092
expect(mockTrack).toHaveBeenCalledWith(
8193
'$ld:ai:tokens:ttf',
8294
testContext,
83-
{ configKey, variationKey, version, modelName, providerName },
95+
getExpectedTrackData(),
8496
1000,
8597
);
8698
});
@@ -100,7 +112,7 @@ it('tracks positive feedback', () => {
100112
expect(mockTrack).toHaveBeenCalledWith(
101113
'$ld:ai:feedback:user:positive',
102114
testContext,
103-
{ configKey, variationKey, version, modelName, providerName },
115+
getExpectedTrackData(),
104116
1,
105117
);
106118
});
@@ -120,7 +132,7 @@ it('tracks negative feedback', () => {
120132
expect(mockTrack).toHaveBeenCalledWith(
121133
'$ld:ai:feedback:user:negative',
122134
testContext,
123-
{ configKey, variationKey, version, modelName, providerName },
135+
getExpectedTrackData(),
124136
1,
125137
);
126138
});
@@ -140,7 +152,7 @@ it('tracks success', () => {
140152
expect(mockTrack).toHaveBeenCalledWith(
141153
'$ld:ai:generation:success',
142154
testContext,
143-
{ configKey, variationKey, version, modelName, providerName },
155+
getExpectedTrackData(),
144156
1,
145157
);
146158
});
@@ -172,14 +184,14 @@ it('tracks OpenAI usage', async () => {
172184
expect(mockTrack).toHaveBeenCalledWith(
173185
'$ld:ai:duration:total',
174186
testContext,
175-
{ configKey, variationKey, version, modelName, providerName },
187+
getExpectedTrackData(),
176188
1000,
177189
);
178190

179191
expect(mockTrack).toHaveBeenCalledWith(
180192
'$ld:ai:generation:success',
181193
testContext,
182-
{ configKey, variationKey, version, modelName, providerName },
194+
getExpectedTrackData(),
183195
1,
184196
);
185197

@@ -193,21 +205,21 @@ it('tracks OpenAI usage', async () => {
193205
expect(mockTrack).toHaveBeenCalledWith(
194206
'$ld:ai:tokens:total',
195207
testContext,
196-
{ configKey, variationKey, version, modelName, providerName },
208+
getExpectedTrackData(),
197209
TOTAL_TOKENS,
198210
);
199211

200212
expect(mockTrack).toHaveBeenCalledWith(
201213
'$ld:ai:tokens:input',
202214
testContext,
203-
{ configKey, variationKey, version, modelName, providerName },
215+
getExpectedTrackData(),
204216
PROMPT_TOKENS,
205217
);
206218

207219
expect(mockTrack).toHaveBeenCalledWith(
208220
'$ld:ai:tokens:output',
209221
testContext,
210-
{ configKey, variationKey, version, modelName, providerName },
222+
getExpectedTrackData(),
211223
COMPLETION_TOKENS,
212224
);
213225
});
@@ -234,14 +246,14 @@ it('tracks error when OpenAI metrics function throws', async () => {
234246
expect(mockTrack).toHaveBeenCalledWith(
235247
'$ld:ai:duration:total',
236248
testContext,
237-
{ configKey, variationKey, version, modelName, providerName },
249+
getExpectedTrackData(),
238250
1000,
239251
);
240252

241253
expect(mockTrack).toHaveBeenCalledWith(
242254
'$ld:ai:generation:error',
243255
testContext,
244-
{ configKey, variationKey, version, modelName, providerName },
256+
getExpectedTrackData(),
245257
1,
246258
);
247259

@@ -283,7 +295,7 @@ it('tracks Bedrock conversation with successful response', () => {
283295
expect(mockTrack).toHaveBeenCalledWith(
284296
'$ld:ai:generation:success',
285297
testContext,
286-
{ configKey, variationKey, version, modelName, providerName },
298+
getExpectedTrackData(),
287299
1,
288300
);
289301

@@ -297,28 +309,28 @@ it('tracks Bedrock conversation with successful response', () => {
297309
expect(mockTrack).toHaveBeenCalledWith(
298310
'$ld:ai:duration:total',
299311
testContext,
300-
{ configKey, variationKey, version, modelName, providerName },
312+
getExpectedTrackData(),
301313
500,
302314
);
303315

304316
expect(mockTrack).toHaveBeenCalledWith(
305317
'$ld:ai:tokens:total',
306318
testContext,
307-
{ configKey, variationKey, version, modelName, providerName },
319+
getExpectedTrackData(),
308320
TOTAL_TOKENS,
309321
);
310322

311323
expect(mockTrack).toHaveBeenCalledWith(
312324
'$ld:ai:tokens:input',
313325
testContext,
314-
{ configKey, variationKey, version, modelName, providerName },
326+
getExpectedTrackData(),
315327
PROMPT_TOKENS,
316328
);
317329

318330
expect(mockTrack).toHaveBeenCalledWith(
319331
'$ld:ai:tokens:output',
320332
testContext,
321-
{ configKey, variationKey, version, modelName, providerName },
333+
getExpectedTrackData(),
322334
COMPLETION_TOKENS,
323335
);
324336
});
@@ -345,7 +357,7 @@ it('tracks Bedrock conversation with error response', () => {
345357
expect(mockTrack).toHaveBeenCalledWith(
346358
'$ld:ai:generation:error',
347359
testContext,
348-
{ configKey, variationKey, version, modelName, providerName },
360+
getExpectedTrackData(),
349361
1,
350362
);
351363

@@ -385,14 +397,14 @@ describe('Vercel AI SDK generateText', () => {
385397
expect(mockTrack).toHaveBeenCalledWith(
386398
'$ld:ai:duration:total',
387399
testContext,
388-
{ configKey, variationKey, version, modelName, providerName },
400+
getExpectedTrackData(),
389401
1000,
390402
);
391403

392404
expect(mockTrack).toHaveBeenCalledWith(
393405
'$ld:ai:generation:success',
394406
testContext,
395-
{ configKey, variationKey, version, modelName, providerName },
407+
getExpectedTrackData(),
396408
1,
397409
);
398410

@@ -406,21 +418,21 @@ describe('Vercel AI SDK generateText', () => {
406418
expect(mockTrack).toHaveBeenCalledWith(
407419
'$ld:ai:tokens:total',
408420
testContext,
409-
{ configKey, variationKey, version, modelName, providerName },
421+
getExpectedTrackData(),
410422
TOTAL_TOKENS,
411423
);
412424

413425
expect(mockTrack).toHaveBeenCalledWith(
414426
'$ld:ai:tokens:input',
415427
testContext,
416-
{ configKey, variationKey, version, modelName, providerName },
428+
getExpectedTrackData(),
417429
PROMPT_TOKENS,
418430
);
419431

420432
expect(mockTrack).toHaveBeenCalledWith(
421433
'$ld:ai:tokens:output',
422434
testContext,
423-
{ configKey, variationKey, version, modelName, providerName },
435+
getExpectedTrackData(),
424436
COMPLETION_TOKENS,
425437
);
426438
});
@@ -447,14 +459,14 @@ describe('Vercel AI SDK generateText', () => {
447459
expect(mockTrack).toHaveBeenCalledWith(
448460
'$ld:ai:duration:total',
449461
testContext,
450-
{ configKey, variationKey, version, modelName, providerName },
462+
getExpectedTrackData(),
451463
1000,
452464
);
453465

454466
expect(mockTrack).toHaveBeenCalledWith(
455467
'$ld:ai:generation:error',
456468
testContext,
457-
{ configKey, variationKey, version, modelName, providerName },
469+
getExpectedTrackData(),
458470
1,
459471
);
460472

@@ -491,21 +503,21 @@ it('tracks tokens', () => {
491503
expect(mockTrack).toHaveBeenCalledWith(
492504
'$ld:ai:tokens:total',
493505
testContext,
494-
{ configKey, variationKey, version, modelName, providerName },
506+
getExpectedTrackData(),
495507
TOTAL_TOKENS,
496508
);
497509

498510
expect(mockTrack).toHaveBeenCalledWith(
499511
'$ld:ai:tokens:input',
500512
testContext,
501-
{ configKey, variationKey, version, modelName, providerName },
513+
getExpectedTrackData(),
502514
PROMPT_TOKENS,
503515
);
504516

505517
expect(mockTrack).toHaveBeenCalledWith(
506518
'$ld:ai:tokens:output',
507519
testContext,
508-
{ configKey, variationKey, version, modelName, providerName },
520+
getExpectedTrackData(),
509521
COMPLETION_TOKENS,
510522
);
511523
});
@@ -537,7 +549,7 @@ it('only tracks non-zero token counts', () => {
537549
expect(mockTrack).toHaveBeenCalledWith(
538550
'$ld:ai:tokens:input',
539551
testContext,
540-
{ configKey, variationKey, version, modelName, providerName },
552+
getExpectedTrackData(),
541553
50,
542554
);
543555

@@ -623,7 +635,7 @@ it('tracks duration when async function throws', async () => {
623635
expect(mockTrack).toHaveBeenCalledWith(
624636
'$ld:ai:duration:total',
625637
testContext,
626-
{ configKey, variationKey, version, modelName, providerName },
638+
getExpectedTrackData(),
627639
1000,
628640
);
629641
});
@@ -643,7 +655,7 @@ it('tracks error', () => {
643655
expect(mockTrack).toHaveBeenCalledWith(
644656
'$ld:ai:generation:error',
645657
testContext,
646-
{ configKey, variationKey, version, modelName, providerName },
658+
getExpectedTrackData(),
647659
1,
648660
);
649661
});
@@ -679,27 +691,27 @@ describe('trackMetricsOf', () => {
679691
expect(mockTrack).toHaveBeenCalledWith(
680692
'$ld:ai:generation:success',
681693
testContext,
682-
{ configKey, variationKey, version, modelName, providerName },
694+
getExpectedTrackData(),
683695
1,
684696
);
685697

686698
// Should track token usage
687699
expect(mockTrack).toHaveBeenCalledWith(
688700
'$ld:ai:tokens:total',
689701
testContext,
690-
{ configKey, variationKey, version, modelName, providerName },
702+
getExpectedTrackData(),
691703
100,
692704
);
693705
expect(mockTrack).toHaveBeenCalledWith(
694706
'$ld:ai:tokens:input',
695707
testContext,
696-
{ configKey, variationKey, version, modelName, providerName },
708+
getExpectedTrackData(),
697709
50,
698710
);
699711
expect(mockTrack).toHaveBeenCalledWith(
700712
'$ld:ai:tokens:output',
701713
testContext,
702-
{ configKey, variationKey, version, modelName, providerName },
714+
getExpectedTrackData(),
703715
50,
704716
);
705717
});
@@ -729,7 +741,7 @@ describe('trackMetricsOf', () => {
729741
expect(mockTrack).toHaveBeenCalledWith(
730742
'$ld:ai:generation:error',
731743
testContext,
732-
{ configKey, variationKey, version, modelName, providerName },
744+
getExpectedTrackData(),
733745
1,
734746
);
735747
});
@@ -755,7 +767,7 @@ describe('trackMetricsOf', () => {
755767
expect(mockTrack).toHaveBeenCalledWith(
756768
'$ld:ai:generation:error',
757769
testContext,
758-
{ configKey, variationKey, version, modelName, providerName },
770+
getExpectedTrackData(),
759771
1,
760772
);
761773

@@ -789,7 +801,7 @@ describe('trackMetricsOf', () => {
789801
expect(mockTrack).toHaveBeenCalledWith(
790802
'$ld:ai:generation:success',
791803
testContext,
792-
{ configKey, variationKey, version, modelName, providerName },
804+
getExpectedTrackData(),
793805
1,
794806
);
795807

0 commit comments

Comments
 (0)