Stabilize support for Retry-After header (MSC4014) (#16947)

This commit is contained in:
Patrick Cloke authored and GitHub committed 2024-03-08 09:33:46 +00:00
1 parent 4af33015af
commit 696cc9e802
5 files changed
+5 -21

No files matched your search

+2 -6
View File
@@ -33,18 +33,14 @@ class LimitExceededErrorTestCase(unittest.TestCase):
self.assertIn("needle", err.debug_context)
self.assertNotIn("needle", serialised)
# Create a sub-class to avoid mutating the class-level property.
class LimitExceededErrorHeaders(LimitExceededError):
include_retry_after_header = True
def test_limit_exceeded_header(self) -> None:
err = self.LimitExceededErrorHeaders(limiter_name="test", retry_after_ms=100)
err = LimitExceededError(limiter_name="test", retry_after_ms=100)
self.assertEqual(err.error_dict(None).get("retry_after_ms"), 100)
assert err.headers is not None
self.assertEqual(err.headers.get("Retry-After"), "1")
def test_limit_exceeded_rounding(self) -> None:
err = self.LimitExceededErrorHeaders(limiter_name="test", retry_after_ms=3001)
err = LimitExceededError(limiter_name="test", retry_after_ms=3001)
self.assertEqual(err.error_dict(None).get("retry_after_ms"), 3001)
assert err.headers is not None
self.assertEqual(err.headers.get("Retry-After"), "4")