fix(payments): retry provider connect failures
This commit is contained in:
@@ -1,6 +1,10 @@
|
||||
import unittest
|
||||
|
||||
from bot.payment_providers.shared.http_client import HttpClientMixin
|
||||
from bot.payment_providers.shared.http_client import (
|
||||
HttpClientMixin,
|
||||
_PAYMENT_REQUEST_USER_AGENT,
|
||||
_should_retry_transport_error,
|
||||
)
|
||||
|
||||
|
||||
class _DummyHttpClient(HttpClientMixin):
|
||||
@@ -14,5 +18,15 @@ class PaymentHttpClientTests(unittest.IsolatedAsyncioTestCase):
|
||||
try:
|
||||
session = await client._get_session()
|
||||
self.assertTrue(session.connector.force_close)
|
||||
self.assertTrue(session.trace_configs)
|
||||
self.assertEqual(session.headers["User-Agent"], _PAYMENT_REQUEST_USER_AGENT)
|
||||
finally:
|
||||
await client.close()
|
||||
|
||||
async def test_http_client_retries_only_before_headers_are_sent(self):
|
||||
self.assertTrue(
|
||||
_should_retry_transport_error(TimeoutError(), {"headers_sent": False})
|
||||
)
|
||||
self.assertFalse(
|
||||
_should_retry_transport_error(TimeoutError(), {"headers_sent": True})
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user