Issue #7427: improve the representation of httplib.BadStatusLine exceptions.
diff --git a/Lib/httplib.py b/Lib/httplib.py
index c5e600c..43c8797 100644
--- a/Lib/httplib.py
+++ b/Lib/httplib.py
@@ -1236,6 +1236,8 @@
class BadStatusLine(HTTPException):
def __init__(self, line):
+ if not line:
+ line = repr(line)
self.args = line,
self.line = line
diff --git a/Lib/test/test_httplib.py b/Lib/test/test_httplib.py
index c0c12e7..107b904 100644
--- a/Lib/test/test_httplib.py
+++ b/Lib/test/test_httplib.py
@@ -91,6 +91,10 @@
resp = httplib.HTTPResponse(sock)
self.assertRaises(httplib.BadStatusLine, resp.begin)
+ def test_bad_status_repr(self):
+ exc = httplib.BadStatusLine('')
+ self.assertEquals(repr(exc), '''BadStatusLine("\'\'",)''')
+
def test_partial_reads(self):
# if we have a lenght, the system knows when to close itself
# same behaviour than when we read the whole thing with read()