1919
2020#import < OCMock/OCMock.h>
2121
22- #import " FIRMessagingCheckinService.h"
2322#import " FIRMessagingPubSubRegistrar.h"
2423#import " FIRMessagingRegistrar.h"
2524#import " FIRMessagingUtilities.h"
3837@interface FIRMessagingRegistrar ()
3938
4039@property (nonatomic , readwrite , strong ) FIRMessagingPubSubRegistrar *pubsubRegistrar;
41- @property (nonatomic , readwrite , strong ) FIRMessagingCheckinService *checkinService;
4240
4341@end
4442
4543@interface FIRMessagingRegistrarTest : XCTestCase
4644
4745@property (nonatomic , readwrite , strong ) FIRMessagingRegistrar *registrar;
4846@property (nonatomic , readwrite , strong ) id mockRegistrar;
49- @property (nonatomic , readwrite , strong ) id mockCheckin;
5047@property (nonatomic , readwrite , strong ) id mockPubsubRegistrar;
5148
5249@end
@@ -57,15 +54,11 @@ - (void)setUp {
5754 [super setUp ];
5855 _registrar = [[FIRMessagingRegistrar alloc ] init ];
5956 _mockRegistrar = OCMPartialMock (_registrar);
60- _mockCheckin = OCMPartialMock (_registrar.checkinService );
61- _registrar.checkinService = _mockCheckin;
6257 _registrar.pubsubRegistrar = OCMClassMock ([FIRMessagingPubSubRegistrar class ]);
6358 _mockPubsubRegistrar = _registrar.pubsubRegistrar ;
6459}
6560
6661- (void )testUpdateSubscriptionWithValidCheckinData {
67- [self stubCheckinService ];
68-
6962 [self .registrar updateSubscriptionToTopic: kTopicToSubscribeTo
7063 withToken: kFIRMessagingAppIDToken
7164 options: nil
@@ -81,8 +74,6 @@ - (void)testUpdateSubscriptionWithValidCheckinData {
8174}
8275
8376- (void )testUpdateSubscription {
84- [self stubCheckinService ];
85-
8677 __block FIRMessagingTopicOperationCompletion pubsubCompletion;
8778 [[[self .mockPubsubRegistrar stub ] andDo: ^(NSInvocation *invocation) {
8879 pubsubCompletion (nil );
@@ -102,26 +93,4 @@ - (void)testUpdateSubscription {
10293 XCTAssertNil (error);
10394 }];
10495}
105-
106- - (void )testFailedUpdateSubscriptionWithNoCheckin {
107- // Mock checkin service to always return NO for hasValidCheckinInfo
108- [[[self .mockCheckin stub ] andReturnValue: @NO ] hasValidCheckinInfo ];
109- // This should not create a network request since we don't have checkin info
110- [self .registrar updateSubscriptionToTopic: kTopicToSubscribeTo
111- withToken: kFIRMessagingAppIDToken
112- options: nil
113- shouldDelete: NO
114- handler: ^(NSError *error) {
115- XCTAssertNotNil (error);
116- }];
117- }
118-
119- #pragma mark - Private Helpers
120-
121- - (void )stubCheckinService {
122- [[[self .mockCheckin stub ] andReturn: kDeviceAuthId ] deviceAuthID ];
123- [[[self .mockCheckin stub ] andReturn: kSecretToken ] secretToken ];
124- [[[self .mockCheckin stub ] andReturnValue: @YES ] hasValidCheckinInfo ];
125- }
126-
12796@end
0 commit comments