From e952b37975d7c46e2f16191819dfe974f391d48c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20B=C3=BCchler?= Date: Fri, 9 Feb 2018 11:04:01 +0100 Subject: [PATCH] Reduce timeout in _wait_for_server_start to 25s Modify Retry.total in Pact._wait_for_server_start to reduce the total wait time from 54 minutes to about 25 seconds. With a Retry.backoff_factor of 0.1 and 15 retries, the total wait time before an error is `sum([0.1 * (2**(i - 1)) for i in range(16)])` which is 3276 seconds or 54 minutes. --- pact/pact.py | 2 +- pact/test/test_pact.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pact/pact.py b/pact/pact.py index 081e35e8c..8b9c96dbc 100644 --- a/pact/pact.py +++ b/pact/pact.py @@ -256,7 +256,7 @@ def _wait_for_server_start(self): :raises RuntimeError: If there is a problem starting the mock service. """ s = requests.Session() - retries = Retry(total=15, backoff_factor=0.1) + retries = Retry(total=9, backoff_factor=0.1) s.mount('http://', HTTPAdapter(max_retries=retries)) resp = s.get(self.uri, headers=self.HEADERS) if resp.status_code != 200: diff --git a/pact/test/test_pact.py b/pact/test/test_pact.py index 1f9d21700..77bba1b9a 100644 --- a/pact/test/test_pact.py +++ b/pact/test/test_pact.py @@ -334,7 +334,7 @@ def test_wait_for_server_start_success(self): 'http://localhost:1234', headers={'X-Pact-Mock-Service': 'true'}) self.mock_HTTPAdapter.assert_called_once_with( max_retries=self.mock_Retry.return_value) - self.mock_Retry.assert_called_once_with(total=15, backoff_factor=0.1) + self.mock_Retry.assert_called_once_with(total=9, backoff_factor=0.1) self.assertFalse(pact._process.communicate.called) self.assertFalse(pact._process.terminate.called) @@ -352,7 +352,7 @@ def test_wait_for_server_start_failure(self): 'http://localhost:1234', headers={'X-Pact-Mock-Service': 'true'}) self.mock_HTTPAdapter.assert_called_once_with( max_retries=self.mock_Retry.return_value) - self.mock_Retry.assert_called_once_with(total=15, backoff_factor=0.1) + self.mock_Retry.assert_called_once_with(total=9, backoff_factor=0.1) pact._process.communicate.assert_called_once_with() pact._process.terminate.assert_called_once_with()