[Python-checkins] cpython (merge 3.4 -> default): Issue #20939: merge from 3.4

ned.deily python-checkins at python.org
Thu Mar 27 07:34:32 CET 2014


http://hg.python.org/cpython/rev/67dcb2d19dc4
changeset:   89986:67dcb2d19dc4
parent:      89982:0f6c518183ef
parent:      89985:6134684ba222
user:        Ned Deily <nad at acm.org>
date:        Wed Mar 26 23:33:28 2014 -0700
summary:
  Issue #20939: merge from 3.4

files:
  Lib/test/test_site.py       |   4 ++-
  Lib/test/test_urllib2.py    |   8 +------
  Lib/test/test_urllib2net.py |  10 ++++----
  Lib/test/test_urllibnet.py  |  26 ++++++++++++------------
  Misc/NEWS                   |   4 +++
  5 files changed, 26 insertions(+), 26 deletions(-)


diff --git a/Lib/test/test_site.py b/Lib/test/test_site.py
--- a/Lib/test/test_site.py
+++ b/Lib/test/test_site.py
@@ -414,8 +414,10 @@
     @test.support.requires_resource('network')
     @unittest.skipUnless(sys.version_info[3] == 'final',
                          'only for released versions')
+    @unittest.skipUnless(hasattr(urllib.request, "HTTPSHandler"),
+                         'need SSL support to download license')
     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.
         url = license._Printer__data.split()[1]
         req = urllib.request.Request(url, method='HEAD')
diff --git a/Lib/test/test_urllib2.py b/Lib/test/test_urllib2.py
--- a/Lib/test/test_urllib2.py
+++ b/Lib/test/test_urllib2.py
@@ -6,10 +6,6 @@
 import socket
 import array
 import sys
-try:
-    import ssl
-except ImportError:
-    ssl = None
 
 import urllib.request
 # The proxy bypass method imported below has logic specific to the OSX
@@ -1442,11 +1438,9 @@
 
     @unittest.skipUnless(support.is_resource_enabled('network'),
                          'test requires network access')
-    @unittest.skipIf(ssl is None,
-                     'test requires the ssl module')
     def test_issue16464(self):
         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)
 
         opener.open(request, "1".encode("us-ascii"))
diff --git a/Lib/test/test_urllib2net.py b/Lib/test/test_urllib2net.py
--- a/Lib/test/test_urllib2net.py
+++ b/Lib/test/test_urllib2net.py
@@ -83,7 +83,7 @@
     def test_close(self):
         # calling .close() on urllib2's response objects should close the
         # underlying socket
-        url = "http://www.python.org/"
+        url = "http://www.example.com/"
         with support.transient_internet(url):
             response = _urlopen_with_retry(url)
             sock = response.fp
@@ -263,7 +263,7 @@
 class TimeoutTest(unittest.TestCase):
     def test_http_basic(self):
         self.assertIsNone(socket.getdefaulttimeout())
-        url = "http://www.python.org"
+        url = "http://www.example.com"
         with support.transient_internet(url, timeout=None):
             u = _urlopen_with_retry(url)
             self.addCleanup(u.close)
@@ -271,7 +271,7 @@
 
     def test_http_default_timeout(self):
         self.assertIsNone(socket.getdefaulttimeout())
-        url = "http://www.python.org"
+        url = "http://www.example.com"
         with support.transient_internet(url):
             socket.setdefaulttimeout(60)
             try:
@@ -283,7 +283,7 @@
 
     def test_http_no_timeout(self):
         self.assertIsNone(socket.getdefaulttimeout())
-        url = "http://www.python.org"
+        url = "http://www.example.com"
         with support.transient_internet(url):
             socket.setdefaulttimeout(60)
             try:
@@ -294,7 +294,7 @@
             self.assertIsNone(u.fp.raw._sock.gettimeout())
 
     def test_http_timeout(self):
-        url = "http://www.python.org"
+        url = "http://www.example.com"
         with support.transient_internet(url):
             u = _urlopen_with_retry(url, timeout=120)
             self.addCleanup(u.close)
diff --git a/Lib/test/test_urllibnet.py b/Lib/test/test_urllibnet.py
--- a/Lib/test/test_urllibnet.py
+++ b/Lib/test/test_urllibnet.py
@@ -22,8 +22,8 @@
         socket.setdefaulttimeout(None)
 
     def testURLread(self):
-        with support.transient_internet("www.python.org"):
-            f = urllib.request.urlopen("http://www.python.org/")
+        with support.transient_internet("www.example.com"):
+            f = urllib.request.urlopen("http://www.example.com/")
             x = f.read()
 
 
@@ -36,7 +36,7 @@
     for transparent redirection have been written.
 
     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
     connections.
 
@@ -54,7 +54,7 @@
 
     def test_basic(self):
         # 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",
                          "info", "geturl"):
                 self.assertTrue(hasattr(open_url, attr), "object returned from "
@@ -63,7 +63,7 @@
 
     def test_readlines(self):
         # 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,
                                   "readline did not return a string")
             self.assertIsInstance(open_url.readlines(), list,
@@ -71,7 +71,7 @@
 
     def test_info(self):
         # 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()
             self.assertIsInstance(info_obj, email.message.Message,
                                   "object returned by 'info' is not an "
@@ -80,14 +80,14 @@
 
     def test_geturl(self):
         # 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:
             gotten_url = open_url.geturl()
             self.assertEqual(gotten_url, URL)
 
     def test_getcode(self):
         # 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):
             open_url = urllib.request.FancyURLopener().open(URL)
             try:
@@ -101,7 +101,7 @@
     @unittest.skipIf(sys.platform in ('win32',), 'not appropriate for Windows')
     def test_fileno(self):
         # 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()
             with os.fdopen(fd, 'rb') as f:
                 self.assertTrue(f.read(), "reading from file created using fd "
@@ -147,7 +147,7 @@
 
     def test_basic(self):
         # 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"
                             " urlretrieve is not a valid path")
             with open(file_location, 'rb') as f:
@@ -156,7 +156,7 @@
 
     def test_specified_path(self):
         # 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):
             self.assertEqual(file_location, support.TESTFN)
             self.assertTrue(os.path.exists(file_location))
@@ -165,11 +165,11 @@
 
     def test_header(self):
         # 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,
                                   "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):
         with self.urlretrieve(self.logo) as (file_location, fileheaders):
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -125,6 +125,10 @@
 
 - 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
 -----------
 

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list