Partial patch for issue #11812: Take care of test_telnetlib.py
This commit is contained in:
parent
c241df814f
commit
bc91b46951
|
@ -15,10 +15,9 @@ def server(evt, serv):
|
||||||
evt.set()
|
evt.set()
|
||||||
try:
|
try:
|
||||||
conn, addr = serv.accept()
|
conn, addr = serv.accept()
|
||||||
|
conn.close()
|
||||||
except socket.timeout:
|
except socket.timeout:
|
||||||
pass
|
pass
|
||||||
else:
|
|
||||||
conn.close()
|
|
||||||
finally:
|
finally:
|
||||||
serv.close()
|
serv.close()
|
||||||
|
|
||||||
|
@ -27,9 +26,10 @@ class GeneralTests(TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.evt = threading.Event()
|
self.evt = threading.Event()
|
||||||
self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||||
self.sock.settimeout(3)
|
self.sock.settimeout(60) # Safety net. Look issue 11812
|
||||||
self.port = support.bind_port(self.sock)
|
self.port = support.bind_port(self.sock)
|
||||||
self.thread = threading.Thread(target=server, args=(self.evt,self.sock))
|
self.thread = threading.Thread(target=server, args=(self.evt,self.sock))
|
||||||
|
self.thread.setDaemon(True)
|
||||||
self.thread.start()
|
self.thread.start()
|
||||||
self.evt.wait()
|
self.evt.wait()
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ class GeneralTests(TestCase):
|
||||||
self.assertTrue(socket.getdefaulttimeout() is None)
|
self.assertTrue(socket.getdefaulttimeout() is None)
|
||||||
socket.setdefaulttimeout(30)
|
socket.setdefaulttimeout(30)
|
||||||
try:
|
try:
|
||||||
telnet = telnetlib.Telnet("localhost", self.port)
|
telnet = telnetlib.Telnet(HOST, self.port)
|
||||||
finally:
|
finally:
|
||||||
socket.setdefaulttimeout(None)
|
socket.setdefaulttimeout(None)
|
||||||
self.assertEqual(telnet.sock.gettimeout(), 30)
|
self.assertEqual(telnet.sock.gettimeout(), 30)
|
||||||
|
@ -63,13 +63,13 @@ class GeneralTests(TestCase):
|
||||||
telnet.sock.close()
|
telnet.sock.close()
|
||||||
|
|
||||||
def testTimeoutValue(self):
|
def testTimeoutValue(self):
|
||||||
telnet = telnetlib.Telnet("localhost", self.port, timeout=30)
|
telnet = telnetlib.Telnet(HOST, self.port, timeout=30)
|
||||||
self.assertEqual(telnet.sock.gettimeout(), 30)
|
self.assertEqual(telnet.sock.gettimeout(), 30)
|
||||||
telnet.sock.close()
|
telnet.sock.close()
|
||||||
|
|
||||||
def testTimeoutOpen(self):
|
def testTimeoutOpen(self):
|
||||||
telnet = telnetlib.Telnet()
|
telnet = telnetlib.Telnet()
|
||||||
telnet.open("localhost", self.port, timeout=30)
|
telnet.open(HOST, self.port, timeout=30)
|
||||||
self.assertEqual(telnet.sock.gettimeout(), 30)
|
self.assertEqual(telnet.sock.gettimeout(), 30)
|
||||||
telnet.sock.close()
|
telnet.sock.close()
|
||||||
|
|
||||||
|
|
|
@ -527,6 +527,9 @@ Tests
|
||||||
- Skip network tests when getaddrinfo() returns EAI_AGAIN, meaning a temporary
|
- Skip network tests when getaddrinfo() returns EAI_AGAIN, meaning a temporary
|
||||||
failure in name resolution.
|
failure in name resolution.
|
||||||
|
|
||||||
|
- Issue #11812: Solve transient socket failure to connect to 'localhost'
|
||||||
|
in test_telnetlib.py.
|
||||||
|
|
||||||
- Solved a potential deadlock in test_telnetlib.py. Related to issue #11812.
|
- Solved a potential deadlock in test_telnetlib.py. Related to issue #11812.
|
||||||
|
|
||||||
- Avoid failing in test_urllibnet.test_bad_address when some overzealous
|
- Avoid failing in test_urllibnet.test_bad_address when some overzealous
|
||||||
|
|
Loading…
Reference in New Issue