Skip to content

Commit f916638

Browse files
WIP: Make vuid optional to identifyUser method
1 parent b54266c commit f916638

File tree

4 files changed

+11
-8
lines changed

4 files changed

+11
-8
lines changed

Sources/ODP/OdpEventManager.swift

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,11 @@ open class OdpEventManager {
5858
data: [:])
5959
}
6060

61-
func identifyUser(vuid: String, userId: String?) {
62-
var identifiers = [Constants.ODP.keyForVuid: vuid]
61+
func identifyUser(vuid: String?, userId: String?) {
62+
var identifiers = [String: String]()
63+
if let _vuid = vuid {
64+
identifiers[Constants.ODP.keyForVuid] = _vuid
65+
}
6366
if let userId = userId {
6467
identifiers[Constants.ODP.keyForUserId] = userId
6568
}

Sources/ODP/OdpManager.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,8 @@ public class OdpManager {
9797
if VuidManager.isVuid(userId) {
9898
// overwrite if userId is vuid (when userContext is created with vuid)
9999
eventManager.identifyUser(vuid: userId, userId: nil)
100-
} else if let _vuid = vuid {
101-
eventManager.identifyUser(vuid: _vuid, userId: userId)
100+
} else {
101+
eventManager.identifyUser(vuid: self.vuid, userId: userId)
102102
}
103103

104104
}

Tests/OptimizelyTests-Common/OdpManagerTests.swift

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ class OdpManagerTests: XCTestCase {
3434
cacheTimeoutInSecs: cacheTimeout,
3535
segmentManager: segmentManager,
3636
eventManager: eventManager)
37-
manager.vuid = nil
3837
}
3938

4039
override func tearDown() {
@@ -139,14 +138,14 @@ class OdpManagerTests: XCTestCase {
139138
manager.updateOdpConfig(apiKey: "key-1", apiHost: "host-1", segmentsToCheck: [])
140139
manager.identifyUser(userId: "user-1")
141140

142-
XCTAssert(OdpVuidManager.isVuid(eventManager.receivedIdentifyVuid))
141+
XCTAssert(VuidManager.isVuid(eventManager.receivedIdentifyVuid))
143142
XCTAssertEqual(eventManager.receivedIdentifyUserId, "user-1")
144143
}
145144

146145
func testIdentifyUser_odpIntegrated_vuidAsUserId() {
147146
manager.updateOdpConfig(apiKey: "key-1", apiHost: "host-1", segmentsToCheck: [])
148147

149-
let vuidAsUserId = OdpVuidManager.newVuid
148+
let vuidAsUserId = VuidManager.newVuid
150149
manager.identifyUser(userId: vuidAsUserId)
151150

152151
XCTAssertEqual(eventManager.receivedIdentifyVuid, vuidAsUserId)
@@ -389,7 +388,7 @@ class OdpManagerTests: XCTestCase {
389388
self.receivedRegisterVuid = vuid
390389
}
391390

392-
override func identifyUser(vuid: String, userId: String?) {
391+
override func identifyUser(vuid: String?, userId: String?) {
393392
self.receivedIdentifyVuid = vuid
394393
self.receivedIdentifyUserId = userId
395394
}

Tests/OptimizelyTests-Common/OptimizelyUserContextTests_ODP_2.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ class OptimizelyUserContextTests_ODP_2: XCTestCase {
3636
let odpEventApiManager = MockOdpEventApiManager()
3737
optimizely.odpManager = OdpManager(sdkKey: sdkKey,
3838
disable: false,
39+
vuid: "vuid_123",
3940
cacheSize: 10,
4041
cacheTimeoutInSecs: 10,
4142
eventManager: OdpEventManager(sdkKey: sdkKey,

0 commit comments

Comments
 (0)