Commit 5a507f0f authored by Ned Deily's avatar Ned Deily

Issue #20939: Use www.example.com instead of www.python.org to avoid test

failures when ssl is not present.
parent e74153a4
...@@ -414,8 +414,10 @@ class ImportSideEffectTests(unittest.TestCase): ...@@ -414,8 +414,10 @@ class ImportSideEffectTests(unittest.TestCase):
@test.support.requires_resource('network') @test.support.requires_resource('network')
@unittest.skipUnless(sys.version_info[3] == 'final', @unittest.skipUnless(sys.version_info[3] == 'final',
'only for released versions') 'only for released versions')
@unittest.skipUnless(hasattr(urllib.request, "HTTPSHandler"),
'need SSL support to download license')
def test_license_exists_at_url(self): def test_license_exists_at_url(self):
# This test is a bit fragile since it depends on the format of the # This test `is a bit fragile since it depends on the format of the
# string displayed by license in the absence of a LICENSE file. # string displayed by license in the absence of a LICENSE file.
url = license._Printer__data.split()[1] url = license._Printer__data.split()[1]
req = urllib.request.Request(url, method='HEAD') req = urllib.request.Request(url, method='HEAD')
......
...@@ -1440,7 +1440,7 @@ class MiscTests(unittest.TestCase): ...@@ -1440,7 +1440,7 @@ class MiscTests(unittest.TestCase):
'test requires network access') 'test requires network access')
def test_issue16464(self): def test_issue16464(self):
opener = urllib.request.build_opener() opener = urllib.request.build_opener()
request = urllib.request.Request("http://www.python.org/~jeremy/") request = urllib.request.Request("http://www.example.com/")
self.assertEqual(None, request.data) self.assertEqual(None, request.data)
opener.open(request, "1".encode("us-ascii")) opener.open(request, "1".encode("us-ascii"))
......
...@@ -83,7 +83,7 @@ class CloseSocketTest(unittest.TestCase): ...@@ -83,7 +83,7 @@ class CloseSocketTest(unittest.TestCase):
def test_close(self): def test_close(self):
# calling .close() on urllib2's response objects should close the # calling .close() on urllib2's response objects should close the
# underlying socket # underlying socket
url = "http://www.python.org/" url = "http://www.example.com/"
with support.transient_internet(url): with support.transient_internet(url):
response = _urlopen_with_retry(url) response = _urlopen_with_retry(url)
sock = response.fp sock = response.fp
...@@ -263,7 +263,7 @@ class OtherNetworkTests(unittest.TestCase): ...@@ -263,7 +263,7 @@ class OtherNetworkTests(unittest.TestCase):
class TimeoutTest(unittest.TestCase): class TimeoutTest(unittest.TestCase):
def test_http_basic(self): def test_http_basic(self):
self.assertIsNone(socket.getdefaulttimeout()) self.assertIsNone(socket.getdefaulttimeout())
url = "http://www.python.org" url = "http://www.example.com"
with support.transient_internet(url, timeout=None): with support.transient_internet(url, timeout=None):
u = _urlopen_with_retry(url) u = _urlopen_with_retry(url)
self.addCleanup(u.close) self.addCleanup(u.close)
...@@ -271,7 +271,7 @@ class TimeoutTest(unittest.TestCase): ...@@ -271,7 +271,7 @@ class TimeoutTest(unittest.TestCase):
def test_http_default_timeout(self): def test_http_default_timeout(self):
self.assertIsNone(socket.getdefaulttimeout()) self.assertIsNone(socket.getdefaulttimeout())
url = "http://www.python.org" url = "http://www.example.com"
with support.transient_internet(url): with support.transient_internet(url):
socket.setdefaulttimeout(60) socket.setdefaulttimeout(60)
try: try:
...@@ -283,7 +283,7 @@ class TimeoutTest(unittest.TestCase): ...@@ -283,7 +283,7 @@ class TimeoutTest(unittest.TestCase):
def test_http_no_timeout(self): def test_http_no_timeout(self):
self.assertIsNone(socket.getdefaulttimeout()) self.assertIsNone(socket.getdefaulttimeout())
url = "http://www.python.org" url = "http://www.example.com"
with support.transient_internet(url): with support.transient_internet(url):
socket.setdefaulttimeout(60) socket.setdefaulttimeout(60)
try: try:
...@@ -294,7 +294,7 @@ class TimeoutTest(unittest.TestCase): ...@@ -294,7 +294,7 @@ class TimeoutTest(unittest.TestCase):
self.assertIsNone(u.fp.raw._sock.gettimeout()) self.assertIsNone(u.fp.raw._sock.gettimeout())
def test_http_timeout(self): def test_http_timeout(self):
url = "http://www.python.org" url = "http://www.example.com"
with support.transient_internet(url): with support.transient_internet(url):
u = _urlopen_with_retry(url, timeout=120) u = _urlopen_with_retry(url, timeout=120)
self.addCleanup(u.close) self.addCleanup(u.close)
......
...@@ -22,8 +22,8 @@ class URLTimeoutTest(unittest.TestCase): ...@@ -22,8 +22,8 @@ class URLTimeoutTest(unittest.TestCase):
socket.setdefaulttimeout(None) socket.setdefaulttimeout(None)
def testURLread(self): def testURLread(self):
with support.transient_internet("www.python.org"): with support.transient_internet("www.example.com"):
f = urllib.request.urlopen("http://www.python.org/") f = urllib.request.urlopen("http://www.example.com/")
x = f.read() x = f.read()
...@@ -36,7 +36,7 @@ class urlopenNetworkTests(unittest.TestCase): ...@@ -36,7 +36,7 @@ class urlopenNetworkTests(unittest.TestCase):
for transparent redirection have been written. for transparent redirection have been written.
setUp is not used for always constructing a connection to setUp is not used for always constructing a connection to
http://www.python.org/ since there a few tests that don't use that address http://www.example.com/ since there a few tests that don't use that address
and making a connection is expensive enough to warrant minimizing unneeded and making a connection is expensive enough to warrant minimizing unneeded
connections. connections.
...@@ -54,7 +54,7 @@ class urlopenNetworkTests(unittest.TestCase): ...@@ -54,7 +54,7 @@ class urlopenNetworkTests(unittest.TestCase):
def test_basic(self): def test_basic(self):
# Simple test expected to pass. # Simple test expected to pass.
with self.urlopen("http://www.python.org/") as open_url: with self.urlopen("http://www.example.com/") as open_url:
for attr in ("read", "readline", "readlines", "fileno", "close", for attr in ("read", "readline", "readlines", "fileno", "close",
"info", "geturl"): "info", "geturl"):
self.assertTrue(hasattr(open_url, attr), "object returned from " self.assertTrue(hasattr(open_url, attr), "object returned from "
...@@ -63,7 +63,7 @@ class urlopenNetworkTests(unittest.TestCase): ...@@ -63,7 +63,7 @@ class urlopenNetworkTests(unittest.TestCase):
def test_readlines(self): def test_readlines(self):
# Test both readline and readlines. # Test both readline and readlines.
with self.urlopen("http://www.python.org/") as open_url: with self.urlopen("http://www.example.com/") as open_url:
self.assertIsInstance(open_url.readline(), bytes, self.assertIsInstance(open_url.readline(), bytes,
"readline did not return a string") "readline did not return a string")
self.assertIsInstance(open_url.readlines(), list, self.assertIsInstance(open_url.readlines(), list,
...@@ -71,7 +71,7 @@ class urlopenNetworkTests(unittest.TestCase): ...@@ -71,7 +71,7 @@ class urlopenNetworkTests(unittest.TestCase):
def test_info(self): def test_info(self):
# Test 'info'. # Test 'info'.
with self.urlopen("http://www.python.org/") as open_url: with self.urlopen("http://www.example.com/") as open_url:
info_obj = open_url.info() info_obj = open_url.info()
self.assertIsInstance(info_obj, email.message.Message, self.assertIsInstance(info_obj, email.message.Message,
"object returned by 'info' is not an " "object returned by 'info' is not an "
...@@ -80,14 +80,14 @@ class urlopenNetworkTests(unittest.TestCase): ...@@ -80,14 +80,14 @@ class urlopenNetworkTests(unittest.TestCase):
def test_geturl(self): def test_geturl(self):
# Make sure same URL as opened is returned by geturl. # Make sure same URL as opened is returned by geturl.
URL = "https://www.python.org/" URL = "http://www.example.com/"
with self.urlopen(URL) as open_url: with self.urlopen(URL) as open_url:
gotten_url = open_url.geturl() gotten_url = open_url.geturl()
self.assertEqual(gotten_url, URL) self.assertEqual(gotten_url, URL)
def test_getcode(self): def test_getcode(self):
# test getcode() with the fancy opener to get 404 error codes # test getcode() with the fancy opener to get 404 error codes
URL = "http://www.python.org/XXXinvalidXXX" URL = "http://www.example.com/XXXinvalidXXX"
with support.transient_internet(URL): with support.transient_internet(URL):
open_url = urllib.request.FancyURLopener().open(URL) open_url = urllib.request.FancyURLopener().open(URL)
try: try:
...@@ -101,7 +101,7 @@ class urlopenNetworkTests(unittest.TestCase): ...@@ -101,7 +101,7 @@ class urlopenNetworkTests(unittest.TestCase):
@unittest.skipIf(sys.platform in ('win32',), 'not appropriate for Windows') @unittest.skipIf(sys.platform in ('win32',), 'not appropriate for Windows')
def test_fileno(self): def test_fileno(self):
# Make sure fd returned by fileno is valid. # Make sure fd returned by fileno is valid.
with self.urlopen("http://www.python.org/", timeout=None) as open_url: with self.urlopen("http://www.example.com/", timeout=None) as open_url:
fd = open_url.fileno() fd = open_url.fileno()
with os.fdopen(fd, 'rb') as f: with os.fdopen(fd, 'rb') as f:
self.assertTrue(f.read(), "reading from file created using fd " self.assertTrue(f.read(), "reading from file created using fd "
...@@ -147,7 +147,7 @@ class urlretrieveNetworkTests(unittest.TestCase): ...@@ -147,7 +147,7 @@ class urlretrieveNetworkTests(unittest.TestCase):
def test_basic(self): def test_basic(self):
# Test basic functionality. # Test basic functionality.
with self.urlretrieve("http://www.python.org/") as (file_location, info): with self.urlretrieve("http://www.example.com/") as (file_location, info):
self.assertTrue(os.path.exists(file_location), "file location returned by" self.assertTrue(os.path.exists(file_location), "file location returned by"
" urlretrieve is not a valid path") " urlretrieve is not a valid path")
with open(file_location, 'rb') as f: with open(file_location, 'rb') as f:
...@@ -156,7 +156,7 @@ class urlretrieveNetworkTests(unittest.TestCase): ...@@ -156,7 +156,7 @@ class urlretrieveNetworkTests(unittest.TestCase):
def test_specified_path(self): def test_specified_path(self):
# Make sure that specifying the location of the file to write to works. # Make sure that specifying the location of the file to write to works.
with self.urlretrieve("http://www.python.org/", with self.urlretrieve("http://www.example.com/",
support.TESTFN) as (file_location, info): support.TESTFN) as (file_location, info):
self.assertEqual(file_location, support.TESTFN) self.assertEqual(file_location, support.TESTFN)
self.assertTrue(os.path.exists(file_location)) self.assertTrue(os.path.exists(file_location))
...@@ -165,11 +165,11 @@ class urlretrieveNetworkTests(unittest.TestCase): ...@@ -165,11 +165,11 @@ class urlretrieveNetworkTests(unittest.TestCase):
def test_header(self): def test_header(self):
# Make sure header returned as 2nd value from urlretrieve is good. # Make sure header returned as 2nd value from urlretrieve is good.
with self.urlretrieve("http://www.python.org/") as (file_location, info): with self.urlretrieve("http://www.example.com/") as (file_location, info):
self.assertIsInstance(info, email.message.Message, self.assertIsInstance(info, email.message.Message,
"info is not an instance of email.message.Message") "info is not an instance of email.message.Message")
logo = "http://www.python.org/static/community_logos/python-logo-master-v3-TM.png" logo = "http://www.example.com/"
def test_data_header(self): def test_data_header(self):
with self.urlretrieve(self.logo) as (file_location, fileheaders): with self.urlretrieve(self.logo) as (file_location, fileheaders):
......
...@@ -103,6 +103,10 @@ Tests ...@@ -103,6 +103,10 @@ Tests
- Issue #20743: Fix a reference leak in test_tcl. - Issue #20743: Fix a reference leak in test_tcl.
- Issue #20939: Avoid various network test failures due to new
redirect of http://www.python.org/ to https://www.python.org:
use http://www.example.com instead.
Tools/Demos Tools/Demos
----------- -----------
......
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