diff options
-rw-r--r-- | Lib/test/test_support.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/Lib/test/test_support.py b/Lib/test/test_support.py index c9fb092..d4b891e 100644 --- a/Lib/test/test_support.py +++ b/Lib/test/test_support.py @@ -378,7 +378,7 @@ def check_syntax_error(testcase, statement): testcase.fail('Missing SyntaxError: "%s"' % statement) def open_urlresource(url): - import urllib, urlparse + import urlparse, urllib2 requires('urlfetch') filename = urlparse.urlparse(url)[2].split('/')[-1] # '/': it's URL! @@ -389,8 +389,16 @@ def open_urlresource(url): return open(fn) print >> get_original_stdout(), '\tfetching %s ...' % url - fn, _ = urllib.urlretrieve(url, filename) - return open(fn) + f = urllib2.urlopen(url, timeout=15) + try: + with open(filename, "wb") as out: + s = f.read() + while s: + out.write(s) + s = f.read() + finally: + f.close() + return open(filename) class WarningsRecorder(object): |