summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@redhat.com>2018-06-06 23:12:38 (GMT)
committerGitHub <noreply@github.com>2018-06-06 23:12:38 (GMT)
commit0eba7c39132614a5730cda6b340e18dfb2d30d14 (patch)
treefae32716d814f9eb9ecc140dfbd9f7b30f6a0922 /Lib
parent3ef769fcd378a7f1cda19c0dfec2e79613d79e48 (diff)
downloadcpython-0eba7c39132614a5730cda6b340e18dfb2d30d14.zip
cpython-0eba7c39132614a5730cda6b340e18dfb2d30d14.tar.gz
cpython-0eba7c39132614a5730cda6b340e18dfb2d30d14.tar.bz2
bpo-33789: test_asyncio: Fix ResourceWarning (GH-7460)
* Close sockets and streams to fix ResourceWarning warnings * Catch also OSError to hide a traceback on an expected handshake error
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_asyncio/functional.py9
-rw-r--r--Lib/test/test_asyncio/test_sslproto.py5
2 files changed, 12 insertions, 2 deletions
diff --git a/Lib/test/test_asyncio/functional.py b/Lib/test/test_asyncio/functional.py
index fbec462..386cfcd 100644
--- a/Lib/test/test_asyncio/functional.py
+++ b/Lib/test/test_asyncio/functional.py
@@ -150,9 +150,14 @@ class TestSocketWrapper:
server_hostname=server_hostname,
do_handshake_on_connect=False)
- ssl_sock.do_handshake()
+ try:
+ ssl_sock.do_handshake()
+ except:
+ ssl_sock.close()
+ raise
+ finally:
+ self.__sock.close()
- self.__sock.close()
self.__sock = ssl_sock
def __getattr__(self, name):
diff --git a/Lib/test/test_asyncio/test_sslproto.py b/Lib/test/test_asyncio/test_sslproto.py
index d02d441..78ab1eb 100644
--- a/Lib/test/test_asyncio/test_sslproto.py
+++ b/Lib/test/test_asyncio/test_sslproto.py
@@ -604,6 +604,8 @@ class BaseStartTLS(func_tests.FunctionalTestCaseMixin):
server_side=True)
except ssl.SSLError:
pass
+ except OSError:
+ pass
finally:
sock.close()
@@ -640,6 +642,7 @@ class BaseStartTLS(func_tests.FunctionalTestCaseMixin):
except ssl.SSLError:
pass
finally:
+ orig_sock.close()
sock.close()
async def client(addr):
@@ -653,6 +656,8 @@ class BaseStartTLS(func_tests.FunctionalTestCaseMixin):
writer.write(b'B')
with self.assertRaises(ssl.SSLError):
await reader.readline()
+
+ writer.close()
return 'OK'
with self.tcp_server(server,