def test_post_throws(): with patch('requests.post') as patched_post: type(patched_post.return_value).status_code = 500 client = ReliableHttpClient(endpoint, {}, retry_policy) client.post("r", [200], {})
def test_post_throws(): with patch('requests.post') as patched_post: type(patched_post.return_value).status_code = 500 client = ReliableHttpClient("http://url.com", {}, "username", "password", retry_policy) client.post("r", [200], {})
def test_post(): with patch('requests.post') as patched_post: type(patched_post.return_value).status_code = 200 client = ReliableHttpClient(endpoint, {}, retry_policy) result = client.post("r", [200], {}) assert_equals(200, result.status_code)
def test_post(): with patch('requests.post') as patched_post: type(patched_post.return_value).status_code = 200 client = ReliableHttpClient("http://url.com", {}, "username", "password", retry_policy) result = client.post("r", [200], {}) assert_equals(200, result.status_code)
def test_post_will_retry(): global sequential_values, retry_policy retry_policy = MagicMock() retry_policy.should_retry.return_value = True retry_policy.seconds_to_sleep.return_value = 0.01 with patch('requests.post') as patched_post: # When we call assert_equals in this unit test, the side_effect is executed. # So, the last status_code should be repeated. sequential_values = [500, 200, 200] pm = PropertyMock() pm.side_effect = return_sequential type(patched_post.return_value).status_code = pm client = ReliableHttpClient(endpoint, {}, retry_policy) result = client.post("r", [200], {}) assert_equals(200, result.status_code) retry_policy.should_retry.assert_called_once_with(500, False, 0) retry_policy.seconds_to_sleep.assert_called_once_with(0)