@@ -100,8 +100,8 @@ def test_invalid_odp_event(self, *args):
100100
101101 def test_odp_event_manager_success (self , * args ):
102102 mock_logger = mock .Mock ()
103- event_manager = OdpEventManager (self . odp_config , mock_logger )
104- event_manager .start ()
103+ event_manager = OdpEventManager (mock_logger )
104+ event_manager .start (self . odp_config )
105105
106106 with mock .patch ('requests.post' , return_value = self .fake_server_response (status_code = 200 )):
107107 event_manager .send_event (** self .events [0 ])
@@ -116,8 +116,8 @@ def test_odp_event_manager_success(self, *args):
116116
117117 def test_odp_event_manager_batch (self , * args ):
118118 mock_logger = mock .Mock ()
119- event_manager = OdpEventManager (self . odp_config , mock_logger )
120- event_manager .start ()
119+ event_manager = OdpEventManager (mock_logger )
120+ event_manager .start (self . odp_config )
121121
122122 event_manager .batch_size = 2
123123 with mock .patch .object (
@@ -135,8 +135,8 @@ def test_odp_event_manager_batch(self, *args):
135135
136136 def test_odp_event_manager_multiple_batches (self , * args ):
137137 mock_logger = mock .Mock ()
138- event_manager = OdpEventManager (self . odp_config , mock_logger )
139- event_manager .start ()
138+ event_manager = OdpEventManager (mock_logger )
139+ event_manager .start (self . odp_config )
140140
141141 event_manager .batch_size = 2
142142 batch_count = 4
@@ -164,7 +164,8 @@ def test_odp_event_manager_multiple_batches(self, *args):
164164
165165 def test_odp_event_manager_backlog (self , * args ):
166166 mock_logger = mock .Mock ()
167- event_manager = OdpEventManager (self .odp_config , mock_logger )
167+ event_manager = OdpEventManager (mock_logger )
168+ event_manager .odp_config = self .odp_config
168169
169170 event_manager .batch_size = 2
170171 batch_count = 4
@@ -178,7 +179,7 @@ def test_odp_event_manager_backlog(self, *args):
178179 with mock .patch .object (
179180 event_manager .zaius_manager , 'send_odp_events' , new_callable = CopyingMock , return_value = False
180181 ) as mock_send :
181- event_manager .start ()
182+ event_manager .start (self . odp_config )
182183 event_manager .send_event (** self .events [0 ])
183184 event_manager .send_event (** self .events [1 ])
184185 event_manager .stop ()
@@ -198,8 +199,8 @@ def test_odp_event_manager_backlog(self, *args):
198199
199200 def test_odp_event_manager_flush (self , * args ):
200201 mock_logger = mock .Mock ()
201- event_manager = OdpEventManager (self . odp_config , mock_logger )
202- event_manager .start ()
202+ event_manager = OdpEventManager (mock_logger )
203+ event_manager .start (self . odp_config )
203204
204205 with mock .patch .object (
205206 event_manager .zaius_manager , 'send_odp_events' , new_callable = CopyingMock , return_value = False
@@ -217,8 +218,8 @@ def test_odp_event_manager_flush(self, *args):
217218
218219 def test_odp_event_manager_multiple_flushes (self , * args ):
219220 mock_logger = mock .Mock ()
220- event_manager = OdpEventManager (self . odp_config , mock_logger )
221- event_manager .start ()
221+ event_manager = OdpEventManager (mock_logger )
222+ event_manager .start (self . odp_config )
222223 flush_count = 4
223224
224225 with mock .patch .object (
@@ -244,8 +245,8 @@ def test_odp_event_manager_multiple_flushes(self, *args):
244245
245246 def test_odp_event_manager_retry_failure (self , * args ):
246247 mock_logger = mock .Mock ()
247- event_manager = OdpEventManager (self . odp_config , mock_logger )
248- event_manager .start ()
248+ event_manager = OdpEventManager (mock_logger )
249+ event_manager .start (self . odp_config )
249250
250251 number_of_tries = event_manager .retry_count + 1
251252
@@ -269,8 +270,8 @@ def test_odp_event_manager_retry_failure(self, *args):
269270
270271 def test_odp_event_manager_retry_success (self , * args ):
271272 mock_logger = mock .Mock ()
272- event_manager = OdpEventManager (self . odp_config , mock_logger )
273- event_manager .start ()
273+ event_manager = OdpEventManager (mock_logger )
274+ event_manager .start (self . odp_config )
274275
275276 with mock .patch .object (
276277 event_manager .zaius_manager , 'send_odp_events' , new_callable = CopyingMock , side_effect = [True , True , False ]
@@ -289,8 +290,8 @@ def test_odp_event_manager_retry_success(self, *args):
289290
290291 def test_odp_event_manager_send_failure (self , * args ):
291292 mock_logger = mock .Mock ()
292- event_manager = OdpEventManager (self . odp_config , mock_logger )
293- event_manager .start ()
293+ event_manager = OdpEventManager (mock_logger )
294+ event_manager .start (self . odp_config )
294295
295296 with mock .patch .object (
296297 event_manager .zaius_manager ,
@@ -313,8 +314,8 @@ def test_odp_event_manager_disabled(self, *args):
313314 mock_logger = mock .Mock ()
314315 odp_config = OdpConfig ()
315316 odp_config .update (None , None , None )
316- event_manager = OdpEventManager (odp_config , mock_logger )
317- event_manager .start ()
317+ event_manager = OdpEventManager (mock_logger )
318+ event_manager .start (odp_config )
318319
319320 event_manager .send_event (** self .events [0 ])
320321 event_manager .send_event (** self .events [1 ])
@@ -330,7 +331,9 @@ def test_odp_event_manager_queue_full(self, *args):
330331 mock_logger = mock .Mock ()
331332
332333 with mock .patch ('optimizely.helpers.enums.OdpEventManagerConfig.DEFAULT_QUEUE_CAPACITY' , 1 ):
333- event_manager = OdpEventManager (self .odp_config , mock_logger )
334+ event_manager = OdpEventManager (mock_logger )
335+
336+ event_manager .odp_config = self .odp_config
334337
335338 with mock .patch ('optimizely.odp.odp_event_manager.OdpEventManager.is_running' , True ):
336339 event_manager .send_event (** self .events [0 ])
@@ -344,8 +347,8 @@ def test_odp_event_manager_queue_full(self, *args):
344347
345348 def test_odp_event_manager_thread_exception (self , * args ):
346349 mock_logger = mock .Mock ()
347- event_manager = MockOdpEventManager (self . odp_config , mock_logger )
348- event_manager .start ()
350+ event_manager = MockOdpEventManager (mock_logger )
351+ event_manager .start (self . odp_config )
349352
350353 event_manager .send_event (** self .events [0 ])
351354 time .sleep (.1 )
@@ -360,8 +363,8 @@ def test_odp_event_manager_thread_exception(self, *args):
360363
361364 def test_odp_event_manager_override_default_data (self , * args ):
362365 mock_logger = mock .Mock ()
363- event_manager = OdpEventManager (self . odp_config , mock_logger )
364- event_manager .start ()
366+ event_manager = OdpEventManager (mock_logger )
367+ event_manager .start (self . odp_config )
365368
366369 event = deepcopy (self .events [0 ])
367370 event ['data' ]['data_source' ] = 'my-app'
@@ -381,9 +384,9 @@ def test_odp_event_manager_override_default_data(self, *args):
381384
382385 def test_odp_event_manager_flush_timeout (self , * args ):
383386 mock_logger = mock .Mock ()
384- event_manager = OdpEventManager (self . odp_config , mock_logger )
387+ event_manager = OdpEventManager (mock_logger )
385388 event_manager .flush_interval = .5
386- event_manager .start ()
389+ event_manager .start (self . odp_config )
387390
388391 with mock .patch .object (
389392 event_manager .zaius_manager , 'send_odp_events' , new_callable = CopyingMock , return_value = False
@@ -401,8 +404,8 @@ def test_odp_event_manager_flush_timeout(self, *args):
401404 def test_odp_event_manager_events_before_odp_ready (self , * args ):
402405 mock_logger = mock .Mock ()
403406 odp_config = OdpConfig ()
404- event_manager = OdpEventManager (odp_config , mock_logger )
405- event_manager .start ()
407+ event_manager = OdpEventManager (mock_logger )
408+ event_manager .start (odp_config )
406409
407410 with mock .patch .object (
408411 event_manager .zaius_manager , 'send_odp_events' , new_callable = CopyingMock , return_value = False
@@ -436,8 +439,8 @@ def test_odp_event_manager_events_before_odp_ready(self, *args):
436439 def test_odp_event_manager_events_before_odp_disabled (self , * args ):
437440 mock_logger = mock .Mock ()
438441 odp_config = OdpConfig ()
439- event_manager = OdpEventManager (odp_config , mock_logger )
440- event_manager .start ()
442+ event_manager = OdpEventManager (mock_logger )
443+ event_manager .start (odp_config )
441444
442445 with mock .patch .object (event_manager .zaius_manager , 'send_odp_events' ) as mock_send :
443446 event_manager .send_event (** self .events [0 ])
@@ -467,8 +470,8 @@ def test_odp_event_manager_events_before_odp_disabled(self, *args):
467470 def test_odp_event_manager_disabled_after_init (self , * args ):
468471 mock_logger = mock .Mock ()
469472 odp_config = OdpConfig (self .api_key , self .api_host )
470- event_manager = OdpEventManager (odp_config , mock_logger )
471- event_manager .start ()
473+ event_manager = OdpEventManager (mock_logger )
474+ event_manager .start (odp_config )
472475 event_manager .batch_size = 2
473476
474477 with mock .patch .object (
@@ -499,19 +502,20 @@ def test_odp_event_manager_disabled_after_events_in_queue(self, *args):
499502 mock_logger = mock .Mock ()
500503 odp_config = OdpConfig (self .api_key , self .api_host )
501504
502- event_manager = OdpEventManager (odp_config , mock_logger )
505+ event_manager = OdpEventManager (mock_logger )
506+ event_manager .odp_config = odp_config
503507 event_manager .batch_size = 3
504508
505509 with mock .patch ('optimizely.odp.odp_event_manager.OdpEventManager.is_running' , True ):
506510 event_manager .send_event (** self .events [0 ])
507511 event_manager .send_event (** self .events [1 ])
508- odp_config .update (None , None , [])
509- event_manager .update_config ()
510512
511513 with mock .patch .object (
512514 event_manager .zaius_manager , 'send_odp_events' , new_callable = CopyingMock , return_value = False
513515 ) as mock_send :
514- event_manager .start ()
516+ event_manager .start (odp_config )
517+ odp_config .update (None , None , [])
518+ event_manager .update_config ()
515519 event_manager .send_event (** self .events [0 ])
516520 event_manager .send_event (** self .events [1 ])
517521 event_manager .send_event (** self .events [0 ])
@@ -522,3 +526,10 @@ def test_odp_event_manager_disabled_after_events_in_queue(self, *args):
522526 mock_logger .error .assert_not_called ()
523527 mock_send .assert_called_once_with (self .api_key , self .api_host , self .processed_events )
524528 event_manager .stop ()
529+
530+ def test_send_event_before_config_set (self , * args ):
531+ mock_logger = mock .Mock ()
532+
533+ event_manager = OdpEventManager (mock_logger )
534+ event_manager .send_event (** self .events [0 ])
535+ mock_logger .debug .assert_called_with ('ODP event queue: cannot send before config has been set.' )
0 commit comments