Commit de0eb249 authored by Senthil Kumaran's avatar Senthil Kumaran

Fix Issue8123 - TypeError in urllib when trying to use HTTP authentication

parent c881f159
......@@ -190,6 +190,17 @@ Content-Type: text/html; charset=iso-8859-1
finally:
self.unfakehttp()
def test_userpass_inurl(self):
self.fakehttp(b"Hello!")
try:
fp = urlopen("http://user:pass@python.org/")
self.assertEqual(fp.readline(), b"Hello!")
self.assertEqual(fp.readline(), b"")
self.assertEqual(fp.geturl(), 'http://user:pass@python.org/')
self.assertEqual(fp.getcode(), 200)
finally:
self.unfakehttp()
class urlretrieve_FileTests(unittest.TestCase):
"""Test urllib.urlretrieve() on local files"""
......
......@@ -1591,13 +1591,13 @@ class URLopener:
if proxy_passwd:
import base64
proxy_auth = base64.b64encode(proxy_passwd).strip()
proxy_auth = base64.b64encode(proxy_passwd.encode()).strip()
else:
proxy_auth = None
if user_passwd:
import base64
auth = base64.b64encode(user_passwd).strip()
auth = base64.b64encode(user_passwd.encode()).strip()
else:
auth = None
http_conn = connection_factory(host)
......
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