diff --git a/Lib/socket.py b/Lib/socket.py index 727b0e75f03595..e81940abd5b031 100644 --- a/Lib/socket.py +++ b/Lib/socket.py @@ -78,7 +78,7 @@ IntEnum._convert_( 'AddressFamily', __name__, - lambda C: C.isupper() and C.startswith('AF_')) + lambda C: C.startswith('AF_')) IntEnum._convert_( 'SocketKind', diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py index 3dd67b2a2aba97..f455c5b0a2ea7f 100644 --- a/Lib/test/test_socket.py +++ b/Lib/test/test_socket.py @@ -2138,11 +2138,15 @@ def test_addressfamily_enum(self): import _socket, enum CheckedAddressFamily = enum._old_convert_( enum.IntEnum, 'AddressFamily', 'socket', - lambda C: C.isupper() and C.startswith('AF_'), + lambda C: C.startswith('AF_'), source=_socket, ) enum._test_simple_enum(CheckedAddressFamily, socket.AddressFamily) + @unittest.skipUnless(hasattr(_socket, 'AF_DECnet'), 'AF_DECnet required.') + def test_addressfamily_enum_decnet(self): + assert hasattr(socket.AddressFamily, 'AF_DECnet') + def test_socketkind_enum(self): import _socket, enum CheckedSocketKind = enum._old_convert_( diff --git a/Misc/NEWS.d/next/Library/2024-12-02-21-19-53.gh-issue-127544.N7uEsX.rst b/Misc/NEWS.d/next/Library/2024-12-02-21-19-53.gh-issue-127544.N7uEsX.rst new file mode 100644 index 00000000000000..f735f7bf54fbdd --- /dev/null +++ b/Misc/NEWS.d/next/Library/2024-12-02-21-19-53.gh-issue-127544.N7uEsX.rst @@ -0,0 +1,2 @@ +Ensure that ``AF_DECnet`` is part of the :class:`!socket.AddressFamily` +enum, when available.