Skip to content

Commit f4c8173

Browse files
author
Paul V Craven
committed
Stub out requests.Session.get instead of requests.get
1 parent 80bc26c commit f4c8173

5 files changed

+22
-22
lines changed

tests/test_config_manager.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@ def test_get_config_blocks(self):
218218
self.assertEqual(1, round(end_time - start_time))
219219

220220

221-
@mock.patch('requests.get')
221+
@mock.patch('requests.Session.get')
222222
class PollingConfigManagerTest(base.BaseTest):
223223
def test_init__no_sdk_key_no_datafile__fails(self, _):
224224
""" Test that initialization fails if there is no sdk_key or datafile provided. """
@@ -379,7 +379,7 @@ def test_fetch_datafile(self, _):
379379
test_response.status_code = 200
380380
test_response.headers = test_headers
381381
test_response._content = test_datafile
382-
with mock.patch('requests.get', return_value=test_response) as mock_request:
382+
with mock.patch('requests.Session.get', return_value=test_response) as mock_request:
383383
project_config_manager = config_manager.PollingConfigManager(sdk_key=sdk_key)
384384
project_config_manager.stop()
385385

@@ -392,7 +392,7 @@ def test_fetch_datafile(self, _):
392392
self.assertIsInstance(project_config_manager.get_config(), project_config.ProjectConfig)
393393

394394
# Call fetch_datafile again and assert that request to URL is with If-Modified-Since header.
395-
with mock.patch('requests.get', return_value=test_response) as mock_requests:
395+
with mock.patch('requests.Session.get', return_value=test_response) as mock_requests:
396396
project_config_manager._initialize_thread()
397397
project_config_manager.start()
398398
project_config_manager.stop()
@@ -421,7 +421,7 @@ def raise_for_status(self):
421421
test_response.headers = test_headers
422422
test_response._content = test_datafile
423423

424-
with mock.patch('requests.get', return_value=test_response) as mock_request:
424+
with mock.patch('requests.Session.get', return_value=test_response) as mock_request:
425425
project_config_manager = config_manager.PollingConfigManager(sdk_key=sdk_key, logger=mock_logger)
426426
project_config_manager.stop()
427427

@@ -434,7 +434,7 @@ def raise_for_status(self):
434434
self.assertIsInstance(project_config_manager.get_config(), project_config.ProjectConfig)
435435

436436
# Call fetch_datafile again, but raise exception this time
437-
with mock.patch('requests.get', return_value=MockExceptionResponse()) as mock_requests:
437+
with mock.patch('requests.Session.get', return_value=MockExceptionResponse()) as mock_requests:
438438
project_config_manager._initialize_thread()
439439
project_config_manager.start()
440440
project_config_manager.stop()
@@ -462,7 +462,7 @@ def test_fetch_datafile__request_exception_raised(self, _):
462462
test_response.status_code = 200
463463
test_response.headers = test_headers
464464
test_response._content = test_datafile
465-
with mock.patch('requests.get', return_value=test_response) as mock_request:
465+
with mock.patch('requests.Session.get', return_value=test_response) as mock_request:
466466
project_config_manager = config_manager.PollingConfigManager(sdk_key=sdk_key, logger=mock_logger)
467467
project_config_manager.stop()
468468

@@ -476,7 +476,7 @@ def test_fetch_datafile__request_exception_raised(self, _):
476476

477477
# Call fetch_datafile again, but raise exception this time
478478
with mock.patch(
479-
'requests.get',
479+
'requests.Session.get',
480480
side_effect=requests.exceptions.RequestException('Error Error !!'),
481481
) as mock_requests:
482482
project_config_manager._initialize_thread()
@@ -506,7 +506,7 @@ def test_fetch_datafile__exception_polling_thread_failed(self, _):
506506
test_response.headers = test_headers
507507
test_response._content = test_datafile
508508

509-
with mock.patch('requests.get', return_value=test_response):
509+
with mock.patch('requests.Session.get', return_value=test_response):
510510
project_config_manager = config_manager.PollingConfigManager(sdk_key=sdk_key,
511511
logger=mock_logger,
512512
update_interval=12345678912345)
@@ -529,7 +529,7 @@ def test_is_running(self, _):
529529
project_config_manager.stop()
530530

531531

532-
@mock.patch('requests.get')
532+
@mock.patch('requests.Session.get')
533533
class AuthDatafilePollingConfigManagerTest(base.BaseTest):
534534
def test_init__datafile_access_token_none__fails(self, _):
535535
""" Test that initialization fails if datafile_access_token is None. """
@@ -569,7 +569,7 @@ def test_fetch_datafile(self, _):
569569
test_response._content = test_datafile
570570

