bpo-44011: Fix asyncio tests without ssl module (GH-25840)
Signed-off-by: Christian Heimes <christian@python.org>
diff --git a/Lib/asyncio/sslproto.py b/Lib/asyncio/sslproto.py
index e71875b..79734ab 100644
--- a/Lib/asyncio/sslproto.py
+++ b/Lib/asyncio/sslproto.py
@@ -12,7 +12,8 @@
from . import transports
from .log import logger
-SSLAgainErrors = (ssl.SSLWantReadError, ssl.SSLSyscallError)
+if ssl is not None:
+ SSLAgainErrors = (ssl.SSLWantReadError, ssl.SSLSyscallError)
class SSLProtocolState(enum.Enum):
diff --git a/Lib/test/test_asyncio/test_ssl.py b/Lib/test/test_asyncio/test_ssl.py
index 38235c6..4dcd3a0 100644
--- a/Lib/test/test_asyncio/test_ssl.py
+++ b/Lib/test/test_asyncio/test_ssl.py
@@ -3,14 +3,18 @@
import contextlib
import gc
import logging
-import os
import select
import socket
-import ssl
import tempfile
import threading
import time
import weakref
+import unittest
+
+try:
+ import ssl
+except ImportError:
+ ssl = None
from test import support
from test.test_asyncio import utils as test_utils
@@ -54,6 +58,7 @@ def connection_lost(self, exc):
self.done.set_result(None)
+@unittest.skipIf(ssl is None, 'No ssl module')
class TestSSL(test_utils.TestCase):
PAYLOAD_SIZE = 1024 * 100