diff options
Diffstat (limited to 'Lib/test/test_socketserver.py')
| -rw-r--r-- | Lib/test/test_socketserver.py | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/Lib/test/test_socketserver.py b/Lib/test/test_socketserver.py index a098edd..b3660c1 100644 --- a/Lib/test/test_socketserver.py +++ b/Lib/test/test_socketserver.py @@ -3,21 +3,21 @@ Test suite for socketserver. """ import contextlib -import errno import imp import os import select import signal import socket import tempfile -import threading -import time import unittest import socketserver import test.support -from test.support import reap_children, verbose -from test.support import TESTFN as TEST_FILE +from test.support import reap_children, reap_threads, verbose +try: + import threading +except ImportError: + threading = None test.support.requires("network") @@ -66,7 +66,7 @@ class SocketServerTest(unittest.TestCase): """Test all socket servers.""" def setUp(self): - signal_alarm(20) # Kill deadlocks after 20 seconds. + signal_alarm(60) # Kill deadlocks after 60 seconds. self.port_seed = 0 self.test_files = [] @@ -123,6 +123,7 @@ class SocketServerTest(unittest.TestCase): self.assertEqual(server.server_address, server.socket.getsockname()) return server + @reap_threads def run_server(self, svrcls, hdlrbase, testfunc): server = self.make_server(self.pickaddr(svrcls.address_family), svrcls, hdlrbase) @@ -149,6 +150,7 @@ class SocketServerTest(unittest.TestCase): if verbose: print("waiting for server") server.shutdown() t.join() + server.server_close() if verbose: print("done") def stream_examine(self, proto, addr): @@ -244,6 +246,7 @@ class SocketServerTest(unittest.TestCase): # socketserver.DatagramRequestHandler, # self.dgram_examine) + @reap_threads def test_shutdown(self): # Issue #2302: shutdown() should always succeed in making an # other thread leave serve_forever(). @@ -267,6 +270,7 @@ class SocketServerTest(unittest.TestCase): s.shutdown() for t, s in threads: t.join() + s.server_close() def test_main(): @@ -278,4 +282,3 @@ def test_main(): if __name__ == "__main__": test_main() - signal_alarm(3) # Shutdown shouldn't take more than 3 seconds. |
