Skip to content

Commit 589bc34

Browse files
committed
[tests] Update tests
* No more transfer subscription * All requests using EUID previously now use OSID * After a 409 conflict, there can be a follow-up CreateUser request (whose purpose is to retrieve the OneSignal ID) and a Fetch User request
1 parent 4ed7a64 commit 589bc34

File tree

4 files changed

+24
-24
lines changed

4 files changed

+24
-24
lines changed

iOS_SDK/OneSignalSDK/OneSignalUserMocks/MockUserRequests.swift

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ extension MockUserRequests {
9494
response: userResponse
9595
)
9696
client.setMockResponseForRequest(
97-
request: "<OSRequestFetchUser with external_id: \(externalId)>",
97+
request: "<OSRequestFetchUser with onesignal_id: \(osid)>",
9898
response: userResponse
9999
)
100100
}
@@ -111,6 +111,16 @@ extension MockUserRequests {
111111
request: "<OSRequestIdentifyUser with external_id: \(externalId)>",
112112
error: NSError(domain: "not-important", code: 409)
113113
)
114+
// 2. Set the response for the subsequent Create User request
115+
let userResponse = MockUserRequests.testIdentityPayload(onesignalId: osid, externalId: externalId)
116+
client.setMockResponseForRequest(
117+
request: "<OSRequestCreateUser with externalId: \(externalId)>",
118+
response: userResponse)
119+
// 3. Set the response for the subsequent Fetch User request
120+
client.setMockResponseForRequest(
121+
request: "<OSRequestFetchUser with onesignal_id: \(osid)>",
122+
response: fetchResponse
123+
)
114124
} else {
115125
// The Identify User is successful, the OSID is unchanged
116126
osid = anonUserOSID
@@ -119,12 +129,12 @@ extension MockUserRequests {
119129
request: "<OSRequestIdentifyUser with external_id: \(externalId)>",
120130
response: fetchResponse
121131
)
132+
// 2. Set the response for the subsequent Fetch User request
133+
client.setMockResponseForRequest(
134+
request: "<OSRequestFetchUser with onesignalId: \(osid)>",
135+
response: fetchResponse
136+
)
122137
}
123-
// 2. Set the response for the subsequent Fetch User request
124-
client.setMockResponseForRequest(
125-
request: "<OSRequestFetchUser with external_id: \(externalId)>",
126-
response: fetchResponse
127-
)
128138
}
129139

130140
/**
@@ -147,7 +157,7 @@ extension MockUserRequests {
147157
]
148158
]
149159
client.setMockResponseForRequest(
150-
request: "<OSRequestFetchUser with external_id: \(externalId)>",
160+
request: "<OSRequestFetchUser with onesignal_id: \(osid)>",
151161
response: fetchResponse
152162
)
153163
}
@@ -207,11 +217,4 @@ extension MockUserRequests {
207217
response: response
208218
)
209219
}
210-
211-
public static func setTransferSubscriptionResponse(with client: MockOneSignalClient, externalId: String) {
212-
client.setMockResponseForRequest(
213-
request: "<OSRequestTransferSubscription to external_id: \(externalId)>",
214-
response: [:] // The SDK does not use the response
215-
)
216-
}
217220
}

iOS_SDK/OneSignalSDK/OneSignalUserMocks/OneSignalUserMocks.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ public class OneSignalUserMocks: NSObject {
4343

4444
public static func resetStaticUserExecutor() {
4545
OSUserExecutor.userRequestQueue.removeAll()
46-
OSUserExecutor.transferSubscriptionRequestQueue.removeAll()
4746
}
4847
}
4948

iOS_SDK/OneSignalSDK/OneSignalUserTests/OneSignalUserTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -312,7 +312,7 @@ final class OneSignalUserTests: XCTestCase {
312312

313313
// Increase flush interval to allow all the updates to batch
314314
OSOperationRepo.sharedInstance.pollIntervalMilliseconds = 300
315-
315+
316316
/* When */
317317

