From: Victor Stinner Date: Tue, 2 May 2017 14:49:10 +0000 (+0200) Subject: bpo-30199: test_ssl closes all asyncore channels (#1381) (#1390) X-Git-Tag: v3.6.2rc1~185 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3c422b92653df05c7034136b77f76376aa5aec4f;p=python bpo-30199: test_ssl closes all asyncore channels (#1381) (#1390) AsyncoreEchoServer of test_ssl now calls asyncore.close_all(ignore_all=True) to ensure that asyncore.socket_map is cleared once the test completes, even if ConnectionHandler was not correctly unregistered. Fix the following warning: Warning -- asyncore.socket_map was modified by test_ssl Before: {} After: {6: } (cherry picked from commit 1dae7450c68bad498e57800387b24cb103c461fa) --- diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py index d203cddbdf..85c59a618c 100644 --- a/Lib/test/test_ssl.py +++ b/Lib/test/test_ssl.py @@ -2065,7 +2065,7 @@ if _have_threads: class EchoServer (asyncore.dispatcher): - class ConnectionHandler (asyncore.dispatcher_with_send): + class ConnectionHandler(asyncore.dispatcher_with_send): def __init__(self, conn, certfile): self.socket = test_wrap_socket(conn, server_side=True, @@ -2156,6 +2156,8 @@ if _have_threads: self.join() if support.verbose: sys.stdout.write(" cleanup: successfully joined.\n") + # make sure that ConnectionHandler is removed from socket_map + asyncore.close_all(ignore_all=True) def start (self, flag=None): self.flag = flag