@@ -13,13 +13,21 @@ import InstabugUtils, {
13
13
registerFilteringListener ,
14
14
registerObfuscationListener ,
15
15
reportNetworkLog ,
16
+ resetNativeObfuscationListener ,
16
17
sendCrashReport ,
18
+ updateNetworkLogSnapshot ,
17
19
} from '../../src/utils/InstabugUtils' ;
18
20
19
- import { NativeNetworkLogger , NetworkListenerType } from '../../src/native/NativeNetworkLogger' ;
21
+ import {
22
+ NativeNetworkLogger ,
23
+ NetworkListenerType ,
24
+ NetworkLoggerEmitter ,
25
+ } from '../../src/native/NativeNetworkLogger' ;
20
26
import { NativeInstabug } from '../../src/native/NativeInstabug' ;
21
27
import { NativeAPM } from '../../src/native/NativeAPM' ;
22
28
29
+ jest . mock ( '../../src/modules/NetworkLogger' ) ;
30
+
23
31
describe ( 'Test global error handler' , ( ) => {
24
32
beforeEach ( ( ) => {
25
33
Instabug . init ( { token : '' , invocationEvents : [ InvocationEvent . none ] } ) ;
@@ -339,15 +347,33 @@ describe('reportNetworkLog', () => {
339
347
} ) ;
340
348
} ) ;
341
349
342
- jest . mock ( '../../src/modules/NetworkLogger' ) ;
343
-
344
350
describe ( 'test registerNetworkLogsListener usage' , ( ) => {
345
351
beforeEach ( ( ) => {
346
352
jest . clearAllMocks ( ) ; // Clear all mocks before each test
347
353
} ) ;
354
+
355
+ const network : NetworkLogger . NetworkData = {
356
+ id : '' ,
357
+ url : 'https://api.instabug.com' ,
358
+ requestBody : '' ,
359
+ requestHeaders : { 'content-type' : 'application/json' } ,
360
+ method : 'GET' ,
361
+ responseBody : '' ,
362
+ responseCode : 200 ,
363
+ responseHeaders : { 'content-type' : 'application/json' } ,
364
+ contentType : 'application/json' ,
365
+ duration : 0 ,
366
+ requestBodySize : 0 ,
367
+ responseBodySize : 0 ,
368
+ errorDomain : '' ,
369
+ errorCode : 0 ,
370
+ startTime : 0 ,
371
+ serverErrorMessage : '' ,
372
+ requestContentType : 'application/json' ,
373
+ } ;
374
+
348
375
it ( 'registerObfuscationListener should call NetworkLogger.registerNetworkLogsListener() with NetworkListenerType = NetworkListenerType.obfuscation' , ( ) => {
349
376
registerObfuscationListener ( ) ;
350
-
351
377
expect ( NetworkLogger . registerNetworkLogsListener ) . toBeCalledTimes ( 1 ) ;
352
378
expect ( NetworkLogger . registerNetworkLogsListener ) . toBeCalledWith (
353
379
NetworkListenerType . obfuscation ,
@@ -376,4 +402,35 @@ describe('test registerNetworkLogsListener usage', () => {
376
402
expect . any ( Function ) ,
377
403
) ;
378
404
} ) ;
405
+
406
+ it ( 'should call NetworkLoggerEmitter.removeAllListeners when call resetNativeObfuscationListener' , ( ) => {
407
+ jest . spyOn ( NetworkLoggerEmitter , 'removeAllListeners' ) . mockImplementation ( ) ;
408
+ resetNativeObfuscationListener ( ) ;
409
+ expect ( NetworkLoggerEmitter . removeAllListeners ) . toBeCalledTimes ( 1 ) ;
410
+ } ) ;
411
+
412
+ it ( 'should call NativeNetworkLogger.resetNetworkLogsListener when call resetNativeObfuscationListener on android platform' , ( ) => {
413
+ Platform . OS = 'android' ;
414
+ jest . spyOn ( NativeNetworkLogger , 'resetNetworkLogsListener' ) . mockImplementation ( ) ;
415
+ jest . spyOn ( NetworkLoggerEmitter , 'removeAllListeners' ) . mockImplementation ( ) ;
416
+ resetNativeObfuscationListener ( ) ;
417
+ expect ( NativeNetworkLogger . resetNetworkLogsListener ) . toBeCalledTimes ( 1 ) ;
418
+ expect ( NetworkLoggerEmitter . removeAllListeners ) . toBeCalledTimes ( 1 ) ;
419
+ } ) ;
420
+
421
+ it ( 'should call NativeNetworkLogger.updateNetworkLogSnapshot when call updateNetworkLogSnapshot with correct parameters' , ( ) => {
422
+ jest . spyOn ( NativeNetworkLogger , 'updateNetworkLogSnapshot' ) . mockImplementation ( ) ;
423
+
424
+ updateNetworkLogSnapshot ( network ) ;
425
+ expect ( NativeNetworkLogger . updateNetworkLogSnapshot ) . toBeCalledTimes ( 1 ) ;
426
+ expect ( NativeNetworkLogger . updateNetworkLogSnapshot ) . toHaveBeenCalledWith (
427
+ network . url ,
428
+ network . id ,
429
+ network . requestBody ,
430
+ network . responseBody ,
431
+ network . responseCode ?? 200 ,
432
+ network . requestHeaders ,
433
+ network . responseHeaders ,
434
+ ) ;
435
+ } ) ;
379
436
} ) ;
0 commit comments