diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2010-04-21 19:46:23 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2010-04-21 19:46:23 (GMT) |
commit | fec12fff0f49275e0f7e2d52a689a709db41c0c1 (patch) | |
tree | f97d82923abc5ab82fae1a12a9608b786fe82243 /Lib/test/support.py | |
parent | e7ed1d7f6808fc325154bd5e07de30e2a6a5b1bf (diff) | |
download | cpython-fec12fff0f49275e0f7e2d52a689a709db41c0c1.zip cpython-fec12fff0f49275e0f7e2d52a689a709db41c0c1.tar.gz cpython-fec12fff0f49275e0f7e2d52a689a709db41c0c1.tar.bz2 |
Merged revisions 80314-80315 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r80314 | antoine.pitrou | 2010-04-21 21:28:03 +0200 (mer., 21 avril 2010) | 5 lines
Issue #8484: Load all ciphers and digest algorithms when initializing
the _ssl extension, such that verification of some SSL certificates
doesn't fail because of an "unknown algorithm".
........
r80315 | antoine.pitrou | 2010-04-21 21:36:23 +0200 (mer., 21 avril 2010) | 3 lines
Forgot to add the sample certificate (followup to r80314)
........
Diffstat (limited to 'Lib/test/support.py')
-rw-r--r-- | Lib/test/support.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/Lib/test/support.py b/Lib/test/support.py index 3c0002b..9d39de8 100644 --- a/Lib/test/support.py +++ b/Lib/test/support.py @@ -755,6 +755,17 @@ ioerror_peer_reset = TransientResource(IOError, errno=errno.ECONNRESET) @contextlib.contextmanager +def transient_internet(): + """Return a context manager that raises ResourceDenied when various issues + with the Internet connection manifest themselves as exceptions.""" + time_out = TransientResource(IOError, errno=errno.ETIMEDOUT) + socket_peer_reset = TransientResource(socket.error, errno=errno.ECONNRESET) + ioerror_peer_reset = TransientResource(IOError, errno=errno.ECONNRESET) + with time_out, socket_peer_reset, ioerror_peer_reset: + yield + + +@contextlib.contextmanager def captured_output(stream_name): """Run the 'with' statement body using a StringIO object in place of a specific attribute on the sys module. |