571571
# Call fetch_datafile and assert that request was sent with correct authorization header
572-
with mock.patch('requests.get',
572+
with mock.patch('requests.Session.get',
573573
return_value=test_response) as mock_request:
574574
project_config_manager.fetch_datafile()
575575

@@ -596,7 +596,7 @@ def test_fetch_datafile__request_exception_raised(self, _):
596596
test_response._content = test_datafile
597597

598598
# Call fetch_datafile and assert that request was sent with correct authorization header
599-
with mock.patch('requests.get', return_value=test_response) as mock_request:
599+
with mock.patch('requests.Session.get', return_value=test_response) as mock_request:
600600
project_config_manager = config_manager.AuthDatafilePollingConfigManager(
601601
datafile_access_token=datafile_access_token,
602602
sdk_key=sdk_key,
@@ -614,7 +614,7 @@ def test_fetch_datafile__request_exception_raised(self, _):
614614

615615
# Call fetch_datafile again, but raise exception this time
616616
with mock.patch(
617-
'requests.get',
617+
'requests.Session.get',
618618
side_effect=requests.exceptions.RequestException('Error Error !!'),
619619
) as mock_requests:
620620
project_config_manager._initialize_thread()

tests/test_event_dispatcher.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ def test_dispatch_event__get_request(self):
2929
params = {'a': '111001', 'n': 'test_event', 'g': '111028', 'u': 'oeutest_user'}
3030
event = event_builder.Event(url, params)
3131

32-
with mock.patch('requests.get') as mock_request_get:
32+
with mock.patch('requests.Session.get') as mock_request_get:
3333
event_dispatcher.EventDispatcher.dispatch_event(event)
3434

3535
mock_request_get.assert_called_once_with(url, params=params, timeout=EventDispatchConfig.REQUEST_TIMEOUT)

tests/test_notification_center_registry.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ def test_remove_notification_center(self):
6060
test_response = self.fake_server_response(status_code=200, content=test_datafile)
6161
notification_center = _NotificationCenterRegistry.get_notification_center(sdk_key, logger)
6262

63-
with mock.patch('requests.get', return_value=test_response), \
63+
with mock.patch('requests.Session.get', return_value=test_response), \
6464
mock.patch.object(notification_center, 'send_notifications') as mock_send:
6565

6666
client = Optimizely(sdk_key=sdk_key, logger=logger)

tests/test_optimizely.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4696,7 +4696,7 @@ def delay(*args, **kwargs):
46964696
time.sleep(.5)
46974697
return mock.DEFAULT
46984698

4699-
with mock.patch('requests.get', return_value=test_response, side_effect=delay):
4699+
with mock.patch('requests.Session.get', return_value=test_response, side_effect=delay):
47004700
# initialize config_manager with delay, so it will receive the datafile after client initialization
47014701
custom_config_manager = config_manager.PollingConfigManager(sdk_key='segments-test', logger=logger)
47024702
client = optimizely.Optimizely(config_manager=custom_config_manager)
@@ -5428,7 +5428,7 @@ def test_send_odp_event__send_event_with_static_config_manager(self):
54285428
def test_send_odp_event__send_event_with_polling_config_manager(self):
54295429
mock_logger = mock.Mock()
54305430
with mock.patch(
5431-
'requests.get',
5431+
'requests.Session.get',
54325432
return_value=self.fake_server_response(
54335433
status_code=200,
54345434
content=json.dumps(self.config_dict_with_audience_segments)
@@ -5467,7 +5467,7 @@ def test_send_odp_event__log_debug_if_datafile_not_ready(self):
54675467
def test_send_odp_event__log_error_if_odp_not_enabled_with_polling_config_manager(self):
54685468
mock_logger = mock.Mock()
54695469
with mock.patch(
5470-
'requests.get',
5470+
'requests.Session.get',
54715471
return_value=self.fake_server_response(
54725472
status_code=200,
54735473
content=json.dumps(self.config_dict_with_audience_segments)

tests/test_optimizely_factory.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
from . import base
2727

2828

29-
@mock.patch('requests.get')
29+
@mock.patch('requests.Session.get')
3030
class OptimizelyFactoryTest(base.BaseTest):
3131
def delay(*args, **kwargs):
3232
time.sleep(.5)
@@ -171,7 +171,7 @@ def test_set_batch_size_and_set_flush_interval___should_set_values_valid_or_inva
171171
self.assertEqual(optimizely_instance.event_processor.batch_size, 10)
172172

173173
def test_update_odp_config_correctly(self, _):
174-
with mock.patch('requests.get') as mock_request_post:
174+
with mock.patch('requests.Session.get') as mock_request_post:
175175
mock_request_post.return_value = self.fake_server_response(
176176
status_code=200,
177177
content=json.dumps(self.config_dict_with_audience_segments)
@@ -194,7 +194,7 @@ def test_update_odp_config_correctly_with_custom_config_manager_and_delay(self,
194194
test_datafile = json.dumps(self.config_dict_with_audience_segments)
195195
test_response = self.fake_server_response(status_code=200, content=test_datafile)
196196

197-
with mock.patch('requests.get', return_value=test_response, side_effect=self.delay):
197+
with mock.patch('requests.Session.get', return_value=test_response, side_effect=self.delay):
198198
# initialize config_manager with delay, so it will receive the datafile after client initialization
199199
config_manager = PollingConfigManager(sdk_key='test', logger=logger)
200200
client = OptimizelyFactory.default_instance_with_config_manager(config_manager=config_manager)
@@ -221,7 +221,7 @@ def test_update_odp_config_correctly_with_delay(self, _):
221221
test_datafile = json.dumps(self.config_dict_with_audience_segments)
222222
test_response = self.fake_server_response(status_code=200, content=test_datafile)
223223

224-
with mock.patch('requests.get', return_value=test_response, side_effect=self.delay):
224+
with mock.patch('requests.Session.get', return_value=test_response, side_effect=self.delay):
225225
# initialize config_manager with delay, so it will receive the datafile after client initialization
226226
client = OptimizelyFactory.default_instance(sdk_key='test')
227227
odp_manager = client.odp_manager
@@ -247,7 +247,7 @@ def test_odp_updated_with_custom_instance(self, _):
247247
test_datafile = json.dumps(self.config_dict_with_audience_segments)
248248
test_response = self.fake_server_response(status_code=200, content=test_datafile)
249249

250-
with mock.patch('requests.get', return_value=test_response, side_effect=self.delay):
250+
with mock.patch('requests.Session.get', return_value=test_response, side_effect=self.delay):
251251
# initialize config_manager with delay, so it will receive the datafile after client initialization
252252
client = OptimizelyFactory.custom_instance(sdk_key='test')
253253
odp_manager = client.odp_manager

0 commit comments

Comments
 (0)