bpo-37199: Fix test failures when IPv6 is unavailable or disabled (#14480)

diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
index 50094de..e92f871 100644
--- a/Lib/test/test_socket.py
+++ b/Lib/test/test_socket.py
@@ -4964,8 +4964,15 @@
         # Issue #9792: create_connection() should not recast timeout errors
         # as generic socket errors.
         with self.mocked_socket_module():
-            with self.assertRaises(socket.timeout):
+            try:
                 socket.create_connection((HOST, 1234))
+            except socket.timeout:
+                pass
+            except OSError as exc:
+                if support.IPV6_ENABLED or exc.errno != errno.EAFNOSUPPORT:
+                    raise
+            else:
+                self.fail('socket.timeout not raised')
 
 
 class NetworkConnectionAttributesTest(SocketTCPTest, ThreadableTest):