@@ -5140,11 +5140,7 @@ def test_user_context_invalid_user_id(self):
5140
5140
uc = self .optimizely .create_user_context (u )
5141
5141
self .assertIsNone (uc , "invalid user id should return none" )
5142
5142
5143
- def test_invalid_flag_key (self ):
5144
- """Tests invalid flag key in function get_flag_variation_by_key()."""
5145
- pass
5146
-
5147
- def test_send_identify_event_when_called_with_odp_enabled (self ):
5143
+ def test_send_identify_event__when_called_with_odp_enabled (self ):
5148
5144
mock_logger = mock .Mock ()
5149
5145
client = optimizely .Optimizely (json .dumps (self .config_dict_with_audience_segments ), logger = mock_logger )
5150
5146
with mock .patch .object (client , 'identify_user' ) as identify :
@@ -5154,6 +5150,34 @@ def test_send_identify_event_when_called_with_odp_enabled(self):
5154
5150
mock_logger .error .assert_not_called ()
5155
5151
client .close ()
5156
5152
5153
+ def test_sdk_settings__accept_zero_for_flush_interval (self ):
5154
+ mock_logger = mock .Mock ()
5155
+ sdk_settings = OptimizelySdkSettings (odp_event_flush_interval = 0 )
5156
+ client = optimizely .Optimizely (
5157
+ json .dumps (self .config_dict_with_audience_segments ),
5158
+ logger = mock_logger ,
5159
+ settings = sdk_settings
5160
+ )
5161
+ flush_interval = client .odp_manager .event_manager .flush_interval
5162
+
5163
+ self .assertEqual (flush_interval , 0 )
5164
+ mock_logger .error .assert_not_called ()
5165
+ client .close ()
5166
+
5167
+ def test_sdk_settings__should_use_default_when_odp_flush_interval_none (self ):
5168
+ mock_logger = mock .Mock ()
5169
+ sdk_settings = OptimizelySdkSettings (odp_event_flush_interval = None )
5170
+ client = optimizely .Optimizely (
5171
+ json .dumps (self .config_dict_with_audience_segments ),
5172
+ logger = mock_logger ,
5173
+ settings = sdk_settings
5174
+ )
5175
+ flush_interval = client .odp_manager .event_manager .flush_interval
5176
+ self .assertEqual (flush_interval , enums .OdpEventManagerConfig .DEFAULT_FLUSH_INTERVAL )
5177
+
5178
+ mock_logger .error .assert_not_called ()
5179
+ client .close ()
5180
+
5157
5181
def test_sdk_settings__log_info_when_disabled (self ):
5158
5182
mock_logger = mock .Mock ()
5159
5183
sdk_settings = OptimizelySdkSettings (odp_disabled = True )
@@ -5162,6 +5186,7 @@ def test_sdk_settings__log_info_when_disabled(self):
5162
5186
logger = mock_logger ,
5163
5187
settings = sdk_settings
5164
5188
)
5189
+
5165
5190
self .assertIsNone (client .odp_manager .event_manager )
5166
5191
self .assertIsNone (client .odp_manager .segment_manager )
5167
5192
mock_logger .info .assert_called_once_with ('ODP is disabled.' )
@@ -5211,6 +5236,36 @@ def test_sdk_settings__accept_cache_size_and_cache_timeout(self):
5211
5236
mock_logger .error .assert_not_called ()
5212
5237
client .close ()
5213
5238
5239
+ def test_sdk_settings__use_default_cache_size_and_timeout_when_odp_flush_interval_none (self ):
5240
+ mock_logger = mock .Mock ()
5241
+ sdk_settings = OptimizelySdkSettings ()
5242
+ client = optimizely .Optimizely (
5243
+ json .dumps (self .config_dict_with_audience_segments ),
5244
+ logger = mock_logger ,
5245
+ settings = sdk_settings
5246
+ )
5247
+ segments_cache = client .odp_manager .segment_manager .segments_cache
5248
+ self .assertEqual (segments_cache .timeout , enums .OdpSegmentsCacheConfig .DEFAULT_TIMEOUT_SECS )
5249
+ self .assertEqual (segments_cache .capacity , enums .OdpSegmentsCacheConfig .DEFAULT_CAPACITY )
5250
+
5251
+ mock_logger .error .assert_not_called ()
5252
+ client .close ()
5253
+
5254
+ def test_sdk_settings__accept_zero_cache_size_timeout_and_cache_size (self ):
5255
+ mock_logger = mock .Mock ()
5256
+ sdk_settings = OptimizelySdkSettings (segments_cache_size = 0 , segments_cache_timeout_in_secs = 0 )
5257
+ client = optimizely .Optimizely (
5258
+ json .dumps (self .config_dict_with_audience_segments ),
5259
+ logger = mock_logger ,
5260
+ settings = sdk_settings
5261
+ )
5262
+ segments_cache = client .odp_manager .segment_manager .segments_cache
5263
+ self .assertEqual (segments_cache .capacity , 0 )
5264
+ self .assertEqual (segments_cache .timeout , 0 )
5265
+
5266
+ mock_logger .error .assert_not_called ()
5267
+ client .close ()
5268
+
5214
5269
def test_sdk_settings__accept_valid_custom_cache (self ):
5215
5270
class CustomCache :
5216
5271
def reset (self ):
0 commit comments