@@ -118,6 +118,7 @@ - (void)testRegisterNativeError
118
118
completion: OCMOCK_ANY]).andDo (registerNativeWithDeviceToken);
119
119
120
120
id defaultCenterMock = OCMPartialMock ([NSNotificationCenter defaultCenter ]);
121
+
121
122
[_hubManager register: RCTTestDeviceToken
122
123
config: _config
123
124
resolver: _resolver
@@ -153,6 +154,7 @@ - (void)testRegisterNativeSuccessfully
153
154
completion: OCMOCK_ANY]).andDo (registerNativeWithDeviceToken);
154
155
155
156
id defaultCenterMock = OCMPartialMock ([NSNotificationCenter defaultCenter ]);
157
+
156
158
[_hubManager register: RCTTestDeviceToken
157
159
config: _config
158
160
resolver: _resolver
@@ -229,6 +231,7 @@ - (void)testUnregisterNativeSuccessfully
229
231
OCMStub ([_hubMock unregisterNativeWithCompletion: OCMOCK_ANY]).andDo (unregisterNativeWithCompletion);
230
232
id defaultCenterMock = OCMPartialMock ([NSNotificationCenter defaultCenter ]);
231
233
OCMReject ([defaultCenterMock postNotificationName: OCMOCK_ANY object: OCMOCK_ANY userInfo: OCMOCK_ANY]);
234
+
232
235
[_hubManager register: RCTTestDeviceToken
233
236
config: _config
234
237
resolver: _resolver
@@ -450,12 +453,131 @@ - (void)testGetScheduledLocalNotifications
450
453
[notifications addObject: _notification];
451
454
id sharedApplicationMock = OCMPartialMock ([UIApplication sharedApplication ]);
452
455
OCMStub ([sharedApplicationMock scheduledLocalNotifications ]).andReturn (notifications);
453
- RCTResponseSenderBlock callback = ^(NSArray *response)
456
+ __block NSMutableArray *scheduledNotifications = nil ;
457
+ RCTResponseSenderBlock callback = ^(NSArray *result)
454
458
{
455
- XCTAssertEqualObjects (response[ 0 ][ 0 ], [RCTAzureNotificationHubUtil formatLocalNotification: _notification]) ;
459
+ scheduledNotifications = result ;
456
460
};
457
461
458
462
[_hubManager getScheduledLocalNotifications: callback];
463
+
464
+ XCTAssertEqualObjects (scheduledNotifications[0 ][0 ], [RCTAzureNotificationHubUtil formatLocalNotification: _notification]);
465
+ }
466
+
467
+ - (void )testStartObserving
468
+ {
469
+ id defaultCenterMock = OCMPartialMock ([NSNotificationCenter defaultCenter ]);
470
+
471
+ [_hubManager startObserving ];
472
+
473
+ OCMVerify ([defaultCenterMock addObserver: OCMOCK_ANY
474
+ selector: [OCMArg anySelector ]
475
+ name: RCTLocalNotificationReceived
476
+ object: nil ]);
477
+
478
+ OCMVerify ([defaultCenterMock addObserver: OCMOCK_ANY
479
+ selector: [OCMArg anySelector ]
480
+ name: RCTRemoteNotificationReceived
481
+ object: nil ]);
482
+
483
+ OCMVerify ([defaultCenterMock addObserver: OCMOCK_ANY
484
+ selector: [OCMArg anySelector ]
485
+ name: RCTRemoteNotificationRegistered
486
+ object: nil ]);
487
+
488
+ OCMVerify ([defaultCenterMock addObserver: OCMOCK_ANY
489
+ selector: [OCMArg anySelector ]
490
+ name: RCTRemoteNotificationRegisteredError
491
+ object: nil ]);
492
+
493
+ OCMVerify ([defaultCenterMock addObserver: OCMOCK_ANY
494
+ selector: [OCMArg anySelector ]
495
+ name: RCTAzureNotificationHubRegistered
496
+ object: nil ]);
497
+
498
+ OCMVerify ([defaultCenterMock addObserver: OCMOCK_ANY
499
+ selector: [OCMArg anySelector ]
500
+ name: RCTAzureNotificationHubRegisteredError
501
+ object: nil ]);
502
+
503
+ OCMVerify ([defaultCenterMock addObserver: OCMOCK_ANY
504
+ selector: [OCMArg anySelector ]
505
+ name: RCTUserNotificationSettingsRegistered
506
+ object: nil ]);
507
+ }
508
+
509
+ - (void )testStopObserving
510
+ {
511
+ id defaultCenterMock = OCMPartialMock ([NSNotificationCenter defaultCenter ]);
512
+
513
+ [_hubManager stopObserving ];
514
+
515
+ OCMVerify ([defaultCenterMock removeObserver: OCMOCK_ANY]);
516
+ }
517
+
518
+ - (void )testSupportedEvents
519
+ {
520
+ NSArray *expectedSupportedEvents = @[RCTLocalNotificationReceived,
521
+ RCTRemoteNotificationReceived,
522
+ RCTRemoteNotificationRegistered,
523
+ RCTRemoteNotificationRegisteredError,
524
+ RCTAzureNotificationHubRegistered,
525
+ RCTAzureNotificationHubRegisteredError ];
526
+
527
+ NSArray *supportedEvents = [_hubManager supportedEvents ];
528
+
529
+ XCTAssertEqualObjects (supportedEvents, expectedSupportedEvents);
530
+ }
531
+
532
+ - (void )testDidRegisterForRemoteNotificationsWithDeviceToken
533
+ {
534
+ id defaultCenterMock = OCMPartialMock ([NSNotificationCenter defaultCenter ]);
535
+ NSData *deviceToken = [@" Device Token" dataUsingEncoding: NSASCIIStringEncoding];
536
+ NSString *hexString = [RCTAzureNotificationHubUtil convertDeviceTokenToString: deviceToken];
537
+
538
+ [RCTAzureNotificationHubManager didRegisterForRemoteNotificationsWithDeviceToken: deviceToken];
539
+
540
+ OCMVerify ([defaultCenterMock postNotificationName: RCTRemoteNotificationRegistered
541
+ object: OCMOCK_ANY
542
+ userInfo: @{RCTUserInfoDeviceToken: [hexString copy ]}]);
543
+ }
544
+
545
+ - (void )testDidFailToRegisterForRemoteNotificationsWithError
546
+ {
547
+ id defaultCenterMock = OCMPartialMock ([NSNotificationCenter defaultCenter ]);
548
+ NSError *error = [NSError errorWithDomain: @" Mock Error" code: 0 userInfo: nil ];
549
+
550
+ [RCTAzureNotificationHubManager didFailToRegisterForRemoteNotificationsWithError: error];
551
+
552
+ OCMVerify ([defaultCenterMock postNotificationName: RCTRemoteNotificationRegisteredError
553
+ object: OCMOCK_ANY
554
+ userInfo: @{RCTUserInfoError: error}]);
555
+ }
556
+
557
+ - (void )testDidReceiveRemoteNotification
558
+ {
559
+ id defaultCenterMock = OCMPartialMock ([NSNotificationCenter defaultCenter ]);
560
+ NSDictionary *notification = [[NSDictionary alloc ] initWithObjectsAndKeys: @" key" , @" value" , nil ];
561
+
562
+ [RCTAzureNotificationHubManager didReceiveRemoteNotification: notification];
563
+
564
+ OCMVerify ([defaultCenterMock postNotificationName: RCTRemoteNotificationReceived
565
+ object: OCMOCK_ANY
566
+ userInfo: notification]);
567
+ }
568
+
569
+ - (void )testDidReceiveLocalNotification
570
+ {
571
+ id defaultCenterMock = OCMPartialMock ([NSNotificationCenter defaultCenter ]);
572
+ UILocalNotification *notification = [[UILocalNotification alloc ] init ];
573
+ NSDictionary *info = [[NSDictionary alloc ] initWithObjectsAndKeys: @" Key" , @" Value" , nil ];
574
+ [notification setUserInfo: info];
575
+
576
+ [RCTAzureNotificationHubManager didReceiveLocalNotification: notification];
577
+
578
+ OCMVerify ([defaultCenterMock postNotificationName: RCTLocalNotificationReceived
579
+ object: OCMOCK_ANY
580
+ userInfo: [RCTAzureNotificationHubUtil formatLocalNotification: notification]]);
459
581
}
460
582
461
583
@end
0 commit comments