318318
OneSignalUserManagerImpl.sharedInstance.sendSessionTime(100)

iOS_SDK/OneSignalSDK/OneSignalUserTests/SwitchUserIntegrationTests.swift

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,6 @@ final class SwitchUserIntegrationTests: XCTestCase {
105105
MockUserRequests.setAddTagsAndLanguageResponse(with: client, tags: tagsUserA, language: "lang_a")
106106
MockUserRequests.setAddAliasesResponse(with: client, aliases: ["alias_a": "id_a"])
107107
MockUserRequests.setAddEmailResponse(with: client, email: "[email protected]")
108-
MockUserRequests.setTransferSubscriptionResponse(with: client, externalId: userA_EUID)
109108
// Returns mocked user data to test hydration
110109
MockUserRequests.setDefaultFetchUserResponseForHydration(with: client, externalId: userA_EUID)
111110

@@ -160,7 +159,6 @@ final class SwitchUserIntegrationTests: XCTestCase {
160159
contains: ["subscription": ["token": "[email protected]"]])
161160
)
162161
XCTAssertTrue(client.hasExecutedRequestOfType(OSRequestFetchUser.self))
163-
XCTAssertTrue(client.hasExecutedRequestOfType(OSRequestTransferSubscription.self))
164162

165163
// 3. Asserts for User A - local data is updated via hydration
166164
XCTAssertEqual("remote_language", OneSignalUserManagerImpl.sharedInstance.user.propertiesModel.language)
@@ -262,15 +260,15 @@ final class SwitchUserIntegrationTests: XCTestCase {
262260

263261
// 2. Asserts for User A
264262
XCTAssertTrue(client.onlyOneRequest( // Tag + Language
265-
contains: "apps/test-app-id/users/by/external_id/\(userA_EUID)",
263+
contains: "apps/test-app-id/users/by/onesignal_id/\(userA_OSID)",
266264
contains: ["properties": ["language": "lang_a", "tags": tagsUserA]])
267265
)
268266
XCTAssertTrue(client.onlyOneRequest( // Alias
269-
contains: "apps/test-app-id/users/by/external_id/\(userA_EUID)/identity",
267+
contains: "apps/test-app-id/users/by/onesignal_id/\(userA_OSID)/identity",
270268
contains: ["identity": ["alias_a": "id_a"]])
271269
)
272270
XCTAssertTrue(client.onlyOneRequest( // Email
273-
contains: "apps/test-app-id/users/by/external_id/\(userA_EUID)/subscriptions",
271+
contains: "apps/test-app-id/users/by/onesignal_id/\(userA_OSID)/subscriptions",
274272
contains: ["subscription": ["token": "[email protected]"]])
275273
)
276274

@@ -388,15 +386,15 @@ final class SwitchUserIntegrationTests: XCTestCase {
388386

389387
// 2. Asserts for User A
390388
XCTAssertTrue(client.onlyOneRequest( // Tag + Language
391-
contains: "apps/test-app-id/users/by/external_id/\(userA_EUID)",
389+
contains: "apps/test-app-id/users/by/onesignal_id/\(userA_OSID)",
392390
contains: ["properties": ["language": "lang_a", "tags": tagsUserA]])
393391
)
394392
XCTAssertTrue(client.onlyOneRequest( // Alias
395-
contains: "apps/test-app-id/users/by/external_id/\(userA_EUID)/identity",
393+
contains: "apps/test-app-id/users/by/onesignal_id/\(userA_OSID)/identity",
396394
contains: ["identity": ["alias_a": "id_a"]])
397395
)
398396
XCTAssertTrue(client.onlyOneRequest( // Email
399-
contains: "apps/test-app-id/users/by/external_id/\(userA_EUID)/subscriptions",
397+
contains: "apps/test-app-id/users/by/onesignal_id/\(userA_OSID)/subscriptions",
400398
contains: ["subscription": ["token": "[email protected]"]])
401399
)
402400

0 commit comments

Comments
 (0)