@@ -49,16 +49,22 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
4949
5050 override func tearDownWithError( ) throws { }
5151
52- func testAppendSetStartTokenWithSuccessfulRequest( ) throws {
53- /* Setup */
54- let mockDispatchQueue = MockDispatchQueue ( )
52+ // Subscribes a user, then resets the client so tests assert only on the requests they make.
53+ private func setUpSubscribedUser( ) -> MockOneSignalClient {
5554 let mockClient = MockOneSignalClient ( )
5655 OneSignalCoreImpl . setSharedClient ( mockClient)
5756 OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
5857 OneSignalUserManagerImpl . sharedInstance. start ( )
5958 // Wait for any user setup requests to complete
6059 OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
6160 mockClient. reset ( )
61+ return mockClient
62+ }
63+
64+ func testAppendSetStartTokenWithSuccessfulRequest( ) throws {
65+ /* Setup */
66+ let mockDispatchQueue = MockDispatchQueue ( )
67+ let mockClient = setUpSubscribedUser ( )
6268
6369 let request = OSRequestSetStartToken ( key: " my-activity-type " , token: " my-token " )
6470 mockClient. setMockResponseForRequest ( request: String ( describing: request) , response: [ String: Any] ( ) )
@@ -79,13 +85,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
7985 func testRemoveStartTokenWithSuccessfulRequest( ) throws {
8086 /* Setup */
8187 let mockDispatchQueue = MockDispatchQueue ( )
82- let mockClient = MockOneSignalClient ( )
83- OneSignalCoreImpl . setSharedClient ( mockClient)
84- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
85- OneSignalUserManagerImpl . sharedInstance. start ( )
86- // Wait for any user setup requests to complete
87- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
88- mockClient. reset ( )
88+ let mockClient = setUpSubscribedUser ( )
8989
9090 let request = OSRequestRemoveStartToken ( key: " my-activity-type " )
9191 mockClient. setMockResponseForRequest ( request: String ( describing: request) , response: [ String: Any] ( ) )
@@ -104,13 +104,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
104104 func testSetUpdateTokenWithSuccessfulRequest( ) throws {
105105 /* Setup */
106106 let mockDispatchQueue = MockDispatchQueue ( )
107- let mockClient = MockOneSignalClient ( )
108- OneSignalCoreImpl . setSharedClient ( mockClient)
109- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
110- OneSignalUserManagerImpl . sharedInstance. start ( )
111- // Wait for any user setup requests to complete
112- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
113- mockClient. reset ( )
107+ let mockClient = setUpSubscribedUser ( )
114108
115109 let request = OSRequestSetUpdateToken ( key: " my-activity-id " , token: " my-token " )
116110 mockClient. setMockResponseForRequest ( request: String ( describing: request) , response: [ String: Any] ( ) )
@@ -131,13 +125,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
131125 func testRemoveUpdateTokenWithSuccessfulRequest( ) throws {
132126 /* Setup */
133127 let mockDispatchQueue = MockDispatchQueue ( )
134- let mockClient = MockOneSignalClient ( )
135- OneSignalCoreImpl . setSharedClient ( mockClient)
136- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
137- OneSignalUserManagerImpl . sharedInstance. start ( )
138- // Wait for any user setup requests to complete
139- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
140- mockClient. reset ( )
128+ let mockClient = setUpSubscribedUser ( )
141129
142130 let request = OSRequestRemoveUpdateToken ( key: " my-activity-id " )
143131 mockClient. setMockResponseForRequest ( request: String ( describing: request) , response: [ String: Any] ( ) )
@@ -156,13 +144,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
156144 func testReceiveReceiptsWithSuccessfulRequest( ) throws {
157145 /* Setup */
158146 let mockDispatchQueue = MockDispatchQueue ( )
159- let mockClient = MockOneSignalClient ( )
160- OneSignalCoreImpl . setSharedClient ( mockClient)
161- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
162- OneSignalUserManagerImpl . sharedInstance. start ( )
163- // Wait for any user setup requests to complete
164- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
165- mockClient. reset ( )
147+ let mockClient = setUpSubscribedUser ( )
166148
167149 let request = OSRequestLiveActivityReceiveReceipts ( key: " notification-id " , activityType: " my-activity-type " , activityId: " my-activity-id " )
168150 mockClient. setMockResponseForRequest ( request: String ( describing: request) , response: [ String: Any] ( ) )
@@ -183,13 +165,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
183165 func testClickEventWithSuccessfulRequest( ) throws {
184166 /* Setup */
185167 let mockDispatchQueue = MockDispatchQueue ( )
186- let mockClient = MockOneSignalClient ( )
187- OneSignalCoreImpl . setSharedClient ( mockClient)
188- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
189- OneSignalUserManagerImpl . sharedInstance. start ( )
190- // Wait for any user setup requests to complete
191- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
192- mockClient. reset ( )
168+ let mockClient = setUpSubscribedUser ( )
193169
194170 let request = OSRequestLiveActivityClicked ( key: " unique-click-id " , activityType: " my-activity-type " , activityId: " my-activity-id " , notificationId: " my-notif-id " )
195171 mockClient. setMockResponseForRequest ( request: String ( describing: request) , response: [ String: Any] ( ) )
@@ -227,13 +203,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
227203 func testRequestStaysInCacheForRetryableError( ) throws {
228204 /* Setup */
229205 let mockDispatchQueue = MockDispatchQueue ( )
230- let mockClient = MockOneSignalClient ( )
231- OneSignalCoreImpl . setSharedClient ( mockClient)
232- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
233- OneSignalUserManagerImpl . sharedInstance. start ( )
234- // Wait for any user setup requests to complete
235- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
236- mockClient. reset ( )
206+ let mockClient = setUpSubscribedUser ( )
237207
238208 let request = OSRequestSetStartToken ( key: " my-activity-type " , token: " my-token " )
239209 mockClient. setMockFailureResponseForRequest ( request: String ( describing: request) , error: OneSignalClientError ( code: 500 , message: " not-important " , responseHeaders: nil , response: nil , underlyingError: nil ) )
@@ -254,13 +224,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
254224 func testRequestRemovedFromCacheForNonRetryableError( ) throws {
255225 /* Setup */
256226 let mockDispatchQueue = MockDispatchQueue ( )
257- let mockClient = MockOneSignalClient ( )
258- OneSignalCoreImpl . setSharedClient ( mockClient)
259- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
260- OneSignalUserManagerImpl . sharedInstance. start ( )
261- // Wait for any user setup requests to complete
262- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
263- mockClient. reset ( )
227+ let mockClient = setUpSubscribedUser ( )
264228
265229 let request = OSRequestSetStartToken ( key: " my-activity-type " , token: " my-token " )
266230 mockClient. setMockFailureResponseForRequest ( request: String ( describing: request) , error: OneSignalClientError ( code: 401 , message: " not-important " , responseHeaders: nil , response: nil , underlyingError: nil ) )
@@ -321,13 +285,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
321285 func testSetStartRequestNotExecutedWithSameActivityTypeAndToken( ) throws {
322286 /* Setup */
323287 let mockDispatchQueue = MockDispatchQueue ( )
324- let mockClient = MockOneSignalClient ( )
325- OneSignalCoreImpl . setSharedClient ( mockClient)
326- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
327- OneSignalUserManagerImpl . sharedInstance. start ( )
328- // Wait for any user setup requests to complete
329- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
330- mockClient. reset ( )
288+ let mockClient = setUpSubscribedUser ( )
331289
332290 let request1 = OSRequestSetStartToken ( key: " my-activity-type " , token: " my-token " )
333291 let request2 = OSRequestSetStartToken ( key: " my-activity-type " , token: " my-token " )
@@ -350,13 +308,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
350308 func testSetStartRequestNotExecutedWithSameActivityTypeAndDiffToken( ) throws {
351309 /* Setup */
352310 let mockDispatchQueue = MockDispatchQueue ( )
353- let mockClient = MockOneSignalClient ( )
354- OneSignalCoreImpl . setSharedClient ( mockClient)
355- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
356- OneSignalUserManagerImpl . sharedInstance. start ( )
357- // Wait for any user setup requests to complete
358- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
359- mockClient. reset ( )
311+ let mockClient = setUpSubscribedUser ( )
360312
361313 let request1 = OSRequestSetStartToken ( key: " my-activity-type " , token: " my-token-1 " )
362314 let request2 = OSRequestSetStartToken ( key: " my-activity-type " , token: " my-token-2 " )
@@ -380,13 +332,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
380332 func testSetStartRequestFollowedByRemoveStartIsSuccessful( ) throws {
381333 /* Setup */
382334 let mockDispatchQueue = MockDispatchQueue ( )
383- let mockClient = MockOneSignalClient ( )
384- OneSignalCoreImpl . setSharedClient ( mockClient)
385- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
386- OneSignalUserManagerImpl . sharedInstance. start ( )
387- // Wait for any user setup requests to complete
388- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
389- mockClient. reset ( )
335+ let mockClient = setUpSubscribedUser ( )
390336
391337 let request1 = OSRequestSetStartToken ( key: " my-activity-type " , token: " my-token-1 " )
392338 let request2 = OSRequestRemoveStartToken ( key: " my-activity-type " )
@@ -409,13 +355,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
409355 func testSetUpdateRequestNotExecutedWithSameActivityIdAndToken( ) throws {
410356 /* Setup */
411357 let mockDispatchQueue = MockDispatchQueue ( )
412- let mockClient = MockOneSignalClient ( )
413- OneSignalCoreImpl . setSharedClient ( mockClient)
414- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
415- OneSignalUserManagerImpl . sharedInstance. start ( )
416- // Wait for any user setup requests to complete
417- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
418- mockClient. reset ( )
358+ let mockClient = setUpSubscribedUser ( )
419359
420360 let request1 = OSRequestSetUpdateToken ( key: " my-activity-id " , token: " my-token " )
421361 let request2 = OSRequestSetUpdateToken ( key: " my-activity-id " , token: " my-token " )
@@ -438,13 +378,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
438378 func testSetUpdateRequestNotExecutedWithSameActivityIdAndDiffToken( ) throws {
439379 /* Setup */
440380 let mockDispatchQueue = MockDispatchQueue ( )
441- let mockClient = MockOneSignalClient ( )
442- OneSignalCoreImpl . setSharedClient ( mockClient)
443- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
444- OneSignalUserManagerImpl . sharedInstance. start ( )
445- // Wait for any user setup requests to complete
446- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
447- mockClient. reset ( )
381+ let mockClient = setUpSubscribedUser ( )
448382
449383 let request1 = OSRequestSetUpdateToken ( key: " my-activity-id " , token: " my-token-1 " )
450384 let request2 = OSRequestSetUpdateToken ( key: " my-activity-id " , token: " my-token-2 " )
@@ -468,13 +402,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
468402 func testSetUpdateRequestFollowedByRemoveUpdateIsSuccessful( ) throws {
469403 /* Setup */
470404 let mockDispatchQueue = MockDispatchQueue ( )
471- let mockClient = MockOneSignalClient ( )
472- OneSignalCoreImpl . setSharedClient ( mockClient)
473- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
474- OneSignalUserManagerImpl . sharedInstance. start ( )
475- // Wait for any user setup requests to complete
476- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
477- mockClient. reset ( )
405+ let mockClient = setUpSubscribedUser ( )
478406
479407 let request1 = OSRequestSetUpdateToken ( key: " my-activity-id " , token: " my-token-1 " )
480408 let request2 = OSRequestRemoveUpdateToken ( key: " my-activity-id " )
@@ -497,13 +425,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
497425 func testReceiveReceiptsRequestNotExecutedWithSameNotificationId( ) throws {
498426 /* Setup */
499427 let mockDispatchQueue = MockDispatchQueue ( )
500- let mockClient = MockOneSignalClient ( )
501- OneSignalCoreImpl . setSharedClient ( mockClient)
502- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
503- OneSignalUserManagerImpl . sharedInstance. start ( )
504- // Wait for any user setup requests to complete
505- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
506- mockClient. reset ( )
428+ let mockClient = setUpSubscribedUser ( )
507429
508430 let request1 = OSRequestLiveActivityReceiveReceipts ( key: " my-notification-id " , activityType: " my-activity-type-1 " , activityId: " my-activity-id-1 " )
509431 let request2 = OSRequestLiveActivityReceiveReceipts ( key: " my-notification-id " , activityType: " my-activity-type-2 " , activityId: " my-activity-id-2 " )
@@ -530,13 +452,7 @@ final class OSLiveActivitiesExecutorTests: XCTestCase {
530452 */
531453 func testReceiveReceiptsNotResentForSameNotificationIdAfterRelaunch( ) throws {
532454 /* Setup */
533- let mockClient = MockOneSignalClient ( )
534- OneSignalCoreImpl . setSharedClient ( mockClient)
535- OneSignalUserDefaults . initShared ( ) . saveString ( forKey: OSUD_LEGACY_PLAYER_ID, withValue: " my-subscription-id " )
536- OneSignalUserManagerImpl . sharedInstance. start ( )
537- // Wait for any user setup requests to complete
538- OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.2 )
539- mockClient. reset ( )
455+ let mockClient = setUpSubscribedUser ( )
540456
541457 let request1 = OSRequestLiveActivityReceiveReceipts ( key: " my-notification-id " , activityType: " my-activity-type " , activityId: " my-activity-id " )
542458 let request2 = OSRequestLiveActivityReceiveReceipts ( key: " my-notification-id " , activityType: " my-activity-type " , activityId: " my-activity-id " )
0 commit comments