[Python-checkins] cpython (merge 3.2 -> default): MERGE: Partial patch for issue #11812: Take care of test_telnetlib.py

jesus.cea python-checkins at python.org
Tue Nov 8 16:39:38 CET 2011


http://hg.python.org/cpython/rev/ca8a0dfb2176
changeset: 73454:ca8a0dfb2176
parent: 73453:85c10a905424
parent: 73452:3b9f58f85d3e
user: Jesus Cea <jcea at jcea.es>
date: Tue Nov 08 16:39:26 2011 +0100
summary:
 MERGE: Partial patch for issue #11812: Take care of test_telnetlib.py
files:
 Lib/test/test_telnetlib.py | 12 ++++++------
 Misc/NEWS | 3 +++
 2 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/Lib/test/test_telnetlib.py b/Lib/test/test_telnetlib.py
--- a/Lib/test/test_telnetlib.py
+++ b/Lib/test/test_telnetlib.py
@@ -15,10 +15,9 @@
 evt.set()
 try:
 conn, addr = serv.accept()
+ conn.close()
 except socket.timeout:
 pass
- else:
- conn.close()
 finally:
 serv.close()
 
@@ -27,9 +26,10 @@
 def setUp(self):
 self.evt = threading.Event()
 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.thread = threading.Thread(target=server, args=(self.evt,self.sock))
+ self.thread.setDaemon(True)
 self.thread.start()
 self.evt.wait()
 
@@ -46,7 +46,7 @@
 self.assertTrue(socket.getdefaulttimeout() is None)
 socket.setdefaulttimeout(30)
 try:
- telnet = telnetlib.Telnet("localhost", self.port)
+ telnet = telnetlib.Telnet(HOST, self.port)
 finally:
 socket.setdefaulttimeout(None)
 self.assertEqual(telnet.sock.gettimeout(), 30)
@@ -64,13 +64,13 @@
 telnet.sock.close()
 
 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)
 telnet.sock.close()
 
 def testTimeoutOpen(self):
 telnet = telnetlib.Telnet()
- telnet.open("localhost", self.port, timeout=30)
+ telnet.open(HOST, self.port, timeout=30)
 self.assertEqual(telnet.sock.gettimeout(), 30)
 telnet.sock.close()
 
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -1616,6 +1616,9 @@
 - Skip network tests when getaddrinfo() returns EAI_AGAIN, meaning a temporary
 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.
 
 - Avoid failing in test_robotparser when mueblesmoraleda.com is flaky and
-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /