mirror of
https://github.com/python/cpython.git
synced 2024-12-03 23:06:43 +08:00
gh-92886: Replace assertion statements in handlers.BaseHandler
to support running with optimizations (-O
) (GH-93231)
This commit is contained in:
parent
a3be874334
commit
b6e59d76c0
@ -237,9 +237,7 @@ class BaseHandler:
|
||||
self.status = status
|
||||
self.headers = self.headers_class(headers)
|
||||
status = self._convert_string_type(status, "Status")
|
||||
assert len(status)>=4,"Status must be at least 4 characters"
|
||||
assert status[:3].isdigit(), "Status message must begin w/3-digit code"
|
||||
assert status[3]==" ", "Status message must have a space after code"
|
||||
self._validate_status(status)
|
||||
|
||||
if __debug__:
|
||||
for name, val in headers:
|
||||
@ -250,6 +248,14 @@ class BaseHandler:
|
||||
|
||||
return self.write
|
||||
|
||||
def _validate_status(self, status):
|
||||
if len(status) < 4:
|
||||
raise AssertionError("Status must be at least 4 characters")
|
||||
if not status[:3].isdigit():
|
||||
raise AssertionError("Status message must begin w/3-digit code")
|
||||
if status[3] != " ":
|
||||
raise AssertionError("Status message must have a space after code")
|
||||
|
||||
def _convert_string_type(self, value, title):
|
||||
"""Convert/check value type."""
|
||||
if type(value) is str:
|
||||
|
@ -0,0 +1 @@
|
||||
Replace ``assert`` statements with ``raise AssertionError()`` in :class:`~wsgiref.BaseHandler` so that the tested behaviour is maintained running with optimizations ``(-O)``.
|
Loading…
Reference in New Issue
Block a user