@@ -132,7 +132,7 @@ class OptimizelyUserContextTests_Decide_CMAB: XCTestCase {
132132 let user = optimizely. createUserContext ( userId: kUserId, attributes: [ " gender " : " f " ] )
133133
134134 // Test multiple decisions with decideAsync
135- user. decideAsync ( keys: featureKeys, options : [ . ignoreUserProfileService ] ) { decisions in
135+ user. decideAsync ( keys: featureKeys) { decisions in
136136
137137 // Verify correct number of decisions were returned
138138 XCTAssertEqual ( decisions. count, 2 )
@@ -175,7 +175,7 @@ class OptimizelyUserContextTests_Decide_CMAB: XCTestCase {
175175 wait ( for: [ expectation] , timeout: 5 ) // Increased timeout for reliability
176176 }
177177
178- func testDecideAsync_cmabWithUserProfileCahing ( ) {
178+ func testDecideAsync_cmabIgnoreUPSCacheing ( ) {
179179 let expectation1 = XCTestExpectation ( description: " First CMAB decision " )
180180 let expectation2 = XCTestExpectation ( description: " Second CMAB decision " )
181181
@@ -192,17 +192,17 @@ class OptimizelyUserContextTests_Decide_CMAB: XCTestCase {
192192 attributes: [ " gender " : " f " , " age " : 25 ]
193193 )
194194
195- // First decision cache into user profile
195+
196196 user. decideAsync ( key: " feature_1 " ) { decision in
197197 XCTAssertEqual ( decision. variationKey, " a " )
198198 XCTAssertEqual ( self . mockCmabService. decisionCallCount, 1 )
199199 expectation1. fulfill ( )
200200
201- // Second decision (should use cache)
201+ // Second decision, ignore UPS, fetch decision again
202202 user. decideAsync ( key: " feature_1 " ) { decision in
203203 XCTAssertEqual ( decision. variationKey, " a " )
204- // Call count should still be 1 (cached)
205- XCTAssertEqual ( self . mockCmabService. decisionCallCount, 1 )
204+ // Call count should be increased by 1
205+ XCTAssertEqual ( self . mockCmabService. decisionCallCount, 2 )
206206 expectation2. fulfill ( )
207207 }
208208 }
@@ -228,17 +228,17 @@ class OptimizelyUserContextTests_Decide_CMAB: XCTestCase {
228228 userId: kUserId,
229229 attributes: [ " gender " : " f " , " age " : 25 ]
230230 )
231- user. decideAsync ( key: " feature_1 " , options: [ . ignoreUserProfileService , . ignoreCmabCache] ) { decision in
231+ user. decideAsync ( key: " feature_1 " , options: [ . ignoreCmabCache] ) { decision in
232232 XCTAssertEqual ( decision. variationKey, " a " )
233233 XCTAssertTrue ( self . mockCmabService. ignoreCacheUsed)
234234 exp1. fulfill ( )
235235 }
236- user. decideAsync ( key: " feature_1 " , options: [ . ignoreUserProfileService , . resetCmabCache] ) { decision in
236+ user. decideAsync ( key: " feature_1 " , options: [ . resetCmabCache] ) { decision in
237237 XCTAssertEqual ( decision. variationKey, " a " )
238238 XCTAssertTrue ( self . mockCmabService. resetCacheCache)
239239 exp2. fulfill ( )
240240 }
241- user. decideAsync ( key: " feature_1 " , options: [ . ignoreUserProfileService , . invalidateUserCmabCache] ) { decision in
241+ user. decideAsync ( key: " feature_1 " , options: [ . invalidateUserCmabCache] ) { decision in
242242 XCTAssertEqual ( decision. variationKey, " a " )
243243 XCTAssertTrue ( self . mockCmabService. invalidateUserCmabCache)
244244 exp3. fulfill ( )
@@ -263,7 +263,7 @@ class OptimizelyUserContextTests_Decide_CMAB: XCTestCase {
263263 attributes: [ " gender " : " f " , " age " : 25 ]
264264 )
265265
266- user. decideAsync ( key: " feature_1 " , options: [ . ignoreUserProfileService , . includeReasons] ) { decision in
266+ user. decideAsync ( key: " feature_1 " , options: [ . includeReasons] ) { decision in
267267 XCTAssertTrue ( decision. reasons. contains ( LogMessage . cmabFetchFailed ( " exp_with_audience " ) . reason) )
268268 expectation. fulfill ( )
269269 }
0 commit comments