@@ -125,18 +125,16 @@ final class IdentityExecutorTests: XCTestCase {
125125 MockUserRequests . setUnauthorizedAddAliasFailureResponse ( with: mocks. client, aliases: aliases)
126126 mocks. identityExecutor. enqueueDelta ( OSDelta ( name: OS_ADD_ALIAS_DELTA, identityModelId: user. identityModel. modelId, model: user. identityModel, property: " aliases " , value: aliases) )
127127
128- var invalidatedCallbackWasCalled = false
129- OneSignalUserManagerImpl . sharedInstance. User. onJwtInvalidated { _ in
130- invalidatedCallbackWasCalled = true
131- }
128+ let userJwtInvalidatedListener = MockUserJwtInvalidatedListener ( )
129+ OneSignalUserManagerImpl . sharedInstance. addUserJwtInvalidatedListener ( userJwtInvalidatedListener)
132130
133131 /* When */
134132 mocks. identityExecutor. processDeltaQueue ( inBackground: false )
135133 OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.5 )
136134
137135 /* Then */
138136 XCTAssertTrue ( mocks. client. hasExecutedRequestOfType ( OSRequestAddAliases . self) )
139- XCTAssertTrue ( invalidatedCallbackWasCalled)
137+ XCTAssertTrue ( userJwtInvalidatedListener . invalidatedCallbackWasCalled)
140138 }
141139
142140 func testRemoveAlias_IdentityVerificationRequired_withInvalidToken_firesCallback( ) {
@@ -151,18 +149,16 @@ final class IdentityExecutorTests: XCTestCase {
151149 MockUserRequests . setUnauthorizedRemoveAliasFailureResponse ( with: mocks. client, aliasLabel: userA_AliasLabel)
152150 mocks. identityExecutor. enqueueDelta ( OSDelta ( name: OS_REMOVE_ALIAS_DELTA, identityModelId: user. identityModel. modelId, model: user. identityModel, property: " aliases " , value: aliases) )
153151
154- var invalidatedCallbackWasCalled = false
155- OneSignalUserManagerImpl . sharedInstance. User. onJwtInvalidated { _ in
156- invalidatedCallbackWasCalled = true
157- }
152+ let userJwtInvalidatedListener = MockUserJwtInvalidatedListener ( )
153+ OneSignalUserManagerImpl . sharedInstance. addUserJwtInvalidatedListener ( userJwtInvalidatedListener)
158154
159155 /* When */
160156 mocks. identityExecutor. processDeltaQueue ( inBackground: false )
161157 OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.5 )
162158
163159 /* Then */
164160 XCTAssertTrue ( mocks. client. hasExecutedRequestOfType ( OSRequestRemoveAlias . self) )
165- XCTAssertTrue ( invalidatedCallbackWasCalled)
161+ XCTAssertTrue ( userJwtInvalidatedListener . invalidatedCallbackWasCalled)
166162 }
167163
168164 func testAddAliasRequests_Retry_OnTokenUpdate( ) {
@@ -182,20 +178,20 @@ final class IdentityExecutorTests: XCTestCase {
182178 MockUserRequests . setUnauthorizedAddAliasFailureResponse ( with: mocks. client, aliases: userA_Aliases)
183179 executor. enqueueDelta ( OSDelta ( name: OS_ADD_ALIAS_DELTA, identityModelId: user. identityModel. modelId, model: user. identityModel, property: " aliases " , value: aliases) )
184180
185- var invalidatedCallbackWasCalled = false
186- OneSignalUserManagerImpl . sharedInstance. User. onJwtInvalidated { _ in
187- invalidatedCallbackWasCalled = true
181+ let userJwtInvalidatedListener = MockUserJwtInvalidatedListener ( )
182+ userJwtInvalidatedListener. setCallback {
188183 MockUserRequests . setAddAliasesResponse ( with: mocks. client, aliases: aliases)
189184 OneSignalUserManagerImpl . sharedInstance. updateUserJwt ( externalId: userA_EUID, token: userA_ValidJwtToken)
190185 }
186+ OneSignalUserManagerImpl . sharedInstance. addUserJwtInvalidatedListener ( userJwtInvalidatedListener)
191187
192188 /* When */
193189 executor. processDeltaQueue ( inBackground: false )
194190 OneSignalCoreMocks . waitForBackgroundThreads ( seconds: 0.5 )
195191
196192 /* Then */
197193 XCTAssertTrue ( mocks. client. hasExecutedRequestOfType ( OSRequestAddAliases . self) )
198- XCTAssertTrue ( invalidatedCallbackWasCalled)
194+ XCTAssertTrue ( userJwtInvalidatedListener . invalidatedCallbackWasCalled)
199195 XCTAssertEqual ( mocks. client. networkRequestCount, 2 )
200196 }
201197
@@ -219,10 +215,8 @@ final class IdentityExecutorTests: XCTestCase {
219215 executor. enqueueDelta ( OSDelta ( name: OS_ADD_ALIAS_DELTA, identityModelId: userA. identityModel. modelId, model: userA. identityModel, property: " aliases " , value: aliases) )
220216 executor. enqueueDelta ( OSDelta ( name: OS_ADD_ALIAS_DELTA, identityModelId: userB. identityModel. modelId, model: userB. identityModel, property: " aliases " , value: aliases) )
221217
222- var invalidatedCallbackWasCalled = false
223- OneSignalUserManagerImpl . sharedInstance. User. onJwtInvalidated { _ in
224- invalidatedCallbackWasCalled = true
225- }
218+ let userJwtInvalidatedListener = MockUserJwtInvalidatedListener ( )
219+ OneSignalUserManagerImpl . sharedInstance. addUserJwtInvalidatedListener ( userJwtInvalidatedListener)
226220
227221 /* When */
228222 executor. processDeltaQueue ( inBackground: false )
@@ -236,7 +230,7 @@ final class IdentityExecutorTests: XCTestCase {
236230 /* Then */
237231 // The executor should execute this request since identity verification is required and the token was set
238232 XCTAssertTrue ( mocks. client. hasExecutedRequestOfType ( OSRequestAddAliases . self) )
239- XCTAssertTrue ( invalidatedCallbackWasCalled)
233+ XCTAssertTrue ( userJwtInvalidatedListener . invalidatedCallbackWasCalled)
240234 let addAliasRequests = mocks. client. executedRequests. filter { request in
241235 request. isKind ( of: OSRequestAddAliases . self)
242236 }
@@ -263,10 +257,8 @@ final class IdentityExecutorTests: XCTestCase {
263257 executor. enqueueDelta ( OSDelta ( name: OS_REMOVE_ALIAS_DELTA, identityModelId: userA. identityModel. modelId, model: userA. identityModel, property: " aliases " , value: aliases) )
264258 executor. enqueueDelta ( OSDelta ( name: OS_REMOVE_ALIAS_DELTA, identityModelId: userB. identityModel. modelId, model: userB. identityModel, property: " aliases " , value: aliases) )
265259
266- var invalidatedCallbackWasCalled = false
267- OneSignalUserManagerImpl . sharedInstance. User. onJwtInvalidated { _ in
268- invalidatedCallbackWasCalled = true
269- }
260+ let userJwtInvalidatedListener = MockUserJwtInvalidatedListener ( )
261+ OneSignalUserManagerImpl . sharedInstance. addUserJwtInvalidatedListener ( userJwtInvalidatedListener)
270262
271263 /* When */
272264 executor. processDeltaQueue ( inBackground: false )
@@ -279,7 +271,7 @@ final class IdentityExecutorTests: XCTestCase {
279271 /* Then */
280272 // The executor should execute this request since identity verification is required and the token was set
281273 XCTAssertTrue ( mocks. client. hasExecutedRequestOfType ( OSRequestRemoveAlias . self) )
282- XCTAssertTrue ( invalidatedCallbackWasCalled)
274+ XCTAssertTrue ( userJwtInvalidatedListener . invalidatedCallbackWasCalled)
283275 let removeAliasRequests = mocks. client. executedRequests. filter { request in
284276 request. isKind ( of: OSRequestRemoveAlias . self)
285277 }
0 commit comments