Skip to content

Commit 21f4631

Browse files
[FSSDK-10439] client test: track method test update
1 parent 8637ac5 commit 21f4631

File tree

1 file changed

+38
-30
lines changed

1 file changed

+38
-30
lines changed

src/client.spec.ts

Lines changed: 38 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -333,12 +333,6 @@ describe('ReactSDKClient', () => {
333333
instance._client = null;
334334
});
335335

336-
it('cannot use pre-set or override user for track', () => {
337-
const mockFn = mockInnerClient.track as jest.Mock;
338-
instance.track('evt1');
339-
expect(mockFn).toHaveBeenCalledTimes(0);
340-
});
341-
342336
it('cannot use pre-set or override user for setForcedVariation', () => {
343337
const mockFn = mockInnerClient.setForcedVariation as jest.Mock;
344338
mockFn.mockReturnValue(true);
@@ -382,30 +376,6 @@ describe('ReactSDKClient', () => {
382376
});
383377
});
384378

385-
it('can use pre-set and override user for track', () => {
386-
const mockFn = mockInnerClient.track as jest.Mock;
387-
instance.track('evt1');
388-
expect(mockFn).toHaveBeenCalledTimes(1);
389-
expect(mockFn).toHaveBeenCalledWith('evt1', 'user1', { foo: 'bar' }, undefined);
390-
mockFn.mockReset();
391-
392-
instance.track('evt1', 'user2', { bar: 'baz' });
393-
expect(mockFn).toHaveBeenCalledTimes(1);
394-
expect(mockFn).toHaveBeenCalledWith('evt1', 'user2', { bar: 'baz' }, undefined);
395-
mockFn.mockReset();
396-
397-
// Use pre-set user with event tags
398-
instance.track('evt1', { tagKey: 'tagVal' });
399-
expect(mockFn).toHaveBeenCalledTimes(1);
400-
expect(mockFn).toHaveBeenCalledWith('evt1', 'user1', { foo: 'bar' }, { tagKey: 'tagVal' });
401-
mockFn.mockReset();
402-
403-
// Use overrides with event tags
404-
instance.track('evt1', 'user3', { bla: 'bla' }, { tagKey: 'tagVal' });
405-
expect(mockFn).toHaveBeenCalledTimes(1);
406-
expect(mockFn).toHaveBeenCalledWith('evt1', 'user3', { bla: 'bla' }, { tagKey: 'tagVal' });
407-
});
408-
409379
it('can use pre-set and override user for setForcedVariation', () => {
410380
const mockFn = mockInnerClient.setForcedVariation as jest.Mock;
411381
mockFn.mockReturnValue(true);
@@ -1331,6 +1301,44 @@ describe('ReactSDKClient', () => {
13311301
});
13321302
});
13331303

1304+
describe('track', () => {
1305+
beforeEach(async () => {
1306+
await setUpUserContext();
1307+
});
1308+
1309+
it('cannot use pre-set or override user for track', () => {
1310+
// @ts-ignore
1311+
instance._client = null;
1312+
const mockFn = mockInnerClient.track as jest.Mock;
1313+
instance.track('evt1');
1314+
expect(mockFn).toHaveBeenCalledTimes(0);
1315+
});
1316+
1317+
it('can use pre-set and override user for track', () => {
1318+
const mockFn = mockInnerClient.track as jest.Mock;
1319+
instance.track('evt1');
1320+
expect(mockFn).toHaveBeenCalledTimes(1);
1321+
expect(mockFn).toHaveBeenCalledWith('evt1', 'user1', { foo: 'bar' }, undefined);
1322+
mockFn.mockReset();
1323+
1324+
instance.track('evt1', 'user2', { bar: 'baz' });
1325+
expect(mockFn).toHaveBeenCalledTimes(1);
1326+
expect(mockFn).toHaveBeenCalledWith('evt1', 'user2', { bar: 'baz' }, undefined);
1327+
mockFn.mockReset();
1328+
1329+
// Use pre-set user with event tags
1330+
instance.track('evt1', { tagKey: 'tagVal' });
1331+
expect(mockFn).toHaveBeenCalledTimes(1);
1332+
expect(mockFn).toHaveBeenCalledWith('evt1', 'user1', { foo: 'bar' }, { tagKey: 'tagVal' });
1333+
mockFn.mockReset();
1334+
1335+
// Use overrides with event tags
1336+
instance.track('evt1', 'user3', { bla: 'bla' }, { tagKey: 'tagVal' });
1337+
expect(mockFn).toHaveBeenCalledTimes(1);
1338+
expect(mockFn).toHaveBeenCalledWith('evt1', 'user3', { bla: 'bla' }, { tagKey: 'tagVal' });
1339+
});
1340+
});
1341+
13341342
describe('fetchQualifedSegments', () => {
13351343
beforeEach(() => {
13361344
instance = createInstance(config);

0 commit comments

Comments
 (0)