HEX
Server: nginx/1.24.0
System: Linux webserver 6.8.0-85-generic #85-Ubuntu SMP PREEMPT_DYNAMIC Thu Sep 18 15:26:59 UTC 2025 x86_64
User: wpuser (1002)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/hyperlink/test/test_socket.py
# mypy: always-true=inet_pton

try:
    from socket import inet_pton
except ImportError:
    inet_pton = None  # type: ignore[assignment]

if not inet_pton:
    import socket

    from .common import HyperlinkTestCase
    from .._socket import inet_pton

    class TestSocket(HyperlinkTestCase):
        def test_inet_pton_ipv4_valid(self):
            # type: () -> None
            data = inet_pton(socket.AF_INET, "127.0.0.1")
            assert isinstance(data, bytes)

        def test_inet_pton_ipv4_bogus(self):
            # type: () -> None
            with self.assertRaises(socket.error):
                inet_pton(socket.AF_INET, "blah")

        def test_inet_pton_ipv6_valid(self):
            # type: () -> None
            data = inet_pton(socket.AF_INET6, "::1")
            assert isinstance(data, bytes)

        def test_inet_pton_ipv6_bogus(self):
            # type: () -> None
            with self.assertRaises(socket.error):
                inet_pton(socket.AF_INET6, "blah")

        def test_inet_pton_bogus_family(self):
            # type: () -> None
            # Find an integer not associated with a known address family
            i = int(socket.AF_INET6)
            while True:
                if i != socket.AF_INET and i != socket.AF_INET6:
                    break
                i += 100

            with self.assertRaises(socket.error):
                inet_pton(i, "127.0.0.1")