@@ -1390,36 +1390,54 @@ describe('ReactSDKClient', () => {
1390
1390
expect ( mockFn ) . toHaveBeenCalledTimes ( 0 ) ;
1391
1391
} ) ;
1392
1392
1393
- it ( 'track works as expected' , ( ) => {
1394
- const mockFn = mockInnerClient . track as jest . Mock ;
1393
+ describe ( 'track with different parameters' , ( ) => {
1394
+ it ( 'track with only event key, calls inner client with valid arguments' , ( ) => {
1395
+ const mockFn = mockInnerClient . track as jest . Mock ;
1396
+ instance . track ( 'evt1' ) ;
1395
1397
1396
- instance . track ( 'evt1' ) ;
1398
+ expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1399
+ expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user1' , { foo : 'bar' } , undefined ) ;
1400
+ } ) ;
1397
1401
1398
- expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1399
- expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user1' , { foo : 'bar' } , undefined ) ;
1402
+ it ( 'track with event key and overrided user id and attributes, calls inner client with valid arguments' , ( ) => {
1403
+ const mockFn = mockInnerClient . track as jest . Mock ;
1404
+ instance . track ( 'evt1' , 'user2' , { bar : 'baz' } ) ;
1400
1405
1401
- mockFn . mockReset ( ) ;
1406
+ expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1407
+ expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user2' , { bar : 'baz' } , undefined ) ;
1408
+ } ) ;
1402
1409
1403
- instance . track ( 'evt1' , 'user2' , { bar : 'baz' } ) ;
1410
+ it ( 'track with event key and event tags, calls inner client with valid arguments' , ( ) => {
1411
+ const mockFn = mockInnerClient . track as jest . Mock ;
1412
+ instance . track ( 'evt1' , { tagKey : 'tagVal' } ) ;
1404
1413
1405
- expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1406
- expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user2' , { bar : 'baz' } , undefined ) ;
1414
+ expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1415
+ expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user1' , { foo : 'bar' } , { tagKey : 'tagVal' } ) ;
1416
+ } ) ;
1407
1417
1408
- mockFn . mockReset ( ) ;
1418
+ it ( 'track with event key, overrided user id and attributes and event tags, calls inner client with valid arguments' , ( ) => {
1419
+ const mockFn = mockInnerClient . track as jest . Mock ;
1420
+ instance . track ( 'evt1' , 'user3' , { bla : 'bla' } , { tagKey : 'tagVal' } ) ;
1409
1421
1410
- // Use pre-set user with event tags
1411
- instance . track ( 'evt1' , { tagKey : 'tagVal' } ) ;
1422
+ expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1423
+ expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user3' , { bla : 'bla' } , { tagKey : 'tagVal' } ) ;
1424
+ } ) ;
1412
1425
1413
- expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1414
- expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user1' , { foo : 'bar' } , { tagKey : 'tagVal' } ) ;
1426
+ it ( 'track with event key, tags, and overrided attributes, calls inner client with valid arguments' , ( ) => {
1427
+ const mockFn = mockInnerClient . track as jest . Mock ;
1428
+ instance . track ( 'evt1' , { tagKey : 'tagVal' } , { bla : 'bla' } ) ;
1415
1429
1416
- mockFn . mockReset ( ) ;
1430
+ expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1431
+ expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user1' , { bla : 'bla' } , { tagKey : 'tagVal' } ) ;
1432
+ } ) ;
1417
1433
1418
- // Use overrides with event tags
1419
- instance . track ( 'evt1' , 'user3' , { bla : 'bla' } , { tagKey : 'tagVal' } ) ;
1434
+ it ( 'track with event key, userId undefined, attributes undefined, and event tags, calls inner client with valid arguments' , ( ) => {
1435
+ const mockFn = mockInnerClient . track as jest . Mock ;
1436
+ instance . track ( 'evt1' , undefined , undefined , { tagKey : 'tagVal' } ) ;
1420
1437
1421
- expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1422
- expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user3' , { bla : 'bla' } , { tagKey : 'tagVal' } ) ;
1438
+ expect ( mockFn ) . toHaveBeenCalledTimes ( 1 ) ;
1439
+ expect ( mockFn ) . toHaveBeenCalledWith ( 'evt1' , 'user1' , { foo : 'bar' } , { tagKey : 'tagVal' } ) ;
1440
+ } ) ;
1423
1441
} ) ;
1424
1442
} ) ;
1425
1443
0 commit comments