cpython: 537608bafa5a (original) (raw)
Mercurial > cpython
changeset 100263:537608bafa5a 3.5
Issue #26309: Rewrite test in main thread and avoid race condition [#26309]
Martin Panter vadmium+py@gmail.com | |
---|---|
date | Fri, 19 Feb 2016 02:16:42 +0000 |
parents | a7391c31ec4e |
children | c791d57c8168 8b71cd67f548 |
files | Lib/test/test_socketserver.py |
diffstat | 1 files changed, 21 insertions(+), 24 deletions(-)[+] [-] Lib/test/test_socketserver.py 45 |
line wrap: on
line diff
--- a/Lib/test/test_socketserver.py +++ b/Lib/test/test_socketserver.py @@ -280,30 +280,6 @@ class SocketServerTest(unittest.TestCase socketserver.TCPServer((HOST, -1), socketserver.StreamRequestHandler)
- def test_shutdown_request_called_if_verify_request_false(self):
# Issue #26309: BaseServer should call shutdown_request even if[](#l1.8)
# verify_request is False[](#l1.9)
shutdown_called = False[](#l1.10)
class MyServer(socketserver.TCPServer):[](#l1.12)
def verify_request(self, request, client_address):[](#l1.13)
return False[](#l1.14)
def shutdown_request(self, request):[](#l1.16)
nonlocal shutdown_called[](#l1.17)
shutdown_called = True[](#l1.18)
super().shutdown_request(request)[](#l1.19)
def connect_to_server(proto, addr):[](#l1.21)
s = socket.socket(proto, socket.SOCK_STREAM)[](#l1.22)
s.connect(addr)[](#l1.23)
s.close()[](#l1.24)
self.run_server(MyServer,[](#l1.26)
socketserver.StreamRequestHandler,[](#l1.27)
connect_to_server)[](#l1.28)
self.assertEqual(shutdown_called, True)[](#l1.29)
- class MiscTestCase(unittest.TestCase): @@ -317,6 +293,27 @@ class MiscTestCase(unittest.TestCase): expected.append(name) self.assertCountEqual(socketserver.all, expected)
- def test_shutdown_request_called_if_verify_request_false(self):
# Issue #26309: BaseServer should call shutdown_request even if[](#l1.39)
# verify_request is False[](#l1.40)
class MyServer(socketserver.TCPServer):[](#l1.42)
def verify_request(self, request, client_address):[](#l1.43)
return False[](#l1.44)
shutdown_called = 0[](#l1.46)
def shutdown_request(self, request):[](#l1.47)
self.shutdown_called += 1[](#l1.48)
socketserver.TCPServer.shutdown_request(self, request)[](#l1.49)
server = MyServer((HOST, 0), socketserver.StreamRequestHandler)[](#l1.51)
s = socket.socket(server.address_family, socket.SOCK_STREAM)[](#l1.52)
s.connect(server.server_address)[](#l1.53)
s.close()[](#l1.54)
server.handle_request()[](#l1.55)
self.assertEqual(server.shutdown_called, 1)[](#l1.56)
server.server_close()[](#l1.57)