You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Add OptimizelyBucketId
* Add stub setForcedVariation:userId:variationKey
* Add getForcedVariation and setForcedVariation to OPTLYProjectConfig.m+.h
* OPTLYDecisionService ---- check for forced variation ----
* Add setForcedVariation to Optimizely.m
* Add testSetForcedVariationExperimentNotRunning
* Add testGetVariationWithWhitelistedVariationOverriddenBySetForcedVariation
* Add testGetVariationWithInvalidAudienceOverriddenBySetForcedVariation
* Objective-C Implmentation of "Forced Bucketing" and "Bucketing ID" Design Docs
Summary:
OASIS-1397 Reference implementation for Forced variations and bucketing keys in one SDK
Add OptimizelyBucketId
Add stub setForcedVariation:userId:variationKey
Add getForcedVariation and setForcedVariation to OPTLYProjectConfig.m+.h
OPTLYDecisionService ---- check for forced variation ----
Add setForcedVariation to Optimizely.m
Add testSetForcedVariationExperimentNotRunning
Add testGetVariationWithWhitelistedVariationOverriddenBySetForcedVariation
Add testGetVariationWithInvalidAudienceOverriddenBySetForcedVariation
Add a couple more test asserts
Test Plan: Added 3 tests which pass to OPTLYDecisionServiceTest.m
Reviewers: alda
JIRA Issues: OASIS-1397
Differential Revision: https://phabricator.optimizely.com/D16606
* Add fourth test and remove yellow caution when nil is passed as variationKey to setForcedVariation:userId:variationKey:
* Add fifth test
* Add sixth test
* Improved error handling and logging in setForcedVariation:userId:variationKey:
* Change setForcedVariation to return a BOOL, agreeing with revised spec.
* preferredVariationMap should cache immutable variation id's not OPTLYVariation's which could go out-of-date across initialize's
* Add getForcedVariation:userId: to Optimizely.m+.h
* Add XCTAssert to testSetForcedVariationExperimentNotRunning
* Add two tests against invalid experimentKey's
* Add two tests against invalid variationKey's
* Add testSetForcedVariationCalledOnInvalidUserId
* Revert "Add OptimizelyBucketId"
This reverts commit f8c60a8.
* preferredVariationMap --> forcedVariationMap
* Add '#pragma mark's to OPTLYDecisionServiceTest.m
* Moving methods to different location, but not otherwise changing code
* Add methods to OPTLYProjectConfigTest.m
* Moving 4 methods to different section, OW code is unchanged.
* Add testSetForcedVariationFollowedByGetForcedVariation
* forcedVariationMap == userId --> experimentId --> variationId
* @synchronized access to mutable forcedVariationMap
* Add 2 new '@protocol Optimizely' methods to OPTLYClient.m
Copy file name to clipboardExpand all lines: OptimizelySDKCore/OptimizelySDKCore/OPTLYLoggerMessages.m
+2Lines changed: 2 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -156,6 +156,8 @@
156
156
NSString *const OPTLYLoggerMessagesExperimentUnknownForExperimentKey = @"[PROJECT CONFIG] Experiment key not found for experiment: %@. Experiment key is not in the datafile."; // experiment key
157
157
NSString *const OPTLYLoggerMessagesGroupUnknownForGroupId = @"[PROJECT CONFIG] Group not found for group ID: %@. Group ID is not in the datafile."; // group id
158
158
NSString *const OPTLYLoggerMessagesGetVariationNilVariation = @"[PROJECT CONFIG] Get variation returned a nil variation for user %@, experiment %@";
159
+
NSString *const OPTLYLoggerMessagesVariationKeyUnknownForExperimentKey = @"[PROJECT CONFIG] Variation key %@ not found for experiment key %@.";
160
+
NSString *const OPTLYLoggerMessagesProjectConfigUserIdInvalid = @"[PROJECT CONFIG] User ID cannot be an empty string.";
0 commit comments