From 9642eedc0a6d90d9502658a6569518741eea9ef3 Mon Sep 17 00:00:00 2001 From: Senthil Kumaran Date: Fri, 13 May 2016 01:32:42 -0700 Subject: Issue #26892: Honor debuglevel flag in urllib.request.HTTPHandler. Patch contributed by Chi Hsuan Yen. --- Lib/test/test_urllib2.py | 11 +++++++++-- Lib/urllib/request.py | 1 + Misc/NEWS | 3 +++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Lib/test/test_urllib2.py b/Lib/test/test_urllib2.py index 008c751..b5bba55 100644 --- a/Lib/test/test_urllib2.py +++ b/Lib/test/test_urllib2.py @@ -480,8 +480,8 @@ class MockHTTPSHandler(urllib.request.AbstractHTTPHandler): # Useful for testing the Proxy-Authorization request by verifying the # properties of httpcon - def __init__(self): - urllib.request.AbstractHTTPHandler.__init__(self) + def __init__(self, debuglevel=0): + urllib.request.AbstractHTTPHandler.__init__(self, debuglevel=debuglevel) self.httpconn = MockHTTPClass() def https_open(self, req): @@ -950,6 +950,13 @@ class HandlerTests(unittest.TestCase): newreq = h.do_request_(req) self.assertEqual(int(newreq.get_header('Content-length')),16) + def test_http_handler_debuglevel(self): + o = OpenerDirector() + h = MockHTTPSHandler(debuglevel=1) + o.add_handler(h) + o.open("https://www.example.com") + self.assertEqual(h._debuglevel, 1) + def test_http_doubleslash(self): # Checks the presence of any unnecessary double slash in url does not # break anything. Previously, a double slash directly after the host diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py index b28cd60..5f40729 100644 --- a/Lib/urllib/request.py +++ b/Lib/urllib/request.py @@ -1211,6 +1211,7 @@ class AbstractHTTPHandler(BaseHandler): # will parse host:port h = http_class(host, timeout=req.timeout, **http_conn_args) + h.set_debuglevel(self._debuglevel) headers = dict(req.unredirected_hdrs) headers.update(dict((k, v) for k, v in req.headers.items() diff --git a/Misc/NEWS b/Misc/NEWS index 1f4dacc..5fa4a05 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -118,6 +118,9 @@ Core and Builtins Library ------- +- Issue #26892: Honor debuglevel flag in urllib.request.HTTPHandler. Patch + contributed by Chi Hsuan Yen. + - Issue #22274: In the subprocess module, allow stderr to be redirected to stdout even when stdout is not redirected. Patch by Akira Li. -- cgit v0.12