File retry-exhausted.patch of Package python-responses.35935
From 60931f1cbeffebca85a42b52f3a40fe14d873b21 Mon Sep 17 00:00:00 2001
From: Maksim Beliaev <beliaev.m.s@gmail.com>
Date: Tue, 6 Sep 2022 16:33:43 +0200
Subject: [PATCH] adjust error message when Retry is exhausted (#580)
---
CHANGES | 1 +
responses/__init__.py | 2 +-
responses/tests/test_responses.py | 17 +++++++++++++++++
3 files changed, 19 insertions(+), 1 deletion(-)
Index: responses-0.21.0/responses/__init__.py
===================================================================
--- responses-0.21.0.orig/responses/__init__.py
+++ responses-0.21.0/responses/__init__.py
@@ -1021,7 +1021,7 @@ class RequestsMock(object):
retries = retries.increment(
method=response.request.method, # type: ignore[misc]
url=response.url, # type: ignore[misc]
- response=response, # type: ignore[misc]
+ response=response.raw, # type: ignore[misc]
)
return self._on_request(adapter, request, retries=retries, **kwargs)
except MaxRetryError:
Index: responses-0.21.0/responses/tests/test_responses.py
===================================================================
--- responses-0.21.0.orig/responses/tests/test_responses.py
+++ responses-0.21.0/responses/tests/test_responses.py
@@ -2415,6 +2415,23 @@ class TestMaxRetry:
run()
assert_reset()
+ def test_max_retries_exceed_msg(self):
+ @responses.activate(registry=registries.OrderedRegistry)
+ def run():
+ url = "https://example.com"
+ responses.get(url, body="Error", status=500)
+ responses.get(url, body="Error", status=500)
+
+ session = self.set_session(total=1)
+
+ with pytest.raises(MaxRetryError) as err:
+ session.get(url)
+
+ assert "too many 500 error responses" in str(err.value)
+
+ run()
+ assert_reset()
+
def test_adapter_retry_untouched(self):
"""Validate that every new request uses brand-new Retry object"""