mirror of https://github.com/python/cpython
test_timeout(): This test was added during Bug Day, but disabled
soon after because the gmail address it connects to started timing out on all the buildbot slaves. Rewrote the test to produce a warning message (instead of failing) when the address times out. Also removed the special case for Windows -- this test started to work on Windows as soon as bug 1462352 was fixed.
This commit is contained in:
parent
2f36caf8ff
commit
e0bb597d03
|
@ -14,6 +14,9 @@ def test_basic():
|
||||||
|
|
||||||
import urllib
|
import urllib
|
||||||
|
|
||||||
|
if test_support.verbose:
|
||||||
|
print "test_basic ..."
|
||||||
|
|
||||||
socket.RAND_status()
|
socket.RAND_status()
|
||||||
try:
|
try:
|
||||||
socket.RAND_egd(1)
|
socket.RAND_egd(1)
|
||||||
|
@ -27,28 +30,41 @@ def test_basic():
|
||||||
buf = f.read()
|
buf = f.read()
|
||||||
f.close()
|
f.close()
|
||||||
|
|
||||||
# XXX Tim disabled this test on all platforms, for now, since the
|
def test_timeout():
|
||||||
# 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')
|
test_support.requires('network')
|
||||||
|
|
||||||
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
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)
|
s.settimeout(30.0)
|
||||||
# connect to service which issues an welcome banner (without need to
|
try:
|
||||||
# write anything)
|
s.connect(ADDR)
|
||||||
s.connect(("gmail.org", 995))
|
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)
|
ss = socket.ssl(s)
|
||||||
# read part of return welcome banner twice
|
# Read part of return welcome banner twice.
|
||||||
ss.read(1)
|
ss.read(1)
|
||||||
ss.read(1)
|
ss.read(1)
|
||||||
s.close()
|
s.close()
|
||||||
else:
|
|
||||||
def test_timeout():
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_rude_shutdown():
|
def test_rude_shutdown():
|
||||||
|
if test_support.verbose:
|
||||||
|
print "test_rude_shutdown ..."
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import threading
|
import threading
|
||||||
except ImportError:
|
except ImportError:
|
||||||
|
|
Loading…
Reference in New Issue