diff options
Diffstat (limited to 'Lib/test/test_socket_ssl.py')
-rw-r--r-- | Lib/test/test_socket_ssl.py | 56 |
1 files changed, 36 insertions, 20 deletions
diff --git a/Lib/test/test_socket_ssl.py b/Lib/test/test_socket_ssl.py index 0e31904..1091383 100644 --- a/Lib/test/test_socket_ssl.py +++ b/Lib/test/test_socket_ssl.py @@ -14,6 +14,9 @@ def test_basic(): import urllib + if test_support.verbose: + print "test_basic ..." + socket.RAND_status() try: socket.RAND_egd(1) @@ -27,28 +30,41 @@ def test_basic(): buf = f.read() f.close() -# XXX Tim disabled this test on all platforms, for now, since the -# XXX s.connect(("gmail.org", 995)) -# XXX line starting timing out on all the builbot slaves. -if 0: #not sys.platform.startswith('win'): - def test_timeout(): - test_support.requires('network') - - s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - s.settimeout(30.0) - # connect to service which issues an welcome banner (without need to - # write anything) - s.connect(("gmail.org", 995)) - ss = socket.ssl(s) - # read part of return welcome banner twice - ss.read(1) - ss.read(1) - s.close() -else: - def test_timeout(): - pass +def test_timeout(): + test_support.requires('network') + + if test_support.verbose: + print "test_timeout ..." + + # A service which issues a welcome banner (without need to write + # anything). + # XXX ("gmail.org", 995) has been unreliable so far, from time to time + # XXX non-responsive for hours on end (& across all buildbot slaves, + # XXX so that's not just a local thing). + ADDR = "gmail.org", 995 + + s = socket.socket() + s.settimeout(30.0) + try: + s.connect(ADDR) + except socket.timeout: + print >> sys.stderr, """\ + WARNING: an attempt to connect to %r timed out, in + test_timeout. That may be legitimate, but is not the outcome we hoped + for. If this message is seen often, test_timeout should be changed to + use a more reliable address.""" % (ADDR,) + return + + ss = socket.ssl(s) + # Read part of return welcome banner twice. + ss.read(1) + ss.read(1) + s.close() def test_rude_shutdown(): + if test_support.verbose: + print "test_rude_shutdown ..." + try: import threading except ImportError: |