]> granicus.if.org Git - python/commitdiff
Use a custom timeout in test_support.open_urlresource.
authorAntoine Pitrou <solipsis@pitrou.net>
Sun, 1 Nov 2009 22:02:03 +0000 (22:02 +0000)
committerAntoine Pitrou <solipsis@pitrou.net>
Sun, 1 Nov 2009 22:02:03 +0000 (22:02 +0000)
Lib/test/test_support.py

index fa46be2d0cf7f4e9dbf771429a223f897f6225f9..c2dcb57915f21c3aa0df89503474bdc2eae211e5 100644 (file)
@@ -463,7 +463,7 @@ def check_syntax_error(testcase, statement):
                           '<test string>', 'exec')
 
 def open_urlresource(url):
-    import urllib, urlparse
+    import urlparse, urllib2
 
     requires('urlfetch')
     filename = urlparse.urlparse(url)[2].split('/')[-1] # '/': it's URL!
@@ -473,7 +473,15 @@ def open_urlresource(url):
         return open(fn)
 
     print >> get_original_stdout(), '\tfetching %s ...' % url
-    fn, _ = urllib.urlretrieve(url, fn)
+    f = urllib2.urlopen(url, timeout=15)
+    try:
+        with open(fn, "wb") as out:
+            s = f.read()
+            while s:
+                out.write(s)
+                s = f.read()
+    finally:
+        f.close()
     return open(fn)