Kaydet (Commit) 0f7c25d2 authored tarafından Kurt B. Kaiser's avatar Kurt B. Kaiser

Issue1177

r58207 and r58247 patch logic is reversed.  I noticed this when I
tried to use urllib to retrieve a file which required auth.

Fix that and add a test for 401 error to verify.
üst 9fd2bcf6
......@@ -126,6 +126,19 @@ class urlopen_HttpTests(unittest.TestCase):
finally:
self.unfakehttp()
def test_read_bogus(self):
"urlopen() should raise IOError for many error codes."
self.fakehttp('''HTTP/1.1 401 Authentication Required
Date: Wed, 02 Jan 2008 03:03:54 GMT
Server: Apache/1.3.33 (Debian GNU/Linux) mod_ssl/2.8.22 OpenSSL/0.9.7e
Connection: close
Content-Type: text/html; charset=iso-8859-1
''')
try:
self.assertRaises(IOError, urllib.urlopen, "http://python.org/")
finally:
self.unfakehttp()
def test_empty_socket(self):
"""urlopen() raises IOError if the underlying socket does not send any
data. (#1680230) """
......
......@@ -342,7 +342,7 @@ class URLopener:
'got a bad status line', None)
# According to RFC 2616, "2xx" code indicates that the client's
# request was successfully received, understood, and accepted.
if not (200 <= errcode < 300):
if (200 <= errcode < 300):
return addinfourl(fp, headers, "http:" + url)
else:
if data is None:
......@@ -437,7 +437,7 @@ class URLopener:
'got a bad status line', None)
# According to RFC 2616, "2xx" code indicates that the client's
# request was successfully received, understood, and accepted.
if not (200 <= errcode < 300):
if (200 <= errcode < 300):
return addinfourl(fp, headers, "https:" + url)
else:
if data is None:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment