summaryrefslogtreecommitdiffstats
path: root/contrib/python
diff options
context:
space:
mode:
authorYDBot <[email protected]>2025-10-29 00:52:40 +0000
committerYDBot <[email protected]>2025-10-29 00:52:40 +0000
commit41eba5a90981e431dfa9bc6746eaaa0fc3b4e88e (patch)
treed60db91d4d7ad091d575c42c350b4d5d333e9a2d /contrib/python
parent7c948ab9780c4458a78d1720571b42b4664f39c9 (diff)
parent9f88f6f3f352193c11dd54ae15fe6218ff2d0d4d (diff)
Sync branches 251029-0051
Diffstat (limited to 'contrib/python')
-rw-r--r--contrib/python/aiohttp/aiohttp/web_response.py3
-rw-r--r--contrib/python/aiohttp/patches/04-force-content-type.patch12
-rw-r--r--contrib/python/idna/py3/.dist-info/METADATA115
-rw-r--r--contrib/python/idna/py3/.yandex_meta/yamaker.yaml2
-rw-r--r--contrib/python/idna/py3/LICENSE.md2
-rw-r--r--contrib/python/idna/py3/README.rst103
-rw-r--r--contrib/python/idna/py3/idna/codec.py2
-rw-r--r--contrib/python/idna/py3/idna/core.py2
-rw-r--r--contrib/python/idna/py3/idna/idnadata.py78
-rw-r--r--contrib/python/idna/py3/idna/package_data.py2
-rw-r--r--contrib/python/idna/py3/idna/uts46data.py1622
-rw-r--r--contrib/python/idna/py3/tests/test_idna_other.py11
-rw-r--r--contrib/python/idna/py3/tests/test_idna_uts46.py25563
-rw-r--r--contrib/python/idna/py3/tests/ya.make9
-rw-r--r--contrib/python/idna/py3/ya.make2
-rw-r--r--contrib/python/psutil/py3/.dist-info/METADATA32
-rw-r--r--contrib/python/psutil/py3/.yandex_meta/yamaker.yaml5
-rw-r--r--contrib/python/psutil/py3/README.rst7
-rw-r--r--contrib/python/psutil/py3/patches/01-arcadia.patch2
-rw-r--r--contrib/python/psutil/py3/patches/02-unaccepted-pr2064-missing-extern.patch33
-rw-r--r--contrib/python/psutil/py3/patches/03-fix-build-on-win.patch4
-rw-r--r--contrib/python/psutil/py3/patches/04-fix-build-on-osx-arm64.patch13
-rw-r--r--contrib/python/psutil/py3/patches/99-fix-ya.make.patch52
-rw-r--r--contrib/python/psutil/py3/psutil/__init__.py64
-rw-r--r--contrib/python/psutil/py3/psutil/_common.py8
-rw-r--r--contrib/python/psutil/py3/psutil/_psaix.py16
-rw-r--r--contrib/python/psutil/py3/psutil/_psbsd.py146
-rw-r--r--contrib/python/psutil/py3/psutil/_pslinux.py109
-rw-r--r--contrib/python/psutil/py3/psutil/_psosx.py79
-rw-r--r--contrib/python/psutil/py3/psutil/_psposix.py1
-rw-r--r--contrib/python/psutil/py3/psutil/_pssunos.py12
-rw-r--r--contrib/python/psutil/py3/psutil/_psutil_common.h167
-rw-r--r--contrib/python/psutil/py3/psutil/_psutil_linux.c40
-rw-r--r--contrib/python/psutil/py3/psutil/_psutil_osx.c68
-rw-r--r--contrib/python/psutil/py3/psutil/_psutil_posix.h9
-rw-r--r--contrib/python/psutil/py3/psutil/_psutil_windows.c210
-rw-r--r--contrib/python/psutil/py3/psutil/_pswindows.py46
-rw-r--r--contrib/python/psutil/py3/psutil/arch/all/init.c134
-rw-r--r--contrib/python/psutil/py3/psutil/arch/all/init.h128
-rw-r--r--contrib/python/psutil/py3/psutil/arch/all/pids.c54
-rw-r--r--contrib/python/psutil/py3/psutil/arch/linux/disk.c4
-rw-r--r--contrib/python/psutil/py3/psutil/arch/linux/disk.h9
-rw-r--r--contrib/python/psutil/py3/psutil/arch/linux/init.h (renamed from contrib/python/psutil/py3/psutil/arch/linux/proc.h)8
-rw-r--r--contrib/python/psutil/py3/psutil/arch/linux/mem.c2
-rw-r--r--contrib/python/psutil/py3/psutil/arch/linux/mem.h9
-rw-r--r--contrib/python/psutil/py3/psutil/arch/linux/net.c4
-rw-r--r--contrib/python/psutil/py3/psutil/arch/linux/net.h9
-rw-r--r--contrib/python/psutil/py3/psutil/arch/linux/proc.c14
-rw-r--r--contrib/python/psutil/py3/psutil/arch/linux/users.h9
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/cpu.c371
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/cpu.h14
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/disk.c266
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/disk.h11
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/init.c27
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/init.h42
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/mem.c68
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/mem.h10
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/net.c85
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/net.h9
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/pids.c56
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/proc.c509
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/proc.h21
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/sensors.c36
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/sensors.h9
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/sys.c70
-rw-r--r--contrib/python/psutil/py3/psutil/arch/osx/sys.h10
-rw-r--r--contrib/python/psutil/py3/psutil/arch/posix/init.c225
-rw-r--r--contrib/python/psutil/py3/psutil/arch/posix/init.h51
-rw-r--r--contrib/python/psutil/py3/psutil/arch/posix/net.c (renamed from contrib/python/psutil/py3/psutil/_psutil_posix.c)372
-rw-r--r--contrib/python/psutil/py3/psutil/arch/posix/proc.c120
-rw-r--r--contrib/python/psutil/py3/psutil/arch/posix/sysctl.c245
-rw-r--r--contrib/python/psutil/py3/psutil/arch/posix/users.c (renamed from contrib/python/psutil/py3/psutil/arch/linux/users.c)62
-rw-r--r--contrib/python/psutil/py3/psutil/arch/sunos/cpu.c137
-rw-r--r--contrib/python/psutil/py3/psutil/arch/sunos/disk.c119
-rw-r--r--contrib/python/psutil/py3/psutil/arch/sunos/environ.c400
-rw-r--r--contrib/python/psutil/py3/psutil/arch/sunos/init.h41
-rw-r--r--contrib/python/psutil/py3/psutil/arch/sunos/mem.c103
-rw-r--r--contrib/python/psutil/py3/psutil/arch/sunos/net.c539
-rw-r--r--contrib/python/psutil/py3/psutil/arch/sunos/proc.c585
-rw-r--r--contrib/python/psutil/py3/psutil/arch/sunos/sys.c35
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/cpu.c2
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/cpu.h14
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/disk.c2
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/disk.h12
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/init.c (renamed from contrib/python/psutil/py3/psutil/_psutil_common.c)332
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/init.h140
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/mem.c2
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/mem.h11
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/net.c2
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/net.h11
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/ntextapi.h10
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/pids.c45
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/proc.c55
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/proc.h34
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/proc_handles.c23
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/proc_handles.h10
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/proc_info.c12
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/proc_info.h24
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/proc_utils.c62
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/proc_utils.h12
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/security.c12
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/security.h13
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/sensors.c2
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/sensors.h9
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/services.c211
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/services.h17
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/socks.c35
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/socks.h9
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/sys.c29
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/sys.h10
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/wmi.c20
-rw-r--r--contrib/python/psutil/py3/psutil/arch/windows/wmi.h10
-rw-r--r--contrib/python/psutil/py3/ya.make27
113 files changed, 31191 insertions, 3711 deletions
diff --git a/contrib/python/aiohttp/aiohttp/web_response.py b/contrib/python/aiohttp/aiohttp/web_response.py
index 4307b2a98c8..956359718da 100644
--- a/contrib/python/aiohttp/aiohttp/web_response.py
+++ b/contrib/python/aiohttp/aiohttp/web_response.py
@@ -485,7 +485,8 @@ class StreamResponse(BaseClass, HeadersMixin):
# https://datatracker.ietf.org/doc/html/rfc9112#section-6.1-13
if hdrs.TRANSFER_ENCODING in headers:
del headers[hdrs.TRANSFER_ENCODING]
- else:
+ elif self.content_length != 0:
+ # https://www.rfc-editor.org/rfc/rfc9110#section-8.3-5
headers.setdefault(hdrs.CONTENT_TYPE, "application/octet-stream")
headers.setdefault(hdrs.DATE, rfc822_formatted_time())
headers.setdefault(hdrs.SERVER, SERVER_SOFTWARE)
diff --git a/contrib/python/aiohttp/patches/04-force-content-type.patch b/contrib/python/aiohttp/patches/04-force-content-type.patch
deleted file mode 100644
index 44569413307..00000000000
--- a/contrib/python/aiohttp/patches/04-force-content-type.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- contrib/python/aiohttp/aiohttp/web_response.py (ddcb92de87597ba3c0a8961e7fdf04a184c227ce)
-+++ contrib/python/aiohttp/aiohttp/web_response.py (0978c4fe84e8994e041f045b1447dd8058efa52c)
-@@ -487,8 +487,7 @@ class StreamResponse(BaseClass, HeadersMixin):
- # https://datatracker.ietf.org/doc/html/rfc9112#section-6.1-13
- if hdrs.TRANSFER_ENCODING in headers:
- del headers[hdrs.TRANSFER_ENCODING]
-- elif self.content_length != 0:
-- # https://www.rfc-editor.org/rfc/rfc9110#section-8.3-5
-+ else:
- headers.setdefault(hdrs.CONTENT_TYPE, "application/octet-stream")
- headers.setdefault(hdrs.DATE, rfc822_formatted_time())
- headers.setdefault(hdrs.SERVER, SERVER_SOFTWARE)
diff --git a/contrib/python/idna/py3/.dist-info/METADATA b/contrib/python/idna/py3/.dist-info/METADATA
index c42623e9423..7a4a4b7a7e9 100644
--- a/contrib/python/idna/py3/.dist-info/METADATA
+++ b/contrib/python/idna/py3/.dist-info/METADATA
@@ -1,31 +1,31 @@
-Metadata-Version: 2.1
+Metadata-Version: 2.4
Name: idna
-Version: 3.10
+Version: 3.11
Summary: Internationalized Domain Names in Applications (IDNA)
Author-email: Kim Davies <[email protected]>
-Requires-Python: >=3.6
+Requires-Python: >=3.8
Description-Content-Type: text/x-rst
+License-Expression: BSD-3-Clause
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
-Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
-Classifier: Programming Language :: Python :: 3.6
-Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
+Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Internet :: Name Service (DNS)
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Utilities
+License-File: LICENSE.md
Requires-Dist: ruff >= 0.6.2 ; extra == "all"
Requires-Dist: mypy >= 1.11.2 ; extra == "all"
Requires-Dist: pytest >= 8.3.2 ; extra == "all"
@@ -38,19 +38,17 @@ Provides-Extra: all
Internationalized Domain Names in Applications (IDNA)
=====================================================
-Support for the Internationalized Domain Names in
-Applications (IDNA) protocol as specified in `RFC 5891
-<https://tools.ietf.org/html/rfc5891>`_. This is the latest version of
-the protocol and is sometimes referred to as “IDNA 2008”.
-
-This library also provides support for Unicode Technical
-Standard 46, `Unicode IDNA Compatibility Processing
+Support for `Internationalized Domain Names in
+Applications (IDNA) <https://tools.ietf.org/html/rfc5891>`_
+and `Unicode IDNA Compatibility Processing
<https://unicode.org/reports/tr46/>`_.
-This acts as a suitable replacement for the “encodings.idna”
+The latest versions of these standards supplied here provide
+more comprehensive language coverage and reduce the potential of
+allowing domains with known security vulnerabilities. This library
+is a suitable replacement for the “encodings.idna”
module that comes with the Python standard library, but which
-only supports the older superseded IDNA specification (`RFC 3490
-<https://tools.ietf.org/html/rfc3490>`_).
+only supports an older superseded IDNA specification from 2003.
Basic functions are simply executed:
@@ -66,7 +64,8 @@ Basic functions are simply executed:
Installation
------------
-This package is available for installation from PyPI:
+This package is available for installation from PyPI via the
+typical mechanisms, such as:
.. code-block:: bash
@@ -77,7 +76,8 @@ Usage
-----
For typical usage, the ``encode`` and ``decode`` functions will take a
-domain name argument and perform a conversion to A-labels or U-labels
+domain name argument and perform a conversion to ASCII compatible encoding
+(known as A-labels), or to Unicode strings (known as U-labels)
respectively.
.. code-block:: pycon
@@ -88,17 +88,6 @@ respectively.
>>> print(idna.decode('xn--eckwd4c7c.xn--zckzah'))
ドメイン.テスト
-You may use the codec encoding and decoding methods using the
-``idna.codec`` module:
-
-.. code-block:: pycon
-
- >>> import idna.codec
- >>> print('домен.испытание'.encode('idna2008'))
- b'xn--d1acufc.xn--80akhbyknj4f'
- >>> print(b'xn--d1acufc.xn--80akhbyknj4f'.decode('idna2008'))
- домен.испытание
-
Conversions can be applied at a per-label basis using the ``ulabel`` or
``alabel`` functions if necessary:
@@ -107,22 +96,17 @@ Conversions can be applied at a per-label basis using the ``ulabel`` or
>>> idna.alabel('测试')
b'xn--0zwm56d'
+
Compatibility Mapping (UTS #46)
+++++++++++++++++++++++++++++++
-As described in `RFC 5895 <https://tools.ietf.org/html/rfc5895>`_, the
-IDNA specification does not normalize input from different potential
-ways a user may input a domain name. This functionality, known as
-a “mapping”, is considered by the specification to be a local
-user-interface issue distinct from IDNA conversion functionality.
-
-This library provides one such mapping that was developed by the
-Unicode Consortium. Known as `Unicode IDNA Compatibility Processing
-<https://unicode.org/reports/tr46/>`_, it provides for both a regular
-mapping for typical applications, as well as a transitional mapping to
-help migrate from older IDNA 2003 applications. Strings are
-preprocessed according to Section 4.4 “Preprocessing for IDNA2008”
-prior to the IDNA operations.
+This library provides support for `Unicode IDNA Compatibility
+Processing <https://unicode.org/reports/tr46/>`_ which normalizes input from
+different potential ways a user may input a domain prior to performing the IDNA
+conversion operations. This functionality, known as a
+`mapping <https://tools.ietf.org/html/rfc5895>`_, is considered by the
+specification to be a local user-interface issue distinct from IDNA
+conversion functionality.
For example, “Königsgäßchen” is not a permissible label as *LATIN
CAPITAL LETTER K* is not allowed (nor are capital letters in general).
@@ -140,31 +124,6 @@ conversion.
>>> print(idna.decode('xn--knigsgchen-b4a3dun'))
königsgäßchen
-Transitional processing provides conversions to help transition from
-the older 2003 standard to the current standard. For example, in the
-original IDNA specification, the *LATIN SMALL LETTER SHARP S* (ß) was
-converted into two *LATIN SMALL LETTER S* (ss), whereas in the current
-IDNA specification this conversion is not performed.
-
-.. code-block:: pycon
-
- >>> idna.encode('Königsgäßchen', uts46=True, transitional=True)
- 'xn--knigsgsschen-lcb0w'
-
-Implementers should use transitional processing with caution, only in
-rare cases where conversion from legacy labels to current labels must be
-performed (i.e. IDNA implementations that pre-date 2008). For typical
-applications that just need to convert labels, transitional processing
-is unlikely to be beneficial and could produce unexpected incompatible
-results.
-
-``encodings.idna`` Compatibility
-++++++++++++++++++++++++++++++++
-
-Function calls from the Python built-in ``encodings.idna`` module are
-mapped to their IDNA 2008 equivalents using the ``idna.compat`` module.
-Simply substitute the ``import`` clause in your code to refer to the new
-module name.
Exceptions
----------
@@ -178,7 +137,7 @@ when the error reflects an illegal combination of left-to-right and
right-to-left characters in a label; ``idna.InvalidCodepoint`` when
a specific codepoint is an illegal character in an IDN label (i.e.
INVALID); and ``idna.InvalidCodepointContext`` when the codepoint is
-illegal based on its positional context (i.e. it is CONTEXTO or CONTEXTJ
+illegal based on its position in the string (i.e. it is CONTEXTO or CONTEXTJ
but the contextual requirements are not satisfied.)
Building and Diagnostics
@@ -186,8 +145,8 @@ Building and Diagnostics
The IDNA and UTS 46 functionality relies upon pre-calculated lookup
tables for performance. These tables are derived from computing against
-eligibility criteria in the respective standards. These tables are
-computed using the command-line script ``tools/idna-data``.
+eligibility criteria in the respective standards using the command-line
+script ``tools/idna-data``.
This tool will fetch relevant codepoint data from the Unicode repository
and perform the required calculations to identify eligibility. There are
@@ -222,17 +181,13 @@ Additional Notes
* **Packages**. The latest tagged release version is published in the
`Python Package Index <https://pypi.org/project/idna/>`_.
-* **Version support**. This library supports Python 3.6 and higher.
+* **Version support**. This library supports Python 3.8 and higher.
As this library serves as a low-level toolkit for a variety of
applications, many of which strive for broad compatibility with older
Python versions, there is no rush to remove older interpreter support.
- Removing support for older versions should be well justified in that the
- maintenance burden has become too high.
-
-* **Python 2**. Python 2 is supported by version 2.x of this library.
- Use "idna<3" in your requirements file if you need this library for
- a Python 2 application. Be advised that these versions are no longer
- actively developed.
+ Support for older versions are likely to be removed from new releases
+ as automated tests can no longer easily be run, i.e. once the Python
+ version is officially end-of-life.
* **Testing**. The library has a test suite based on each rule of the
IDNA specification, as well as tests that are provided as part of the
@@ -248,3 +203,7 @@ Additional Notes
first, and then falling back to using `encodings.idna`. See `the Github
project <https://github.com/kjd/idna/issues/18>`_ for more discussion.
+* **Transitional processing**. Unicode 16.0.0 removed transitional
+ processing so the `transitional` argument for the encode() method
+ no longer has any effect and will be removed at a later date.
+
diff --git a/contrib/python/idna/py3/.yandex_meta/yamaker.yaml b/contrib/python/idna/py3/.yandex_meta/yamaker.yaml
deleted file mode 100644
index dbecf434430..00000000000
--- a/contrib/python/idna/py3/.yandex_meta/yamaker.yaml
+++ /dev/null
@@ -1,2 +0,0 @@
-exclude:
- - tests/IdnaTestV2.txt
diff --git a/contrib/python/idna/py3/LICENSE.md b/contrib/python/idna/py3/LICENSE.md
index 19b6b45242c..256ba90cd91 100644
--- a/contrib/python/idna/py3/LICENSE.md
+++ b/contrib/python/idna/py3/LICENSE.md
@@ -1,6 +1,6 @@
BSD 3-Clause License
-Copyright (c) 2013-2024, Kim Davies and contributors.
+Copyright (c) 2013-2025, Kim Davies and contributors.
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff --git a/contrib/python/idna/py3/README.rst b/contrib/python/idna/py3/README.rst
index 5f5bd3820ee..3fe44218c32 100644
--- a/contrib/python/idna/py3/README.rst
+++ b/contrib/python/idna/py3/README.rst
@@ -1,19 +1,17 @@
Internationalized Domain Names in Applications (IDNA)
=====================================================
-Support for the Internationalized Domain Names in
-Applications (IDNA) protocol as specified in `RFC 5891
-<https://tools.ietf.org/html/rfc5891>`_. This is the latest version of
-the protocol and is sometimes referred to as “IDNA 2008”.
-
-This library also provides support for Unicode Technical
-Standard 46, `Unicode IDNA Compatibility Processing
+Support for `Internationalized Domain Names in
+Applications (IDNA) <https://tools.ietf.org/html/rfc5891>`_
+and `Unicode IDNA Compatibility Processing
<https://unicode.org/reports/tr46/>`_.
-This acts as a suitable replacement for the “encodings.idna”
+The latest versions of these standards supplied here provide
+more comprehensive language coverage and reduce the potential of
+allowing domains with known security vulnerabilities. This library
+is a suitable replacement for the “encodings.idna”
module that comes with the Python standard library, but which
-only supports the older superseded IDNA specification (`RFC 3490
-<https://tools.ietf.org/html/rfc3490>`_).
+only supports an older superseded IDNA specification from 2003.
Basic functions are simply executed:
@@ -29,7 +27,8 @@ Basic functions are simply executed:
Installation
------------
-This package is available for installation from PyPI:
+This package is available for installation from PyPI via the
+typical mechanisms, such as:
.. code-block:: bash
@@ -40,7 +39,8 @@ Usage
-----
For typical usage, the ``encode`` and ``decode`` functions will take a
-domain name argument and perform a conversion to A-labels or U-labels
+domain name argument and perform a conversion to ASCII compatible encoding
+(known as A-labels), or to Unicode strings (known as U-labels)
respectively.
.. code-block:: pycon
@@ -51,17 +51,6 @@ respectively.
>>> print(idna.decode('xn--eckwd4c7c.xn--zckzah'))
ドメイン.テスト
-You may use the codec encoding and decoding methods using the
-``idna.codec`` module:
-
-.. code-block:: pycon
-
- >>> import idna.codec
- >>> print('домен.испытание'.encode('idna2008'))
- b'xn--d1acufc.xn--80akhbyknj4f'
- >>> print(b'xn--d1acufc.xn--80akhbyknj4f'.decode('idna2008'))
- домен.испытание
-
Conversions can be applied at a per-label basis using the ``ulabel`` or
``alabel`` functions if necessary:
@@ -70,22 +59,17 @@ Conversions can be applied at a per-label basis using the ``ulabel`` or
>>> idna.alabel('测试')
b'xn--0zwm56d'
+
Compatibility Mapping (UTS #46)
+++++++++++++++++++++++++++++++
-As described in `RFC 5895 <https://tools.ietf.org/html/rfc5895>`_, the
-IDNA specification does not normalize input from different potential
-ways a user may input a domain name. This functionality, known as
-a “mapping”, is considered by the specification to be a local
-user-interface issue distinct from IDNA conversion functionality.
-
-This library provides one such mapping that was developed by the
-Unicode Consortium. Known as `Unicode IDNA Compatibility Processing
-<https://unicode.org/reports/tr46/>`_, it provides for both a regular
-mapping for typical applications, as well as a transitional mapping to
-help migrate from older IDNA 2003 applications. Strings are
-preprocessed according to Section 4.4 “Preprocessing for IDNA2008”
-prior to the IDNA operations.
+This library provides support for `Unicode IDNA Compatibility
+Processing <https://unicode.org/reports/tr46/>`_ which normalizes input from
+different potential ways a user may input a domain prior to performing the IDNA
+conversion operations. This functionality, known as a
+`mapping <https://tools.ietf.org/html/rfc5895>`_, is considered by the
+specification to be a local user-interface issue distinct from IDNA
+conversion functionality.
For example, “Königsgäßchen” is not a permissible label as *LATIN
CAPITAL LETTER K* is not allowed (nor are capital letters in general).
@@ -103,31 +87,6 @@ conversion.
>>> print(idna.decode('xn--knigsgchen-b4a3dun'))
königsgäßchen
-Transitional processing provides conversions to help transition from
-the older 2003 standard to the current standard. For example, in the
-original IDNA specification, the *LATIN SMALL LETTER SHARP S* (ß) was
-converted into two *LATIN SMALL LETTER S* (ss), whereas in the current
-IDNA specification this conversion is not performed.
-
-.. code-block:: pycon
-
- >>> idna.encode('Königsgäßchen', uts46=True, transitional=True)
- 'xn--knigsgsschen-lcb0w'
-
-Implementers should use transitional processing with caution, only in
-rare cases where conversion from legacy labels to current labels must be
-performed (i.e. IDNA implementations that pre-date 2008). For typical
-applications that just need to convert labels, transitional processing
-is unlikely to be beneficial and could produce unexpected incompatible
-results.
-
-``encodings.idna`` Compatibility
-++++++++++++++++++++++++++++++++
-
-Function calls from the Python built-in ``encodings.idna`` module are
-mapped to their IDNA 2008 equivalents using the ``idna.compat`` module.
-Simply substitute the ``import`` clause in your code to refer to the new
-module name.
Exceptions
----------
@@ -141,7 +100,7 @@ when the error reflects an illegal combination of left-to-right and
right-to-left characters in a label; ``idna.InvalidCodepoint`` when
a specific codepoint is an illegal character in an IDN label (i.e.
INVALID); and ``idna.InvalidCodepointContext`` when the codepoint is
-illegal based on its positional context (i.e. it is CONTEXTO or CONTEXTJ
+illegal based on its position in the string (i.e. it is CONTEXTO or CONTEXTJ
but the contextual requirements are not satisfied.)
Building and Diagnostics
@@ -149,8 +108,8 @@ Building and Diagnostics
The IDNA and UTS 46 functionality relies upon pre-calculated lookup
tables for performance. These tables are derived from computing against
-eligibility criteria in the respective standards. These tables are
-computed using the command-line script ``tools/idna-data``.
+eligibility criteria in the respective standards using the command-line
+script ``tools/idna-data``.
This tool will fetch relevant codepoint data from the Unicode repository
and perform the required calculations to identify eligibility. There are
@@ -185,17 +144,13 @@ Additional Notes
* **Packages**. The latest tagged release version is published in the
`Python Package Index <https://pypi.org/project/idna/>`_.
-* **Version support**. This library supports Python 3.6 and higher.
+* **Version support**. This library supports Python 3.8 and higher.
As this library serves as a low-level toolkit for a variety of
applications, many of which strive for broad compatibility with older
Python versions, there is no rush to remove older interpreter support.
- Removing support for older versions should be well justified in that the
- maintenance burden has become too high.
-
-* **Python 2**. Python 2 is supported by version 2.x of this library.
- Use "idna<3" in your requirements file if you need this library for
- a Python 2 application. Be advised that these versions are no longer
- actively developed.
+ Support for older versions are likely to be removed from new releases
+ as automated tests can no longer easily be run, i.e. once the Python
+ version is officially end-of-life.
* **Testing**. The library has a test suite based on each rule of the
IDNA specification, as well as tests that are provided as part of the
@@ -210,3 +165,7 @@ Additional Notes
may wish to consider trying the encode/decode operation in this library
first, and then falling back to using `encodings.idna`. See `the Github
project <https://github.com/kjd/idna/issues/18>`_ for more discussion.
+
+* **Transitional processing**. Unicode 16.0.0 removed transitional
+ processing so the `transitional` argument for the encode() method
+ no longer has any effect and will be removed at a later date.
diff --git a/contrib/python/idna/py3/idna/codec.py b/contrib/python/idna/py3/idna/codec.py
index 913abfd6a23..cbc2e4ff4ec 100644
--- a/contrib/python/idna/py3/idna/codec.py
+++ b/contrib/python/idna/py3/idna/codec.py
@@ -111,7 +111,7 @@ def search_function(name: str) -> Optional[codecs.CodecInfo]:
return codecs.CodecInfo(
name=name,
encode=Codec().encode,
- decode=Codec().decode,
+ decode=Codec().decode, # type: ignore
incrementalencoder=IncrementalEncoder,
incrementaldecoder=IncrementalDecoder,
streamwriter=StreamWriter,
diff --git a/contrib/python/idna/py3/idna/core.py b/contrib/python/idna/py3/idna/core.py
index 9115f123f02..8177bf7a324 100644
--- a/contrib/python/idna/py3/idna/core.py
+++ b/contrib/python/idna/py3/idna/core.py
@@ -308,7 +308,7 @@ def ulabel(label: Union[str, bytes, bytearray]) -> str:
check_label(label)
return label
else:
- label_bytes = label
+ label_bytes = bytes(label)
label_bytes = label_bytes.lower()
if label_bytes.startswith(_alabel_prefix):
diff --git a/contrib/python/idna/py3/idna/idnadata.py b/contrib/python/idna/py3/idna/idnadata.py
index 4be6004622e..ded47cae0b1 100644
--- a/contrib/python/idna/py3/idna/idnadata.py
+++ b/contrib/python/idna/py3/idna/idnadata.py
@@ -1,6 +1,7 @@
# This file is automatically generated by tools/idna-data
-__version__ = "15.1.0"
+__version__ = "16.0.0"
+
scripts = {
"Greek": (
0x37000000374,
@@ -727,6 +728,7 @@ joining_types = {
0x88C: 68,
0x88D: 68,
0x88E: 82,
+ 0x897: 84,
0x898: 84,
0x899: 84,
0x89A: 84,
@@ -1873,8 +1875,17 @@ joining_types = {
0x10D25: 84,
0x10D26: 84,
0x10D27: 84,
+ 0x10D69: 84,
+ 0x10D6A: 84,
+ 0x10D6B: 84,
+ 0x10D6C: 84,
+ 0x10D6D: 84,
0x10EAB: 84,
0x10EAC: 84,
+ 0x10EC2: 82,
+ 0x10EC3: 68,
+ 0x10EC4: 68,
+ 0x10EFC: 84,
0x10EFD: 84,
0x10EFE: 84,
0x10EFF: 84,
@@ -2053,6 +2064,17 @@ joining_types = {
0x11372: 84,
0x11373: 84,
0x11374: 84,
+ 0x113BB: 84,
+ 0x113BC: 84,
+ 0x113BD: 84,
+ 0x113BE: 84,
+ 0x113BF: 84,
+ 0x113C0: 84,
+ 0x113CE: 84,
+ 0x113D0: 84,
+ 0x113D2: 84,
+ 0x113E1: 84,
+ 0x113E2: 84,
0x11438: 84,
0x11439: 84,
0x1143A: 84,
@@ -2108,7 +2130,6 @@ joining_types = {
0x116B5: 84,
0x116B7: 84,
0x1171D: 84,
- 0x1171E: 84,
0x1171F: 84,
0x11722: 84,
0x11723: 84,
@@ -2265,6 +2286,7 @@ joining_types = {
0x11F3A: 84,
0x11F40: 84,
0x11F42: 84,
+ 0x11F5A: 84,
0x13430: 84,
0x13431: 84,
0x13432: 84,
@@ -2297,6 +2319,21 @@ joining_types = {
0x13453: 84,
0x13454: 84,
0x13455: 84,
+ 0x1611E: 84,
+ 0x1611F: 84,
+ 0x16120: 84,
+ 0x16121: 84,
+ 0x16122: 84,
+ 0x16123: 84,
+ 0x16124: 84,
+ 0x16125: 84,
+ 0x16126: 84,
+ 0x16127: 84,
+ 0x16128: 84,
+ 0x16129: 84,
+ 0x1612D: 84,
+ 0x1612E: 84,
+ 0x1612F: 84,
0x16AF0: 84,
0x16AF1: 84,
0x16AF2: 84,
@@ -2605,6 +2642,8 @@ joining_types = {
0x1E4ED: 84,
0x1E4EE: 84,
0x1E4EF: 84,
+ 0x1E5EE: 84,
+ 0x1E5EF: 84,
0x1E8D0: 84,
0x1E8D1: 84,
0x1E8D2: 84,
@@ -3328,7 +3367,7 @@ codepoint_classes = {
0x8600000086B,
0x87000000888,
0x8890000088F,
- 0x898000008E2,
+ 0x897000008E2,
0x8E300000958,
0x96000000964,
0x96600000970,
@@ -3563,6 +3602,7 @@ codepoint_classes = {
0x1C0000001C38,
0x1C4000001C4A,
0x1C4D00001C7E,
+ 0x1C8A00001C8B,
0x1CD000001CD3,
0x1CD400001CFB,
0x1D0000001D2C,
@@ -3926,11 +3966,13 @@ codepoint_classes = {
0xA7C30000A7C4,
0xA7C80000A7C9,
0xA7CA0000A7CB,
+ 0xA7CD0000A7CE,
0xA7D10000A7D2,
0xA7D30000A7D4,
0xA7D50000A7D6,
0xA7D70000A7D8,
0xA7D90000A7DA,
+ 0xA7DB0000A7DC,
0xA7F60000A7F8,
0xA7FA0000A828,
0xA82C0000A82D,
@@ -4000,6 +4042,7 @@ codepoint_classes = {
0x105A3000105B2,
0x105B3000105BA,
0x105BB000105BD,
+ 0x105C0000105F4,
0x1060000010737,
0x1074000010756,
0x1076000010768,
@@ -4037,10 +4080,14 @@ codepoint_classes = {
0x10CC000010CF3,
0x10D0000010D28,
0x10D3000010D3A,
+ 0x10D4000010D50,
+ 0x10D6900010D6E,
+ 0x10D6F00010D86,
0x10E8000010EAA,
0x10EAB00010EAD,
0x10EB000010EB2,
- 0x10EFD00010F1D,
+ 0x10EC200010EC5,
+ 0x10EFC00010F1D,
0x10F2700010F28,
0x10F3000010F51,
0x10F7000010F86,
@@ -4086,6 +4133,16 @@ codepoint_classes = {
0x1135D00011364,
0x113660001136D,
0x1137000011375,
+ 0x113800001138A,
+ 0x1138B0001138C,
+ 0x1138E0001138F,
+ 0x11390000113B6,
+ 0x113B7000113C1,
+ 0x113C2000113C3,
+ 0x113C5000113C6,
+ 0x113C7000113CB,
+ 0x113CC000113D4,
+ 0x113E1000113E3,
0x114000001144B,
0x114500001145A,
0x1145E00011462,
@@ -4100,6 +4157,7 @@ codepoint_classes = {
0x116500001165A,
0x11680000116B9,
0x116C0000116CA,
+ 0x116D0000116E4,
0x117000001171B,
0x1171D0001172C,
0x117300001173A,
@@ -4123,6 +4181,8 @@ codepoint_classes = {
0x11A5000011A9A,
0x11A9D00011A9E,
0x11AB000011AF9,
+ 0x11BC000011BE1,
+ 0x11BF000011BFA,
0x11C0000011C09,
0x11C0A00011C37,
0x11C3800011C41,
@@ -4147,14 +4207,16 @@ codepoint_classes = {
0x11F0000011F11,
0x11F1200011F3B,
0x11F3E00011F43,
- 0x11F5000011F5A,
+ 0x11F5000011F5B,
0x11FB000011FB1,
0x120000001239A,
0x1248000012544,
0x12F9000012FF1,
0x1300000013430,
0x1344000013456,
+ 0x13460000143FB,
0x1440000014647,
+ 0x161000001613A,
0x1680000016A39,
0x16A4000016A5F,
0x16A6000016A6A,
@@ -4167,6 +4229,8 @@ codepoint_classes = {
0x16B5000016B5A,
0x16B6300016B78,
0x16B7D00016B90,
+ 0x16D4000016D6D,
+ 0x16D7000016D7A,
0x16E6000016E80,
0x16F0000016F4B,
0x16F4F00016F88,
@@ -4176,7 +4240,7 @@ codepoint_classes = {
0x16FF000016FF2,
0x17000000187F8,
0x1880000018CD6,
- 0x18D0000018D09,
+ 0x18CFF00018D09,
0x1AFF00001AFF4,
0x1AFF50001AFFC,
0x1AFFD0001AFFF,
@@ -4191,6 +4255,7 @@ codepoint_classes = {
0x1BC800001BC89,
0x1BC900001BC9A,
0x1BC9D0001BC9F,
+ 0x1CCF00001CCFA,
0x1CF000001CF2E,
0x1CF300001CF47,
0x1DA000001DA37,
@@ -4214,6 +4279,7 @@ codepoint_classes = {
0x1E2900001E2AF,
0x1E2C00001E2FA,
0x1E4D00001E4FA,
+ 0x1E5D00001E5FB,
0x1E7E00001E7E7,
0x1E7E80001E7EC,
0x1E7ED0001E7EF,
diff --git a/contrib/python/idna/py3/idna/package_data.py b/contrib/python/idna/py3/idna/package_data.py
index 514ff7e2e68..7272c8d9236 100644
--- a/contrib/python/idna/py3/idna/package_data.py
+++ b/contrib/python/idna/py3/idna/package_data.py
@@ -1 +1 @@
-__version__ = "3.10"
+__version__ = "3.11"
diff --git a/contrib/python/idna/py3/idna/uts46data.py b/contrib/python/idna/py3/idna/uts46data.py
index eb894327410..4610b71dad9 100644
--- a/contrib/python/idna/py3/idna/uts46data.py
+++ b/contrib/python/idna/py3/idna/uts46data.py
@@ -6,59 +6,59 @@ from typing import List, Tuple, Union
"""IDNA Mapping Table from UTS46."""
-__version__ = "15.1.0"
+__version__ = "16.0.0"
def _seg_0() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
return [
- (0x0, "3"),
- (0x1, "3"),
- (0x2, "3"),
- (0x3, "3"),
- (0x4, "3"),
- (0x5, "3"),
- (0x6, "3"),
- (0x7, "3"),
- (0x8, "3"),
- (0x9, "3"),
- (0xA, "3"),
- (0xB, "3"),
- (0xC, "3"),
- (0xD, "3"),
- (0xE, "3"),
- (0xF, "3"),
- (0x10, "3"),
- (0x11, "3"),
- (0x12, "3"),
- (0x13, "3"),
- (0x14, "3"),
- (0x15, "3"),
- (0x16, "3"),
- (0x17, "3"),
- (0x18, "3"),
- (0x19, "3"),
- (0x1A, "3"),
- (0x1B, "3"),
- (0x1C, "3"),
- (0x1D, "3"),
- (0x1E, "3"),
- (0x1F, "3"),
- (0x20, "3"),
- (0x21, "3"),
- (0x22, "3"),
- (0x23, "3"),
- (0x24, "3"),
- (0x25, "3"),
- (0x26, "3"),
- (0x27, "3"),
- (0x28, "3"),
- (0x29, "3"),
- (0x2A, "3"),
- (0x2B, "3"),
- (0x2C, "3"),
+ (0x0, "V"),
+ (0x1, "V"),
+ (0x2, "V"),
+ (0x3, "V"),
+ (0x4, "V"),
+ (0x5, "V"),
+ (0x6, "V"),
+ (0x7, "V"),
+ (0x8, "V"),
+ (0x9, "V"),
+ (0xA, "V"),
+ (0xB, "V"),
+ (0xC, "V"),
+ (0xD, "V"),
+ (0xE, "V"),
+ (0xF, "V"),
+ (0x10, "V"),
+ (0x11, "V"),
+ (0x12, "V"),
+ (0x13, "V"),
+ (0x14, "V"),
+ (0x15, "V"),
+ (0x16, "V"),
+ (0x17, "V"),
+ (0x18, "V"),
+ (0x19, "V"),
+ (0x1A, "V"),
+ (0x1B, "V"),
+ (0x1C, "V"),
+ (0x1D, "V"),
+ (0x1E, "V"),
+ (0x1F, "V"),
+ (0x20, "V"),
+ (0x21, "V"),
+ (0x22, "V"),
+ (0x23, "V"),
+ (0x24, "V"),
+ (0x25, "V"),
+ (0x26, "V"),
+ (0x27, "V"),
+ (0x28, "V"),
+ (0x29, "V"),
+ (0x2A, "V"),
+ (0x2B, "V"),
+ (0x2C, "V"),
(0x2D, "V"),
(0x2E, "V"),
- (0x2F, "3"),
+ (0x2F, "V"),
(0x30, "V"),
(0x31, "V"),
(0x32, "V"),
@@ -69,13 +69,13 @@ def _seg_0() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x37, "V"),
(0x38, "V"),
(0x39, "V"),
- (0x3A, "3"),
- (0x3B, "3"),
- (0x3C, "3"),
- (0x3D, "3"),
- (0x3E, "3"),
- (0x3F, "3"),
- (0x40, "3"),
+ (0x3A, "V"),
+ (0x3B, "V"),
+ (0x3C, "V"),
+ (0x3D, "V"),
+ (0x3E, "V"),
+ (0x3F, "V"),
+ (0x40, "V"),
(0x41, "M", "a"),
(0x42, "M", "b"),
(0x43, "M", "c"),
@@ -102,12 +102,12 @@ def _seg_0() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x58, "M", "x"),
(0x59, "M", "y"),
(0x5A, "M", "z"),
- (0x5B, "3"),
- (0x5C, "3"),
- (0x5D, "3"),
- (0x5E, "3"),
- (0x5F, "3"),
- (0x60, "3"),
+ (0x5B, "V"),
+ (0x5C, "V"),
+ (0x5D, "V"),
+ (0x5E, "V"),
+ (0x5F, "V"),
+ (0x60, "V"),
(0x61, "V"),
(0x62, "V"),
(0x63, "V"),
@@ -139,11 +139,11 @@ def _seg_1() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x78, "V"),
(0x79, "V"),
(0x7A, "V"),
- (0x7B, "3"),
- (0x7C, "3"),
- (0x7D, "3"),
- (0x7E, "3"),
- (0x7F, "3"),
+ (0x7B, "V"),
+ (0x7C, "V"),
+ (0x7D, "V"),
+ (0x7E, "V"),
+ (0x7F, "V"),
(0x80, "X"),
(0x81, "X"),
(0x82, "X"),
@@ -176,7 +176,7 @@ def _seg_1() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x9D, "X"),
(0x9E, "X"),
(0x9F, "X"),
- (0xA0, "3", " "),
+ (0xA0, "M", " "),
(0xA1, "V"),
(0xA2, "V"),
(0xA3, "V"),
@@ -184,23 +184,23 @@ def _seg_1() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xA5, "V"),
(0xA6, "V"),
(0xA7, "V"),
- (0xA8, "3", " ̈"),
+ (0xA8, "M", " ̈"),
(0xA9, "V"),
(0xAA, "M", "a"),
(0xAB, "V"),
(0xAC, "V"),
(0xAD, "I"),
(0xAE, "V"),
- (0xAF, "3", " ̄"),
+ (0xAF, "M", " ̄"),
(0xB0, "V"),
(0xB1, "V"),
(0xB2, "M", "2"),
(0xB3, "M", "3"),
- (0xB4, "3", " ́"),
+ (0xB4, "M", " ́"),
(0xB5, "M", "μ"),
(0xB6, "V"),
(0xB7, "V"),
- (0xB8, "3", " ̧"),
+ (0xB8, "M", " ̧"),
(0xB9, "M", "1"),
(0xBA, "M", "o"),
(0xBB, "V"),
@@ -606,12 +606,12 @@ def _seg_5() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2B7, "M", "w"),
(0x2B8, "M", "y"),
(0x2B9, "V"),
- (0x2D8, "3", " ̆"),
- (0x2D9, "3", " ̇"),
- (0x2DA, "3", " ̊"),
- (0x2DB, "3", " ̨"),
- (0x2DC, "3", " ̃"),
- (0x2DD, "3", " ̋"),
+ (0x2D8, "M", " ̆"),
+ (0x2D9, "M", " ̇"),
+ (0x2DA, "M", " ̊"),
+ (0x2DB, "M", " ̨"),
+ (0x2DC, "M", " ̃"),
+ (0x2DD, "M", " ̋"),
(0x2DE, "V"),
(0x2E0, "M", "ɣ"),
(0x2E1, "M", "l"),
@@ -642,13 +642,13 @@ def _seg_5() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
def _seg_6() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
return [
(0x378, "X"),
- (0x37A, "3", " ι"),
+ (0x37A, "M", " ι"),
(0x37B, "V"),
- (0x37E, "3", ";"),
+ (0x37E, "M", ";"),
(0x37F, "M", "ϳ"),
(0x380, "X"),
- (0x384, "3", " ́"),
- (0x385, "3", " ̈́"),
+ (0x384, "M", " ́"),
+ (0x385, "M", " ̈́"),
(0x386, "M", "ά"),
(0x387, "M", "·"),
(0x388, "M", "έ"),
@@ -885,7 +885,7 @@ def _seg_8() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x4BD, "V"),
(0x4BE, "M", "ҿ"),
(0x4BF, "V"),
- (0x4C0, "X"),
+ (0x4C0, "M", "ӏ"),
(0x4C1, "M", "ӂ"),
(0x4C2, "V"),
(0x4C3, "M", "ӄ"),
@@ -1087,7 +1087,7 @@ def _seg_10() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x86B, "X"),
(0x870, "V"),
(0x88F, "X"),
- (0x898, "V"),
+ (0x897, "V"),
(0x8E2, "X"),
(0x8E3, "V"),
(0x958, "M", "क़"),
@@ -1438,7 +1438,50 @@ def _seg_13() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFCE, "V"),
(0xFDB, "X"),
(0x1000, "V"),
- (0x10A0, "X"),
+ (0x10A0, "M", "ⴀ"),
+ (0x10A1, "M", "ⴁ"),
+ (0x10A2, "M", "ⴂ"),
+ (0x10A3, "M", "ⴃ"),
+ (0x10A4, "M", "ⴄ"),
+ (0x10A5, "M", "ⴅ"),
+ (0x10A6, "M", "ⴆ"),
+ (0x10A7, "M", "ⴇ"),
+ (0x10A8, "M", "ⴈ"),
+ (0x10A9, "M", "ⴉ"),
+ (0x10AA, "M", "ⴊ"),
+ (0x10AB, "M", "ⴋ"),
+ (0x10AC, "M", "ⴌ"),
+ (0x10AD, "M", "ⴍ"),
+ (0x10AE, "M", "ⴎ"),
+ (0x10AF, "M", "ⴏ"),
+ (0x10B0, "M", "ⴐ"),
+ (0x10B1, "M", "ⴑ"),
+ (0x10B2, "M", "ⴒ"),
+ (0x10B3, "M", "ⴓ"),
+ (0x10B4, "M", "ⴔ"),
+ (0x10B5, "M", "ⴕ"),
+ (0x10B6, "M", "ⴖ"),
+ (0x10B7, "M", "ⴗ"),
+ (0x10B8, "M", "ⴘ"),
+ (0x10B9, "M", "ⴙ"),
+ (0x10BA, "M", "ⴚ"),
+ (0x10BB, "M", "ⴛ"),
+ (0x10BC, "M", "ⴜ"),
+ (0x10BD, "M", "ⴝ"),
+ (0x10BE, "M", "ⴞ"),
+ (0x10BF, "M", "ⴟ"),
+ (0x10C0, "M", "ⴠ"),
+ (0x10C1, "M", "ⴡ"),
+ (0x10C2, "M", "ⴢ"),
+ (0x10C3, "M", "ⴣ"),
+ (0x10C4, "M", "ⴤ"),
+ (0x10C5, "M", "ⴥ"),
+ ]
+
+
+def _seg_14() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
+ (0x10C6, "X"),
(0x10C7, "M", "ⴧ"),
(0x10C8, "X"),
(0x10CD, "M", "ⴭ"),
@@ -1446,7 +1489,7 @@ def _seg_13() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x10D0, "V"),
(0x10FC, "M", "ნ"),
(0x10FD, "V"),
- (0x115F, "X"),
+ (0x115F, "I"),
(0x1161, "V"),
(0x1249, "X"),
(0x124A, "V"),
@@ -1476,11 +1519,6 @@ def _seg_13() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x12D8, "V"),
(0x1311, "X"),
(0x1312, "V"),
- ]
-
-
-def _seg_14() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1316, "X"),
(0x1318, "V"),
(0x135B, "X"),
@@ -1516,7 +1554,7 @@ def _seg_14() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1772, "V"),
(0x1774, "X"),
(0x1780, "V"),
- (0x17B4, "X"),
+ (0x17B4, "I"),
(0x17B6, "V"),
(0x17DE, "X"),
(0x17E0, "V"),
@@ -1524,11 +1562,7 @@ def _seg_14() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x17F0, "V"),
(0x17FA, "X"),
(0x1800, "V"),
- (0x1806, "X"),
- (0x1807, "V"),
(0x180B, "I"),
- (0x180E, "X"),
- (0x180F, "I"),
(0x1810, "V"),
(0x181A, "X"),
(0x1820, "V"),
@@ -1547,6 +1581,11 @@ def _seg_14() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1941, "X"),
(0x1944, "V"),
(0x196E, "X"),
+ ]
+
+
+def _seg_15() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1970, "V"),
(0x1975, "X"),
(0x1980, "V"),
@@ -1571,9 +1610,7 @@ def _seg_14() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1ACF, "X"),
(0x1B00, "V"),
(0x1B4D, "X"),
- (0x1B50, "V"),
- (0x1B7F, "X"),
- (0x1B80, "V"),
+ (0x1B4E, "V"),
(0x1BF4, "X"),
(0x1BFC, "V"),
(0x1C38, "X"),
@@ -1581,11 +1618,6 @@ def _seg_14() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1C4A, "X"),
(0x1C4D, "V"),
(0x1C80, "M", "в"),
- ]
-
-
-def _seg_15() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1C81, "M", "д"),
(0x1C82, "M", "о"),
(0x1C83, "M", "с"),
@@ -1593,7 +1625,9 @@ def _seg_15() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1C86, "M", "ъ"),
(0x1C87, "M", "ѣ"),
(0x1C88, "M", "ꙋ"),
- (0x1C89, "X"),
+ (0x1C89, "M", "ᲊ"),
+ (0x1C8A, "V"),
+ (0x1C8B, "X"),
(0x1C90, "M", "ა"),
(0x1C91, "M", "ბ"),
(0x1C92, "M", "გ"),
@@ -1652,6 +1686,11 @@ def _seg_15() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D2F, "V"),
(0x1D30, "M", "d"),
(0x1D31, "M", "e"),
+ ]
+
+
+def _seg_16() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D32, "M", "ǝ"),
(0x1D33, "M", "g"),
(0x1D34, "M", "h"),
@@ -1686,11 +1725,6 @@ def _seg_15() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D51, "M", "ŋ"),
(0x1D52, "M", "o"),
(0x1D53, "M", "ɔ"),
- ]
-
-
-def _seg_16() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D54, "M", "ᴖ"),
(0x1D55, "M", "ᴗ"),
(0x1D56, "M", "p"),
@@ -1757,6 +1791,11 @@ def _seg_16() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1DC0, "V"),
(0x1E00, "M", "ḁ"),
(0x1E01, "V"),
+ ]
+
+
+def _seg_17() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1E02, "M", "ḃ"),
(0x1E03, "V"),
(0x1E04, "M", "ḅ"),
@@ -1791,11 +1830,6 @@ def _seg_16() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1E21, "V"),
(0x1E22, "M", "ḣ"),
(0x1E23, "V"),
- ]
-
-
-def _seg_17() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1E24, "M", "ḥ"),
(0x1E25, "V"),
(0x1E26, "M", "ḧ"),
@@ -1862,6 +1896,11 @@ def _seg_17() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1E63, "V"),
(0x1E64, "M", "ṥ"),
(0x1E65, "V"),
+ ]
+
+
+def _seg_18() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1E66, "M", "ṧ"),
(0x1E67, "V"),
(0x1E68, "M", "ṩ"),
@@ -1896,11 +1935,6 @@ def _seg_17() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1E85, "V"),
(0x1E86, "M", "ẇ"),
(0x1E87, "V"),
- ]
-
-
-def _seg_18() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1E88, "M", "ẉ"),
(0x1E89, "V"),
(0x1E8A, "M", "ẋ"),
@@ -1967,6 +2001,11 @@ def _seg_18() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1ECC, "M", "ọ"),
(0x1ECD, "V"),
(0x1ECE, "M", "ỏ"),
+ ]
+
+
+def _seg_19() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1ECF, "V"),
(0x1ED0, "M", "ố"),
(0x1ED1, "V"),
@@ -2001,11 +2040,6 @@ def _seg_18() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1EEE, "M", "ữ"),
(0x1EEF, "V"),
(0x1EF0, "M", "ự"),
- ]
-
-
-def _seg_19() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1EF1, "V"),
(0x1EF2, "M", "ỳ"),
(0x1EF3, "V"),
@@ -2072,6 +2106,11 @@ def _seg_19() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1F5B, "M", "ὓ"),
(0x1F5C, "X"),
(0x1F5D, "M", "ὕ"),
+ ]
+
+
+def _seg_20() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1F5E, "X"),
(0x1F5F, "M", "ὗ"),
(0x1F60, "V"),
@@ -2106,11 +2145,6 @@ def _seg_19() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1F85, "M", "ἅι"),
(0x1F86, "M", "ἆι"),
(0x1F87, "M", "ἇι"),
- ]
-
-
-def _seg_20() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1F88, "M", "ἀι"),
(0x1F89, "M", "ἁι"),
(0x1F8A, "M", "ἂι"),
@@ -2163,11 +2197,11 @@ def _seg_20() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1FBA, "M", "ὰ"),
(0x1FBB, "M", "ά"),
(0x1FBC, "M", "αι"),
- (0x1FBD, "3", " ̓"),
+ (0x1FBD, "M", " ̓"),
(0x1FBE, "M", "ι"),
- (0x1FBF, "3", " ̓"),
- (0x1FC0, "3", " ͂"),
- (0x1FC1, "3", " ̈͂"),
+ (0x1FBF, "M", " ̓"),
+ (0x1FC0, "M", " ͂"),
+ (0x1FC1, "M", " ̈͂"),
(0x1FC2, "M", "ὴι"),
(0x1FC3, "M", "ηι"),
(0x1FC4, "M", "ήι"),
@@ -2177,11 +2211,16 @@ def _seg_20() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1FC8, "M", "ὲ"),
(0x1FC9, "M", "έ"),
(0x1FCA, "M", "ὴ"),
+ ]
+
+
+def _seg_21() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1FCB, "M", "ή"),
(0x1FCC, "M", "ηι"),
- (0x1FCD, "3", " ̓̀"),
- (0x1FCE, "3", " ̓́"),
- (0x1FCF, "3", " ̓͂"),
+ (0x1FCD, "M", " ̓̀"),
+ (0x1FCE, "M", " ̓́"),
+ (0x1FCF, "M", " ̓͂"),
(0x1FD0, "V"),
(0x1FD3, "M", "ΐ"),
(0x1FD4, "X"),
@@ -2191,9 +2230,9 @@ def _seg_20() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1FDA, "M", "ὶ"),
(0x1FDB, "M", "ί"),
(0x1FDC, "X"),
- (0x1FDD, "3", " ̔̀"),
- (0x1FDE, "3", " ̔́"),
- (0x1FDF, "3", " ̔͂"),
+ (0x1FDD, "M", " ̔̀"),
+ (0x1FDE, "M", " ̔́"),
+ (0x1FDF, "M", " ̔͂"),
(0x1FE0, "V"),
(0x1FE3, "M", "ΰ"),
(0x1FE4, "V"),
@@ -2202,42 +2241,37 @@ def _seg_20() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1FEA, "M", "ὺ"),
(0x1FEB, "M", "ύ"),
(0x1FEC, "M", "ῥ"),
- (0x1FED, "3", " ̈̀"),
- (0x1FEE, "3", " ̈́"),
- (0x1FEF, "3", "`"),
+ (0x1FED, "M", " ̈̀"),
+ (0x1FEE, "M", " ̈́"),
+ (0x1FEF, "M", "`"),
(0x1FF0, "X"),
(0x1FF2, "M", "ὼι"),
(0x1FF3, "M", "ωι"),
(0x1FF4, "M", "ώι"),
(0x1FF5, "X"),
(0x1FF6, "V"),
- ]
-
-
-def _seg_21() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1FF7, "M", "ῶι"),
(0x1FF8, "M", "ὸ"),
(0x1FF9, "M", "ό"),
(0x1FFA, "M", "ὼ"),
(0x1FFB, "M", "ώ"),
(0x1FFC, "M", "ωι"),
- (0x1FFD, "3", " ́"),
- (0x1FFE, "3", " ̔"),
+ (0x1FFD, "M", " ́"),
+ (0x1FFE, "M", " ̔"),
(0x1FFF, "X"),
- (0x2000, "3", " "),
+ (0x2000, "M", " "),
(0x200B, "I"),
(0x200C, "D", ""),
(0x200E, "X"),
(0x2010, "V"),
(0x2011, "M", "‐"),
(0x2012, "V"),
- (0x2017, "3", " ̳"),
+ (0x2017, "M", " ̳"),
(0x2018, "V"),
(0x2024, "X"),
(0x2027, "V"),
(0x2028, "X"),
- (0x202F, "3", " "),
+ (0x202F, "M", " "),
(0x2030, "V"),
(0x2033, "M", "′′"),
(0x2034, "M", "′′′"),
@@ -2245,21 +2279,20 @@ def _seg_21() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2036, "M", "‵‵"),
(0x2037, "M", "‵‵‵"),
(0x2038, "V"),
- (0x203C, "3", "!!"),
+ (0x203C, "M", "!!"),
(0x203D, "V"),
- (0x203E, "3", " ̅"),
+ (0x203E, "M", " ̅"),
(0x203F, "V"),
- (0x2047, "3", "??"),
- (0x2048, "3", "?!"),
- (0x2049, "3", "!?"),
+ (0x2047, "M", "??"),
+ (0x2048, "M", "?!"),
+ (0x2049, "M", "!?"),
(0x204A, "V"),
(0x2057, "M", "′′′′"),
(0x2058, "V"),
- (0x205F, "3", " "),
+ (0x205F, "M", " "),
(0x2060, "I"),
- (0x2061, "X"),
- (0x2064, "I"),
(0x2065, "X"),
+ (0x206A, "I"),
(0x2070, "M", "0"),
(0x2071, "M", "i"),
(0x2072, "X"),
@@ -2269,11 +2302,11 @@ def _seg_21() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2077, "M", "7"),
(0x2078, "M", "8"),
(0x2079, "M", "9"),
- (0x207A, "3", "+"),
+ (0x207A, "M", "+"),
(0x207B, "M", "−"),
- (0x207C, "3", "="),
- (0x207D, "3", "("),
- (0x207E, "3", ")"),
+ (0x207C, "M", "="),
+ (0x207D, "M", "("),
+ (0x207E, "M", ")"),
(0x207F, "M", "n"),
(0x2080, "M", "0"),
(0x2081, "M", "1"),
@@ -2283,13 +2316,18 @@ def _seg_21() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2085, "M", "5"),
(0x2086, "M", "6"),
(0x2087, "M", "7"),
+ ]
+
+
+def _seg_22() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2088, "M", "8"),
(0x2089, "M", "9"),
- (0x208A, "3", "+"),
+ (0x208A, "M", "+"),
(0x208B, "M", "−"),
- (0x208C, "3", "="),
- (0x208D, "3", "("),
- (0x208E, "3", ")"),
+ (0x208C, "M", "="),
+ (0x208D, "M", "("),
+ (0x208E, "M", ")"),
(0x208F, "X"),
(0x2090, "M", "a"),
(0x2091, "M", "e"),
@@ -2311,18 +2349,13 @@ def _seg_21() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x20C1, "X"),
(0x20D0, "V"),
(0x20F1, "X"),
- (0x2100, "3", "a/c"),
- (0x2101, "3", "a/s"),
+ (0x2100, "M", "a/c"),
+ (0x2101, "M", "a/s"),
(0x2102, "M", "c"),
(0x2103, "M", "°c"),
(0x2104, "V"),
- ]
-
-
-def _seg_22() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
- (0x2105, "3", "c/o"),
- (0x2106, "3", "c/u"),
+ (0x2105, "M", "c/o"),
+ (0x2106, "M", "c/u"),
(0x2107, "M", "ɛ"),
(0x2108, "V"),
(0x2109, "M", "°f"),
@@ -2356,7 +2389,7 @@ def _seg_22() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x212E, "V"),
(0x212F, "M", "e"),
(0x2131, "M", "f"),
- (0x2132, "X"),
+ (0x2132, "M", "ⅎ"),
(0x2133, "M", "m"),
(0x2134, "M", "o"),
(0x2135, "M", "א"),
@@ -2388,6 +2421,11 @@ def _seg_22() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2159, "M", "1⁄6"),
(0x215A, "M", "5⁄6"),
(0x215B, "M", "1⁄8"),
+ ]
+
+
+def _seg_23() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x215C, "M", "3⁄8"),
(0x215D, "M", "5⁄8"),
(0x215E, "M", "7⁄8"),
@@ -2421,16 +2459,11 @@ def _seg_22() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x217A, "M", "xi"),
(0x217B, "M", "xii"),
(0x217C, "M", "l"),
- ]
-
-
-def _seg_23() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x217D, "M", "c"),
(0x217E, "M", "d"),
(0x217F, "M", "m"),
(0x2180, "V"),
- (0x2183, "X"),
+ (0x2183, "M", "ↄ"),
(0x2184, "V"),
(0x2189, "M", "0⁄3"),
(0x218A, "V"),
@@ -2445,7 +2478,7 @@ def _seg_23() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2329, "M", "〈"),
(0x232A, "M", "〉"),
(0x232B, "V"),
- (0x2427, "X"),
+ (0x242A, "X"),
(0x2440, "V"),
(0x244B, "X"),
(0x2460, "M", "1"),
@@ -2468,53 +2501,58 @@ def _seg_23() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2471, "M", "18"),
(0x2472, "M", "19"),
(0x2473, "M", "20"),
- (0x2474, "3", "(1)"),
- (0x2475, "3", "(2)"),
- (0x2476, "3", "(3)"),
- (0x2477, "3", "(4)"),
- (0x2478, "3", "(5)"),
- (0x2479, "3", "(6)"),
- (0x247A, "3", "(7)"),
- (0x247B, "3", "(8)"),
- (0x247C, "3", "(9)"),
- (0x247D, "3", "(10)"),
- (0x247E, "3", "(11)"),
- (0x247F, "3", "(12)"),
- (0x2480, "3", "(13)"),
- (0x2481, "3", "(14)"),
- (0x2482, "3", "(15)"),
- (0x2483, "3", "(16)"),
- (0x2484, "3", "(17)"),
- (0x2485, "3", "(18)"),
- (0x2486, "3", "(19)"),
- (0x2487, "3", "(20)"),
+ (0x2474, "M", "(1)"),
+ (0x2475, "M", "(2)"),
+ (0x2476, "M", "(3)"),
+ (0x2477, "M", "(4)"),
+ (0x2478, "M", "(5)"),
+ (0x2479, "M", "(6)"),
+ (0x247A, "M", "(7)"),
+ (0x247B, "M", "(8)"),
+ (0x247C, "M", "(9)"),
+ (0x247D, "M", "(10)"),
+ (0x247E, "M", "(11)"),
+ (0x247F, "M", "(12)"),
+ (0x2480, "M", "(13)"),
+ (0x2481, "M", "(14)"),
+ (0x2482, "M", "(15)"),
+ (0x2483, "M", "(16)"),
+ (0x2484, "M", "(17)"),
+ (0x2485, "M", "(18)"),
+ (0x2486, "M", "(19)"),
+ (0x2487, "M", "(20)"),
(0x2488, "X"),
- (0x249C, "3", "(a)"),
- (0x249D, "3", "(b)"),
- (0x249E, "3", "(c)"),
- (0x249F, "3", "(d)"),
- (0x24A0, "3", "(e)"),
- (0x24A1, "3", "(f)"),
- (0x24A2, "3", "(g)"),
- (0x24A3, "3", "(h)"),
- (0x24A4, "3", "(i)"),
- (0x24A5, "3", "(j)"),
- (0x24A6, "3", "(k)"),
- (0x24A7, "3", "(l)"),
- (0x24A8, "3", "(m)"),
- (0x24A9, "3", "(n)"),
- (0x24AA, "3", "(o)"),
- (0x24AB, "3", "(p)"),
- (0x24AC, "3", "(q)"),
- (0x24AD, "3", "(r)"),
- (0x24AE, "3", "(s)"),
- (0x24AF, "3", "(t)"),
- (0x24B0, "3", "(u)"),
- (0x24B1, "3", "(v)"),
- (0x24B2, "3", "(w)"),
- (0x24B3, "3", "(x)"),
- (0x24B4, "3", "(y)"),
- (0x24B5, "3", "(z)"),
+ (0x249C, "M", "(a)"),
+ (0x249D, "M", "(b)"),
+ (0x249E, "M", "(c)"),
+ (0x249F, "M", "(d)"),
+ ]
+
+
+def _seg_24() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
+ (0x24A0, "M", "(e)"),
+ (0x24A1, "M", "(f)"),
+ (0x24A2, "M", "(g)"),
+ (0x24A3, "M", "(h)"),
+ (0x24A4, "M", "(i)"),
+ (0x24A5, "M", "(j)"),
+ (0x24A6, "M", "(k)"),
+ (0x24A7, "M", "(l)"),
+ (0x24A8, "M", "(m)"),
+ (0x24A9, "M", "(n)"),
+ (0x24AA, "M", "(o)"),
+ (0x24AB, "M", "(p)"),
+ (0x24AC, "M", "(q)"),
+ (0x24AD, "M", "(r)"),
+ (0x24AE, "M", "(s)"),
+ (0x24AF, "M", "(t)"),
+ (0x24B0, "M", "(u)"),
+ (0x24B1, "M", "(v)"),
+ (0x24B2, "M", "(w)"),
+ (0x24B3, "M", "(x)"),
+ (0x24B4, "M", "(y)"),
+ (0x24B5, "M", "(z)"),
(0x24B6, "M", "a"),
(0x24B7, "M", "b"),
(0x24B8, "M", "c"),
@@ -2526,11 +2564,6 @@ def _seg_23() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x24BE, "M", "i"),
(0x24BF, "M", "j"),
(0x24C0, "M", "k"),
- ]
-
-
-def _seg_24() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x24C1, "M", "l"),
(0x24C2, "M", "m"),
(0x24C3, "M", "n"),
@@ -2576,9 +2609,9 @@ def _seg_24() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x24EB, "V"),
(0x2A0C, "M", "∫∫∫∫"),
(0x2A0D, "V"),
- (0x2A74, "3", "::="),
- (0x2A75, "3", "=="),
- (0x2A76, "3", "==="),
+ (0x2A74, "M", "::="),
+ (0x2A75, "M", "=="),
+ (0x2A76, "M", "==="),
(0x2A77, "V"),
(0x2ADC, "M", "⫝̸"),
(0x2ADD, "V"),
@@ -2598,6 +2631,11 @@ def _seg_24() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2C09, "M", "ⰹ"),
(0x2C0A, "M", "ⰺ"),
(0x2C0B, "M", "ⰻ"),
+ ]
+
+
+def _seg_25() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2C0C, "M", "ⰼ"),
(0x2C0D, "M", "ⰽ"),
(0x2C0E, "M", "ⰾ"),
@@ -2631,11 +2669,6 @@ def _seg_24() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2C2A, "M", "ⱚ"),
(0x2C2B, "M", "ⱛ"),
(0x2C2C, "M", "ⱜ"),
- ]
-
-
-def _seg_25() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x2C2D, "M", "ⱝ"),
(0x2C2E, "M", "ⱞ"),
(0x2C2F, "M", "ⱟ"),
@@ -2703,6 +2736,11 @@ def _seg_25() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2CA3, "V"),
(0x2CA4, "M", "ⲥ"),
(0x2CA5, "V"),
+ ]
+
+
+def _seg_26() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2CA6, "M", "ⲧ"),
(0x2CA7, "V"),
(0x2CA8, "M", "ⲩ"),
@@ -2736,11 +2774,6 @@ def _seg_25() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2CC4, "M", "ⳅ"),
(0x2CC5, "V"),
(0x2CC6, "M", "ⳇ"),
- ]
-
-
-def _seg_26() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x2CC7, "V"),
(0x2CC8, "M", "ⳉ"),
(0x2CC9, "V"),
@@ -2808,6 +2841,11 @@ def _seg_26() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2DDF, "X"),
(0x2DE0, "V"),
(0x2E5E, "X"),
+ ]
+
+
+def _seg_27() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2E80, "V"),
(0x2E9A, "X"),
(0x2E9B, "V"),
@@ -2841,11 +2879,6 @@ def _seg_26() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F17, "M", "十"),
(0x2F18, "M", "卜"),
(0x2F19, "M", "卩"),
- ]
-
-
-def _seg_27() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x2F1A, "M", "厂"),
(0x2F1B, "M", "厶"),
(0x2F1C, "M", "又"),
@@ -2913,6 +2946,11 @@ def _seg_27() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F5A, "M", "片"),
(0x2F5B, "M", "牙"),
(0x2F5C, "M", "牛"),
+ ]
+
+
+def _seg_28() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2F5D, "M", "犬"),
(0x2F5E, "M", "玄"),
(0x2F5F, "M", "玉"),
@@ -2946,11 +2984,6 @@ def _seg_27() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F7B, "M", "羽"),
(0x2F7C, "M", "老"),
(0x2F7D, "M", "而"),
- ]
-
-
-def _seg_28() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x2F7E, "M", "耒"),
(0x2F7F, "M", "耳"),
(0x2F80, "M", "聿"),
@@ -3018,6 +3051,11 @@ def _seg_28() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2FBE, "M", "鬥"),
(0x2FBF, "M", "鬯"),
(0x2FC0, "M", "鬲"),
+ ]
+
+
+def _seg_29() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2FC1, "M", "鬼"),
(0x2FC2, "M", "魚"),
(0x2FC3, "M", "鳥"),
@@ -3040,7 +3078,7 @@ def _seg_28() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2FD4, "M", "龜"),
(0x2FD5, "M", "龠"),
(0x2FD6, "X"),
- (0x3000, "3", " "),
+ (0x3000, "M", " "),
(0x3001, "V"),
(0x3002, "M", "."),
(0x3003, "V"),
@@ -3051,16 +3089,11 @@ def _seg_28() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x303A, "M", "卅"),
(0x303B, "V"),
(0x3040, "X"),
- ]
-
-
-def _seg_29() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x3041, "V"),
(0x3097, "X"),
(0x3099, "V"),
- (0x309B, "3", " ゙"),
- (0x309C, "3", " ゚"),
+ (0x309B, "M", " ゙"),
+ (0x309C, "M", " ゚"),
(0x309D, "V"),
(0x309F, "M", "より"),
(0x30A0, "V"),
@@ -3119,10 +3152,15 @@ def _seg_29() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x3161, "M", "ᅳ"),
(0x3162, "M", "ᅴ"),
(0x3163, "M", "ᅵ"),
- (0x3164, "X"),
+ (0x3164, "I"),
(0x3165, "M", "ᄔ"),
(0x3166, "M", "ᄕ"),
(0x3167, "M", "ᇇ"),
+ ]
+
+
+def _seg_30() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x3168, "M", "ᇈ"),
(0x3169, "M", "ᇌ"),
(0x316A, "M", "ᇎ"),
@@ -3156,11 +3194,6 @@ def _seg_29() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x3186, "M", "ᅙ"),
(0x3187, "M", "ᆄ"),
(0x3188, "M", "ᆅ"),
- ]
-
-
-def _seg_30() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x3189, "M", "ᆈ"),
(0x318A, "M", "ᆑ"),
(0x318B, "M", "ᆒ"),
@@ -3184,76 +3217,81 @@ def _seg_30() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x319E, "M", "地"),
(0x319F, "M", "人"),
(0x31A0, "V"),
- (0x31E4, "X"),
+ (0x31E6, "X"),
(0x31F0, "V"),
- (0x3200, "3", "(ᄀ)"),
- (0x3201, "3", "(ᄂ)"),
- (0x3202, "3", "(ᄃ)"),
- (0x3203, "3", "(ᄅ)"),
- (0x3204, "3", "(ᄆ)"),
- (0x3205, "3", "(ᄇ)"),
- (0x3206, "3", "(ᄉ)"),
- (0x3207, "3", "(ᄋ)"),
- (0x3208, "3", "(ᄌ)"),
- (0x3209, "3", "(ᄎ)"),
- (0x320A, "3", "(ᄏ)"),
- (0x320B, "3", "(ᄐ)"),
- (0x320C, "3", "(ᄑ)"),
- (0x320D, "3", "(ᄒ)"),
- (0x320E, "3", "(가)"),
- (0x320F, "3", "(나)"),
- (0x3210, "3", "(다)"),
- (0x3211, "3", "(라)"),
- (0x3212, "3", "(마)"),
- (0x3213, "3", "(바)"),
- (0x3214, "3", "(사)"),
- (0x3215, "3", "(아)"),
- (0x3216, "3", "(자)"),
- (0x3217, "3", "(차)"),
- (0x3218, "3", "(카)"),
- (0x3219, "3", "(타)"),
- (0x321A, "3", "(파)"),
- (0x321B, "3", "(하)"),
- (0x321C, "3", "(주)"),
- (0x321D, "3", "(오전)"),
- (0x321E, "3", "(오후)"),
+ (0x3200, "M", "(ᄀ)"),
+ (0x3201, "M", "(ᄂ)"),
+ (0x3202, "M", "(ᄃ)"),
+ (0x3203, "M", "(ᄅ)"),
+ (0x3204, "M", "(ᄆ)"),
+ (0x3205, "M", "(ᄇ)"),
+ (0x3206, "M", "(ᄉ)"),
+ (0x3207, "M", "(ᄋ)"),
+ (0x3208, "M", "(ᄌ)"),
+ (0x3209, "M", "(ᄎ)"),
+ (0x320A, "M", "(ᄏ)"),
+ (0x320B, "M", "(ᄐ)"),
+ (0x320C, "M", "(ᄑ)"),
+ (0x320D, "M", "(ᄒ)"),
+ (0x320E, "M", "(가)"),
+ (0x320F, "M", "(나)"),
+ (0x3210, "M", "(다)"),
+ (0x3211, "M", "(라)"),
+ (0x3212, "M", "(마)"),
+ (0x3213, "M", "(바)"),
+ (0x3214, "M", "(사)"),
+ (0x3215, "M", "(아)"),
+ (0x3216, "M", "(자)"),
+ (0x3217, "M", "(차)"),
+ (0x3218, "M", "(카)"),
+ (0x3219, "M", "(타)"),
+ (0x321A, "M", "(파)"),
+ (0x321B, "M", "(하)"),
+ (0x321C, "M", "(주)"),
+ (0x321D, "M", "(오전)"),
+ (0x321E, "M", "(오후)"),
(0x321F, "X"),
- (0x3220, "3", "(一)"),
- (0x3221, "3", "(二)"),
- (0x3222, "3", "(三)"),
- (0x3223, "3", "(四)"),
- (0x3224, "3", "(五)"),
- (0x3225, "3", "(六)"),
- (0x3226, "3", "(七)"),
- (0x3227, "3", "(八)"),
- (0x3228, "3", "(九)"),
- (0x3229, "3", "(十)"),
- (0x322A, "3", "(月)"),
- (0x322B, "3", "(火)"),
- (0x322C, "3", "(水)"),
- (0x322D, "3", "(木)"),
- (0x322E, "3", "(金)"),
- (0x322F, "3", "(土)"),
- (0x3230, "3", "(日)"),
- (0x3231, "3", "(株)"),
- (0x3232, "3", "(有)"),
- (0x3233, "3", "(社)"),
- (0x3234, "3", "(名)"),
- (0x3235, "3", "(特)"),
- (0x3236, "3", "(財)"),
- (0x3237, "3", "(祝)"),
- (0x3238, "3", "(労)"),
- (0x3239, "3", "(代)"),
- (0x323A, "3", "(呼)"),
- (0x323B, "3", "(学)"),
- (0x323C, "3", "(監)"),
- (0x323D, "3", "(企)"),
- (0x323E, "3", "(資)"),
- (0x323F, "3", "(協)"),
- (0x3240, "3", "(祭)"),
- (0x3241, "3", "(休)"),
- (0x3242, "3", "(自)"),
- (0x3243, "3", "(至)"),
+ (0x3220, "M", "(一)"),
+ (0x3221, "M", "(二)"),
+ (0x3222, "M", "(三)"),
+ (0x3223, "M", "(四)"),
+ (0x3224, "M", "(五)"),
+ (0x3225, "M", "(六)"),
+ (0x3226, "M", "(七)"),
+ (0x3227, "M", "(八)"),
+ (0x3228, "M", "(九)"),
+ (0x3229, "M", "(十)"),
+ ]
+
+
+def _seg_31() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
+ (0x322A, "M", "(月)"),
+ (0x322B, "M", "(火)"),
+ (0x322C, "M", "(水)"),
+ (0x322D, "M", "(木)"),
+ (0x322E, "M", "(金)"),
+ (0x322F, "M", "(土)"),
+ (0x3230, "M", "(日)"),
+ (0x3231, "M", "(株)"),
+ (0x3232, "M", "(有)"),
+ (0x3233, "M", "(社)"),
+ (0x3234, "M", "(名)"),
+ (0x3235, "M", "(特)"),
+ (0x3236, "M", "(財)"),
+ (0x3237, "M", "(祝)"),
+ (0x3238, "M", "(労)"),
+ (0x3239, "M", "(代)"),
+ (0x323A, "M", "(呼)"),
+ (0x323B, "M", "(学)"),
+ (0x323C, "M", "(監)"),
+ (0x323D, "M", "(企)"),
+ (0x323E, "M", "(資)"),
+ (0x323F, "M", "(協)"),
+ (0x3240, "M", "(祭)"),
+ (0x3241, "M", "(休)"),
+ (0x3242, "M", "(自)"),
+ (0x3243, "M", "(至)"),
(0x3244, "M", "問"),
(0x3245, "M", "幼"),
(0x3246, "M", "文"),
@@ -3261,11 +3299,6 @@ def _seg_30() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x3248, "V"),
(0x3250, "M", "pte"),
(0x3251, "M", "21"),
- ]
-
-
-def _seg_31() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x3252, "M", "22"),
(0x3253, "M", "23"),
(0x3254, "M", "24"),
@@ -3333,6 +3366,11 @@ def _seg_31() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x3292, "M", "有"),
(0x3293, "M", "社"),
(0x3294, "M", "名"),
+ ]
+
+
+def _seg_32() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x3295, "M", "特"),
(0x3296, "M", "財"),
(0x3297, "M", "祝"),
@@ -3366,11 +3404,6 @@ def _seg_31() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x32B3, "M", "38"),
(0x32B4, "M", "39"),
(0x32B5, "M", "40"),
- ]
-
-
-def _seg_32() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x32B6, "M", "41"),
(0x32B7, "M", "42"),
(0x32B8, "M", "43"),
@@ -3438,6 +3471,11 @@ def _seg_32() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x32F6, "M", "ラ"),
(0x32F7, "M", "リ"),
(0x32F8, "M", "ル"),
+ ]
+
+
+def _seg_33() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x32F9, "M", "レ"),
(0x32FA, "M", "ロ"),
(0x32FB, "M", "ワ"),
@@ -3471,11 +3509,6 @@ def _seg_32() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x3317, "M", "キロワット"),
(0x3318, "M", "グラム"),
(0x3319, "M", "グラムトン"),
- ]
-
-
-def _seg_33() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x331A, "M", "クルゼイロ"),
(0x331B, "M", "クローネ"),
(0x331C, "M", "ケース"),
@@ -3543,6 +3576,11 @@ def _seg_33() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x335A, "M", "2点"),
(0x335B, "M", "3点"),
(0x335C, "M", "4点"),
+ ]
+
+
+def _seg_34() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x335D, "M", "5点"),
(0x335E, "M", "6点"),
(0x335F, "M", "7点"),
@@ -3576,11 +3614,6 @@ def _seg_33() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x337B, "M", "平成"),
(0x337C, "M", "昭和"),
(0x337D, "M", "大正"),
- ]
-
-
-def _seg_34() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x337E, "M", "明治"),
(0x337F, "M", "株式会社"),
(0x3380, "M", "pa"),
@@ -3648,6 +3681,11 @@ def _seg_34() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x33BE, "M", "kw"),
(0x33BF, "M", "mw"),
(0x33C0, "M", "kω"),
+ ]
+
+
+def _seg_35() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x33C1, "M", "mω"),
(0x33C2, "X"),
(0x33C3, "M", "bq"),
@@ -3681,11 +3719,6 @@ def _seg_34() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x33DF, "M", "a∕m"),
(0x33E0, "M", "1日"),
(0x33E1, "M", "2日"),
- ]
-
-
-def _seg_35() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x33E2, "M", "3日"),
(0x33E3, "M", "4日"),
(0x33E4, "M", "5日"),
@@ -3753,6 +3786,11 @@ def _seg_35() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xA65C, "M", "ꙝ"),
(0xA65D, "V"),
(0xA65E, "M", "ꙟ"),
+ ]
+
+
+def _seg_36() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xA65F, "V"),
(0xA660, "M", "ꙡ"),
(0xA661, "V"),
@@ -3786,11 +3824,6 @@ def _seg_35() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xA68F, "V"),
(0xA690, "M", "ꚑ"),
(0xA691, "V"),
- ]
-
-
-def _seg_36() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xA692, "M", "ꚓ"),
(0xA693, "V"),
(0xA694, "M", "ꚕ"),
@@ -3858,6 +3891,11 @@ def _seg_36() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xA755, "V"),
(0xA756, "M", "ꝗ"),
(0xA757, "V"),
+ ]
+
+
+def _seg_37() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xA758, "M", "ꝙ"),
(0xA759, "V"),
(0xA75A, "M", "ꝛ"),
@@ -3891,11 +3929,6 @@ def _seg_36() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xA77D, "M", "ᵹ"),
(0xA77E, "M", "ꝿ"),
(0xA77F, "V"),
- ]
-
-
-def _seg_37() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xA780, "M", "ꞁ"),
(0xA781, "V"),
(0xA782, "M", "ꞃ"),
@@ -3963,9 +3996,17 @@ def _seg_37() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xA7C6, "M", "ᶎ"),
(0xA7C7, "M", "ꟈ"),
(0xA7C8, "V"),
+ ]
+
+
+def _seg_38() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xA7C9, "M", "ꟊ"),
(0xA7CA, "V"),
- (0xA7CB, "X"),
+ (0xA7CB, "M", "ɤ"),
+ (0xA7CC, "M", "ꟍ"),
+ (0xA7CD, "V"),
+ (0xA7CE, "X"),
(0xA7D0, "M", "ꟑ"),
(0xA7D1, "V"),
(0xA7D2, "X"),
@@ -3976,7 +4017,10 @@ def _seg_37() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xA7D7, "V"),
(0xA7D8, "M", "ꟙ"),
(0xA7D9, "V"),
- (0xA7DA, "X"),
+ (0xA7DA, "M", "ꟛ"),
+ (0xA7DB, "V"),
+ (0xA7DC, "M", "ƛ"),
+ (0xA7DD, "X"),
(0xA7F2, "M", "c"),
(0xA7F3, "M", "f"),
(0xA7F4, "M", "q"),
@@ -3996,11 +4040,6 @@ def _seg_37() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xA8DA, "X"),
(0xA8E0, "V"),
(0xA954, "X"),
- ]
-
-
-def _seg_38() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xA95F, "V"),
(0xA97D, "X"),
(0xA980, "V"),
@@ -4062,6 +4101,11 @@ def _seg_38() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xAB85, "M", "Ꮅ"),
(0xAB86, "M", "Ꮆ"),
(0xAB87, "M", "Ꮇ"),
+ ]
+
+
+def _seg_39() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xAB88, "M", "Ꮈ"),
(0xAB89, "M", "Ꮉ"),
(0xAB8A, "M", "Ꮊ"),
@@ -4101,11 +4145,6 @@ def _seg_38() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xABAC, "M", "Ꮬ"),
(0xABAD, "M", "Ꮭ"),
(0xABAE, "M", "Ꮮ"),
- ]
-
-
-def _seg_39() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xABAF, "M", "Ꮯ"),
(0xABB0, "M", "Ꮰ"),
(0xABB1, "M", "Ꮱ"),
@@ -4167,6 +4206,11 @@ def _seg_39() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xF920, "M", "鸞"),
(0xF921, "M", "嵐"),
(0xF922, "M", "濫"),
+ ]
+
+
+def _seg_40() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xF923, "M", "藍"),
(0xF924, "M", "襤"),
(0xF925, "M", "拉"),
@@ -4206,11 +4250,6 @@ def _seg_39() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xF947, "M", "磊"),
(0xF948, "M", "賂"),
(0xF949, "M", "雷"),
- ]
-
-
-def _seg_40() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xF94A, "M", "壘"),
(0xF94B, "M", "屢"),
(0xF94C, "M", "樓"),
@@ -4272,6 +4311,11 @@ def _seg_40() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xF984, "M", "濾"),
(0xF985, "M", "礪"),
(0xF986, "M", "閭"),
+ ]
+
+
+def _seg_41() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xF987, "M", "驪"),
(0xF988, "M", "麗"),
(0xF989, "M", "黎"),
@@ -4311,11 +4355,6 @@ def _seg_40() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xF9AB, "M", "嶺"),
(0xF9AC, "M", "怜"),
(0xF9AD, "M", "玲"),
- ]
-
-
-def _seg_41() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xF9AE, "M", "瑩"),
(0xF9AF, "M", "羚"),
(0xF9B0, "M", "聆"),
@@ -4377,6 +4416,11 @@ def _seg_41() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xF9E8, "M", "裡"),
(0xF9E9, "M", "里"),
(0xF9EA, "M", "離"),
+ ]
+
+
+def _seg_42() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xF9EB, "M", "匿"),
(0xF9EC, "M", "溺"),
(0xF9ED, "M", "吝"),
@@ -4416,11 +4460,6 @@ def _seg_41() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFA10, "M", "塚"),
(0xFA11, "V"),
(0xFA12, "M", "晴"),
- ]
-
-
-def _seg_42() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFA13, "V"),
(0xFA15, "M", "凞"),
(0xFA16, "M", "猪"),
@@ -4482,6 +4521,11 @@ def _seg_42() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFA51, "M", "祝"),
(0xFA52, "M", "禍"),
(0xFA53, "M", "禎"),
+ ]
+
+
+def _seg_43() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xFA54, "M", "穀"),
(0xFA55, "M", "突"),
(0xFA56, "M", "節"),
@@ -4521,11 +4565,6 @@ def _seg_42() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFA7A, "M", "喙"),
(0xFA7B, "M", "嗢"),
(0xFA7C, "M", "塚"),
- ]
-
-
-def _seg_43() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFA7D, "M", "墳"),
(0xFA7E, "M", "奄"),
(0xFA7F, "M", "奔"),
@@ -4587,6 +4626,11 @@ def _seg_43() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFAB7, "M", "覆"),
(0xFAB8, "M", "視"),
(0xFAB9, "M", "調"),
+ ]
+
+
+def _seg_44() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xFABA, "M", "諸"),
(0xFABB, "M", "請"),
(0xFABC, "M", "謁"),
@@ -4626,11 +4670,6 @@ def _seg_43() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFB03, "M", "ffi"),
(0xFB04, "M", "ffl"),
(0xFB05, "M", "st"),
- ]
-
-
-def _seg_44() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFB07, "X"),
(0xFB13, "M", "մն"),
(0xFB14, "M", "մե"),
@@ -4650,7 +4689,7 @@ def _seg_44() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFB26, "M", "ם"),
(0xFB27, "M", "ר"),
(0xFB28, "M", "ת"),
- (0xFB29, "3", "+"),
+ (0xFB29, "M", "+"),
(0xFB2A, "M", "שׁ"),
(0xFB2B, "M", "שׂ"),
(0xFB2C, "M", "שּׁ"),
@@ -4692,6 +4731,11 @@ def _seg_44() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFB50, "M", "ٱ"),
(0xFB52, "M", "ٻ"),
(0xFB56, "M", "پ"),
+ ]
+
+
+def _seg_45() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xFB5A, "M", "ڀ"),
(0xFB5E, "M", "ٺ"),
(0xFB62, "M", "ٿ"),
@@ -4731,11 +4775,6 @@ def _seg_44() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFBE2, "M", "ۉ"),
(0xFBE4, "M", "ې"),
(0xFBE8, "M", "ى"),
- ]
-
-
-def _seg_45() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFBEA, "M", "ئا"),
(0xFBEC, "M", "ئە"),
(0xFBEE, "M", "ئو"),
@@ -4797,6 +4836,11 @@ def _seg_45() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFC31, "M", "فى"),
(0xFC32, "M", "في"),
(0xFC33, "M", "قح"),
+ ]
+
+
+def _seg_46() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xFC34, "M", "قم"),
(0xFC35, "M", "قى"),
(0xFC36, "M", "قي"),
@@ -4836,20 +4880,15 @@ def _seg_45() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFC58, "M", "يم"),
(0xFC59, "M", "يى"),
(0xFC5A, "M", "يي"),
- ]
-
-
-def _seg_46() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFC5B, "M", "ذٰ"),
(0xFC5C, "M", "رٰ"),
(0xFC5D, "M", "ىٰ"),
- (0xFC5E, "3", " ٌّ"),
- (0xFC5F, "3", " ٍّ"),
- (0xFC60, "3", " َّ"),
- (0xFC61, "3", " ُّ"),
- (0xFC62, "3", " ِّ"),
- (0xFC63, "3", " ّٰ"),
+ (0xFC5E, "M", " ٌّ"),
+ (0xFC5F, "M", " ٍّ"),
+ (0xFC60, "M", " َّ"),
+ (0xFC61, "M", " ُّ"),
+ (0xFC62, "M", " ِّ"),
+ (0xFC63, "M", " ّٰ"),
(0xFC64, "M", "ئر"),
(0xFC65, "M", "ئز"),
(0xFC66, "M", "ئم"),
@@ -4902,6 +4941,11 @@ def _seg_46() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFC95, "M", "يى"),
(0xFC96, "M", "يي"),
(0xFC97, "M", "ئج"),
+ ]
+
+
+def _seg_47() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xFC98, "M", "ئح"),
(0xFC99, "M", "ئخ"),
(0xFC9A, "M", "ئم"),
@@ -4941,11 +4985,6 @@ def _seg_46() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFCBC, "M", "غج"),
(0xFCBD, "M", "غم"),
(0xFCBE, "M", "فج"),
- ]
-
-
-def _seg_47() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFCBF, "M", "فح"),
(0xFCC0, "M", "فخ"),
(0xFCC1, "M", "فم"),
@@ -5007,6 +5046,11 @@ def _seg_47() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFCF9, "M", "غى"),
(0xFCFA, "M", "غي"),
(0xFCFB, "M", "سى"),
+ ]
+
+
+def _seg_48() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xFCFC, "M", "سي"),
(0xFCFD, "M", "شى"),
(0xFCFE, "M", "شي"),
@@ -5046,11 +5090,6 @@ def _seg_47() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFD20, "M", "خي"),
(0xFD21, "M", "صى"),
(0xFD22, "M", "صي"),
- ]
-
-
-def _seg_48() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFD23, "M", "ضى"),
(0xFD24, "M", "ضي"),
(0xFD25, "M", "شج"),
@@ -5112,6 +5151,11 @@ def _seg_48() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFD7A, "M", "غمي"),
(0xFD7B, "M", "غمى"),
(0xFD7C, "M", "فخم"),
+ ]
+
+
+def _seg_49() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xFD7E, "M", "قمح"),
(0xFD7F, "M", "قمم"),
(0xFD80, "M", "لحم"),
@@ -5151,11 +5195,6 @@ def _seg_48() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFDA8, "M", "سخى"),
(0xFDA9, "M", "صحي"),
(0xFDAA, "M", "شحي"),
- ]
-
-
-def _seg_49() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFDAB, "M", "ضحي"),
(0xFDAC, "M", "لجي"),
(0xFDAD, "M", "لمي"),
@@ -5198,18 +5237,18 @@ def _seg_49() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFDF7, "M", "عليه"),
(0xFDF8, "M", "وسلم"),
(0xFDF9, "M", "صلى"),
- (0xFDFA, "3", "صلى الله عليه وسلم"),
- (0xFDFB, "3", "جل جلاله"),
+ (0xFDFA, "M", "صلى الله عليه وسلم"),
+ (0xFDFB, "M", "جل جلاله"),
(0xFDFC, "M", "ریال"),
(0xFDFD, "V"),
(0xFE00, "I"),
- (0xFE10, "3", ","),
+ (0xFE10, "M", ","),
(0xFE11, "M", "、"),
(0xFE12, "X"),
- (0xFE13, "3", ":"),
- (0xFE14, "3", ";"),
- (0xFE15, "3", "!"),
- (0xFE16, "3", "?"),
+ (0xFE13, "M", ":"),
+ (0xFE14, "M", ";"),
+ (0xFE15, "M", "!"),
+ (0xFE16, "M", "?"),
(0xFE17, "M", "〖"),
(0xFE18, "M", "〗"),
(0xFE19, "X"),
@@ -5217,11 +5256,16 @@ def _seg_49() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFE30, "X"),
(0xFE31, "M", "—"),
(0xFE32, "M", "–"),
- (0xFE33, "3", "_"),
- (0xFE35, "3", "("),
- (0xFE36, "3", ")"),
- (0xFE37, "3", "{"),
- (0xFE38, "3", "}"),
+ ]
+
+
+def _seg_50() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
+ (0xFE33, "M", "_"),
+ (0xFE35, "M", "("),
+ (0xFE36, "M", ")"),
+ (0xFE37, "M", "{"),
+ (0xFE38, "M", "}"),
(0xFE39, "M", "〔"),
(0xFE3A, "M", "〕"),
(0xFE3B, "M", "【"),
@@ -5235,58 +5279,53 @@ def _seg_49() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFE43, "M", "『"),
(0xFE44, "M", "』"),
(0xFE45, "V"),
- (0xFE47, "3", "["),
- (0xFE48, "3", "]"),
- (0xFE49, "3", " ̅"),
- (0xFE4D, "3", "_"),
- (0xFE50, "3", ","),
+ (0xFE47, "M", "["),
+ (0xFE48, "M", "]"),
+ (0xFE49, "M", " ̅"),
+ (0xFE4D, "M", "_"),
+ (0xFE50, "M", ","),
(0xFE51, "M", "、"),
(0xFE52, "X"),
- (0xFE54, "3", ";"),
- (0xFE55, "3", ":"),
- (0xFE56, "3", "?"),
- (0xFE57, "3", "!"),
+ (0xFE54, "M", ";"),
+ (0xFE55, "M", ":"),
+ (0xFE56, "M", "?"),
+ (0xFE57, "M", "!"),
(0xFE58, "M", "—"),
- (0xFE59, "3", "("),
- (0xFE5A, "3", ")"),
- (0xFE5B, "3", "{"),
- (0xFE5C, "3", "}"),
+ (0xFE59, "M", "("),
+ (0xFE5A, "M", ")"),
+ (0xFE5B, "M", "{"),
+ (0xFE5C, "M", "}"),
(0xFE5D, "M", "〔"),
(0xFE5E, "M", "〕"),
- (0xFE5F, "3", "#"),
- (0xFE60, "3", "&"),
- (0xFE61, "3", "*"),
- ]
-
-
-def _seg_50() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
- (0xFE62, "3", "+"),
+ (0xFE5F, "M", "#"),
+ (0xFE60, "M", "&"),
+ (0xFE61, "M", "*"),
+ (0xFE62, "M", "+"),
(0xFE63, "M", "-"),
- (0xFE64, "3", "<"),
- (0xFE65, "3", ">"),
- (0xFE66, "3", "="),
+ (0xFE64, "M", "<"),
+ (0xFE65, "M", ">"),
+ (0xFE66, "M", "="),
(0xFE67, "X"),
- (0xFE68, "3", "\\"),
- (0xFE69, "3", "$"),
- (0xFE6A, "3", "%"),
- (0xFE6B, "3", "@"),
+ (0xFE68, "M", "\\"),
+ (0xFE69, "M", "$"),
+ (0xFE6A, "M", "%"),
+ (0xFE6B, "M", "@"),
(0xFE6C, "X"),
- (0xFE70, "3", " ً"),
+ (0xFE70, "M", " ً"),
(0xFE71, "M", "ـً"),
- (0xFE72, "3", " ٌ"),
+ (0xFE72, "M", " ٌ"),
(0xFE73, "V"),
- (0xFE74, "3", " ٍ"),
+ (0xFE74, "M", " ٍ"),
(0xFE75, "X"),
- (0xFE76, "3", " َ"),
+ (0xFE76, "M", " َ"),
(0xFE77, "M", "ـَ"),
- (0xFE78, "3", " ُ"),
+ (0xFE78, "M", " ُ"),
(0xFE79, "M", "ـُ"),
- (0xFE7A, "3", " ِ"),
+ (0xFE7A, "M", " ِ"),
(0xFE7B, "M", "ـِ"),
- (0xFE7C, "3", " ّ"),
+ (0xFE7C, "M", " ّ"),
(0xFE7D, "M", "ـّ"),
- (0xFE7E, "3", " ْ"),
+ (0xFE7E, "M", " ْ"),
(0xFE7F, "M", "ـْ"),
(0xFE80, "M", "ء"),
(0xFE81, "M", "آ"),
@@ -5322,6 +5361,11 @@ def _seg_50() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFEE5, "M", "ن"),
(0xFEE9, "M", "ه"),
(0xFEED, "M", "و"),
+ ]
+
+
+def _seg_51() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xFEEF, "M", "ى"),
(0xFEF1, "M", "ي"),
(0xFEF5, "M", "لآ"),
@@ -5331,21 +5375,21 @@ def _seg_50() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFEFD, "X"),
(0xFEFF, "I"),
(0xFF00, "X"),
- (0xFF01, "3", "!"),
- (0xFF02, "3", '"'),
- (0xFF03, "3", "#"),
- (0xFF04, "3", "$"),
- (0xFF05, "3", "%"),
- (0xFF06, "3", "&"),
- (0xFF07, "3", "'"),
- (0xFF08, "3", "("),
- (0xFF09, "3", ")"),
- (0xFF0A, "3", "*"),
- (0xFF0B, "3", "+"),
- (0xFF0C, "3", ","),
+ (0xFF01, "M", "!"),
+ (0xFF02, "M", '"'),
+ (0xFF03, "M", "#"),
+ (0xFF04, "M", "$"),
+ (0xFF05, "M", "%"),
+ (0xFF06, "M", "&"),
+ (0xFF07, "M", "'"),
+ (0xFF08, "M", "("),
+ (0xFF09, "M", ")"),
+ (0xFF0A, "M", "*"),
+ (0xFF0B, "M", "+"),
+ (0xFF0C, "M", ","),
(0xFF0D, "M", "-"),
(0xFF0E, "M", "."),
- (0xFF0F, "3", "/"),
+ (0xFF0F, "M", "/"),
(0xFF10, "M", "0"),
(0xFF11, "M", "1"),
(0xFF12, "M", "2"),
@@ -5356,18 +5400,13 @@ def _seg_50() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFF17, "M", "7"),
(0xFF18, "M", "8"),
(0xFF19, "M", "9"),
- (0xFF1A, "3", ":"),
- (0xFF1B, "3", ";"),
- (0xFF1C, "3", "<"),
- (0xFF1D, "3", "="),
- (0xFF1E, "3", ">"),
- ]
-
-
-def _seg_51() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
- (0xFF1F, "3", "?"),
- (0xFF20, "3", "@"),
+ (0xFF1A, "M", ":"),
+ (0xFF1B, "M", ";"),
+ (0xFF1C, "M", "<"),
+ (0xFF1D, "M", "="),
+ (0xFF1E, "M", ">"),
+ (0xFF1F, "M", "?"),
+ (0xFF20, "M", "@"),
(0xFF21, "M", "a"),
(0xFF22, "M", "b"),
(0xFF23, "M", "c"),
@@ -5394,12 +5433,12 @@ def _seg_51() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFF38, "M", "x"),
(0xFF39, "M", "y"),
(0xFF3A, "M", "z"),
- (0xFF3B, "3", "["),
- (0xFF3C, "3", "\\"),
- (0xFF3D, "3", "]"),
- (0xFF3E, "3", "^"),
- (0xFF3F, "3", "_"),
- (0xFF40, "3", "`"),
+ (0xFF3B, "M", "["),
+ (0xFF3C, "M", "\\"),
+ (0xFF3D, "M", "]"),
+ (0xFF3E, "M", "^"),
+ (0xFF3F, "M", "_"),
+ (0xFF40, "M", "`"),
(0xFF41, "M", "a"),
(0xFF42, "M", "b"),
(0xFF43, "M", "c"),
@@ -5426,10 +5465,15 @@ def _seg_51() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFF58, "M", "x"),
(0xFF59, "M", "y"),
(0xFF5A, "M", "z"),
- (0xFF5B, "3", "{"),
- (0xFF5C, "3", "|"),
- (0xFF5D, "3", "}"),
- (0xFF5E, "3", "~"),
+ (0xFF5B, "M", "{"),
+ ]
+
+
+def _seg_52() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
+ (0xFF5C, "M", "|"),
+ (0xFF5D, "M", "}"),
+ (0xFF5E, "M", "~"),
(0xFF5F, "M", "⦅"),
(0xFF60, "M", "⦆"),
(0xFF61, "M", "."),
@@ -5466,11 +5510,6 @@ def _seg_51() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFF80, "M", "タ"),
(0xFF81, "M", "チ"),
(0xFF82, "M", "ツ"),
- ]
-
-
-def _seg_52() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFF83, "M", "テ"),
(0xFF84, "M", "ト"),
(0xFF85, "M", "ナ"),
@@ -5500,7 +5539,7 @@ def _seg_52() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFF9D, "M", "ン"),
(0xFF9E, "M", "゙"),
(0xFF9F, "M", "゚"),
- (0xFFA0, "X"),
+ (0xFFA0, "I"),
(0xFFA1, "M", "ᄀ"),
(0xFFA2, "M", "ᄁ"),
(0xFFA3, "M", "ᆪ"),
@@ -5532,6 +5571,11 @@ def _seg_52() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFFBD, "M", "ᄑ"),
(0xFFBE, "M", "ᄒ"),
(0xFFBF, "X"),
+ ]
+
+
+def _seg_53() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0xFFC2, "M", "ᅡ"),
(0xFFC3, "M", "ᅢ"),
(0xFFC4, "M", "ᅣ"),
@@ -5560,7 +5604,7 @@ def _seg_52() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFFE0, "M", "¢"),
(0xFFE1, "M", "£"),
(0xFFE2, "M", "¬"),
- (0xFFE3, "3", " ̄"),
+ (0xFFE3, "M", " ̄"),
(0xFFE4, "M", "¦"),
(0xFFE5, "M", "¥"),
(0xFFE6, "M", "₩"),
@@ -5571,11 +5615,6 @@ def _seg_52() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0xFFEB, "M", "→"),
(0xFFEC, "M", "↓"),
(0xFFED, "M", "■"),
- ]
-
-
-def _seg_53() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0xFFEE, "M", "○"),
(0xFFEF, "X"),
(0x10000, "V"),
@@ -5637,6 +5676,11 @@ def _seg_53() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1040C, "M", "𐐴"),
(0x1040D, "M", "𐐵"),
(0x1040E, "M", "𐐶"),
+ ]
+
+
+def _seg_54() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1040F, "M", "𐐷"),
(0x10410, "M", "𐐸"),
(0x10411, "M", "𐐹"),
@@ -5676,11 +5720,6 @@ def _seg_53() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x104B7, "M", "𐓟"),
(0x104B8, "M", "𐓠"),
(0x104B9, "M", "𐓡"),
- ]
-
-
-def _seg_54() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x104BA, "M", "𐓢"),
(0x104BB, "M", "𐓣"),
(0x104BC, "M", "𐓤"),
@@ -5742,6 +5781,11 @@ def _seg_54() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x10588, "M", "𐖯"),
(0x10589, "M", "𐖰"),
(0x1058A, "M", "𐖱"),
+ ]
+
+
+def _seg_55() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1058B, "X"),
(0x1058C, "M", "𐖳"),
(0x1058D, "M", "𐖴"),
@@ -5762,6 +5806,8 @@ def _seg_54() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x105BA, "X"),
(0x105BB, "V"),
(0x105BD, "X"),
+ (0x105C0, "V"),
+ (0x105F4, "X"),
(0x10600, "V"),
(0x10737, "X"),
(0x10740, "V"),
@@ -5781,11 +5827,6 @@ def _seg_54() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1078A, "M", "ʤ"),
(0x1078B, "M", "ɖ"),
(0x1078C, "M", "ɗ"),
- ]
-
-
-def _seg_55() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1078D, "M", "ᶑ"),
(0x1078E, "M", "ɘ"),
(0x1078F, "M", "ɞ"),
@@ -5845,6 +5886,11 @@ def _seg_55() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1083D, "X"),
(0x1083F, "V"),
(0x10856, "X"),
+ ]
+
+
+def _seg_56() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x10857, "V"),
(0x1089F, "X"),
(0x108A7, "V"),
@@ -5886,11 +5932,6 @@ def _seg_55() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x10AEB, "V"),
(0x10AF7, "X"),
(0x10B00, "V"),
- ]
-
-
-def _seg_56() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x10B36, "X"),
(0x10B39, "V"),
(0x10B56, "X"),
@@ -5950,6 +5991,11 @@ def _seg_56() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x10CAB, "M", "𐳫"),
(0x10CAC, "M", "𐳬"),
(0x10CAD, "M", "𐳭"),
+ ]
+
+
+def _seg_57() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x10CAE, "M", "𐳮"),
(0x10CAF, "M", "𐳯"),
(0x10CB0, "M", "𐳰"),
@@ -5962,6 +6008,34 @@ def _seg_56() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x10D28, "X"),
(0x10D30, "V"),
(0x10D3A, "X"),
+ (0x10D40, "V"),
+ (0x10D50, "M", "𐵰"),
+ (0x10D51, "M", "𐵱"),
+ (0x10D52, "M", "𐵲"),
+ (0x10D53, "M", "𐵳"),
+ (0x10D54, "M", "𐵴"),
+ (0x10D55, "M", "𐵵"),
+ (0x10D56, "M", "𐵶"),
+ (0x10D57, "M", "𐵷"),
+ (0x10D58, "M", "𐵸"),
+ (0x10D59, "M", "𐵹"),
+ (0x10D5A, "M", "𐵺"),
+ (0x10D5B, "M", "𐵻"),
+ (0x10D5C, "M", "𐵼"),
+ (0x10D5D, "M", "𐵽"),
+ (0x10D5E, "M", "𐵾"),
+ (0x10D5F, "M", "𐵿"),
+ (0x10D60, "M", "𐶀"),
+ (0x10D61, "M", "𐶁"),
+ (0x10D62, "M", "𐶂"),
+ (0x10D63, "M", "𐶃"),
+ (0x10D64, "M", "𐶄"),
+ (0x10D65, "M", "𐶅"),
+ (0x10D66, "X"),
+ (0x10D69, "V"),
+ (0x10D86, "X"),
+ (0x10D8E, "V"),
+ (0x10D90, "X"),
(0x10E60, "V"),
(0x10E7F, "X"),
(0x10E80, "V"),
@@ -5970,7 +6044,9 @@ def _seg_56() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x10EAE, "X"),
(0x10EB0, "V"),
(0x10EB2, "X"),
- (0x10EFD, "V"),
+ (0x10EC2, "V"),
+ (0x10EC5, "X"),
+ (0x10EFC, "V"),
(0x10F28, "X"),
(0x10F30, "V"),
(0x10F5A, "X"),
@@ -5991,11 +6067,6 @@ def _seg_56() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x110D0, "V"),
(0x110E9, "X"),
(0x110F0, "V"),
- ]
-
-
-def _seg_57() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x110FA, "X"),
(0x11100, "V"),
(0x11135, "X"),
@@ -6025,6 +6096,11 @@ def _seg_57() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x112EB, "X"),
(0x112F0, "V"),
(0x112FA, "X"),
+ ]
+
+
+def _seg_58() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x11300, "V"),
(0x11304, "X"),
(0x11305, "V"),
@@ -6055,6 +6131,28 @@ def _seg_57() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1136D, "X"),
(0x11370, "V"),
(0x11375, "X"),
+ (0x11380, "V"),
+ (0x1138A, "X"),
+ (0x1138B, "V"),
+ (0x1138C, "X"),
+ (0x1138E, "V"),
+ (0x1138F, "X"),
+ (0x11390, "V"),
+ (0x113B6, "X"),
+ (0x113B7, "V"),
+ (0x113C1, "X"),
+ (0x113C2, "V"),
+ (0x113C3, "X"),
+ (0x113C5, "V"),
+ (0x113C6, "X"),
+ (0x113C7, "V"),
+ (0x113CB, "X"),
+ (0x113CC, "V"),
+ (0x113D6, "X"),
+ (0x113D7, "V"),
+ (0x113D9, "X"),
+ (0x113E1, "V"),
+ (0x113E3, "X"),
(0x11400, "V"),
(0x1145C, "X"),
(0x1145D, "V"),
@@ -6077,6 +6175,8 @@ def _seg_57() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x116BA, "X"),
(0x116C0, "V"),
(0x116CA, "X"),
+ (0x116D0, "V"),
+ (0x116E4, "X"),
(0x11700, "V"),
(0x1171B, "X"),
(0x1171D, "V"),
@@ -6096,16 +6196,16 @@ def _seg_57() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x118A8, "M", "𑣈"),
(0x118A9, "M", "𑣉"),
(0x118AA, "M", "𑣊"),
- ]
-
-
-def _seg_58() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x118AB, "M", "𑣋"),
(0x118AC, "M", "𑣌"),
(0x118AD, "M", "𑣍"),
(0x118AE, "M", "𑣎"),
(0x118AF, "M", "𑣏"),
+ ]
+
+
+def _seg_59() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x118B0, "M", "𑣐"),
(0x118B1, "M", "𑣑"),
(0x118B2, "M", "𑣒"),
@@ -6154,6 +6254,10 @@ def _seg_58() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x11AF9, "X"),
(0x11B00, "V"),
(0x11B0A, "X"),
+ (0x11BC0, "V"),
+ (0x11BE2, "X"),
+ (0x11BF0, "V"),
+ (0x11BFA, "X"),
(0x11C00, "V"),
(0x11C09, "X"),
(0x11C0A, "V"),
@@ -6201,12 +6305,12 @@ def _seg_58() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x11F12, "V"),
(0x11F3B, "X"),
(0x11F3E, "V"),
+ (0x11F5B, "X"),
]
-def _seg_59() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+def _seg_60() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
return [
- (0x11F5A, "X"),
(0x11FB0, "V"),
(0x11FB1, "X"),
(0x11FC0, "V"),
@@ -6225,8 +6329,12 @@ def _seg_59() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x13430, "X"),
(0x13440, "V"),
(0x13456, "X"),
+ (0x13460, "V"),
+ (0x143FB, "X"),
(0x14400, "V"),
(0x14647, "X"),
+ (0x16100, "V"),
+ (0x1613A, "X"),
(0x16800, "V"),
(0x16A39, "X"),
(0x16A40, "V"),
@@ -6251,6 +6359,8 @@ def _seg_59() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x16B78, "X"),
(0x16B7D, "V"),
(0x16B90, "X"),
+ (0x16D40, "V"),
+ (0x16D7A, "X"),
(0x16E40, "M", "𖹠"),
(0x16E41, "M", "𖹡"),
(0x16E42, "M", "𖹢"),
@@ -6299,18 +6409,18 @@ def _seg_59() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x187F8, "X"),
(0x18800, "V"),
(0x18CD6, "X"),
- (0x18D00, "V"),
+ (0x18CFF, "V"),
(0x18D09, "X"),
+ ]
+
+
+def _seg_61() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1AFF0, "V"),
(0x1AFF4, "X"),
(0x1AFF5, "V"),
(0x1AFFC, "X"),
(0x1AFFD, "V"),
- ]
-
-
-def _seg_60() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1AFFF, "X"),
(0x1B000, "V"),
(0x1B123, "X"),
@@ -6335,6 +6445,46 @@ def _seg_60() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1BC9C, "V"),
(0x1BCA0, "I"),
(0x1BCA4, "X"),
+ (0x1CC00, "V"),
+ (0x1CCD6, "M", "a"),
+ (0x1CCD7, "M", "b"),
+ (0x1CCD8, "M", "c"),
+ (0x1CCD9, "M", "d"),
+ (0x1CCDA, "M", "e"),
+ (0x1CCDB, "M", "f"),
+ (0x1CCDC, "M", "g"),
+ (0x1CCDD, "M", "h"),
+ (0x1CCDE, "M", "i"),
+ (0x1CCDF, "M", "j"),
+ (0x1CCE0, "M", "k"),
+ (0x1CCE1, "M", "l"),
+ (0x1CCE2, "M", "m"),
+ (0x1CCE3, "M", "n"),
+ (0x1CCE4, "M", "o"),
+ (0x1CCE5, "M", "p"),
+ (0x1CCE6, "M", "q"),
+ (0x1CCE7, "M", "r"),
+ (0x1CCE8, "M", "s"),
+ (0x1CCE9, "M", "t"),
+ (0x1CCEA, "M", "u"),
+ (0x1CCEB, "M", "v"),
+ (0x1CCEC, "M", "w"),
+ (0x1CCED, "M", "x"),
+ (0x1CCEE, "M", "y"),
+ (0x1CCEF, "M", "z"),
+ (0x1CCF0, "M", "0"),
+ (0x1CCF1, "M", "1"),
+ (0x1CCF2, "M", "2"),
+ (0x1CCF3, "M", "3"),
+ (0x1CCF4, "M", "4"),
+ (0x1CCF5, "M", "5"),
+ (0x1CCF6, "M", "6"),
+ (0x1CCF7, "M", "7"),
+ (0x1CCF8, "M", "8"),
+ (0x1CCF9, "M", "9"),
+ (0x1CCFA, "X"),
+ (0x1CD00, "V"),
+ (0x1CEB4, "X"),
(0x1CF00, "V"),
(0x1CF2E, "X"),
(0x1CF30, "V"),
@@ -6354,7 +6504,7 @@ def _seg_60() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D163, "M", "𝅘𝅥𝅱"),
(0x1D164, "M", "𝅘𝅥𝅲"),
(0x1D165, "V"),
- (0x1D173, "X"),
+ (0x1D173, "I"),
(0x1D17B, "V"),
(0x1D1BB, "M", "𝆹𝅥"),
(0x1D1BC, "M", "𝆺𝅥"),
@@ -6366,6 +6516,11 @@ def _seg_60() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D1EB, "X"),
(0x1D200, "V"),
(0x1D246, "X"),
+ ]
+
+
+def _seg_62() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D2C0, "V"),
(0x1D2D4, "X"),
(0x1D2E0, "V"),
@@ -6411,11 +6566,6 @@ def _seg_60() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D422, "M", "i"),
(0x1D423, "M", "j"),
(0x1D424, "M", "k"),
- ]
-
-
-def _seg_61() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D425, "M", "l"),
(0x1D426, "M", "m"),
(0x1D427, "M", "n"),
@@ -6471,6 +6621,11 @@ def _seg_61() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D459, "M", "l"),
(0x1D45A, "M", "m"),
(0x1D45B, "M", "n"),
+ ]
+
+
+def _seg_63() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D45C, "M", "o"),
(0x1D45D, "M", "p"),
(0x1D45E, "M", "q"),
@@ -6516,11 +6671,6 @@ def _seg_61() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D486, "M", "e"),
(0x1D487, "M", "f"),
(0x1D488, "M", "g"),
- ]
-
-
-def _seg_62() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D489, "M", "h"),
(0x1D48A, "M", "i"),
(0x1D48B, "M", "j"),
@@ -6576,6 +6726,11 @@ def _seg_62() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D4C0, "M", "k"),
(0x1D4C1, "M", "l"),
(0x1D4C2, "M", "m"),
+ ]
+
+
+def _seg_64() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D4C3, "M", "n"),
(0x1D4C4, "X"),
(0x1D4C5, "M", "p"),
@@ -6621,11 +6776,6 @@ def _seg_62() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D4ED, "M", "d"),
(0x1D4EE, "M", "e"),
(0x1D4EF, "M", "f"),
- ]
-
-
-def _seg_63() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D4F0, "M", "g"),
(0x1D4F1, "M", "h"),
(0x1D4F2, "M", "i"),
@@ -6681,6 +6831,11 @@ def _seg_63() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D525, "M", "h"),
(0x1D526, "M", "i"),
(0x1D527, "M", "j"),
+ ]
+
+
+def _seg_65() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D528, "M", "k"),
(0x1D529, "M", "l"),
(0x1D52A, "M", "m"),
@@ -6726,11 +6881,6 @@ def _seg_63() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D554, "M", "c"),
(0x1D555, "M", "d"),
(0x1D556, "M", "e"),
- ]
-
-
-def _seg_64() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D557, "M", "f"),
(0x1D558, "M", "g"),
(0x1D559, "M", "h"),
@@ -6786,6 +6936,11 @@ def _seg_64() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D58B, "M", "f"),
(0x1D58C, "M", "g"),
(0x1D58D, "M", "h"),
+ ]
+
+
+def _seg_66() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D58E, "M", "i"),
(0x1D58F, "M", "j"),
(0x1D590, "M", "k"),
@@ -6831,11 +6986,6 @@ def _seg_64() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D5B8, "M", "y"),
(0x1D5B9, "M", "z"),
(0x1D5BA, "M", "a"),
- ]
-
-
-def _seg_65() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D5BB, "M", "b"),
(0x1D5BC, "M", "c"),
(0x1D5BD, "M", "d"),
@@ -6891,6 +7041,11 @@ def _seg_65() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D5EF, "M", "b"),
(0x1D5F0, "M", "c"),
(0x1D5F1, "M", "d"),
+ ]
+
+
+def _seg_67() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D5F2, "M", "e"),
(0x1D5F3, "M", "f"),
(0x1D5F4, "M", "g"),
@@ -6936,11 +7091,6 @@ def _seg_65() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D61C, "M", "u"),
(0x1D61D, "M", "v"),
(0x1D61E, "M", "w"),
- ]
-
-
-def _seg_66() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D61F, "M", "x"),
(0x1D620, "M", "y"),
(0x1D621, "M", "z"),
@@ -6996,6 +7146,11 @@ def _seg_66() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D653, "M", "x"),
(0x1D654, "M", "y"),
(0x1D655, "M", "z"),
+ ]
+
+
+def _seg_68() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D656, "M", "a"),
(0x1D657, "M", "b"),
(0x1D658, "M", "c"),
@@ -7041,11 +7196,6 @@ def _seg_66() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D680, "M", "q"),
(0x1D681, "M", "r"),
(0x1D682, "M", "s"),
- ]
-
-
-def _seg_67() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D683, "M", "t"),
(0x1D684, "M", "u"),
(0x1D685, "M", "v"),
@@ -7101,6 +7251,11 @@ def _seg_67() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D6B8, "M", "ρ"),
(0x1D6B9, "M", "θ"),
(0x1D6BA, "M", "σ"),
+ ]
+
+
+def _seg_69() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D6BB, "M", "τ"),
(0x1D6BC, "M", "υ"),
(0x1D6BD, "M", "φ"),
@@ -7146,11 +7301,6 @@ def _seg_67() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D6E6, "M", "ε"),
(0x1D6E7, "M", "ζ"),
(0x1D6E8, "M", "η"),
- ]
-
-
-def _seg_68() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D6E9, "M", "θ"),
(0x1D6EA, "M", "ι"),
(0x1D6EB, "M", "κ"),
@@ -7206,6 +7356,11 @@ def _seg_68() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D71E, "M", "γ"),
(0x1D71F, "M", "δ"),
(0x1D720, "M", "ε"),
+ ]
+
+
+def _seg_70() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D721, "M", "ζ"),
(0x1D722, "M", "η"),
(0x1D723, "M", "θ"),
@@ -7251,11 +7406,6 @@ def _seg_68() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D74C, "M", "χ"),
(0x1D74D, "M", "ψ"),
(0x1D74E, "M", "ω"),
- ]
-
-
-def _seg_69() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D74F, "M", "∂"),
(0x1D750, "M", "ε"),
(0x1D751, "M", "θ"),
@@ -7311,6 +7461,11 @@ def _seg_69() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D784, "M", "υ"),
(0x1D785, "M", "φ"),
(0x1D786, "M", "χ"),
+ ]
+
+
+def _seg_71() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D787, "M", "ψ"),
(0x1D788, "M", "ω"),
(0x1D789, "M", "∂"),
@@ -7356,11 +7511,6 @@ def _seg_69() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D7B1, "M", "θ"),
(0x1D7B2, "M", "ι"),
(0x1D7B3, "M", "κ"),
- ]
-
-
-def _seg_70() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1D7B4, "M", "λ"),
(0x1D7B5, "M", "μ"),
(0x1D7B6, "M", "ν"),
@@ -7416,6 +7566,11 @@ def _seg_70() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1D7EB, "M", "9"),
(0x1D7EC, "M", "0"),
(0x1D7ED, "M", "1"),
+ ]
+
+
+def _seg_72() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1D7EE, "M", "2"),
(0x1D7EF, "M", "3"),
(0x1D7F0, "M", "4"),
@@ -7461,11 +7616,6 @@ def _seg_70() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1E034, "M", "д"),
(0x1E035, "M", "е"),
(0x1E036, "M", "ж"),
- ]
-
-
-def _seg_71() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1E037, "M", "з"),
(0x1E038, "M", "и"),
(0x1E039, "M", "к"),
@@ -7521,6 +7671,11 @@ def _seg_71() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1E06B, "M", "ҫ"),
(0x1E06C, "M", "ꙑ"),
(0x1E06D, "M", "ұ"),
+ ]
+
+
+def _seg_73() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1E06E, "X"),
(0x1E08F, "V"),
(0x1E090, "X"),
@@ -7540,6 +7695,10 @@ def _seg_71() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1E300, "X"),
(0x1E4D0, "V"),
(0x1E4FA, "X"),
+ (0x1E5D0, "V"),
+ (0x1E5FB, "X"),
+ (0x1E5FF, "V"),
+ (0x1E600, "X"),
(0x1E7E0, "V"),
(0x1E7E7, "X"),
(0x1E7E8, "V"),
@@ -7566,11 +7725,6 @@ def _seg_71() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1E90B, "M", "𞤭"),
(0x1E90C, "M", "𞤮"),
(0x1E90D, "M", "𞤯"),
- ]
-
-
-def _seg_72() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1E90E, "M", "𞤰"),
(0x1E90F, "M", "𞤱"),
(0x1E910, "M", "𞤲"),
@@ -7622,6 +7776,11 @@ def _seg_72() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1EE12, "M", "ق"),
(0x1EE13, "M", "ر"),
(0x1EE14, "M", "ش"),
+ ]
+
+
+def _seg_74() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1EE15, "M", "ت"),
(0x1EE16, "M", "ث"),
(0x1EE17, "M", "خ"),
@@ -7671,11 +7830,6 @@ def _seg_72() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1EE4C, "X"),
(0x1EE4D, "M", "ن"),
(0x1EE4E, "M", "س"),
- ]
-
-
-def _seg_73() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1EE4F, "M", "ع"),
(0x1EE50, "X"),
(0x1EE51, "M", "ص"),
@@ -7727,6 +7881,11 @@ def _seg_73() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1EE81, "M", "ب"),
(0x1EE82, "M", "ج"),
(0x1EE83, "M", "د"),
+ ]
+
+
+def _seg_75() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1EE84, "M", "ه"),
(0x1EE85, "M", "و"),
(0x1EE86, "M", "ز"),
@@ -7776,11 +7935,6 @@ def _seg_73() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1EEB6, "M", "ث"),
(0x1EEB7, "M", "خ"),
(0x1EEB8, "M", "ذ"),
- ]
-
-
-def _seg_74() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1EEB9, "M", "ض"),
(0x1EEBA, "M", "ظ"),
(0x1EEBB, "M", "غ"),
@@ -7799,43 +7953,48 @@ def _seg_74() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1F0D0, "X"),
(0x1F0D1, "V"),
(0x1F0F6, "X"),
- (0x1F101, "3", "0,"),
- (0x1F102, "3", "1,"),
- (0x1F103, "3", "2,"),
- (0x1F104, "3", "3,"),
- (0x1F105, "3", "4,"),
- (0x1F106, "3", "5,"),
- (0x1F107, "3", "6,"),
- (0x1F108, "3", "7,"),
- (0x1F109, "3", "8,"),
- (0x1F10A, "3", "9,"),
+ (0x1F101, "M", "0,"),
+ (0x1F102, "M", "1,"),
+ (0x1F103, "M", "2,"),
+ (0x1F104, "M", "3,"),
+ (0x1F105, "M", "4,"),
+ (0x1F106, "M", "5,"),
+ (0x1F107, "M", "6,"),
+ (0x1F108, "M", "7,"),
+ (0x1F109, "M", "8,"),
+ (0x1F10A, "M", "9,"),
(0x1F10B, "V"),
- (0x1F110, "3", "(a)"),
- (0x1F111, "3", "(b)"),
- (0x1F112, "3", "(c)"),
- (0x1F113, "3", "(d)"),
- (0x1F114, "3", "(e)"),
- (0x1F115, "3", "(f)"),
- (0x1F116, "3", "(g)"),
- (0x1F117, "3", "(h)"),
- (0x1F118, "3", "(i)"),
- (0x1F119, "3", "(j)"),
- (0x1F11A, "3", "(k)"),
- (0x1F11B, "3", "(l)"),
- (0x1F11C, "3", "(m)"),
- (0x1F11D, "3", "(n)"),
- (0x1F11E, "3", "(o)"),
- (0x1F11F, "3", "(p)"),
- (0x1F120, "3", "(q)"),
- (0x1F121, "3", "(r)"),
- (0x1F122, "3", "(s)"),
- (0x1F123, "3", "(t)"),
- (0x1F124, "3", "(u)"),
- (0x1F125, "3", "(v)"),
- (0x1F126, "3", "(w)"),
- (0x1F127, "3", "(x)"),
- (0x1F128, "3", "(y)"),
- (0x1F129, "3", "(z)"),
+ (0x1F110, "M", "(a)"),
+ (0x1F111, "M", "(b)"),
+ (0x1F112, "M", "(c)"),
+ (0x1F113, "M", "(d)"),
+ (0x1F114, "M", "(e)"),
+ (0x1F115, "M", "(f)"),
+ (0x1F116, "M", "(g)"),
+ (0x1F117, "M", "(h)"),
+ (0x1F118, "M", "(i)"),
+ (0x1F119, "M", "(j)"),
+ (0x1F11A, "M", "(k)"),
+ (0x1F11B, "M", "(l)"),
+ (0x1F11C, "M", "(m)"),
+ (0x1F11D, "M", "(n)"),
+ (0x1F11E, "M", "(o)"),
+ (0x1F11F, "M", "(p)"),
+ (0x1F120, "M", "(q)"),
+ (0x1F121, "M", "(r)"),
+ (0x1F122, "M", "(s)"),
+ (0x1F123, "M", "(t)"),
+ (0x1F124, "M", "(u)"),
+ (0x1F125, "M", "(v)"),
+ ]
+
+
+def _seg_76() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
+ (0x1F126, "M", "(w)"),
+ (0x1F127, "M", "(x)"),
+ (0x1F128, "M", "(y)"),
+ (0x1F129, "M", "(z)"),
(0x1F12A, "M", "〔s〕"),
(0x1F12B, "M", "c"),
(0x1F12C, "M", "r"),
@@ -7881,11 +8040,6 @@ def _seg_74() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1F16D, "V"),
(0x1F190, "M", "dj"),
(0x1F191, "V"),
- ]
-
-
-def _seg_75() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x1F1AE, "X"),
(0x1F1E6, "V"),
(0x1F200, "M", "ほか"),
@@ -7937,6 +8091,11 @@ def _seg_75() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1F23A, "M", "営"),
(0x1F23B, "M", "配"),
(0x1F23C, "X"),
+ ]
+
+
+def _seg_77() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x1F240, "M", "〔本〕"),
(0x1F241, "M", "〔三〕"),
(0x1F242, "M", "〔二〕"),
@@ -7977,7 +8136,9 @@ def _seg_75() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1F890, "V"),
(0x1F8AE, "X"),
(0x1F8B0, "V"),
- (0x1F8B2, "X"),
+ (0x1F8BC, "X"),
+ (0x1F8C0, "V"),
+ (0x1F8C2, "X"),
(0x1F900, "V"),
(0x1FA54, "X"),
(0x1FA60, "V"),
@@ -7985,26 +8146,18 @@ def _seg_75() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x1FA70, "V"),
(0x1FA7D, "X"),
(0x1FA80, "V"),
- (0x1FA89, "X"),
- ]
-
-
-def _seg_76() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
- (0x1FA90, "V"),
- (0x1FABE, "X"),
- (0x1FABF, "V"),
- (0x1FAC6, "X"),
+ (0x1FA8A, "X"),
+ (0x1FA8F, "V"),
+ (0x1FAC7, "X"),
(0x1FACE, "V"),
- (0x1FADC, "X"),
- (0x1FAE0, "V"),
- (0x1FAE9, "X"),
+ (0x1FADD, "X"),
+ (0x1FADF, "V"),
+ (0x1FAEA, "X"),
(0x1FAF0, "V"),
(0x1FAF9, "X"),
(0x1FB00, "V"),
(0x1FB93, "X"),
(0x1FB94, "V"),
- (0x1FBCB, "X"),
(0x1FBF0, "M", "0"),
(0x1FBF1, "M", "1"),
(0x1FBF2, "M", "2"),
@@ -8043,6 +8196,11 @@ def _seg_76() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F80C, "M", "㒞"),
(0x2F80D, "M", "𠘺"),
(0x2F80E, "M", "免"),
+ ]
+
+
+def _seg_78() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2F80F, "M", "兔"),
(0x2F810, "M", "兤"),
(0x2F811, "M", "具"),
@@ -8091,11 +8249,6 @@ def _seg_76() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F83E, "M", "呈"),
(0x2F83F, "M", "周"),
(0x2F840, "M", "咢"),
- ]
-
-
-def _seg_77() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x2F841, "M", "哶"),
(0x2F842, "M", "唐"),
(0x2F843, "M", "啓"),
@@ -8134,7 +8287,7 @@ def _seg_77() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F865, "M", "姘"),
(0x2F866, "M", "婦"),
(0x2F867, "M", "㛮"),
- (0x2F868, "X"),
+ (0x2F868, "M", "㛼"),
(0x2F869, "M", "嬈"),
(0x2F86A, "M", "嬾"),
(0x2F86C, "M", "𡧈"),
@@ -8145,9 +8298,14 @@ def _seg_77() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F871, "M", "𡬘"),
(0x2F872, "M", "寿"),
(0x2F873, "M", "将"),
- (0x2F874, "X"),
+ (0x2F874, "M", "当"),
(0x2F875, "M", "尢"),
(0x2F876, "M", "㞁"),
+ ]
+
+
+def _seg_79() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2F877, "M", "屠"),
(0x2F878, "M", "屮"),
(0x2F879, "M", "峀"),
@@ -8196,11 +8354,6 @@ def _seg_77() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F8A6, "M", "慈"),
(0x2F8A7, "M", "慌"),
(0x2F8A8, "M", "慎"),
- ]
-
-
-def _seg_78() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x2F8A9, "M", "慌"),
(0x2F8AA, "M", "慺"),
(0x2F8AB, "M", "憎"),
@@ -8253,6 +8406,11 @@ def _seg_78() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F8DA, "M", "朡"),
(0x2F8DB, "M", "杞"),
(0x2F8DC, "M", "杓"),
+ ]
+
+
+def _seg_80() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2F8DD, "M", "𣏃"),
(0x2F8DE, "M", "㭉"),
(0x2F8DF, "M", "柺"),
@@ -8301,11 +8459,6 @@ def _seg_78() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F90A, "M", "㴳"),
(0x2F90B, "M", "滋"),
(0x2F90C, "M", "滇"),
- ]
-
-
-def _seg_79() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x2F90D, "M", "𣻑"),
(0x2F90E, "M", "淹"),
(0x2F90F, "M", "潮"),
@@ -8324,7 +8477,7 @@ def _seg_79() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F91C, "M", "煅"),
(0x2F91D, "M", "𤉣"),
(0x2F91E, "M", "熜"),
- (0x2F91F, "X"),
+ (0x2F91F, "M", "𤎫"),
(0x2F920, "M", "爨"),
(0x2F921, "M", "爵"),
(0x2F922, "M", "牐"),
@@ -8358,6 +8511,11 @@ def _seg_79() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F93F, "M", "䀈"),
(0x2F940, "M", "直"),
(0x2F941, "M", "𥃳"),
+ ]
+
+
+def _seg_81() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2F942, "M", "𥃲"),
(0x2F943, "M", "𥄙"),
(0x2F944, "M", "𥄳"),
@@ -8385,7 +8543,7 @@ def _seg_79() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F95B, "M", "穏"),
(0x2F95C, "M", "𥥼"),
(0x2F95D, "M", "𥪧"),
- (0x2F95F, "X"),
+ (0x2F95F, "M", "竮"),
(0x2F960, "M", "䈂"),
(0x2F961, "M", "𥮫"),
(0x2F962, "M", "篆"),
@@ -8406,11 +8564,6 @@ def _seg_79() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F971, "M", "䌴"),
(0x2F972, "M", "𦈨"),
(0x2F973, "M", "𦉇"),
- ]
-
-
-def _seg_80() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x2F974, "M", "䍙"),
(0x2F975, "M", "𦋙"),
(0x2F976, "M", "罺"),
@@ -8463,6 +8616,11 @@ def _seg_80() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F9A5, "M", "𦵫"),
(0x2F9A6, "M", "𦳕"),
(0x2F9A7, "M", "䔫"),
+ ]
+
+
+def _seg_82() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2F9A8, "M", "蓱"),
(0x2F9A9, "M", "蓳"),
(0x2F9AA, "M", "蔖"),
@@ -8486,7 +8644,7 @@ def _seg_80() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F9BC, "M", "蜨"),
(0x2F9BD, "M", "蝫"),
(0x2F9BE, "M", "螆"),
- (0x2F9BF, "X"),
+ (0x2F9BF, "M", "䗗"),
(0x2F9C0, "M", "蟡"),
(0x2F9C1, "M", "蠁"),
(0x2F9C2, "M", "䗹"),
@@ -8511,11 +8669,6 @@ def _seg_80() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2F9D5, "M", "賁"),
(0x2F9D6, "M", "贛"),
(0x2F9D7, "M", "起"),
- ]
-
-
-def _seg_81() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
- return [
(0x2F9D8, "M", "𧼯"),
(0x2F9D9, "M", "𠠄"),
(0x2F9DA, "M", "跋"),
@@ -8568,6 +8721,11 @@ def _seg_81() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
(0x2FA0A, "M", "鬒"),
(0x2FA0B, "M", "鱀"),
(0x2FA0C, "M", "鳽"),
+ ]
+
+
+def _seg_83() -> List[Union[Tuple[int, str], Tuple[int, str, str]]]:
+ return [
(0x2FA0D, "M", "䳎"),
(0x2FA0E, "M", "䳭"),
(0x2FA0F, "M", "鵧"),
@@ -8678,4 +8836,6 @@ uts46data = tuple(
+ _seg_79()
+ _seg_80()
+ _seg_81()
+ + _seg_82()
+ + _seg_83()
) # type: Tuple[Union[Tuple[int, str], Tuple[int, str, str]], ...]
diff --git a/contrib/python/idna/py3/tests/test_idna_other.py b/contrib/python/idna/py3/tests/test_idna_other.py
deleted file mode 100644
index 835e6c67b07..00000000000
--- a/contrib/python/idna/py3/tests/test_idna_other.py
+++ /dev/null
@@ -1,11 +0,0 @@
-"""Tests for other functions"""
-
-import unittest
-
-import idna
-
-
-class OtherUTS46Tests(unittest.TestCase):
- def test_std3(self):
- self.assertEqual(idna.uts46_remap("A_", std3_rules=False), "a_")
- self.assertRaises(idna.InvalidCodepoint, idna.uts46_remap, "A_", std3_rules=True)
diff --git a/contrib/python/idna/py3/tests/test_idna_uts46.py b/contrib/python/idna/py3/tests/test_idna_uts46.py
index f4a007f2606..2dfeae630ef 100644
--- a/contrib/python/idna/py3/tests/test_idna_uts46.py
+++ b/contrib/python/idna/py3/tests/test_idna_uts46.py
@@ -1,220 +1,25353 @@
-"""Tests for TR46 code."""
+# This file is automatically generated by tools/idna-data
-import os.path
-import re
import unittest
import idna
-_RE_UNICODE = re.compile("\\\\u([0-9a-fA-F]{4})")
-_RE_SURROGATE = re.compile("[\ud800-\udbff][\udc00-\udfff]")
-_SKIP_TESTS = [
- # These are strings that are illegal in IDNA 2008. Older versions of the UTS-46 test suite
- # had these denoted with the 'NV8' marker but this has been removed, so we need to manually
- # review exceptions and add them here to skip them as text vectors if they are invalid.
- "\U000102f7\u3002\u200d",
- "\U0001d7f5\u9681\u2bee\uff0e\u180d\u200c",
- "9\u9681\u2bee.\u180d\u200c",
- "\u00df\u200c\uaaf6\u18a5.\u22b6\u2d21\u2d16",
- "ss\u200c\uaaf6\u18a5.\u22b6\u2d21\u2d16",
- "\u00df\u200c\uaaf6\u18a5\uff0e\u22b6\u2d21\u2d16",
- "ss\u200c\uaaf6\u18a5\uff0e\u22b6\u2d21\u2d16",
- "\U00010a57\u200d\u3002\u2d09\u2d15",
- "\U00010a57\u200d\uff61\u2d09\u2d15",
- "\U0001d7cf\U0001da19\u2e16.\u200d",
- "1\U0001da19\u2e16.\u200d",
- "\U0001d7e04\U000e01d7\U0001d23b\uff0e\u200d\U000102f5\u26e7\u200d",
- "84\U000e01d7\U0001d23b.\u200d\U000102f5\u26e7\u200d",
- "\u00a1",
- "xn--7a",
- "\u19da",
- "xn--pkf",
- "\u2615",
- "xn--53h",
- "\U0001e937.\U00010b90\U0001e881\U00010e60\u0624",
- "\U0001e937.\U00010b90\U0001e881\U00010e60\u0648\u0654",
- "\U0001e915.\U00010b90\U0001e881\U00010e60\u0648\u0654",
- "\U0001e915.\U00010b90\U0001e881\U00010e60\u0624",
- "xn--ve6h.xn--jgb1694kz0b2176a",
- "\u00df\u3002\U000102f3\u2d0c\u0fb8",
- "ss\u3002\U000102f3\u2d0c\u0fb8",
- "ss.xn--lgd921mvv0m",
- "ss.\U000102f3\u2d0c\u0fb8",
- "xn--zca.xn--lgd921mvv0m",
- "\u00df.\U000102f3\u2d0c\u0fb8",
- "\u00df\uff61\U000102f3\u2d0c\u0fb8",
- "ss\uff61\U000102f3\u2d0c\u0fb8",
- "\u16ad\uff61\U0001d320\u00df\U00016af1",
- "\u16ad\u3002\U0001d320\u00df\U00016af1",
- "\u16ad\u3002\U0001d320SS\U00016af1",
- "\u16ad\u3002\U0001d320ss\U00016af1",
- "\u16ad\u3002\U0001d320Ss\U00016af1",
- "xn--hwe.xn--ss-ci1ub261a",
- "\u16ad.\U0001d320ss\U00016af1",
- "\u16ad.\U0001d320SS\U00016af1",
- "\u16ad.\U0001d320Ss\U00016af1",
- "xn--hwe.xn--zca4946pblnc",
- "\u16ad.\U0001d320\u00df\U00016af1",
- "\u16ad\uff61\U0001d320SS\U00016af1",
- "\u16ad\uff61\U0001d320ss\U00016af1",
- "\u16ad\uff61\U0001d320Ss\U00016af1",
- "\u2d1a\U000102f8\U000e0104\u30025\ud7f6\u103a",
- "xn--ilj2659d.xn--5-dug9054m",
- "\u2d1a\U000102f8.5\ud7f6\u103a",
- "\u2d1a\U000102f8\U000e0104\u3002\U0001d7dd\ud7f6\u103a",
- "xn--9-mfs8024b.",
- "9\u9681\u2bee.",
- "xn--ss-4epx629f.xn--ifh802b6a",
- "ss\uaaf6\u18a5.\u22b6\u2d21\u2d16",
- "xn--pt9c.xn--0kjya",
- "\U00010a57.\u2d09\u2d15",
- "\ua5f7\U00011180.\u075d\U00010a52",
- "xn--ju8a625r.xn--hpb0073k",
- "\u03c2.\u0641\u0645\u064a\U0001f79b1.",
- "\u03a3.\u0641\u0645\u064a\U0001f79b1.",
- "\u03c3.\u0641\u0645\u064a\U0001f79b1.",
- "xn--4xa.xn--1-gocmu97674d.",
- "xn--3xa.xn--1-gocmu97674d.",
- "xn--1-5bt6845n.",
- "1\U0001da19\u2e16.",
- "xn--84-s850a.xn--59h6326e",
- "84\U0001d23b.\U000102f5\u26e7",
- "xn--r97c.",
- "\U000102f7.",
- # These appear to be errors in the test vectors. All relate to incorrectly applying
- # bidi rules across label boundaries. Appears independently confirmed
- # at http://www.alvestrand.no/pipermail/idna-update/2017-January/007946.html
- "0\u00e0.\u05d0",
- "0a\u0300.\u05d0",
- "0A\u0300.\u05d0",
- "0\u00c0.\u05d0",
- "xn--0-sfa.xn--4db",
- "\u00e0\u02c7.\u05d0",
- "a\u0300\u02c7.\u05d0",
- "A\u0300\u02c7.\u05d0",
- "\u00c0\u02c7.\u05d0",
- "xn--0ca88g.xn--4db",
- "0A.\u05d0",
- "0a.\u05d0",
- "0a.xn--4db",
- "c.xn--0-eha.xn--4db",
- "c.0\u00fc.\u05d0",
- "c.0u\u0308.\u05d0",
- "C.0U\u0308.\u05d0",
- "C.0\u00dc.\u05d0",
- "C.0\u00fc.\u05d0",
- "C.0\u0075\u0308.\u05d0",
- "\u06b6\u06df\u3002\u2087\ua806",
- "\u06b6\u06df\u30027\ua806",
- "xn--pkb6f.xn--7-x93e",
- "\u06b6\u06df.7\ua806",
- "1.\uac7e6.\U00010c41\u06d0",
- "1.\u1100\u1165\u11b56.\U00010c41\u06d0",
- "1.xn--6-945e.xn--glb1794k",
-]
-
-
-def unicode_fixup(string):
- """Replace backslash-u-XXXX with appropriate unicode characters."""
- return _RE_SURROGATE.sub(
- lambda match: chr((ord(match.group(0)[0]) - 0xD800) * 0x400 + ord(match.group(0)[1]) - 0xDC00 + 0x10000),
- _RE_UNICODE.sub(lambda match: chr(int(match.group(1), 16)), string),
- )
-
-
-def parse_idna_test_table(inputstream):
- """Parse IdnaTestV2.txt and return a list of tuples."""
- for lineno, line in enumerate(inputstream):
- line = line.decode("utf-8").strip()
- if "#" in line:
- line = line.split("#", 1)[0]
- if not line:
- continue
- yield ((lineno + 1, tuple(field.strip() for field in line.split(";"))))
-
-
-class TestIdnaTest(unittest.TestCase):
- """Run one of the IdnaTestV2.txt test lines."""
-
- def __init__(self, lineno=None, fields=None):
- super().__init__()
- self.lineno = lineno
- self.fields = fields
-
- def id(self):
- return "{}.{}".format(super().id(), self.lineno)
-
- def shortDescription(self):
- if not self.fields:
- return ""
- return "IdnaTestV2.txt line {}: {}".format(self.lineno, "; ".join(self.fields))
-
- def runTest(self):
- if not self.fields:
- return
- (
- source,
- to_unicode,
- to_unicode_status,
- to_ascii,
- to_ascii_status,
- to_ascii_t,
- to_ascii_t_status,
- ) = self.fields
- if source in _SKIP_TESTS:
- return
- if not to_unicode:
- to_unicode = source
- if not to_unicode_status:
- to_unicode_status = "[]"
- if not to_ascii:
- to_ascii = to_unicode
- if not to_ascii_status:
- to_ascii_status = to_unicode_status
- if not to_ascii_t:
- to_ascii_t = to_ascii
- if not to_ascii_t_status:
- to_ascii_t_status = to_ascii_status
-
- try:
- output = idna.decode(source, uts46=True, strict=True)
- if to_unicode_status != "[]":
- self.fail("decode() did not emit required error {} for {}".format(to_unicode, repr(source)))
- self.assertEqual(output, to_unicode, "unexpected decode() output")
- except (idna.IDNAError, UnicodeError, ValueError) as exc:
- if str(exc).startswith("Unknown"):
- raise unittest.SkipTest("Test requires support for a newer" " version of Unicode than this Python supports")
- if to_unicode_status == "[]":
- raise
-
- try:
- output = idna.encode(source, uts46=True, strict=True).decode("ascii")
- if to_ascii_status != "[]":
- self.fail("encode() did not emit required error {} for {}".format(to_ascii_status, repr(source)))
- self.assertEqual(output, to_ascii, "unexpected encode() output")
- except (idna.IDNAError, UnicodeError, ValueError) as exc:
- if str(exc).startswith("Unknown"):
- raise unittest.SkipTest("Test requires support for a newer" " version of Unicode than this Python supports")
- if to_ascii_status == "[]":
- raise
-
- try:
- output = idna.encode(source, uts46=True, strict=True, transitional=True).decode("ascii")
- if to_ascii_t_status != "[]":
- self.fail(
- "encode(transitional=True) did not emit required error {} for {}".format(to_ascii_t_status, repr(source))
- )
- self.assertEqual(output, to_ascii_t, "unexpected encode() output")
- except (idna.IDNAError, UnicodeError, ValueError) as exc:
- if str(exc).startswith("Unknown"):
- raise unittest.SkipTest("Test requires support for a newer" " version of Unicode than this Python supports")
- if to_ascii_t_status == "[]":
- raise
-
-
-def load_tests(loader, tests, pattern):
- """Create a suite of all the individual tests."""
- suite = unittest.TestSuite()
- with open(os.path.join(os.path.dirname(__file__), "IdnaTestV2.txt"), "rb") as tests_file:
- suite.addTests(TestIdnaTest(lineno, fields) for lineno, fields in parse_idna_test_table(tests_file))
- return suite
+
+class UTS46Tests(unittest.TestCase):
+
+ def test_uts46_106(self):
+ self.assertEqual(idna.decode('fass.de', uts46=True, strict=True), 'fass.de')
+ self.assertEqual(idna.encode('fass.de', uts46=True, strict=True), b'fass.de')
+
+ def test_uts46_107(self):
+ self.assertEqual(idna.decode('faß.de', uts46=True, strict=True), 'faß.de')
+ self.assertEqual(idna.encode('faß.de', uts46=True, strict=True), b'xn--fa-hia.de')
+
+ def test_uts46_108(self):
+ self.assertEqual(idna.decode('Faß.de', uts46=True, strict=True), 'faß.de')
+ self.assertEqual(idna.encode('Faß.de', uts46=True, strict=True), b'xn--fa-hia.de')
+
+ def test_uts46_109(self):
+ self.assertEqual(idna.decode('xn--fa-hia.de', uts46=True, strict=True), 'faß.de')
+ self.assertEqual(idna.encode('xn--fa-hia.de', uts46=True, strict=True), b'xn--fa-hia.de')
+
+ def test_uts46_113(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'àא', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'àא', strict=True)
+
+ def test_uts46_114(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'àא', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'àא', strict=True)
+
+ def test_uts46_115(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Àא', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Àא', strict=True)
+
+ def test_uts46_116(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Àא', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Àא', strict=True)
+
+ def test_uts46_117(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ca24w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ca24w', strict=True)
+
+ def test_uts46_123(self):
+ self.assertEqual(idna.decode('à.א̈', uts46=True, strict=True), 'à.א̈')
+ self.assertEqual(idna.encode('à.א̈', uts46=True, strict=True), b'xn--0ca.xn--ssa73l')
+
+ def test_uts46_124(self):
+ self.assertEqual(idna.decode('à.א̈', uts46=True, strict=True), 'à.א̈')
+ self.assertEqual(idna.encode('à.א̈', uts46=True, strict=True), b'xn--0ca.xn--ssa73l')
+
+ def test_uts46_125(self):
+ self.assertEqual(idna.decode('À.א̈', uts46=True, strict=True), 'à.א̈')
+ self.assertEqual(idna.encode('À.א̈', uts46=True, strict=True), b'xn--0ca.xn--ssa73l')
+
+ def test_uts46_126(self):
+ self.assertEqual(idna.decode('À.א̈', uts46=True, strict=True), 'à.א̈')
+ self.assertEqual(idna.encode('À.א̈', uts46=True, strict=True), b'xn--0ca.xn--ssa73l')
+
+ def test_uts46_127(self):
+ self.assertEqual(idna.decode('xn--0ca.xn--ssa73l', uts46=True, strict=True), 'à.א̈')
+ self.assertEqual(idna.encode('xn--0ca.xn--ssa73l', uts46=True, strict=True), b'xn--0ca.xn--ssa73l')
+
+ def test_uts46_128(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'à.א0٠א', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'à.א0٠א', strict=True)
+
+ def test_uts46_129(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'à.א0٠א', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'à.א0٠א', strict=True)
+
+ def test_uts46_130(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'À.א0٠א', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'À.א0٠א', strict=True)
+
+ def test_uts46_131(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'À.א0٠א', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'À.א0٠א', strict=True)
+
+ def test_uts46_132(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ca.xn--0-zhcb98c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ca.xn--0-zhcb98c', strict=True)
+
+ def test_uts46_133(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̈.א', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̈.א', strict=True)
+
+ def test_uts46_134(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ssa.xn--4db', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ssa.xn--4db', strict=True)
+
+ def test_uts46_135(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'à.א0٠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'à.א0٠', strict=True)
+
+ def test_uts46_136(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'à.א0٠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'à.א0٠', strict=True)
+
+ def test_uts46_137(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'À.א0٠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'À.א0٠', strict=True)
+
+ def test_uts46_138(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'À.א0٠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'À.א0٠', strict=True)
+
+ def test_uts46_139(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ca.xn--0-zhc74b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ca.xn--0-zhc74b', strict=True)
+
+ def test_uts46_145(self):
+ self.assertEqual(idna.decode('à̈.א', uts46=True, strict=True), 'à̈.א')
+ self.assertEqual(idna.encode('à̈.א', uts46=True, strict=True), b'xn--0ca81i.xn--4db')
+
+ def test_uts46_146(self):
+ self.assertEqual(idna.decode('à̈.א', uts46=True, strict=True), 'à̈.א')
+ self.assertEqual(idna.encode('à̈.א', uts46=True, strict=True), b'xn--0ca81i.xn--4db')
+
+ def test_uts46_147(self):
+ self.assertEqual(idna.decode('À̈.א', uts46=True, strict=True), 'à̈.א')
+ self.assertEqual(idna.encode('À̈.א', uts46=True, strict=True), b'xn--0ca81i.xn--4db')
+
+ def test_uts46_148(self):
+ self.assertEqual(idna.decode('À̈.א', uts46=True, strict=True), 'à̈.א')
+ self.assertEqual(idna.encode('À̈.א', uts46=True, strict=True), b'xn--0ca81i.xn--4db')
+
+ def test_uts46_149(self):
+ self.assertEqual(idna.decode('xn--0ca81i.xn--4db', uts46=True, strict=True), 'à̈.א')
+ self.assertEqual(idna.encode('xn--0ca81i.xn--4db', uts46=True, strict=True), b'xn--0ca81i.xn--4db')
+
+ def test_uts46_153(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a\u200cb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a\u200cb', strict=True)
+
+ def test_uts46_154(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A\u200cB', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A\u200cB', strict=True)
+
+ def test_uts46_155(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A\u200cb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A\u200cb', strict=True)
+
+ def test_uts46_156(self):
+ self.assertEqual(idna.decode('ab', uts46=True, strict=True), 'ab')
+ self.assertEqual(idna.encode('ab', uts46=True, strict=True), b'ab')
+
+ def test_uts46_157(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ab-j1t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ab-j1t', strict=True)
+
+ def test_uts46_158(self):
+ self.assertEqual(idna.decode('a्\u200cb', uts46=True, strict=True), 'a्\u200cb')
+ self.assertEqual(idna.encode('a्\u200cb', uts46=True, strict=True), b'xn--ab-fsf604u')
+
+ def test_uts46_159(self):
+ self.assertEqual(idna.decode('A्\u200cB', uts46=True, strict=True), 'a्\u200cb')
+ self.assertEqual(idna.encode('A्\u200cB', uts46=True, strict=True), b'xn--ab-fsf604u')
+
+ def test_uts46_160(self):
+ self.assertEqual(idna.decode('A्\u200cb', uts46=True, strict=True), 'a्\u200cb')
+ self.assertEqual(idna.encode('A्\u200cb', uts46=True, strict=True), b'xn--ab-fsf604u')
+
+ def test_uts46_161(self):
+ self.assertEqual(idna.decode('xn--ab-fsf', uts46=True, strict=True), 'a्b')
+ self.assertEqual(idna.encode('xn--ab-fsf', uts46=True, strict=True), b'xn--ab-fsf')
+
+ def test_uts46_162(self):
+ self.assertEqual(idna.decode('a्b', uts46=True, strict=True), 'a्b')
+ self.assertEqual(idna.encode('a्b', uts46=True, strict=True), b'xn--ab-fsf')
+
+ def test_uts46_163(self):
+ self.assertEqual(idna.decode('A्B', uts46=True, strict=True), 'a्b')
+ self.assertEqual(idna.encode('A्B', uts46=True, strict=True), b'xn--ab-fsf')
+
+ def test_uts46_164(self):
+ self.assertEqual(idna.decode('A्b', uts46=True, strict=True), 'a्b')
+ self.assertEqual(idna.encode('A्b', uts46=True, strict=True), b'xn--ab-fsf')
+
+ def test_uts46_165(self):
+ self.assertEqual(idna.decode('xn--ab-fsf604u', uts46=True, strict=True), 'a्\u200cb')
+ self.assertEqual(idna.encode('xn--ab-fsf604u', uts46=True, strict=True), b'xn--ab-fsf604u')
+
+ def test_uts46_166(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̈\u200c̈بb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̈\u200c̈بb', strict=True)
+
+ def test_uts46_167(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̈\u200c̈بB', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̈\u200c̈بB', strict=True)
+
+ def test_uts46_168(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b-bcba413a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b-bcba413a', strict=True)
+
+ def test_uts46_169(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b-bcba413a2w8b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b-bcba413a2w8b', strict=True)
+
+ def test_uts46_170(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'aب̈\u200c̈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'aب̈\u200c̈', strict=True)
+
+ def test_uts46_171(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Aب̈\u200c̈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Aب̈\u200c̈', strict=True)
+
+ def test_uts46_172(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-ccba213a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-ccba213a', strict=True)
+
+ def test_uts46_173(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-ccba213a5w8b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-ccba213a5w8b', strict=True)
+
+ def test_uts46_174(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'aب̈\u200c̈بb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'aب̈\u200c̈بb', strict=True)
+
+ def test_uts46_175(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Aب̈\u200c̈بB', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Aب̈\u200c̈بB', strict=True)
+
+ def test_uts46_176(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Aب̈\u200c̈بb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Aب̈\u200c̈بb', strict=True)
+
+ def test_uts46_177(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ab-uuba211bca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ab-uuba211bca', strict=True)
+
+ def test_uts46_178(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ab-uuba211bca8057b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ab-uuba211bca8057b', strict=True)
+
+ def test_uts46_179(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a\u200db', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a\u200db', strict=True)
+
+ def test_uts46_180(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A\u200dB', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A\u200dB', strict=True)
+
+ def test_uts46_181(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A\u200db', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A\u200db', strict=True)
+
+ def test_uts46_182(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ab-m1t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ab-m1t', strict=True)
+
+ def test_uts46_183(self):
+ self.assertEqual(idna.decode('a्\u200db', uts46=True, strict=True), 'a्\u200db')
+ self.assertEqual(idna.encode('a्\u200db', uts46=True, strict=True), b'xn--ab-fsf014u')
+
+ def test_uts46_184(self):
+ self.assertEqual(idna.decode('A्\u200dB', uts46=True, strict=True), 'a्\u200db')
+ self.assertEqual(idna.encode('A्\u200dB', uts46=True, strict=True), b'xn--ab-fsf014u')
+
+ def test_uts46_185(self):
+ self.assertEqual(idna.decode('A्\u200db', uts46=True, strict=True), 'a्\u200db')
+ self.assertEqual(idna.encode('A्\u200db', uts46=True, strict=True), b'xn--ab-fsf014u')
+
+ def test_uts46_186(self):
+ self.assertEqual(idna.decode('xn--ab-fsf014u', uts46=True, strict=True), 'a्\u200db')
+ self.assertEqual(idna.encode('xn--ab-fsf014u', uts46=True, strict=True), b'xn--ab-fsf014u')
+
+ def test_uts46_187(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̈\u200d̈بb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̈\u200d̈بb', strict=True)
+
+ def test_uts46_188(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̈\u200d̈بB', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̈\u200d̈بB', strict=True)
+
+ def test_uts46_189(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b-bcba413a7w8b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b-bcba413a7w8b', strict=True)
+
+ def test_uts46_190(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'aب̈\u200d̈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'aب̈\u200d̈', strict=True)
+
+ def test_uts46_191(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Aب̈\u200d̈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Aب̈\u200d̈', strict=True)
+
+ def test_uts46_192(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-ccba213abx8b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-ccba213abx8b', strict=True)
+
+ def test_uts46_193(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'aب̈\u200d̈بb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'aب̈\u200d̈بb', strict=True)
+
+ def test_uts46_194(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Aب̈\u200d̈بB', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Aب̈\u200d̈بB', strict=True)
+
+ def test_uts46_195(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Aب̈\u200d̈بb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Aب̈\u200d̈بb', strict=True)
+
+ def test_uts46_196(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ab-uuba211bca5157b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ab-uuba211bca5157b', strict=True)
+
+ def test_uts46_200(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '¡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '¡', strict=True)
+
+ def test_uts46_201(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7a', strict=True)
+
+ def test_uts46_202(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᧚', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᧚', strict=True)
+
+ def test_uts46_203(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pkf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pkf', strict=True)
+
+ def test_uts46_204(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '""', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '""', strict=True)
+
+ def test_uts46_205(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。', strict=True)
+
+ def test_uts46_206(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.', strict=True)
+
+ def test_uts46_207(self):
+ self.assertEqual(idna.decode('ꭠ', uts46=True, strict=True), 'ꭠ')
+ self.assertEqual(idna.encode('ꭠ', uts46=True, strict=True), b'xn--3y9a')
+
+ def test_uts46_208(self):
+ self.assertEqual(idna.decode('xn--3y9a', uts46=True, strict=True), 'ꭠ')
+ self.assertEqual(idna.encode('xn--3y9a', uts46=True, strict=True), b'xn--3y9a')
+
+ def test_uts46_209(self):
+ self.assertEqual(idna.decode('1234567890ä1234567890123456789012345678901234567890123456', uts46=True, strict=True), '1234567890ä1234567890123456789012345678901234567890123456')
+ self.assertRaises(idna.IDNAError, idna.encode, '1234567890ä1234567890123456789012345678901234567890123456', strict=True)
+
+ def test_uts46_210(self):
+ self.assertEqual(idna.decode('1234567890ä1234567890123456789012345678901234567890123456', uts46=True, strict=True), '1234567890ä1234567890123456789012345678901234567890123456')
+ self.assertRaises(idna.IDNAError, idna.encode, '1234567890ä1234567890123456789012345678901234567890123456', strict=True)
+
+ def test_uts46_211(self):
+ self.assertEqual(idna.decode('1234567890Ä1234567890123456789012345678901234567890123456', uts46=True, strict=True), '1234567890ä1234567890123456789012345678901234567890123456')
+ self.assertRaises(idna.IDNAError, idna.encode, '1234567890Ä1234567890123456789012345678901234567890123456', strict=True)
+
+ def test_uts46_212(self):
+ self.assertEqual(idna.decode('1234567890Ä1234567890123456789012345678901234567890123456', uts46=True, strict=True), '1234567890ä1234567890123456789012345678901234567890123456')
+ self.assertRaises(idna.IDNAError, idna.encode, '1234567890Ä1234567890123456789012345678901234567890123456', strict=True)
+
+ def test_uts46_213(self):
+ self.assertEqual(idna.decode('xn--12345678901234567890123456789012345678901234567890123456-fxe', uts46=True, strict=True), '1234567890ä1234567890123456789012345678901234567890123456')
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--12345678901234567890123456789012345678901234567890123456-fxe', strict=True)
+
+ def test_uts46_214(self):
+ self.assertEqual(idna.decode('www.eXample.cOm', uts46=True, strict=True), 'www.example.com')
+ self.assertEqual(idna.encode('www.eXample.cOm', uts46=True, strict=True), b'www.example.com')
+
+ def test_uts46_215(self):
+ self.assertEqual(idna.decode('Bücher.de', uts46=True, strict=True), 'bücher.de')
+ self.assertEqual(idna.encode('Bücher.de', uts46=True, strict=True), b'xn--bcher-kva.de')
+
+ def test_uts46_216(self):
+ self.assertEqual(idna.decode('Bücher.de', uts46=True, strict=True), 'bücher.de')
+ self.assertEqual(idna.encode('Bücher.de', uts46=True, strict=True), b'xn--bcher-kva.de')
+
+ def test_uts46_217(self):
+ self.assertEqual(idna.decode('bücher.de', uts46=True, strict=True), 'bücher.de')
+ self.assertEqual(idna.encode('bücher.de', uts46=True, strict=True), b'xn--bcher-kva.de')
+
+ def test_uts46_218(self):
+ self.assertEqual(idna.decode('bücher.de', uts46=True, strict=True), 'bücher.de')
+ self.assertEqual(idna.encode('bücher.de', uts46=True, strict=True), b'xn--bcher-kva.de')
+
+ def test_uts46_219(self):
+ self.assertEqual(idna.decode('BÜCHER.DE', uts46=True, strict=True), 'bücher.de')
+ self.assertEqual(idna.encode('BÜCHER.DE', uts46=True, strict=True), b'xn--bcher-kva.de')
+
+ def test_uts46_220(self):
+ self.assertEqual(idna.decode('BÜCHER.DE', uts46=True, strict=True), 'bücher.de')
+ self.assertEqual(idna.encode('BÜCHER.DE', uts46=True, strict=True), b'xn--bcher-kva.de')
+
+ def test_uts46_221(self):
+ self.assertEqual(idna.decode('xn--bcher-kva.de', uts46=True, strict=True), 'bücher.de')
+ self.assertEqual(idna.encode('xn--bcher-kva.de', uts46=True, strict=True), b'xn--bcher-kva.de')
+
+ def test_uts46_222(self):
+ self.assertEqual(idna.decode('ÖBB', uts46=True, strict=True), 'öbb')
+ self.assertEqual(idna.encode('ÖBB', uts46=True, strict=True), b'xn--bb-eka')
+
+ def test_uts46_223(self):
+ self.assertEqual(idna.decode('ÖBB', uts46=True, strict=True), 'öbb')
+ self.assertEqual(idna.encode('ÖBB', uts46=True, strict=True), b'xn--bb-eka')
+
+ def test_uts46_224(self):
+ self.assertEqual(idna.decode('öbb', uts46=True, strict=True), 'öbb')
+ self.assertEqual(idna.encode('öbb', uts46=True, strict=True), b'xn--bb-eka')
+
+ def test_uts46_225(self):
+ self.assertEqual(idna.decode('öbb', uts46=True, strict=True), 'öbb')
+ self.assertEqual(idna.encode('öbb', uts46=True, strict=True), b'xn--bb-eka')
+
+ def test_uts46_226(self):
+ self.assertEqual(idna.decode('Öbb', uts46=True, strict=True), 'öbb')
+ self.assertEqual(idna.encode('Öbb', uts46=True, strict=True), b'xn--bb-eka')
+
+ def test_uts46_227(self):
+ self.assertEqual(idna.decode('Öbb', uts46=True, strict=True), 'öbb')
+ self.assertEqual(idna.encode('Öbb', uts46=True, strict=True), b'xn--bb-eka')
+
+ def test_uts46_228(self):
+ self.assertEqual(idna.decode('xn--bb-eka', uts46=True, strict=True), 'öbb')
+ self.assertEqual(idna.encode('xn--bb-eka', uts46=True, strict=True), b'xn--bb-eka')
+
+ def test_uts46_229(self):
+ self.assertEqual(idna.decode('FAẞ.de', uts46=True, strict=True), 'faß.de')
+ self.assertEqual(idna.encode('FAẞ.de', uts46=True, strict=True), b'xn--fa-hia.de')
+
+ def test_uts46_230(self):
+ self.assertEqual(idna.decode('FAẞ.DE', uts46=True, strict=True), 'faß.de')
+ self.assertEqual(idna.encode('FAẞ.DE', uts46=True, strict=True), b'xn--fa-hia.de')
+
+ def test_uts46_231(self):
+ self.assertEqual(idna.decode('βόλος.com', uts46=True, strict=True), 'βόλος.com')
+ self.assertEqual(idna.encode('βόλος.com', uts46=True, strict=True), b'xn--nxasmm1c.com')
+
+ def test_uts46_232(self):
+ self.assertEqual(idna.decode('βόλος.com', uts46=True, strict=True), 'βόλος.com')
+ self.assertEqual(idna.encode('βόλος.com', uts46=True, strict=True), b'xn--nxasmm1c.com')
+
+ def test_uts46_233(self):
+ self.assertEqual(idna.decode('ΒΌΛΟΣ.COM', uts46=True, strict=True), 'βόλοσ.com')
+ self.assertEqual(idna.encode('ΒΌΛΟΣ.COM', uts46=True, strict=True), b'xn--nxasmq6b.com')
+
+ def test_uts46_234(self):
+ self.assertEqual(idna.decode('ΒΌΛΟΣ.COM', uts46=True, strict=True), 'βόλοσ.com')
+ self.assertEqual(idna.encode('ΒΌΛΟΣ.COM', uts46=True, strict=True), b'xn--nxasmq6b.com')
+
+ def test_uts46_235(self):
+ self.assertEqual(idna.decode('βόλοσ.com', uts46=True, strict=True), 'βόλοσ.com')
+ self.assertEqual(idna.encode('βόλοσ.com', uts46=True, strict=True), b'xn--nxasmq6b.com')
+
+ def test_uts46_236(self):
+ self.assertEqual(idna.decode('βόλοσ.com', uts46=True, strict=True), 'βόλοσ.com')
+ self.assertEqual(idna.encode('βόλοσ.com', uts46=True, strict=True), b'xn--nxasmq6b.com')
+
+ def test_uts46_237(self):
+ self.assertEqual(idna.decode('Βόλοσ.com', uts46=True, strict=True), 'βόλοσ.com')
+ self.assertEqual(idna.encode('Βόλοσ.com', uts46=True, strict=True), b'xn--nxasmq6b.com')
+
+ def test_uts46_238(self):
+ self.assertEqual(idna.decode('Βόλοσ.com', uts46=True, strict=True), 'βόλοσ.com')
+ self.assertEqual(idna.encode('Βόλοσ.com', uts46=True, strict=True), b'xn--nxasmq6b.com')
+
+ def test_uts46_239(self):
+ self.assertEqual(idna.decode('xn--nxasmq6b.com', uts46=True, strict=True), 'βόλοσ.com')
+ self.assertEqual(idna.encode('xn--nxasmq6b.com', uts46=True, strict=True), b'xn--nxasmq6b.com')
+
+ def test_uts46_240(self):
+ self.assertEqual(idna.decode('Βόλος.com', uts46=True, strict=True), 'βόλος.com')
+ self.assertEqual(idna.encode('Βόλος.com', uts46=True, strict=True), b'xn--nxasmm1c.com')
+
+ def test_uts46_241(self):
+ self.assertEqual(idna.decode('Βόλος.com', uts46=True, strict=True), 'βόλος.com')
+ self.assertEqual(idna.encode('Βόλος.com', uts46=True, strict=True), b'xn--nxasmm1c.com')
+
+ def test_uts46_242(self):
+ self.assertEqual(idna.decode('xn--nxasmm1c.com', uts46=True, strict=True), 'βόλος.com')
+ self.assertEqual(idna.encode('xn--nxasmm1c.com', uts46=True, strict=True), b'xn--nxasmm1c.com')
+
+ def test_uts46_243(self):
+ self.assertEqual(idna.decode('xn--nxasmm1c', uts46=True, strict=True), 'βόλος')
+ self.assertEqual(idna.encode('xn--nxasmm1c', uts46=True, strict=True), b'xn--nxasmm1c')
+
+ def test_uts46_244(self):
+ self.assertEqual(idna.decode('βόλος', uts46=True, strict=True), 'βόλος')
+ self.assertEqual(idna.encode('βόλος', uts46=True, strict=True), b'xn--nxasmm1c')
+
+ def test_uts46_245(self):
+ self.assertEqual(idna.decode('βόλος', uts46=True, strict=True), 'βόλος')
+ self.assertEqual(idna.encode('βόλος', uts46=True, strict=True), b'xn--nxasmm1c')
+
+ def test_uts46_246(self):
+ self.assertEqual(idna.decode('ΒΌΛΟΣ', uts46=True, strict=True), 'βόλοσ')
+ self.assertEqual(idna.encode('ΒΌΛΟΣ', uts46=True, strict=True), b'xn--nxasmq6b')
+
+ def test_uts46_247(self):
+ self.assertEqual(idna.decode('ΒΌΛΟΣ', uts46=True, strict=True), 'βόλοσ')
+ self.assertEqual(idna.encode('ΒΌΛΟΣ', uts46=True, strict=True), b'xn--nxasmq6b')
+
+ def test_uts46_248(self):
+ self.assertEqual(idna.decode('βόλοσ', uts46=True, strict=True), 'βόλοσ')
+ self.assertEqual(idna.encode('βόλοσ', uts46=True, strict=True), b'xn--nxasmq6b')
+
+ def test_uts46_249(self):
+ self.assertEqual(idna.decode('βόλοσ', uts46=True, strict=True), 'βόλοσ')
+ self.assertEqual(idna.encode('βόλοσ', uts46=True, strict=True), b'xn--nxasmq6b')
+
+ def test_uts46_250(self):
+ self.assertEqual(idna.decode('Βόλοσ', uts46=True, strict=True), 'βόλοσ')
+ self.assertEqual(idna.encode('Βόλοσ', uts46=True, strict=True), b'xn--nxasmq6b')
+
+ def test_uts46_251(self):
+ self.assertEqual(idna.decode('Βόλοσ', uts46=True, strict=True), 'βόλοσ')
+ self.assertEqual(idna.encode('Βόλοσ', uts46=True, strict=True), b'xn--nxasmq6b')
+
+ def test_uts46_252(self):
+ self.assertEqual(idna.decode('xn--nxasmq6b', uts46=True, strict=True), 'βόλοσ')
+ self.assertEqual(idna.encode('xn--nxasmq6b', uts46=True, strict=True), b'xn--nxasmq6b')
+
+ def test_uts46_253(self):
+ self.assertEqual(idna.decode('Βόλος', uts46=True, strict=True), 'βόλος')
+ self.assertEqual(idna.encode('Βόλος', uts46=True, strict=True), b'xn--nxasmm1c')
+
+ def test_uts46_254(self):
+ self.assertEqual(idna.decode('Βόλος', uts46=True, strict=True), 'βόλος')
+ self.assertEqual(idna.encode('Βόλος', uts46=True, strict=True), b'xn--nxasmm1c')
+
+ def test_uts46_255(self):
+ self.assertEqual(idna.decode('www.ශ්\u200dරී.com', uts46=True, strict=True), 'www.ශ්\u200dරී.com')
+ self.assertEqual(idna.encode('www.ශ්\u200dරී.com', uts46=True, strict=True), b'www.xn--10cl1a0b660p.com')
+
+ def test_uts46_256(self):
+ self.assertEqual(idna.decode('WWW.ශ්\u200dරී.COM', uts46=True, strict=True), 'www.ශ්\u200dරී.com')
+ self.assertEqual(idna.encode('WWW.ශ්\u200dරී.COM', uts46=True, strict=True), b'www.xn--10cl1a0b660p.com')
+
+ def test_uts46_257(self):
+ self.assertEqual(idna.decode('Www.ශ්\u200dරී.com', uts46=True, strict=True), 'www.ශ්\u200dරී.com')
+ self.assertEqual(idna.encode('Www.ශ්\u200dරී.com', uts46=True, strict=True), b'www.xn--10cl1a0b660p.com')
+
+ def test_uts46_258(self):
+ self.assertEqual(idna.decode('www.xn--10cl1a0b.com', uts46=True, strict=True), 'www.ශ්රී.com')
+ self.assertEqual(idna.encode('www.xn--10cl1a0b.com', uts46=True, strict=True), b'www.xn--10cl1a0b.com')
+
+ def test_uts46_259(self):
+ self.assertEqual(idna.decode('www.ශ්රී.com', uts46=True, strict=True), 'www.ශ්රී.com')
+ self.assertEqual(idna.encode('www.ශ්රී.com', uts46=True, strict=True), b'www.xn--10cl1a0b.com')
+
+ def test_uts46_260(self):
+ self.assertEqual(idna.decode('WWW.ශ්රී.COM', uts46=True, strict=True), 'www.ශ්රී.com')
+ self.assertEqual(idna.encode('WWW.ශ්රී.COM', uts46=True, strict=True), b'www.xn--10cl1a0b.com')
+
+ def test_uts46_261(self):
+ self.assertEqual(idna.decode('Www.ශ්රී.com', uts46=True, strict=True), 'www.ශ්රී.com')
+ self.assertEqual(idna.encode('Www.ශ්රී.com', uts46=True, strict=True), b'www.xn--10cl1a0b.com')
+
+ def test_uts46_262(self):
+ self.assertEqual(idna.decode('www.xn--10cl1a0b660p.com', uts46=True, strict=True), 'www.ශ්\u200dරී.com')
+ self.assertEqual(idna.encode('www.xn--10cl1a0b660p.com', uts46=True, strict=True), b'www.xn--10cl1a0b660p.com')
+
+ def test_uts46_263(self):
+ self.assertEqual(idna.decode('نامه\u200cای', uts46=True, strict=True), 'نامه\u200cای')
+ self.assertEqual(idna.encode('نامه\u200cای', uts46=True, strict=True), b'xn--mgba3gch31f060k')
+
+ def test_uts46_264(self):
+ self.assertEqual(idna.decode('xn--mgba3gch31f', uts46=True, strict=True), 'نامهای')
+ self.assertEqual(idna.encode('xn--mgba3gch31f', uts46=True, strict=True), b'xn--mgba3gch31f')
+
+ def test_uts46_265(self):
+ self.assertEqual(idna.decode('نامهای', uts46=True, strict=True), 'نامهای')
+ self.assertEqual(idna.encode('نامهای', uts46=True, strict=True), b'xn--mgba3gch31f')
+
+ def test_uts46_266(self):
+ self.assertEqual(idna.decode('xn--mgba3gch31f060k', uts46=True, strict=True), 'نامه\u200cای')
+ self.assertEqual(idna.encode('xn--mgba3gch31f060k', uts46=True, strict=True), b'xn--mgba3gch31f060k')
+
+ def test_uts46_267(self):
+ self.assertEqual(idna.decode('xn--mgba3gch31f060k.com', uts46=True, strict=True), 'نامه\u200cای.com')
+ self.assertEqual(idna.encode('xn--mgba3gch31f060k.com', uts46=True, strict=True), b'xn--mgba3gch31f060k.com')
+
+ def test_uts46_268(self):
+ self.assertEqual(idna.decode('نامه\u200cای.com', uts46=True, strict=True), 'نامه\u200cای.com')
+ self.assertEqual(idna.encode('نامه\u200cای.com', uts46=True, strict=True), b'xn--mgba3gch31f060k.com')
+
+ def test_uts46_269(self):
+ self.assertEqual(idna.decode('نامه\u200cای.COM', uts46=True, strict=True), 'نامه\u200cای.com')
+ self.assertEqual(idna.encode('نامه\u200cای.COM', uts46=True, strict=True), b'xn--mgba3gch31f060k.com')
+
+ def test_uts46_270(self):
+ self.assertEqual(idna.decode('xn--mgba3gch31f.com', uts46=True, strict=True), 'نامهای.com')
+ self.assertEqual(idna.encode('xn--mgba3gch31f.com', uts46=True, strict=True), b'xn--mgba3gch31f.com')
+
+ def test_uts46_271(self):
+ self.assertEqual(idna.decode('نامهای.com', uts46=True, strict=True), 'نامهای.com')
+ self.assertEqual(idna.encode('نامهای.com', uts46=True, strict=True), b'xn--mgba3gch31f.com')
+
+ def test_uts46_272(self):
+ self.assertEqual(idna.decode('نامهای.COM', uts46=True, strict=True), 'نامهای.com')
+ self.assertEqual(idna.encode('نامهای.COM', uts46=True, strict=True), b'xn--mgba3gch31f.com')
+
+ def test_uts46_273(self):
+ self.assertEqual(idna.decode('a.b.c。d。', uts46=True, strict=True), 'a.b.c.d.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.b.c。d。', strict=True)
+
+ def test_uts46_274(self):
+ self.assertEqual(idna.decode('a.b.c。d。', uts46=True, strict=True), 'a.b.c.d.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.b.c。d。', strict=True)
+
+ def test_uts46_275(self):
+ self.assertEqual(idna.decode('A.B.C。D。', uts46=True, strict=True), 'a.b.c.d.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.B.C。D。', strict=True)
+
+ def test_uts46_276(self):
+ self.assertEqual(idna.decode('A.b.c。D。', uts46=True, strict=True), 'a.b.c.d.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.b.c。D。', strict=True)
+
+ def test_uts46_278(self):
+ self.assertEqual(idna.decode('A.B.C。D。', uts46=True, strict=True), 'a.b.c.d.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.B.C。D。', strict=True)
+
+ def test_uts46_279(self):
+ self.assertEqual(idna.decode('A.b.c。D。', uts46=True, strict=True), 'a.b.c.d.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.b.c。D。', strict=True)
+
+ def test_uts46_280(self):
+ self.assertEqual(idna.decode('Ü.xn--tda', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.xn--tda', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_281(self):
+ self.assertEqual(idna.decode('Ü.xn--tda', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.xn--tda', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_282(self):
+ self.assertEqual(idna.decode('ü.xn--tda', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('ü.xn--tda', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_283(self):
+ self.assertEqual(idna.decode('ü.xn--tda', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('ü.xn--tda', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_284(self):
+ self.assertEqual(idna.decode('Ü.XN--TDA', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.XN--TDA', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_285(self):
+ self.assertEqual(idna.decode('Ü.XN--TDA', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.XN--TDA', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_286(self):
+ self.assertEqual(idna.decode('Ü.xn--Tda', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.xn--Tda', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_287(self):
+ self.assertEqual(idna.decode('Ü.xn--Tda', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.xn--Tda', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_288(self):
+ self.assertEqual(idna.decode('xn--tda.xn--tda', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('xn--tda.xn--tda', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_289(self):
+ self.assertEqual(idna.decode('ü.ü', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('ü.ü', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_290(self):
+ self.assertEqual(idna.decode('ü.ü', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('ü.ü', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_291(self):
+ self.assertEqual(idna.decode('Ü.Ü', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.Ü', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_292(self):
+ self.assertEqual(idna.decode('Ü.Ü', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.Ü', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_293(self):
+ self.assertEqual(idna.decode('Ü.ü', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.ü', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_294(self):
+ self.assertEqual(idna.decode('Ü.ü', uts46=True, strict=True), 'ü.ü')
+ self.assertEqual(idna.encode('Ü.ü', uts46=True, strict=True), b'xn--tda.xn--tda')
+
+ def test_uts46_295(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u-ccb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u-ccb', strict=True)
+
+ def test_uts46_296(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a⒈com', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a⒈com', strict=True)
+
+ def test_uts46_297(self):
+ self.assertEqual(idna.decode('a1.com', uts46=True, strict=True), 'a1.com')
+ self.assertEqual(idna.encode('a1.com', uts46=True, strict=True), b'a1.com')
+
+ def test_uts46_298(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A⒈COM', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A⒈COM', strict=True)
+
+ def test_uts46_299(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A⒈Com', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A⒈Com', strict=True)
+
+ def test_uts46_300(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--acom-0w1b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--acom-0w1b', strict=True)
+
+ def test_uts46_301(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-ecp.ru', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-ecp.ru', strict=True)
+
+ def test_uts46_302(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0.pt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0.pt', strict=True)
+
+ def test_uts46_303(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a.pt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a.pt', strict=True)
+
+ def test_uts46_304(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-Ä.pt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-Ä.pt', strict=True)
+
+ def test_uts46_305(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-Ä.pt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-Ä.pt', strict=True)
+
+ def test_uts46_306(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-ä.pt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-ä.pt', strict=True)
+
+ def test_uts46_307(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-ä.pt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-ä.pt', strict=True)
+
+ def test_uts46_308(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--A-Ä.PT', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--A-Ä.PT', strict=True)
+
+ def test_uts46_309(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--A-Ä.PT', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--A-Ä.PT', strict=True)
+
+ def test_uts46_310(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--A-Ä.pt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--A-Ä.pt', strict=True)
+
+ def test_uts46_311(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--A-Ä.pt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--A-Ä.pt', strict=True)
+
+ def test_uts46_312(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xn--a--gua.pt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xn--a--gua.pt', strict=True)
+
+ def test_uts46_313(self):
+ self.assertEqual(idna.decode('日本語。JP', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('日本語。JP', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_314(self):
+ self.assertEqual(idna.decode('日本語。JP', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('日本語。JP', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_315(self):
+ self.assertEqual(idna.decode('日本語。jp', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('日本語。jp', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_316(self):
+ self.assertEqual(idna.decode('日本語。Jp', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('日本語。Jp', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_317(self):
+ self.assertEqual(idna.decode('xn--wgv71a119e.jp', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('xn--wgv71a119e.jp', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_318(self):
+ self.assertEqual(idna.decode('日本語.jp', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('日本語.jp', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_319(self):
+ self.assertEqual(idna.decode('日本語.JP', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('日本語.JP', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_320(self):
+ self.assertEqual(idna.decode('日本語.Jp', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('日本語.Jp', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_321(self):
+ self.assertEqual(idna.decode('日本語。jp', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('日本語。jp', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_322(self):
+ self.assertEqual(idna.decode('日本語。Jp', uts46=True, strict=True), '日本語.jp')
+ self.assertEqual(idna.encode('日本語。Jp', uts46=True, strict=True), b'xn--wgv71a119e.jp')
+
+ def test_uts46_323(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '☕', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '☕', strict=True)
+
+ def test_uts46_324(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--53h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--53h', strict=True)
+
+ def test_uts46_325(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.aß\u200c\u200db\u200c\u200dcßßßßdςσßßßßßßßßeßßßßßßßßßßxßßßßßßßßßßyßßßßßßßß̂ßz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.aß\u200c\u200db\u200c\u200dcßßßßdςσßßßßßßßßeßßßßßßßßßßxßßßßßßßßßßyßßßßßßßß̂ßz', strict=True)
+
+ def test_uts46_326(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.ASS\u200c\u200dB\u200c\u200dCSSSSSSSSDΣΣSSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSŜSSZ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.ASS\u200c\u200dB\u200c\u200dCSSSSSSSSDΣΣSSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSŜSSZ', strict=True)
+
+ def test_uts46_327(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.ASS\u200c\u200dB\u200c\u200dCSSSSSSSSDΣΣSSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSŜSSZ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.ASS\u200c\u200dB\u200c\u200dCSSSSSSSSDΣΣSSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSŜSSZ', strict=True)
+
+ def test_uts46_328(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.ass\u200c\u200db\u200c\u200dcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.ass\u200c\u200db\u200c\u200dcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+
+ def test_uts46_329(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.ass\u200c\u200db\u200c\u200dcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.ass\u200c\u200db\u200c\u200dcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+
+ def test_uts46_330(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.Ass\u200c\u200db\u200c\u200dcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.Ass\u200c\u200db\u200c\u200dcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+
+ def test_uts46_331(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.Ass\u200c\u200db\u200c\u200dcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.Ass\u200c\u200db\u200c\u200dcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+
+ def test_uts46_332(self):
+ self.assertEqual(idna.decode('1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa', uts46=True, strict=True), '1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz')
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa', strict=True)
+
+ def test_uts46_333(self):
+ self.assertEqual(idna.decode('1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', uts46=True, strict=True), '1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz')
+ self.assertRaises(idna.IDNAError, idna.encode, '1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+
+ def test_uts46_334(self):
+ self.assertEqual(idna.decode('1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', uts46=True, strict=True), '1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz')
+ self.assertRaises(idna.IDNAError, idna.encode, '1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+
+ def test_uts46_335(self):
+ self.assertEqual(idna.decode('1.ASSBCSSSSSSSSDΣΣSSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSŜSSZ', uts46=True, strict=True), '1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz')
+ self.assertRaises(idna.IDNAError, idna.encode, '1.ASSBCSSSSSSSSDΣΣSSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSŜSSZ', strict=True)
+
+ def test_uts46_336(self):
+ self.assertEqual(idna.decode('1.ASSBCSSSSSSSSDΣΣSSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSŜSSZ', uts46=True, strict=True), '1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz')
+ self.assertRaises(idna.IDNAError, idna.encode, '1.ASSBCSSSSSSSSDΣΣSSSSSSSSSSSSSSSSESSSSSSSSSSSSSSSSSSSSXSSSSSSSSSSSSSSSSSSSSYSSSSSSSSSSSSSSSŜSSZ', strict=True)
+
+ def test_uts46_337(self):
+ self.assertEqual(idna.decode('1.Assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', uts46=True, strict=True), '1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz')
+ self.assertRaises(idna.IDNAError, idna.encode, '1.Assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+
+ def test_uts46_338(self):
+ self.assertEqual(idna.decode('1.Assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', uts46=True, strict=True), '1.assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz')
+ self.assertRaises(idna.IDNAError, idna.encode, '1.Assbcssssssssdσσssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssŝssz', strict=True)
+
+ def test_uts46_339(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa69989dba9gc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--assbcssssssssdssssssssssssssssessssssssssssssssssssxssssssssssssssssssssysssssssssssssssssz-pxq1419aa69989dba9gc', strict=True)
+
+ def test_uts46_340(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.Aß\u200c\u200db\u200c\u200dcßßßßdςσßßßßßßßßeßßßßßßßßßßxßßßßßßßßßßyßßßßßßßß̂ßz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.Aß\u200c\u200db\u200c\u200dcßßßßdςσßßßßßßßßeßßßßßßßßßßxßßßßßßßßßßyßßßßßßßß̂ßz', strict=True)
+
+ def test_uts46_341(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--abcdexyz-qyacaaabaaaaaaabaaaaaaaaabaaaaaaaaabaaaaaaaa010ze2isb1140zba8cc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--abcdexyz-qyacaaabaaaaaaabaaaaaaaaabaaaaaaaaabaaaaaaaa010ze2isb1140zba8cc', strict=True)
+
+ def test_uts46_342(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cx\u200dn\u200c-\u200d-bß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cx\u200dn\u200c-\u200d-bß', strict=True)
+
+ def test_uts46_343(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cX\u200dN\u200c-\u200d-BSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cX\u200dN\u200c-\u200d-BSS', strict=True)
+
+ def test_uts46_344(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cx\u200dn\u200c-\u200d-bss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cx\u200dn\u200c-\u200d-bss', strict=True)
+
+ def test_uts46_345(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cX\u200dn\u200c-\u200d-Bss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cX\u200dn\u200c-\u200d-Bss', strict=True)
+
+ def test_uts46_346(self):
+ self.assertEqual(idna.decode('xn--bss', uts46=True, strict=True), '夙')
+ self.assertEqual(idna.encode('xn--bss', uts46=True, strict=True), b'xn--bss')
+
+ def test_uts46_347(self):
+ self.assertEqual(idna.decode('夙', uts46=True, strict=True), '夙')
+ self.assertEqual(idna.encode('夙', uts46=True, strict=True), b'xn--bss')
+
+ def test_uts46_348(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xn--bss-7z6ccid', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xn--bss-7z6ccid', strict=True)
+
+ def test_uts46_349(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cX\u200dn\u200c-\u200d-Bß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cX\u200dn\u200c-\u200d-Bß', strict=True)
+
+ def test_uts46_350(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xn--b-pqa5796ccahd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xn--b-pqa5796ccahd', strict=True)
+
+ def test_uts46_351(self):
+ self.assertEqual(idna.decode('ˣ͏ℕ\u200b﹣\xad-᠌ℬ︀ſ\u2064𝔰󠇯ffl', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('ˣ͏ℕ\u200b﹣\xad-᠌ℬ︀ſ\u2064𝔰󠇯ffl', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_352(self):
+ self.assertEqual(idna.decode('x͏N\u200b-\xad-᠌B︀s\u2064s󠇯ffl', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('x͏N\u200b-\xad-᠌B︀s\u2064s󠇯ffl', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_353(self):
+ self.assertEqual(idna.decode('x͏n\u200b-\xad-᠌b︀s\u2064s󠇯ffl', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('x͏n\u200b-\xad-᠌b︀s\u2064s󠇯ffl', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_354(self):
+ self.assertEqual(idna.decode('X͏N\u200b-\xad-᠌B︀S\u2064S󠇯FFL', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('X͏N\u200b-\xad-᠌B︀S\u2064S󠇯FFL', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_355(self):
+ self.assertEqual(idna.decode('X͏n\u200b-\xad-᠌B︀s\u2064s󠇯ffl', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('X͏n\u200b-\xad-᠌B︀s\u2064s󠇯ffl', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_356(self):
+ self.assertEqual(idna.decode('xn--bssffl', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('xn--bssffl', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_357(self):
+ self.assertEqual(idna.decode('夡夞夜夙', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('夡夞夜夙', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_358(self):
+ self.assertEqual(idna.decode('ˣ͏ℕ\u200b﹣\xad-᠌ℬ︀S\u2064𝔰󠇯FFL', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('ˣ͏ℕ\u200b﹣\xad-᠌ℬ︀S\u2064𝔰󠇯FFL', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_359(self):
+ self.assertEqual(idna.decode('x͏N\u200b-\xad-᠌B︀S\u2064s󠇯FFL', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('x͏N\u200b-\xad-᠌B︀S\u2064s󠇯FFL', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_360(self):
+ self.assertEqual(idna.decode('ˣ͏ℕ\u200b﹣\xad-᠌ℬ︀s\u2064𝔰󠇯ffl', uts46=True, strict=True), '夡夞夜夙')
+ self.assertEqual(idna.encode('ˣ͏ℕ\u200b﹣\xad-᠌ℬ︀s\u2064𝔰󠇯ffl', uts46=True, strict=True), b'xn--bssffl')
+
+ def test_uts46_361(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertEqual(idna.encode('123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), b'123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+
+ def test_uts46_363(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', strict=True)
+
+ def test_uts46_364(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', strict=True)
+
+ def test_uts46_365(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', strict=True)
+
+ def test_uts46_366(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901234.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', strict=True)
+
+ def test_uts46_367(self):
+ self.assertEqual(idna.decode('ä1234567890123456789012345678901234567890123456789012345', uts46=True, strict=True), 'ä1234567890123456789012345678901234567890123456789012345')
+ self.assertEqual(idna.encode('ä1234567890123456789012345678901234567890123456789012345', uts46=True, strict=True), b'xn--1234567890123456789012345678901234567890123456789012345-9te')
+
+ def test_uts46_368(self):
+ self.assertEqual(idna.decode('ä1234567890123456789012345678901234567890123456789012345', uts46=True, strict=True), 'ä1234567890123456789012345678901234567890123456789012345')
+ self.assertEqual(idna.encode('ä1234567890123456789012345678901234567890123456789012345', uts46=True, strict=True), b'xn--1234567890123456789012345678901234567890123456789012345-9te')
+
+ def test_uts46_369(self):
+ self.assertEqual(idna.decode('Ä1234567890123456789012345678901234567890123456789012345', uts46=True, strict=True), 'ä1234567890123456789012345678901234567890123456789012345')
+ self.assertEqual(idna.encode('Ä1234567890123456789012345678901234567890123456789012345', uts46=True, strict=True), b'xn--1234567890123456789012345678901234567890123456789012345-9te')
+
+ def test_uts46_370(self):
+ self.assertEqual(idna.decode('Ä1234567890123456789012345678901234567890123456789012345', uts46=True, strict=True), 'ä1234567890123456789012345678901234567890123456789012345')
+ self.assertEqual(idna.encode('Ä1234567890123456789012345678901234567890123456789012345', uts46=True, strict=True), b'xn--1234567890123456789012345678901234567890123456789012345-9te')
+
+ def test_uts46_371(self):
+ self.assertEqual(idna.decode('xn--1234567890123456789012345678901234567890123456789012345-9te', uts46=True, strict=True), 'ä1234567890123456789012345678901234567890123456789012345')
+ self.assertEqual(idna.encode('xn--1234567890123456789012345678901234567890123456789012345-9te', uts46=True, strict=True), b'xn--1234567890123456789012345678901234567890123456789012345-9te')
+
+ def test_uts46_372(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertEqual(idna.encode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), b'123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+
+ def test_uts46_373(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertEqual(idna.encode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), b'123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+
+ def test_uts46_374(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertEqual(idna.encode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B', uts46=True, strict=True), b'123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+
+ def test_uts46_375(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertEqual(idna.encode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B', uts46=True, strict=True), b'123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+
+ def test_uts46_376(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertEqual(idna.encode('123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), b'123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+
+ def test_uts46_378(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.', strict=True)
+
+ def test_uts46_379(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.', strict=True)
+
+ def test_uts46_380(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B.', strict=True)
+
+ def test_uts46_382(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', strict=True)
+
+ def test_uts46_383(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', strict=True)
+
+ def test_uts46_384(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C', strict=True)
+
+ def test_uts46_385(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901C', strict=True)
+
+ def test_uts46_386(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', strict=True)
+
+ def test_uts46_387(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', strict=True)
+
+ def test_uts46_388(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', strict=True)
+
+ def test_uts46_389(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A', strict=True)
+
+ def test_uts46_390(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A', strict=True)
+
+ def test_uts46_391(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', strict=True)
+
+ def test_uts46_392(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', strict=True)
+
+ def test_uts46_393(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', strict=True)
+
+ def test_uts46_394(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.', strict=True)
+
+ def test_uts46_395(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789A.', strict=True)
+
+ def test_uts46_396(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', strict=True)
+
+ def test_uts46_397(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', strict=True)
+
+ def test_uts46_398(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', strict=True)
+
+ def test_uts46_399(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B', strict=True)
+
+ def test_uts46_400(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890B', strict=True)
+
+ def test_uts46_401(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.xn--12345678901234567890123456789012345678901234567890123456-fxe.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', strict=True)
+
+ def test_uts46_402(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.b..-q--a-.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.b..-q--a-.e', strict=True)
+
+ def test_uts46_403(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.b..-q--ä-.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.b..-q--ä-.e', strict=True)
+
+ def test_uts46_404(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.b..-q--ä-.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.b..-q--ä-.e', strict=True)
+
+ def test_uts46_405(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A.B..-Q--Ä-.E', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.B..-Q--Ä-.E', strict=True)
+
+ def test_uts46_406(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A.B..-Q--Ä-.E', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.B..-Q--Ä-.E', strict=True)
+
+ def test_uts46_407(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A.b..-Q--Ä-.E', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.b..-Q--Ä-.E', strict=True)
+
+ def test_uts46_408(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A.b..-Q--Ä-.E', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.b..-Q--Ä-.E', strict=True)
+
+ def test_uts46_409(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.b..xn---q----jra.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.b..xn---q----jra.e', strict=True)
+
+ def test_uts46_410(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a..c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a..c', strict=True)
+
+ def test_uts46_411(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.-b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.-b.', strict=True)
+
+ def test_uts46_412(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.b-.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.b-.c', strict=True)
+
+ def test_uts46_413(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.-.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.-.c', strict=True)
+
+ def test_uts46_414(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.bc--de.f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.bc--de.f', strict=True)
+
+ def test_uts46_415(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xn---epa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xn---epa', strict=True)
+
+ def test_uts46_416(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.\xad.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.\xad.c', strict=True)
+
+ def test_uts46_417(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.\xad.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.\xad.c', strict=True)
+
+ def test_uts46_418(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.\xad.C', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.\xad.C', strict=True)
+
+ def test_uts46_419(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.\xad.C', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.\xad.C', strict=True)
+
+ def test_uts46_420(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4ca..c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4ca..c', strict=True)
+
+ def test_uts46_421(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.-b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.-b.', strict=True)
+
+ def test_uts46_422(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.-b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.-b.', strict=True)
+
+ def test_uts46_423(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.-B.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.-B.', strict=True)
+
+ def test_uts46_424(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.-B.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.-B.', strict=True)
+
+ def test_uts46_425(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4ca.-b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4ca.-b.', strict=True)
+
+ def test_uts46_426(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.b-.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.b-.c', strict=True)
+
+ def test_uts46_427(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.b-.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.b-.c', strict=True)
+
+ def test_uts46_428(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.B-.C', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.B-.C', strict=True)
+
+ def test_uts46_429(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.B-.C', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.B-.C', strict=True)
+
+ def test_uts46_430(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.b-.C', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.b-.C', strict=True)
+
+ def test_uts46_431(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.b-.C', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.b-.C', strict=True)
+
+ def test_uts46_432(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4ca.b-.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4ca.b-.c', strict=True)
+
+ def test_uts46_433(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.-.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.-.c', strict=True)
+
+ def test_uts46_434(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.-.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.-.c', strict=True)
+
+ def test_uts46_435(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.-.C', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.-.C', strict=True)
+
+ def test_uts46_436(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.-.C', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.-.C', strict=True)
+
+ def test_uts46_437(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4ca.-.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4ca.-.c', strict=True)
+
+ def test_uts46_438(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.bc--de.f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.bc--de.f', strict=True)
+
+ def test_uts46_439(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ä.bc--de.f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ä.bc--de.f', strict=True)
+
+ def test_uts46_440(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.BC--DE.F', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.BC--DE.F', strict=True)
+
+ def test_uts46_441(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.BC--DE.F', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.BC--DE.F', strict=True)
+
+ def test_uts46_442(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.bc--De.f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.bc--De.f', strict=True)
+
+ def test_uts46_443(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ä.bc--De.f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ä.bc--De.f', strict=True)
+
+ def test_uts46_444(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4ca.bc--de.f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4ca.bc--de.f', strict=True)
+
+ def test_uts46_445(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.b.̈c.d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.b.̈c.d', strict=True)
+
+ def test_uts46_446(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A.B.̈C.D', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.B.̈C.D', strict=True)
+
+ def test_uts46_447(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A.b.̈c.d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A.b.̈c.d', strict=True)
+
+ def test_uts46_448(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a.b.xn--c-bcb.d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a.b.xn--c-bcb.d', strict=True)
+
+ def test_uts46_449(self):
+ self.assertEqual(idna.decode('A0', uts46=True, strict=True), 'a0')
+ self.assertEqual(idna.encode('A0', uts46=True, strict=True), b'a0')
+
+ def test_uts46_450(self):
+ self.assertEqual(idna.decode('0A', uts46=True, strict=True), '0a')
+ self.assertEqual(idna.encode('0A', uts46=True, strict=True), b'0a')
+
+ def test_uts46_455(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'b-.א', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'b-.א', strict=True)
+
+ def test_uts46_456(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'B-.א', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'B-.א', strict=True)
+
+ def test_uts46_457(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'b-.xn--4db', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'b-.xn--4db', strict=True)
+
+ def test_uts46_458(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'd.xn----dha.xn--4db', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'd.xn----dha.xn--4db', strict=True)
+
+ def test_uts46_459(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'aא', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'aא', strict=True)
+
+ def test_uts46_460(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Aא', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Aא', strict=True)
+
+ def test_uts46_461(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-0hc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-0hc', strict=True)
+
+ def test_uts46_462(self):
+ self.assertEqual(idna.decode('אׇ', uts46=True, strict=True), 'אׇ')
+ self.assertEqual(idna.encode('אׇ', uts46=True, strict=True), b'xn--vdbr')
+
+ def test_uts46_463(self):
+ self.assertEqual(idna.decode('xn--vdbr', uts46=True, strict=True), 'אׇ')
+ self.assertEqual(idna.encode('xn--vdbr', uts46=True, strict=True), b'xn--vdbr')
+
+ def test_uts46_464(self):
+ self.assertEqual(idna.decode('א9ׇ', uts46=True, strict=True), 'א9ׇ')
+ self.assertEqual(idna.encode('א9ׇ', uts46=True, strict=True), b'xn--9-ihcz')
+
+ def test_uts46_465(self):
+ self.assertEqual(idna.decode('xn--9-ihcz', uts46=True, strict=True), 'א9ׇ')
+ self.assertEqual(idna.encode('xn--9-ihcz', uts46=True, strict=True), b'xn--9-ihcz')
+
+ def test_uts46_466(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'אaׇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'אaׇ', strict=True)
+
+ def test_uts46_467(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'אAׇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'אAׇ', strict=True)
+
+ def test_uts46_468(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a-ihcz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a-ihcz', strict=True)
+
+ def test_uts46_469(self):
+ self.assertEqual(idna.decode('את', uts46=True, strict=True), 'את')
+ self.assertEqual(idna.encode('את', uts46=True, strict=True), b'xn--4db6c')
+
+ def test_uts46_470(self):
+ self.assertEqual(idna.decode('xn--4db6c', uts46=True, strict=True), 'את')
+ self.assertEqual(idna.encode('xn--4db6c', uts46=True, strict=True), b'xn--4db6c')
+
+ def test_uts46_471(self):
+ self.assertEqual(idna.decode('א׳ת', uts46=True, strict=True), 'א׳ת')
+ self.assertEqual(idna.encode('א׳ת', uts46=True, strict=True), b'xn--4db6c0a')
+
+ def test_uts46_472(self):
+ self.assertEqual(idna.decode('xn--4db6c0a', uts46=True, strict=True), 'א׳ת')
+ self.assertEqual(idna.encode('xn--4db6c0a', uts46=True, strict=True), b'xn--4db6c0a')
+
+ def test_uts46_473(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'aאTz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'aאTz', strict=True)
+
+ def test_uts46_474(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'aאtz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'aאtz', strict=True)
+
+ def test_uts46_475(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'AאTZ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'AאTZ', strict=True)
+
+ def test_uts46_476(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Aאtz', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Aאtz', strict=True)
+
+ def test_uts46_477(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--atz-qpe', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--atz-qpe', strict=True)
+
+ def test_uts46_478(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'אTת', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'אTת', strict=True)
+
+ def test_uts46_479(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'אtת', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'אtת', strict=True)
+
+ def test_uts46_480(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t-zhc3f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t-zhc3f', strict=True)
+
+ def test_uts46_481(self):
+ self.assertEqual(idna.decode('א7ת', uts46=True, strict=True), 'א7ת')
+ self.assertEqual(idna.encode('א7ת', uts46=True, strict=True), b'xn--7-zhc3f')
+
+ def test_uts46_482(self):
+ self.assertEqual(idna.decode('xn--7-zhc3f', uts46=True, strict=True), 'א7ת')
+ self.assertEqual(idna.encode('xn--7-zhc3f', uts46=True, strict=True), b'xn--7-zhc3f')
+
+ def test_uts46_483(self):
+ self.assertEqual(idna.decode('א٧ת', uts46=True, strict=True), 'א٧ת')
+ self.assertEqual(idna.encode('א٧ת', uts46=True, strict=True), b'xn--4db6c6t')
+
+ def test_uts46_484(self):
+ self.assertEqual(idna.decode('xn--4db6c6t', uts46=True, strict=True), 'א٧ת')
+ self.assertEqual(idna.encode('xn--4db6c6t', uts46=True, strict=True), b'xn--4db6c6t')
+
+ def test_uts46_485(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a7٧z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a7٧z', strict=True)
+
+ def test_uts46_486(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A7٧Z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A7٧Z', strict=True)
+
+ def test_uts46_487(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A7٧z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A7٧z', strict=True)
+
+ def test_uts46_488(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--a7z-06e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--a7z-06e', strict=True)
+
+ def test_uts46_489(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'א7٧ת', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'א7٧ת', strict=True)
+
+ def test_uts46_490(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7-zhc3fty', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7-zhc3fty', strict=True)
+
+ def test_uts46_491(self):
+ self.assertEqual(idna.decode('ஹ்\u200d', uts46=True, strict=True), 'ஹ்\u200d')
+ self.assertEqual(idna.encode('ஹ்\u200d', uts46=True, strict=True), b'xn--dmc4b194h')
+
+ def test_uts46_492(self):
+ self.assertEqual(idna.decode('xn--dmc4b', uts46=True, strict=True), 'ஹ்')
+ self.assertEqual(idna.encode('xn--dmc4b', uts46=True, strict=True), b'xn--dmc4b')
+
+ def test_uts46_493(self):
+ self.assertEqual(idna.decode('ஹ்', uts46=True, strict=True), 'ஹ்')
+ self.assertEqual(idna.encode('ஹ்', uts46=True, strict=True), b'xn--dmc4b')
+
+ def test_uts46_494(self):
+ self.assertEqual(idna.decode('xn--dmc4b194h', uts46=True, strict=True), 'ஹ்\u200d')
+ self.assertEqual(idna.encode('xn--dmc4b194h', uts46=True, strict=True), b'xn--dmc4b194h')
+
+ def test_uts46_495(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ஹ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ஹ\u200d', strict=True)
+
+ def test_uts46_496(self):
+ self.assertEqual(idna.decode('xn--dmc', uts46=True, strict=True), 'ஹ')
+ self.assertEqual(idna.encode('xn--dmc', uts46=True, strict=True), b'xn--dmc')
+
+ def test_uts46_497(self):
+ self.assertEqual(idna.decode('ஹ', uts46=True, strict=True), 'ஹ')
+ self.assertEqual(idna.encode('ஹ', uts46=True, strict=True), b'xn--dmc')
+
+ def test_uts46_498(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dmc225h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dmc225h', strict=True)
+
+ def test_uts46_499(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d', strict=True)
+
+ def test_uts46_500(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug', strict=True)
+
+ def test_uts46_501(self):
+ self.assertEqual(idna.decode('ஹ்\u200c', uts46=True, strict=True), 'ஹ்\u200c')
+ self.assertEqual(idna.encode('ஹ்\u200c', uts46=True, strict=True), b'xn--dmc4by94h')
+
+ def test_uts46_502(self):
+ self.assertEqual(idna.decode('xn--dmc4by94h', uts46=True, strict=True), 'ஹ்\u200c')
+ self.assertEqual(idna.encode('xn--dmc4by94h', uts46=True, strict=True), b'xn--dmc4by94h')
+
+ def test_uts46_503(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ஹ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ஹ\u200c', strict=True)
+
+ def test_uts46_504(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dmc025h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dmc025h', strict=True)
+
+ def test_uts46_505(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c', strict=True)
+
+ def test_uts46_506(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug', strict=True)
+
+ def test_uts46_507(self):
+ self.assertEqual(idna.decode('لٰ\u200cۭۯ', uts46=True, strict=True), 'لٰ\u200cۭۯ')
+ self.assertEqual(idna.encode('لٰ\u200cۭۯ', uts46=True, strict=True), b'xn--ghb2gxqia7523a')
+
+ def test_uts46_508(self):
+ self.assertEqual(idna.decode('xn--ghb2gxqia', uts46=True, strict=True), 'لٰۭۯ')
+ self.assertEqual(idna.encode('xn--ghb2gxqia', uts46=True, strict=True), b'xn--ghb2gxqia')
+
+ def test_uts46_509(self):
+ self.assertEqual(idna.decode('لٰۭۯ', uts46=True, strict=True), 'لٰۭۯ')
+ self.assertEqual(idna.encode('لٰۭۯ', uts46=True, strict=True), b'xn--ghb2gxqia')
+
+ def test_uts46_510(self):
+ self.assertEqual(idna.decode('xn--ghb2gxqia7523a', uts46=True, strict=True), 'لٰ\u200cۭۯ')
+ self.assertEqual(idna.encode('xn--ghb2gxqia7523a', uts46=True, strict=True), b'xn--ghb2gxqia7523a')
+
+ def test_uts46_511(self):
+ self.assertEqual(idna.decode('لٰ\u200cۯ', uts46=True, strict=True), 'لٰ\u200cۯ')
+ self.assertEqual(idna.encode('لٰ\u200cۯ', uts46=True, strict=True), b'xn--ghb2g3qq34f')
+
+ def test_uts46_512(self):
+ self.assertEqual(idna.decode('xn--ghb2g3q', uts46=True, strict=True), 'لٰۯ')
+ self.assertEqual(idna.encode('xn--ghb2g3q', uts46=True, strict=True), b'xn--ghb2g3q')
+
+ def test_uts46_513(self):
+ self.assertEqual(idna.decode('لٰۯ', uts46=True, strict=True), 'لٰۯ')
+ self.assertEqual(idna.encode('لٰۯ', uts46=True, strict=True), b'xn--ghb2g3q')
+
+ def test_uts46_514(self):
+ self.assertEqual(idna.decode('xn--ghb2g3qq34f', uts46=True, strict=True), 'لٰ\u200cۯ')
+ self.assertEqual(idna.encode('xn--ghb2g3qq34f', uts46=True, strict=True), b'xn--ghb2g3qq34f')
+
+ def test_uts46_515(self):
+ self.assertEqual(idna.decode('ل\u200cۭۯ', uts46=True, strict=True), 'ل\u200cۭۯ')
+ self.assertEqual(idna.encode('ل\u200cۭۯ', uts46=True, strict=True), b'xn--ghb25aga828w')
+
+ def test_uts46_516(self):
+ self.assertEqual(idna.decode('xn--ghb25aga', uts46=True, strict=True), 'لۭۯ')
+ self.assertEqual(idna.encode('xn--ghb25aga', uts46=True, strict=True), b'xn--ghb25aga')
+
+ def test_uts46_517(self):
+ self.assertEqual(idna.decode('لۭۯ', uts46=True, strict=True), 'لۭۯ')
+ self.assertEqual(idna.encode('لۭۯ', uts46=True, strict=True), b'xn--ghb25aga')
+
+ def test_uts46_518(self):
+ self.assertEqual(idna.decode('xn--ghb25aga828w', uts46=True, strict=True), 'ل\u200cۭۯ')
+ self.assertEqual(idna.encode('xn--ghb25aga828w', uts46=True, strict=True), b'xn--ghb25aga828w')
+
+ def test_uts46_519(self):
+ self.assertEqual(idna.decode('ل\u200cۯ', uts46=True, strict=True), 'ل\u200cۯ')
+ self.assertEqual(idna.encode('ل\u200cۯ', uts46=True, strict=True), b'xn--ghb65a953d')
+
+ def test_uts46_520(self):
+ self.assertEqual(idna.decode('xn--ghb65a', uts46=True, strict=True), 'لۯ')
+ self.assertEqual(idna.encode('xn--ghb65a', uts46=True, strict=True), b'xn--ghb65a')
+
+ def test_uts46_521(self):
+ self.assertEqual(idna.decode('لۯ', uts46=True, strict=True), 'لۯ')
+ self.assertEqual(idna.encode('لۯ', uts46=True, strict=True), b'xn--ghb65a')
+
+ def test_uts46_522(self):
+ self.assertEqual(idna.decode('xn--ghb65a953d', uts46=True, strict=True), 'ل\u200cۯ')
+ self.assertEqual(idna.encode('xn--ghb65a953d', uts46=True, strict=True), b'xn--ghb65a953d')
+
+ def test_uts46_523(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لٰ\u200cۭ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لٰ\u200cۭ', strict=True)
+
+ def test_uts46_524(self):
+ self.assertEqual(idna.decode('xn--ghb2gxq', uts46=True, strict=True), 'لٰۭ')
+ self.assertEqual(idna.encode('xn--ghb2gxq', uts46=True, strict=True), b'xn--ghb2gxq')
+
+ def test_uts46_525(self):
+ self.assertEqual(idna.decode('لٰۭ', uts46=True, strict=True), 'لٰۭ')
+ self.assertEqual(idna.encode('لٰۭ', uts46=True, strict=True), b'xn--ghb2gxq')
+
+ def test_uts46_526(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ghb2gxqy34f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ghb2gxqy34f', strict=True)
+
+ def test_uts46_527(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۯ\u200cۯ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۯ\u200cۯ', strict=True)
+
+ def test_uts46_528(self):
+ self.assertEqual(idna.decode('xn--cmba', uts46=True, strict=True), 'ۯۯ')
+ self.assertEqual(idna.encode('xn--cmba', uts46=True, strict=True), b'xn--cmba')
+
+ def test_uts46_529(self):
+ self.assertEqual(idna.decode('ۯۯ', uts46=True, strict=True), 'ۯۯ')
+ self.assertEqual(idna.encode('ۯۯ', uts46=True, strict=True), b'xn--cmba')
+
+ def test_uts46_530(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cmba004q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cmba004q', strict=True)
+
+ def test_uts46_531(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ل\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ل\u200c', strict=True)
+
+ def test_uts46_532(self):
+ self.assertEqual(idna.decode('xn--ghb', uts46=True, strict=True), 'ل')
+ self.assertEqual(idna.encode('xn--ghb', uts46=True, strict=True), b'xn--ghb')
+
+ def test_uts46_533(self):
+ self.assertEqual(idna.decode('ل', uts46=True, strict=True), 'ل')
+ self.assertEqual(idna.encode('ل', uts46=True, strict=True), b'xn--ghb')
+
+ def test_uts46_534(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ghb413k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ghb413k', strict=True)
+
+ def test_uts46_535(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a。。b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a。。b', strict=True)
+
+ def test_uts46_536(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A。。B', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A。。B', strict=True)
+
+ def test_uts46_537(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a..b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a..b', strict=True)
+
+ def test_uts46_538(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。。ڹ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。。ڹ\u200c', strict=True)
+
+ def test_uts46_539(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..xn--skb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..xn--skb', strict=True)
+
+ def test_uts46_540(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug..xn--skb080k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug..xn--skb080k', strict=True)
+
+ def test_uts46_541(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'א0٠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'א0٠', strict=True)
+
+ def test_uts46_542(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0-zhc74b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0-zhc74b', strict=True)
+
+ def test_uts46_543(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '$', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '$', strict=True)
+
+ def test_uts46_544(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⑷.four', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⑷.four', strict=True)
+
+ def test_uts46_545(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '(4).four', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '(4).four', strict=True)
+
+ def test_uts46_546(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⑷.FOUR', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⑷.FOUR', strict=True)
+
+ def test_uts46_547(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⑷.Four', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⑷.Four', strict=True)
+
+ def test_uts46_548(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'a\ud900z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'a\ud900z', strict=True)
+
+ def test_uts46_549(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'A\ud900Z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'A\ud900Z', strict=True)
+
+ def test_uts46_550(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--', strict=True)
+
+ def test_uts46_551(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---', strict=True)
+
+ def test_uts46_552(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ASCII-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ASCII-', strict=True)
+
+ def test_uts46_553(self):
+ self.assertEqual(idna.decode('ascii', uts46=True, strict=True), 'ascii')
+ self.assertEqual(idna.encode('ascii', uts46=True, strict=True), b'ascii')
+
+ def test_uts46_554(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--unicode-.org', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--unicode-.org', strict=True)
+
+ def test_uts46_555(self):
+ self.assertEqual(idna.decode('unicode.org', uts46=True, strict=True), 'unicode.org')
+ self.assertEqual(idna.encode('unicode.org', uts46=True, strict=True), b'unicode.org')
+
+ def test_uts46_556(self):
+ self.assertEqual(idna.decode('陋㛼当𤎫竮䗗', uts46=True, strict=True), '陋㛼当𤎫竮䗗')
+ self.assertEqual(idna.encode('陋㛼当𤎫竮䗗', uts46=True, strict=True), b'xn--snl253bgitxhzwu2arn60c')
+
+ def test_uts46_557(self):
+ self.assertEqual(idna.decode('陋㛼当𤎫竮䗗', uts46=True, strict=True), '陋㛼当𤎫竮䗗')
+ self.assertEqual(idna.encode('陋㛼当𤎫竮䗗', uts46=True, strict=True), b'xn--snl253bgitxhzwu2arn60c')
+
+ def test_uts46_558(self):
+ self.assertEqual(idna.decode('xn--snl253bgitxhzwu2arn60c', uts46=True, strict=True), '陋㛼当𤎫竮䗗')
+ self.assertEqual(idna.encode('xn--snl253bgitxhzwu2arn60c', uts46=True, strict=True), b'xn--snl253bgitxhzwu2arn60c')
+
+ def test_uts46_559(self):
+ self.assertEqual(idna.decode('電𡍪弳䎫窮䵗', uts46=True, strict=True), '電𡍪弳䎫窮䵗')
+ self.assertEqual(idna.encode('電𡍪弳䎫窮䵗', uts46=True, strict=True), b'xn--kbo60w31ob3z6t3av9z5b')
+
+ def test_uts46_560(self):
+ self.assertEqual(idna.decode('xn--kbo60w31ob3z6t3av9z5b', uts46=True, strict=True), '電𡍪弳䎫窮䵗')
+ self.assertEqual(idna.encode('xn--kbo60w31ob3z6t3av9z5b', uts46=True, strict=True), b'xn--kbo60w31ob3z6t3av9z5b')
+
+ def test_uts46_561(self):
+ self.assertEqual(idna.decode('xn--A-1ga', uts46=True, strict=True), 'aö')
+ self.assertEqual(idna.encode('xn--A-1ga', uts46=True, strict=True), b'xn--a-1ga')
+
+ def test_uts46_562(self):
+ self.assertEqual(idna.decode('aö', uts46=True, strict=True), 'aö')
+ self.assertEqual(idna.encode('aö', uts46=True, strict=True), b'xn--a-1ga')
+
+ def test_uts46_563(self):
+ self.assertEqual(idna.decode('aö', uts46=True, strict=True), 'aö')
+ self.assertEqual(idna.encode('aö', uts46=True, strict=True), b'xn--a-1ga')
+
+ def test_uts46_564(self):
+ self.assertEqual(idna.decode('AÖ', uts46=True, strict=True), 'aö')
+ self.assertEqual(idna.encode('AÖ', uts46=True, strict=True), b'xn--a-1ga')
+
+ def test_uts46_565(self):
+ self.assertEqual(idna.decode('AÖ', uts46=True, strict=True), 'aö')
+ self.assertEqual(idna.encode('AÖ', uts46=True, strict=True), b'xn--a-1ga')
+
+ def test_uts46_566(self):
+ self.assertEqual(idna.decode('Aö', uts46=True, strict=True), 'aö')
+ self.assertEqual(idna.encode('Aö', uts46=True, strict=True), b'xn--a-1ga')
+
+ def test_uts46_567(self):
+ self.assertEqual(idna.decode('Aö', uts46=True, strict=True), 'aö')
+ self.assertEqual(idna.encode('Aö', uts46=True, strict=True), b'xn--a-1ga')
+
+ def test_uts46_568(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠', strict=True)
+
+ def test_uts46_569(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠', strict=True)
+
+ def test_uts46_570(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠', strict=True)
+
+ def test_uts46_571(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch', strict=True)
+
+ def test_uts46_575(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertEqual(idna.encode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), b'123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+
+ def test_uts46_576(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertEqual(idna.encode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), b'123456789012345678901234567890123456789012345678901234567890123.xn--1234567890123456789012345678901234567890123456789012345-kue.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+
+ def test_uts46_577(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.', strict=True)
+
+ def test_uts46_578(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b.', strict=True)
+
+ def test_uts46_579(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', strict=True)
+
+ def test_uts46_580(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä123456789012345678901234567890123456789012345.123456789012345678901234567890123456789012345678901234567890123.1234567890123456789012345678901234567890123456789012345678901c', strict=True)
+
+ def test_uts46_581(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', strict=True)
+
+ def test_uts46_582(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a', strict=True)
+
+ def test_uts46_583(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', strict=True)
+
+ def test_uts46_584(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.12345678901234567890123456789012345678901234567890123456789a.', strict=True)
+
+ def test_uts46_585(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', strict=True)
+
+ def test_uts46_586(self):
+ self.assertEqual(idna.decode('123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', uts46=True, strict=True), '123456789012345678901234567890123456789012345678901234567890123.1234567890ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b')
+ self.assertRaises(idna.IDNAError, idna.encode, '123456789012345678901234567890123456789012345678901234567890123.1234567890Ä1234567890123456789012345678901234567890123456.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890b', strict=True)
+
+ def test_uts46_593(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒕∝ٟ\U00093926.-󠄯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒕∝ٟ\U00093926.-󠄯', strict=True)
+
+ def test_uts46_594(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '14.∝ٟ\U00093926.-󠄯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '14.∝ٟ\U00093926.-󠄯', strict=True)
+
+ def test_uts46_595(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '14.xn--7hb713l3v90n.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '14.xn--7hb713l3v90n.-', strict=True)
+
+ def test_uts46_596(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7hb713lfwbi1311b.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7hb713lfwbi1311b.-', strict=True)
+
+ def test_uts46_597(self):
+ self.assertEqual(idna.decode('ꡣ.ߏ', uts46=True, strict=True), 'ꡣ.ߏ')
+ self.assertEqual(idna.encode('ꡣ.ߏ', uts46=True, strict=True), b'xn--8c9a.xn--qsb')
+
+ def test_uts46_598(self):
+ self.assertEqual(idna.decode('xn--8c9a.xn--qsb', uts46=True, strict=True), 'ꡣ.ߏ')
+ self.assertEqual(idna.encode('xn--8c9a.xn--qsb', uts46=True, strict=True), b'xn--8c9a.xn--qsb')
+
+ def test_uts46_599(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯\u0603。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯\u0603。-', strict=True)
+
+ def test_uts46_600(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯\u0603。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯\u0603。-', strict=True)
+
+ def test_uts46_601(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯\u0603。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯\u0603。-', strict=True)
+
+ def test_uts46_602(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯\u0603。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯\u0603。-', strict=True)
+
+ def test_uts46_603(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lfb566l.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lfb566l.-', strict=True)
+
+ def test_uts46_604(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾛𐹧⾕.ᅟ\U000e05f0ςႭ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾛𐹧⾕.ᅟ\U000e05f0ςႭ', strict=True)
+
+ def test_uts46_605(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '走𐹧谷.ᅟ\U000e05f0ςႭ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '走𐹧谷.ᅟ\U000e05f0ςႭ', strict=True)
+
+ def test_uts46_606(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '走𐹧谷.ᅟ\U000e05f0ςⴍ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '走𐹧谷.ᅟ\U000e05f0ςⴍ', strict=True)
+
+ def test_uts46_607(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '走𐹧谷.ᅟ\U000e05f0ΣႭ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '走𐹧谷.ᅟ\U000e05f0ΣႭ', strict=True)
+
+ def test_uts46_608(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '走𐹧谷.ᅟ\U000e05f0σⴍ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '走𐹧谷.ᅟ\U000e05f0σⴍ', strict=True)
+
+ def test_uts46_609(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '走𐹧谷.ᅟ\U000e05f0Σⴍ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '走𐹧谷.ᅟ\U000e05f0Σⴍ', strict=True)
+
+ def test_uts46_610(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6g3a1x434z.xn--4xa452s5d17u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6g3a1x434z.xn--4xa452s5d17u', strict=True)
+
+ def test_uts46_611(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6g3a1x434z.xn--3xa652s5d17u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6g3a1x434z.xn--3xa652s5d17u', strict=True)
+
+ def test_uts46_612(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾛𐹧⾕.ᅟ\U000e05f0ςⴍ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾛𐹧⾕.ᅟ\U000e05f0ςⴍ', strict=True)
+
+ def test_uts46_613(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾛𐹧⾕.ᅟ\U000e05f0ΣႭ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾛𐹧⾕.ᅟ\U000e05f0ΣႭ', strict=True)
+
+ def test_uts46_614(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾛𐹧⾕.ᅟ\U000e05f0σⴍ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾛𐹧⾕.ᅟ\U000e05f0σⴍ', strict=True)
+
+ def test_uts46_615(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾛𐹧⾕.ᅟ\U000e05f0Σⴍ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾛𐹧⾕.ᅟ\U000e05f0Σⴍ', strict=True)
+
+ def test_uts46_616(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6g3a1x434z.xn--4xa180eotvh7453a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6g3a1x434z.xn--4xa180eotvh7453a', strict=True)
+
+ def test_uts46_617(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6g3a1x434z.xn--4xa627dhpae6345i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6g3a1x434z.xn--4xa627dhpae6345i', strict=True)
+
+ def test_uts46_618(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6g3a1x434z.xn--3xa380eotvh7453a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6g3a1x434z.xn--3xa380eotvh7453a', strict=True)
+
+ def test_uts46_619(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6g3a1x434z.xn--3xa827dhpae6345i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6g3a1x434z.xn--3xa827dhpae6345i', strict=True)
+
+ def test_uts46_620(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d≠ᢙ≯.솣-ᡴႠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d≠ᢙ≯.솣-ᡴႠ', strict=True)
+
+ def test_uts46_621(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d≠ᢙ≯.솣-ᡴႠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d≠ᢙ≯.솣-ᡴႠ', strict=True)
+
+ def test_uts46_622(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d≠ᢙ≯.솣-ᡴⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d≠ᢙ≯.솣-ᡴⴀ', strict=True)
+
+ def test_uts46_623(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d≠ᢙ≯.솣-ᡴⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d≠ᢙ≯.솣-ᡴⴀ', strict=True)
+
+ def test_uts46_624(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jbf911clb.xn----p9j493ivi4l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jbf911clb.xn----p9j493ivi4l', strict=True)
+
+ def test_uts46_625(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ᢙ≯.솣-ᡴⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ᢙ≯.솣-ᡴⴀ', strict=True)
+
+ def test_uts46_626(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ᢙ≯.솣-ᡴⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ᢙ≯.솣-ᡴⴀ', strict=True)
+
+ def test_uts46_627(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ᢙ≯.솣-ᡴႠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ᢙ≯.솣-ᡴႠ', strict=True)
+
+ def test_uts46_628(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ᢙ≯.솣-ᡴႠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ᢙ≯.솣-ᡴႠ', strict=True)
+
+ def test_uts46_629(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jbf929a90b0b.xn----p9j493ivi4l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jbf929a90b0b.xn----p9j493ivi4l', strict=True)
+
+ def test_uts46_630(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jbf911clb.xn----6zg521d196p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jbf911clb.xn----6zg521d196p', strict=True)
+
+ def test_uts46_631(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jbf929a90b0b.xn----6zg521d196p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jbf929a90b0b.xn----6zg521d196p', strict=True)
+
+ def test_uts46_632(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006f79c.𐿇ྡྷݽ\u0600', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006f79c.𐿇ྡྷݽ\u0600', strict=True)
+
+ def test_uts46_633(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006f79c.𐿇ྡྷݽ\u0600', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006f79c.𐿇ྡྷݽ\u0600', strict=True)
+
+ def test_uts46_634(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006f79c.𐿇ྡྷݽ\u0600', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006f79c.𐿇ྡྷݽ\u0600', strict=True)
+
+ def test_uts46_635(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gw68a.xn--ifb57ev2psc6027m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gw68a.xn--ifb57ev2psc6027m', strict=True)
+
+ def test_uts46_636(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𣳔̃.𑓂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𣳔̃.𑓂', strict=True)
+
+ def test_uts46_637(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nsa95820a.xn--wz1d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nsa95820a.xn--wz1d', strict=True)
+
+ def test_uts46_638(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤀𞥅\U00058431。󠄌Ⴣꡥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤀𞥅\U00058431。󠄌Ⴣꡥ', strict=True)
+
+ def test_uts46_639(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤢𞥅\U00058431。󠄌ⴣꡥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤢𞥅\U00058431。󠄌ⴣꡥ', strict=True)
+
+ def test_uts46_640(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9d6hgcy3556a.xn--rlju750b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9d6hgcy3556a.xn--rlju750b', strict=True)
+
+ def test_uts46_641(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9d6hgcy3556a.xn--7nd0578e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9d6hgcy3556a.xn--7nd0578e', strict=True)
+
+ def test_uts46_642(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤀𞥅\U00058431。󠄌ⴣꡥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤀𞥅\U00058431。󠄌ⴣꡥ', strict=True)
+
+ def test_uts46_643(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u08e2𑁿ς𖬱。󠅡렧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u08e2𑁿ς𖬱。󠅡렧', strict=True)
+
+ def test_uts46_644(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u08e2𑁿ς𖬱。󠅡렧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u08e2𑁿ς𖬱。󠅡렧', strict=True)
+
+ def test_uts46_645(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u08e2𑁿Σ𖬱。󠅡렧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u08e2𑁿Σ𖬱。󠅡렧', strict=True)
+
+ def test_uts46_646(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u08e2𑁿Σ𖬱。󠅡렧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u08e2𑁿Σ𖬱。󠅡렧', strict=True)
+
+ def test_uts46_647(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u08e2𑁿σ𖬱。󠅡렧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u08e2𑁿σ𖬱。󠅡렧', strict=True)
+
+ def test_uts46_648(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u08e2𑁿σ𖬱。󠅡렧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u08e2𑁿σ𖬱。󠅡렧', strict=True)
+
+ def test_uts46_649(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa53xp48ys2xc.xn--kn2b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa53xp48ys2xc.xn--kn2b', strict=True)
+
+ def test_uts46_650(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa73xp48ys2xc.xn--kn2b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa73xp48ys2xc.xn--kn2b', strict=True)
+
+ def test_uts46_651(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200d。𞤍\u200c\u200d⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200d。𞤍\u200c\u200d⒈', strict=True)
+
+ def test_uts46_652(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200d。𞤍\u200c\u200d1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200d。𞤍\u200c\u200d1.', strict=True)
+
+ def test_uts46_653(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200d。𞤯\u200c\u200d1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200d。𞤯\u200c\u200d1.', strict=True)
+
+ def test_uts46_654(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--1-0i8r.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--1-0i8r.', strict=True)
+
+ def test_uts46_655(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ugn.xn--1-rgnd61297b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ugn.xn--1-rgnd61297b.', strict=True)
+
+ def test_uts46_656(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200d。𞤯\u200c\u200d⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200d。𞤯\u200c\u200d⒈', strict=True)
+
+ def test_uts46_657(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--tsh3666n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--tsh3666n', strict=True)
+
+ def test_uts46_658(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ugn.xn--0ugc555aiv51d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ugn.xn--0ugc555aiv51d', strict=True)
+
+ def test_uts46_659(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000853ad.Ⴒ𑇀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000853ad.Ⴒ𑇀', strict=True)
+
+ def test_uts46_660(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000853ad.ⴒ𑇀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000853ad.ⴒ𑇀', strict=True)
+
+ def test_uts46_661(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bn95b.xn--9kj2034e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bn95b.xn--9kj2034e', strict=True)
+
+ def test_uts46_662(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug15083f.xn--9kj2034e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug15083f.xn--9kj2034e', strict=True)
+
+ def test_uts46_663(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bn95b.xn--qnd6272k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bn95b.xn--qnd6272k', strict=True)
+
+ def test_uts46_664(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug15083f.xn--qnd6272k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug15083f.xn--qnd6272k', strict=True)
+
+ def test_uts46_665(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '繱𑖿\u200d.8︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '繱𑖿\u200d.8︒', strict=True)
+
+ def test_uts46_666(self):
+ self.assertEqual(idna.decode('繱𑖿\u200d.8。', uts46=True, strict=True), '繱𑖿\u200d.8.')
+ self.assertRaises(idna.IDNAError, idna.encode, '繱𑖿\u200d.8。', strict=True)
+
+ def test_uts46_673(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gl0as212a.xn--8-o89h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gl0as212a.xn--8-o89h', strict=True)
+
+ def test_uts46_674(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug6928ac48e.xn--8-o89h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug6928ac48e.xn--8-o89h', strict=True)
+
+ def test_uts46_675(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆾.𞀈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆾.𞀈', strict=True)
+
+ def test_uts46_676(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆾.𞀈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆾.𞀈', strict=True)
+
+ def test_uts46_677(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--ph4h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--ph4h', strict=True)
+
+ def test_uts46_678(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß۫。\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß۫。\u200d', strict=True)
+
+ def test_uts46_679(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS۫。\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS۫。\u200d', strict=True)
+
+ def test_uts46_680(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss۫。\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss۫。\u200d', strict=True)
+
+ def test_uts46_681(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss۫。\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss۫。\u200d', strict=True)
+
+ def test_uts46_684(self):
+ self.assertEqual(idna.decode('SS۫.', uts46=True, strict=True), 'ss۫.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS۫.', strict=True)
+
+ def test_uts46_685(self):
+ self.assertEqual(idna.decode('Ss۫.', uts46=True, strict=True), 'ss۫.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss۫.', strict=True)
+
+ def test_uts46_686(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-59d.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-59d.xn--1ug', strict=True)
+
+ def test_uts46_687(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca012a.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca012a.xn--1ug', strict=True)
+
+ def test_uts46_688(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0435\u200c⒈.\U000e0387', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0435\u200c⒈.\U000e0387', strict=True)
+
+ def test_uts46_689(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0435\u200c1..\U000e0387', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0435\u200c1..\U000e0387', strict=True)
+
+ def test_uts46_690(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-bs31m..xn--tv36e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-bs31m..xn--tv36e', strict=True)
+
+ def test_uts46_691(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-rgn37671n..xn--tv36e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-rgn37671n..xn--tv36e', strict=True)
+
+ def test_uts46_692(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tshz2001k.xn--tv36e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tshz2001k.xn--tv36e', strict=True)
+
+ def test_uts46_693(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug88o47900b.xn--tv36e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug88o47900b.xn--tv36e', strict=True)
+
+ def test_uts46_694(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000df223ٟꪲß。\U000cc4e7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000df223ٟꪲß。\U000cc4e7', strict=True)
+
+ def test_uts46_695(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000df223ٟꪲSS。\U000cc4e7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000df223ٟꪲSS。\U000cc4e7', strict=True)
+
+ def test_uts46_696(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000df223ٟꪲss。\U000cc4e7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000df223ٟꪲss。\U000cc4e7', strict=True)
+
+ def test_uts46_697(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000df223ٟꪲSs。\U000cc4e7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000df223ٟꪲSs。\U000cc4e7', strict=True)
+
+ def test_uts46_698(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-3xd2839nncy1m.xn--bb79d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-3xd2839nncy1m.xn--bb79d', strict=True)
+
+ def test_uts46_699(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca92z0t7n5w96j.xn--bb79d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca92z0t7n5w96j.xn--bb79d', strict=True)
+
+ def test_uts46_700(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݴ\u200c𞤿。\U0003d610䉜\u200d\U0007f93c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݴ\u200c𞤿。\U0003d610䉜\u200d\U0007f93c', strict=True)
+
+ def test_uts46_701(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݴ\u200c𞤝。\U0003d610䉜\u200d\U0007f93c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݴ\u200c𞤝。\U0003d610䉜\u200d\U0007f93c', strict=True)
+
+ def test_uts46_702(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4pb2977v.xn--z0nt555ukbnv', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4pb2977v.xn--z0nt555ukbnv', strict=True)
+
+ def test_uts46_703(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4pb607jjt73a.xn--1ug236ke314donv1a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4pb607jjt73a.xn--1ug236ke314donv1a', strict=True)
+
+ def test_uts46_704(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cςᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cςᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_705(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cςᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cςᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_706(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cςᡱ1..≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cςᡱ1..≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_707(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cςᡱ1..≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cςᡱ1..≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_708(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cΣᡱ1..≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cΣᡱ1..≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_709(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cΣᡱ1..≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cΣᡱ1..≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_710(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cσᡱ1..≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cσᡱ1..≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_711(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cσᡱ1..≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cσᡱ1..≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_712(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-zmb699meq63t..xn--gdh5392g6sd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-zmb699meq63t..xn--gdh5392g6sd', strict=True)
+
+ def test_uts46_713(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-zmb699meq63t..xn--1ug85gn777ahze', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-zmb699meq63t..xn--1ug85gn777ahze', strict=True)
+
+ def test_uts46_714(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-xmb999meq63t..xn--1ug85gn777ahze', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-xmb999meq63t..xn--1ug85gn777ahze', strict=True)
+
+ def test_uts46_715(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cΣᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cΣᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_716(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cΣᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cΣᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_717(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cσᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cσᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_718(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00094b5cσᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00094b5cσᡱ⒈.≮𑄳\u200d𐮍', strict=True)
+
+ def test_uts46_719(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa207hkzinr77u.xn--gdh5392g6sd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa207hkzinr77u.xn--gdh5392g6sd', strict=True)
+
+ def test_uts46_720(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa207hkzinr77u.xn--1ug85gn777ahze', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa207hkzinr77u.xn--1ug85gn777ahze', strict=True)
+
+ def test_uts46_721(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa407hkzinr77u.xn--1ug85gn777ahze', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa407hkzinr77u.xn--1ug85gn777ahze', strict=True)
+
+ def test_uts46_722(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ㅤ्Ⴀ័.᠋', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ㅤ्Ⴀ័.᠋', strict=True)
+
+ def test_uts46_723(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅠ्Ⴀ័.᠋', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅠ्Ⴀ័.᠋', strict=True)
+
+ def test_uts46_724(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅠ्ⴀ័.᠋', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅠ्ⴀ័.᠋', strict=True)
+
+ def test_uts46_725(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b445e53p.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b445e53p.', strict=True)
+
+ def test_uts46_726(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ㅤ्ⴀ័.᠋', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ㅤ्ⴀ័.᠋', strict=True)
+
+ def test_uts46_727(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b742bkqf4ty.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b742bkqf4ty.', strict=True)
+
+ def test_uts46_728(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b468aoqa89r.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b468aoqa89r.', strict=True)
+
+ def test_uts46_729(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b445e53po6d.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b445e53po6d.', strict=True)
+
+ def test_uts46_730(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b468azngju2a.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b468azngju2a.', strict=True)
+
+ def test_uts46_731(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '❣\u200d.্𑰽ؒꤩ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '❣\u200d.্𑰽ؒꤩ', strict=True)
+
+ def test_uts46_732(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '❣\u200d.্𑰽ؒꤩ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '❣\u200d.্𑰽ؒꤩ', strict=True)
+
+ def test_uts46_733(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pei.xn--0fb32q3w7q2g4d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pei.xn--0fb32q3w7q2g4d', strict=True)
+
+ def test_uts46_734(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugy10a.xn--0fb32q3w7q2g4d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugy10a.xn--0fb32q3w7q2g4d', strict=True)
+
+ def test_uts46_735(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐳺\U00010e44.≯\U0006abb8ꡅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐳺\U00010e44.≯\U0006abb8ꡅ', strict=True)
+
+ def test_uts46_736(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐳺\U00010e44.≯\U0006abb8ꡅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐳺\U00010e44.≯\U0006abb8ꡅ', strict=True)
+
+ def test_uts46_737(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh7943gk2a.xn--hdh1383c5e36c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh7943gk2a.xn--hdh1383c5e36c', strict=True)
+
+ def test_uts46_738(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ೌ𐧅𐳏\U000e0cba。್ᠦ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ೌ𐧅𐳏\U000e0cba。್ᠦ', strict=True)
+
+ def test_uts46_739(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ೌ𐧅𐳏\U000e0cba。್ᠦ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ೌ𐧅𐳏\U000e0cba。್ᠦ', strict=True)
+
+ def test_uts46_740(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ೌ𐧅𐲏\U000e0cba。್ᠦ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ೌ𐧅𐲏\U000e0cba。್ᠦ', strict=True)
+
+ def test_uts46_741(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7tc6360ky5bn2732c.xn--8tc429c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7tc6360ky5bn2732c.xn--8tc429c', strict=True)
+
+ def test_uts46_742(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ೌ𐧅𐲏\U000e0cba。್ᠦ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ೌ𐧅𐲏\U000e0cba。್ᠦ', strict=True)
+
+ def test_uts46_743(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '͉。𧡫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '͉。𧡫', strict=True)
+
+ def test_uts46_744(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nua.xn--bc6k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nua.xn--bc6k', strict=True)
+
+ def test_uts46_745(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰿󠅦.ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰿󠅦.ᅠ', strict=True)
+
+ def test_uts46_746(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰿󠅦.ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰿󠅦.ᅠ', strict=True)
+
+ def test_uts46_747(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ok3d.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ok3d.', strict=True)
+
+ def test_uts46_748(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ok3d.xn--psd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ok3d.xn--psd', strict=True)
+
+ def test_uts46_749(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𞤆\u200d。\U000f8f04\U0001ecd2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𞤆\u200d。\U000f8f04\U0001ecd2', strict=True)
+
+ def test_uts46_750(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𞤨\u200d。\U000f8f04\U0001ecd2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𞤨\u200d。\U000f8f04\U0001ecd2', strict=True)
+
+ def test_uts46_751(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ni8r.xn--846h96596c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ni8r.xn--846h96596c', strict=True)
+
+ def test_uts46_752(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ugnx367r.xn--846h96596c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ugnx367r.xn--846h96596c', strict=True)
+
+ def test_uts46_753(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡏ\U000e01f6≯\U00033fbd。᷽⾇滸𐹰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡏ\U000e01f6≯\U00033fbd。᷽⾇滸𐹰', strict=True)
+
+ def test_uts46_754(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡏ\U000e01f6≯\U00033fbd。᷽⾇滸𐹰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡏ\U000e01f6≯\U00033fbd。᷽⾇滸𐹰', strict=True)
+
+ def test_uts46_755(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡏ\U000e01f6≯\U00033fbd。᷽舛滸𐹰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡏ\U000e01f6≯\U00033fbd。᷽舛滸𐹰', strict=True)
+
+ def test_uts46_756(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡏ\U000e01f6≯\U00033fbd。᷽舛滸𐹰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡏ\U000e01f6≯\U00033fbd。᷽舛滸𐹰', strict=True)
+
+ def test_uts46_757(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh7483cu6twwki8e.xn--yfg0765a58l0n6k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh7483cu6twwki8e.xn--yfg0765a58l0n6k', strict=True)
+
+ def test_uts46_758(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蔏。𑰺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蔏。𑰺', strict=True)
+
+ def test_uts46_759(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蔏。𑰺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蔏。𑰺', strict=True)
+
+ def test_uts46_760(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uy1a.xn--jk3d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uy1a.xn--jk3d', strict=True)
+
+ def test_uts46_761(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟿𐮋。󠄊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟿𐮋。󠄊', strict=True)
+
+ def test_uts46_762(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9𐮋。󠄊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9𐮋。󠄊', strict=True)
+
+ def test_uts46_763(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-rv5i.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-rv5i.', strict=True)
+
+ def test_uts46_764(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000df1c7-䟖F。ߋ⒈٢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000df1c7-䟖F。ߋ⒈٢', strict=True)
+
+ def test_uts46_765(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000df1c7-䟖F。ߋ1.٢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000df1c7-䟖F。ߋ1.٢', strict=True)
+
+ def test_uts46_766(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000df1c7-䟖f。ߋ1.٢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000df1c7-䟖f。ߋ1.٢', strict=True)
+
+ def test_uts46_767(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---f-mz8b08788k.xn--1-ybd.xn--bib', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---f-mz8b08788k.xn--1-ybd.xn--bib', strict=True)
+
+ def test_uts46_768(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000df1c7-䟖f。ߋ⒈٢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000df1c7-䟖f。ߋ⒈٢', strict=True)
+
+ def test_uts46_769(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---f-mz8b08788k.xn--bib53ev44d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---f-mz8b08788k.xn--bib53ev44d', strict=True)
+
+ def test_uts46_770(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。𐹺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。𐹺', strict=True)
+
+ def test_uts46_771(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。𐹺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。𐹺', strict=True)
+
+ def test_uts46_772(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--yo0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--yo0d', strict=True)
+
+ def test_uts46_773(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--yo0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--yo0d', strict=True)
+
+ def test_uts46_774(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐡆.≯\u200c-𞥀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐡆.≯\u200c-𞥀', strict=True)
+
+ def test_uts46_775(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐡆.≯\u200c-𞥀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐡆.≯\u200c-𞥀', strict=True)
+
+ def test_uts46_776(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐡆.≯\u200c-𞤞', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐡆.≯\u200c-𞤞', strict=True)
+
+ def test_uts46_777(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐡆.≯\u200c-𞤞', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐡆.≯\u200c-𞤞', strict=True)
+
+ def test_uts46_778(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--le9c.xn----ogo9956r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--le9c.xn----ogo9956r', strict=True)
+
+ def test_uts46_779(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--le9c.xn----rgn40iy359e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--le9c.xn----rgn40iy359e', strict=True)
+
+ def test_uts46_780(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0040-。≠ﳗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0040-。≠ﳗ', strict=True)
+
+ def test_uts46_781(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0040-。≠ﳗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0040-。≠ﳗ', strict=True)
+
+ def test_uts46_782(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0040-。≠هج', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0040-。≠هج', strict=True)
+
+ def test_uts46_783(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0040-。≠هج', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0040-。≠هج', strict=True)
+
+ def test_uts46_784(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----f411m.xn--rgb7c611j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----f411m.xn--rgb7c611j', strict=True)
+
+ def test_uts46_785(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007bb39𑈵。\u200d\U0001ea36', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007bb39𑈵。\u200d\U0001ea36', strict=True)
+
+ def test_uts46_786(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8g1d12120a.xn--5l6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8g1d12120a.xn--5l6h', strict=True)
+
+ def test_uts46_787(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8g1d12120a.xn--1ug6651p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8g1d12120a.xn--1ug6651p', strict=True)
+
+ def test_uts46_788(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑋧꧀2。㧉\U00092584', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑋧꧀2。㧉\U00092584', strict=True)
+
+ def test_uts46_789(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑋧꧀2。㧉\U00092584', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑋧꧀2。㧉\U00092584', strict=True)
+
+ def test_uts46_790(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2-5z4eu89y.xn--97l02706d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2-5z4eu89y.xn--97l02706d', strict=True)
+
+ def test_uts46_791(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U0003db04𐹴\U0001ea65。≯6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U0003db04𐹴\U0001ea65。≯6', strict=True)
+
+ def test_uts46_792(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U0003db04𐹴\U0001ea65。≯6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U0003db04𐹴\U0001ea65。≯6', strict=True)
+
+ def test_uts46_793(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--so0du768aim9m.xn--6-ogo', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--so0du768aim9m.xn--6-ogo', strict=True)
+
+ def test_uts46_794(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug7105gf5wfxepq.xn--6-ogo', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug7105gf5wfxepq.xn--6-ogo', strict=True)
+
+ def test_uts46_795(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑁿.𐹦\U0003b7b5-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑁿.𐹦\U0003b7b5-\u200d', strict=True)
+
+ def test_uts46_796(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑁿.𐹦\U0003b7b5-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑁿.𐹦\U0003b7b5-\u200d', strict=True)
+
+ def test_uts46_797(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--q30d.xn----i26i1299n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--q30d.xn----i26i1299n', strict=True)
+
+ def test_uts46_798(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--q30d.xn----ugn1088hfsxv', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--q30d.xn----ugn1088hfsxv', strict=True)
+
+ def test_uts46_799(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⤸ς\U0003ac40。ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⤸ς\U0003ac40。ᅠ', strict=True)
+
+ def test_uts46_800(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⤸ς\U0003ac40。ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⤸ς\U0003ac40。ᅠ', strict=True)
+
+ def test_uts46_801(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⤸Σ\U0003ac40。ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⤸Σ\U0003ac40。ᅠ', strict=True)
+
+ def test_uts46_802(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⤸σ\U0003ac40。ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⤸σ\U0003ac40。ᅠ', strict=True)
+
+ def test_uts46_803(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa192qmp03d.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa192qmp03d.', strict=True)
+
+ def test_uts46_804(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa392qmp03d.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa392qmp03d.', strict=True)
+
+ def test_uts46_805(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⤸Σ\U0003ac40。ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⤸Σ\U0003ac40。ᅠ', strict=True)
+
+ def test_uts46_806(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⤸σ\U0003ac40。ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⤸σ\U0003ac40。ᅠ', strict=True)
+
+ def test_uts46_807(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa192qmp03d.xn--psd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa192qmp03d.xn--psd', strict=True)
+
+ def test_uts46_808(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa392qmp03d.xn--psd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa392qmp03d.xn--psd', strict=True)
+
+ def test_uts46_809(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa192qmp03d.xn--cl7c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa192qmp03d.xn--cl7c', strict=True)
+
+ def test_uts46_810(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa392qmp03d.xn--cl7c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa392qmp03d.xn--cl7c', strict=True)
+
+ def test_uts46_811(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݥဵ𐫔ە.𐦬𑋪Ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݥဵ𐫔ە.𐦬𑋪Ⴃ', strict=True)
+
+ def test_uts46_812(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݥဵ𐫔ە.𐦬𑋪ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݥဵ𐫔ە.𐦬𑋪ⴃ', strict=True)
+
+ def test_uts46_813(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--llb10as9tqp5y.xn--ukj7371e21f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--llb10as9tqp5y.xn--ukj7371e21f', strict=True)
+
+ def test_uts46_814(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--llb10as9tqp5y.xn--bnd9168j21f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--llb10as9tqp5y.xn--bnd9168j21f', strict=True)
+
+ def test_uts46_815(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '١᭄-킼.᮪ؖ٬≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '١᭄-킼.᮪ؖ٬≯', strict=True)
+
+ def test_uts46_816(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '١᭄-킼.᮪ؖ٬≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '١᭄-킼.᮪ؖ٬≯', strict=True)
+
+ def test_uts46_817(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----9pc551nk39n.xn--4fb6o571degg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----9pc551nk39n.xn--4fb6o571degg', strict=True)
+
+ def test_uts46_818(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。ۂ\u0604\U000855a1𑓂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。ۂ\u0604\U000855a1𑓂', strict=True)
+
+ def test_uts46_819(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。ۂ\u0604\U000855a1𑓂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。ۂ\u0604\U000855a1𑓂', strict=True)
+
+ def test_uts46_820(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--mfb39a7208dzgs3d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--mfb39a7208dzgs3d', strict=True)
+
+ def test_uts46_821(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U000ef456\U000e0050.ֽ\U00019bb0ꡝ𐋡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U000ef456\U000e0050.ֽ\U00019bb0ꡝ𐋡', strict=True)
+
+ def test_uts46_822(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U000ef456\U000e0050.ֽ\U00019bb0ꡝ𐋡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U000ef456\U000e0050.ֽ\U00019bb0ꡝ𐋡', strict=True)
+
+ def test_uts46_823(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b726ey18m.xn--ldb8734fg0qcyzzg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b726ey18m.xn--ldb8734fg0qcyzzg', strict=True)
+
+ def test_uts46_824(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug66101lt8me.xn--ldb8734fg0qcyzzg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug66101lt8me.xn--ldb8734fg0qcyzzg', strict=True)
+
+ def test_uts46_825(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒\U00103235ς\U00040807。𐮈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒\U00103235ς\U00040807。𐮈', strict=True)
+
+ def test_uts46_826(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。\U00103235ς\U00040807。𐮈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。\U00103235ς\U00040807。𐮈', strict=True)
+
+ def test_uts46_827(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。\U00103235Σ\U00040807。𐮈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。\U00103235Σ\U00040807。𐮈', strict=True)
+
+ def test_uts46_828(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。\U00103235σ\U00040807。𐮈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。\U00103235σ\U00040807。𐮈', strict=True)
+
+ def test_uts46_829(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--4xa68573c7n64d.xn--f29c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--4xa68573c7n64d.xn--f29c', strict=True)
+
+ def test_uts46_830(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--3xa88573c7n64d.xn--f29c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--3xa88573c7n64d.xn--f29c', strict=True)
+
+ def test_uts46_831(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒\U00103235Σ\U00040807。𐮈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒\U00103235Σ\U00040807。𐮈', strict=True)
+
+ def test_uts46_832(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒\U00103235σ\U00040807。𐮈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒\U00103235σ\U00040807。𐮈', strict=True)
+
+ def test_uts46_833(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa1729jwz5t7gl5f.xn--f29c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa1729jwz5t7gl5f.xn--f29c', strict=True)
+
+ def test_uts46_834(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa3729jwz5t7gl5f.xn--f29c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa3729jwz5t7gl5f.xn--f29c', strict=True)
+
+ def test_uts46_835(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߙ.ۮ\U000c6f83≯󠅲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߙ.ۮ\U000c6f83≯󠅲', strict=True)
+
+ def test_uts46_836(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߙ.ۮ\U000c6f83≯󠅲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߙ.ۮ\U000c6f83≯󠅲', strict=True)
+
+ def test_uts46_837(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߙ.ۮ\U000c6f83≯󠅲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߙ.ۮ\U000c6f83≯󠅲', strict=True)
+
+ def test_uts46_838(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߙ.ۮ\U000c6f83≯󠅲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߙ.ۮ\U000c6f83≯󠅲', strict=True)
+
+ def test_uts46_839(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0sb.xn--bmb691l0524t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0sb.xn--bmb691l0524t', strict=True)
+
+ def test_uts46_840(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᩳ\U000da678.𐭍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᩳ\U000da678.𐭍', strict=True)
+
+ def test_uts46_841(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2of22352n.xn--q09c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2of22352n.xn--q09c', strict=True)
+
+ def test_uts46_842(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒉\U000e0293≠。Ⴟ⬣Ⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒉\U000e0293≠。Ⴟ⬣Ⴈ', strict=True)
+
+ def test_uts46_843(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒉\U000e0293≠。Ⴟ⬣Ⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒉\U000e0293≠。Ⴟ⬣Ⴈ', strict=True)
+
+ def test_uts46_844(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2.\U000e0293≠。Ⴟ⬣Ⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2.\U000e0293≠。Ⴟ⬣Ⴈ', strict=True)
+
+ def test_uts46_845(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2.\U000e0293≠。Ⴟ⬣Ⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2.\U000e0293≠。Ⴟ⬣Ⴈ', strict=True)
+
+ def test_uts46_846(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2.\U000e0293≠。ⴟ⬣ⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2.\U000e0293≠。ⴟ⬣ⴈ', strict=True)
+
+ def test_uts46_847(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2.\U000e0293≠。ⴟ⬣ⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2.\U000e0293≠。ⴟ⬣ⴈ', strict=True)
+
+ def test_uts46_848(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2.xn--1chz4101l.xn--45iz7d6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2.xn--1chz4101l.xn--45iz7d6b', strict=True)
+
+ def test_uts46_849(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒉\U000e0293≠。ⴟ⬣ⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒉\U000e0293≠。ⴟ⬣ⴈ', strict=True)
+
+ def test_uts46_850(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒉\U000e0293≠。ⴟ⬣ⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒉\U000e0293≠。ⴟ⬣ⴈ', strict=True)
+
+ def test_uts46_851(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch07f91401d.xn--45iz7d6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch07f91401d.xn--45iz7d6b', strict=True)
+
+ def test_uts46_852(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2.xn--1chz4101l.xn--gnd9b297j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2.xn--1chz4101l.xn--gnd9b297j', strict=True)
+
+ def test_uts46_853(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch07f91401d.xn--gnd9b297j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch07f91401d.xn--gnd9b297j', strict=True)
+
+ def test_uts46_854(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000e0271ྸჅ。-𐹽ݴ𞣑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000e0271ྸჅ。-𐹽ݴ𞣑', strict=True)
+
+ def test_uts46_855(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000e0271ྸⴥ。-𐹽ݴ𞣑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000e0271ྸⴥ。-𐹽ݴ𞣑', strict=True)
+
+ def test_uts46_856(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----xmg317tgv352a.xn----05c4213ryr0g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----xmg317tgv352a.xn----05c4213ryr0g', strict=True)
+
+ def test_uts46_857(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----xmg12fm2555h.xn----05c4213ryr0g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----xmg12fm2555h.xn----05c4213ryr0g', strict=True)
+
+ def test_uts46_858(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٙ。𑄴︒اߝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٙ。𑄴︒اߝ', strict=True)
+
+ def test_uts46_859(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٙ。𑄴。اߝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٙ。𑄴。اߝ', strict=True)
+
+ def test_uts46_860(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1hb.xn--w80d.xn--mgb09f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1hb.xn--w80d.xn--mgb09f', strict=True)
+
+ def test_uts46_861(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1hb.xn--mgb09fp820c08pa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1hb.xn--mgb09fp820c08pa', strict=True)
+
+ def test_uts46_862(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴙظ.󠆓\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴙظ.󠆓\u200d', strict=True)
+
+ def test_uts46_863(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴙظ.󠆓\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴙظ.󠆓\u200d', strict=True)
+
+ def test_uts46_864(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3gb910r.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3gb910r.', strict=True)
+
+ def test_uts46_865(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3gb910r.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3gb910r.xn--1ug', strict=True)
+
+ def test_uts46_866(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3gb194c.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3gb194c.', strict=True)
+
+ def test_uts46_867(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3gb194c.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3gb194c.xn--1ug', strict=True)
+
+ def test_uts46_868(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆸。₆0𐺧ݖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆸。₆0𐺧ݖ', strict=True)
+
+ def test_uts46_869(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆸。60𐺧ݖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆸。60𐺧ݖ', strict=True)
+
+ def test_uts46_870(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--60-cke9470y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--60-cke9470y', strict=True)
+
+ def test_uts46_871(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6ࡏ。-𑈴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6ࡏ。-𑈴', strict=True)
+
+ def test_uts46_872(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6ࡏ。-𑈴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6ࡏ。-𑈴', strict=True)
+
+ def test_uts46_873(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-jjd.xn----6n8i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-jjd.xn----6n8i', strict=True)
+
+ def test_uts46_874(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U0004b33f𐹰。્ς\U0001ec0eࣖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U0004b33f𐹰。્ς\U0001ec0eࣖ', strict=True)
+
+ def test_uts46_875(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U0004b33f𐹰。્ς\U0001ec0eࣖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U0004b33f𐹰。્ς\U0001ec0eࣖ', strict=True)
+
+ def test_uts46_876(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U0004b33f𐹰。્Σ\U0001ec0eࣖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U0004b33f𐹰。્Σ\U0001ec0eࣖ', strict=True)
+
+ def test_uts46_877(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U0004b33f𐹰。્σ\U0001ec0eࣖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U0004b33f𐹰。્σ\U0001ec0eࣖ', strict=True)
+
+ def test_uts46_878(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--oo0d1330n.xn--4xa21xcwbfz15g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--oo0d1330n.xn--4xa21xcwbfz15g', strict=True)
+
+ def test_uts46_879(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugx105gq26y.xn--4xa21xcwbfz15g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugx105gq26y.xn--4xa21xcwbfz15g', strict=True)
+
+ def test_uts46_880(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugx105gq26y.xn--3xa41xcwbfz15g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugx105gq26y.xn--3xa41xcwbfz15g', strict=True)
+
+ def test_uts46_881(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U0004b33f𐹰。્Σ\U0001ec0eࣖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U0004b33f𐹰。્Σ\U0001ec0eࣖ', strict=True)
+
+ def test_uts46_882(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U0004b33f𐹰。્σ\U0001ec0eࣖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U0004b33f𐹰。્σ\U0001ec0eࣖ', strict=True)
+
+ def test_uts46_883(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈\U0005f11cႳ⒪.්\U00098636ࢋ𐹢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈\U0005f11cႳ⒪.්\U00098636ࢋ𐹢', strict=True)
+
+ def test_uts46_884(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.\U0005f11cႳ(o).්\U00098636ࢋ𐹢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.\U0005f11cႳ(o).්\U00098636ࢋ𐹢', strict=True)
+
+ def test_uts46_885(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.\U0005f11cⴓ(o).්\U00098636ࢋ𐹢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.\U0005f11cⴓ(o).්\U00098636ࢋ𐹢', strict=True)
+
+ def test_uts46_886(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.\U0005f11cႳ(O).්\U00098636ࢋ𐹢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.\U0005f11cႳ(O).්\U00098636ࢋ𐹢', strict=True)
+
+ def test_uts46_887(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--(o)-ej1bu5389e.xn--3xb99xpx1yoes3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--(o)-ej1bu5389e.xn--3xb99xpx1yoes3e', strict=True)
+
+ def test_uts46_888(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈\U0005f11cⴓ⒪.්\U00098636ࢋ𐹢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈\U0005f11cⴓ⒪.්\U00098636ࢋ𐹢', strict=True)
+
+ def test_uts46_889(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--(o)-ge4ax01c3t74t.xn--3xb99xpx1yoes3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--(o)-ge4ax01c3t74t.xn--3xb99xpx1yoes3e', strict=True)
+
+ def test_uts46_890(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--(o)-7sn88849j.xn--3xb99xpx1yoes3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--(o)-7sn88849j.xn--3xb99xpx1yoes3e', strict=True)
+
+ def test_uts46_891(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh0ds63atl31n.xn--3xb99xpx1yoes3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh0ds63atl31n.xn--3xb99xpx1yoes3e', strict=True)
+
+ def test_uts46_892(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rnd762h7cx3027d.xn--3xb99xpx1yoes3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rnd762h7cx3027d.xn--3xb99xpx1yoes3e', strict=True)
+
+ def test_uts46_893(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤷.𐮐𞢁𐹠ؤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤷.𐮐𞢁𐹠ؤ', strict=True)
+
+ def test_uts46_894(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤷.𐮐𞢁𐹠ؤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤷.𐮐𞢁𐹠ؤ', strict=True)
+
+ def test_uts46_895(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤕.𐮐𞢁𐹠ؤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤕.𐮐𞢁𐹠ؤ', strict=True)
+
+ def test_uts46_896(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤕.𐮐𞢁𐹠ؤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤕.𐮐𞢁𐹠ؤ', strict=True)
+
+ def test_uts46_897(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ve6h.xn--jgb1694kz0b2176a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ve6h.xn--jgb1694kz0b2176a', strict=True)
+
+ def test_uts46_898(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐲈-。𑄳\U0006233b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐲈-。𑄳\U0006233b', strict=True)
+
+ def test_uts46_899(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐲈-。𑄳\U0006233b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐲈-。𑄳\U0006233b', strict=True)
+
+ def test_uts46_900(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐳈-。𑄳\U0006233b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐳈-。𑄳\U0006233b', strict=True)
+
+ def test_uts46_901(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ue6i.xn--v80d6662t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ue6i.xn--v80d6662t', strict=True)
+
+ def test_uts46_902(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐳈-。𑄳\U0006233b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐳈-。𑄳\U0006233b', strict=True)
+
+ def test_uts46_903(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000e0256ꡧ.\U000e0282\U00047183🄉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000e0256ꡧ.\U000e0282\U00047183🄉', strict=True)
+
+ def test_uts46_904(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000e0256ꡧ.\U000e0282\U000471838,', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000e0256ꡧ.\U000e0282\U000471838,', strict=True)
+
+ def test_uts46_905(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----hg4ei0361g.xn--8,-k362evu488a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----hg4ei0361g.xn--8,-k362evu488a', strict=True)
+
+ def test_uts46_906(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----hg4ei0361g.xn--207ht163h7m94c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----hg4ei0361g.xn--207ht163h7m94c', strict=True)
+
+ def test_uts46_907(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0f9b\U000e0234臯𧔤.ݨ𝟝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0f9b\U000e0234臯𧔤.ݨ𝟝', strict=True)
+
+ def test_uts46_908(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0f9b\U000e0234臯𧔤.ݨ5', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0f9b\U000e0234臯𧔤.ݨ5', strict=True)
+
+ def test_uts46_909(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zb1at733hm579ddhla.xn--5-b5c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zb1at733hm579ddhla.xn--5-b5c', strict=True)
+
+ def test_uts46_910(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐹣.𝨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐹣.𝨿', strict=True)
+
+ def test_uts46_911(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐹣.𝨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐹣.𝨿', strict=True)
+
+ def test_uts46_912(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐹣.𝨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐹣.𝨿', strict=True)
+
+ def test_uts46_913(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐹣.𝨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐹣.𝨿', strict=True)
+
+ def test_uts46_914(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh1504g.xn--e92h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh1504g.xn--e92h', strict=True)
+
+ def test_uts46_915(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹯ᯛ੍。脥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹯ᯛ੍。脥', strict=True)
+
+ def test_uts46_916(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹯ᯛ੍。脥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹯ᯛ੍。脥', strict=True)
+
+ def test_uts46_917(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ybc101g3m1p.xn--740a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ybc101g3m1p.xn--740a', strict=True)
+
+ def test_uts46_918(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᭄ᅟ\U0001edff\U0008300d.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᭄ᅟ\U0001edff\U0008300d.-', strict=True)
+
+ def test_uts46_919(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1uf9538sxny9a.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1uf9538sxny9a.-', strict=True)
+
+ def test_uts46_920(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--osd971cpx70btgt8b.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--osd971cpx70btgt8b.-', strict=True)
+
+ def test_uts46_921(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。͔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。͔', strict=True)
+
+ def test_uts46_922(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。͔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。͔', strict=True)
+
+ def test_uts46_923(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--yua', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--yua', strict=True)
+
+ def test_uts46_924(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--yua', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--yua', strict=True)
+
+ def test_uts46_925(self):
+ self.assertEqual(idna.decode('𞤥󠅮.ᡄႮ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤥󠅮.ᡄႮ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_926(self):
+ self.assertEqual(idna.decode('𞤥󠅮.ᡄႮ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤥󠅮.ᡄႮ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_927(self):
+ self.assertEqual(idna.decode('𞤥󠅮.ᡄⴎ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤥󠅮.ᡄⴎ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_928(self):
+ self.assertEqual(idna.decode('𞤃󠅮.ᡄႮ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤃󠅮.ᡄႮ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_929(self):
+ self.assertEqual(idna.decode('𞤃󠅮.ᡄⴎ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤃󠅮.ᡄⴎ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_930(self):
+ self.assertEqual(idna.decode('xn--de6h.xn--37e857h', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('xn--de6h.xn--37e857h', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_931(self):
+ self.assertEqual(idna.decode('𞤥.ᡄⴎ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤥.ᡄⴎ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_932(self):
+ self.assertEqual(idna.decode('𞤃.ᡄႮ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤃.ᡄႮ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_933(self):
+ self.assertEqual(idna.decode('𞤃.ᡄⴎ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤃.ᡄⴎ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_934(self):
+ self.assertEqual(idna.decode('𞤥󠅮.ᡄⴎ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤥󠅮.ᡄⴎ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_935(self):
+ self.assertEqual(idna.decode('𞤃󠅮.ᡄႮ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤃󠅮.ᡄႮ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_936(self):
+ self.assertEqual(idna.decode('𞤃󠅮.ᡄⴎ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤃󠅮.ᡄⴎ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_937(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--de6h.xn--mnd799a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--de6h.xn--mnd799a', strict=True)
+
+ def test_uts46_938(self):
+ self.assertEqual(idna.decode('𞤥.ᡄႮ', uts46=True, strict=True), '𞤥.ᡄⴎ')
+ self.assertEqual(idna.encode('𞤥.ᡄႮ', uts46=True, strict=True), b'xn--de6h.xn--37e857h')
+
+ def test_uts46_939(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤧𝨨Ξ.𪺏㛨❸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤧𝨨Ξ.𪺏㛨❸', strict=True)
+
+ def test_uts46_940(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤧𝨨Ξ.𪺏㛨❸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤧𝨨Ξ.𪺏㛨❸', strict=True)
+
+ def test_uts46_941(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤧𝨨ξ.𪺏㛨❸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤧𝨨ξ.𪺏㛨❸', strict=True)
+
+ def test_uts46_942(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤅𝨨Ξ.𪺏㛨❸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤅𝨨Ξ.𪺏㛨❸', strict=True)
+
+ def test_uts46_943(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤅𝨨ξ.𪺏㛨❸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤅𝨨ξ.𪺏㛨❸', strict=True)
+
+ def test_uts46_944(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zxa5691vboja.xn--bfi293ci119b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zxa5691vboja.xn--bfi293ci119b', strict=True)
+
+ def test_uts46_945(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤧𝨨ξ.𪺏㛨❸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤧𝨨ξ.𪺏㛨❸', strict=True)
+
+ def test_uts46_946(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤅𝨨Ξ.𪺏㛨❸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤅𝨨Ξ.𪺏㛨❸', strict=True)
+
+ def test_uts46_947(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤅𝨨ξ.𪺏㛨❸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤅𝨨ξ.𪺏㛨❸', strict=True)
+
+ def test_uts46_948(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠆몆\u200c-。Ⴛ𐦅︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠆몆\u200c-。Ⴛ𐦅︒', strict=True)
+
+ def test_uts46_949(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠆몆\u200c-。Ⴛ𐦅︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠆몆\u200c-。Ⴛ𐦅︒', strict=True)
+
+ def test_uts46_950(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠆몆\u200c-。Ⴛ𐦅。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠆몆\u200c-。Ⴛ𐦅。', strict=True)
+
+ def test_uts46_951(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠆몆\u200c-。Ⴛ𐦅。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠆몆\u200c-。Ⴛ𐦅。', strict=True)
+
+ def test_uts46_952(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠆몆\u200c-。ⴛ𐦅。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠆몆\u200c-。ⴛ𐦅。', strict=True)
+
+ def test_uts46_953(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠆몆\u200c-。ⴛ𐦅。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠆몆\u200c-。ⴛ𐦅。', strict=True)
+
+ def test_uts46_954(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----e3j6620g.xn--jlju661e.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----e3j6620g.xn--jlju661e.', strict=True)
+
+ def test_uts46_955(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----e3j425bsk1o.xn--jlju661e.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----e3j425bsk1o.xn--jlju661e.', strict=True)
+
+ def test_uts46_956(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠆몆\u200c-。ⴛ𐦅︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠆몆\u200c-。ⴛ𐦅︒', strict=True)
+
+ def test_uts46_957(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠆몆\u200c-。ⴛ𐦅︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠆몆\u200c-。ⴛ𐦅︒', strict=True)
+
+ def test_uts46_958(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----e3j6620g.xn--jlj4997dhgh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----e3j6620g.xn--jlj4997dhgh', strict=True)
+
+ def test_uts46_959(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----e3j425bsk1o.xn--jlj4997dhgh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----e3j425bsk1o.xn--jlj4997dhgh', strict=True)
+
+ def test_uts46_960(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----e3j6620g.xn--znd4948j.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----e3j6620g.xn--znd4948j.', strict=True)
+
+ def test_uts46_961(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----e3j425bsk1o.xn--znd4948j.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----e3j425bsk1o.xn--znd4948j.', strict=True)
+
+ def test_uts46_962(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----e3j6620g.xn--znd2362jhgh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----e3j6620g.xn--znd2362jhgh', strict=True)
+
+ def test_uts46_963(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----e3j425bsk1o.xn--znd2362jhgh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----e3j425bsk1o.xn--znd2362jhgh', strict=True)
+
+ def test_uts46_964(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0fb3.︒⥱\u200c𐹬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0fb3.︒⥱\u200c𐹬', strict=True)
+
+ def test_uts46_965(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0fb3.。⥱\u200c𐹬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0fb3.。⥱\u200c𐹬', strict=True)
+
+ def test_uts46_966(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uf66e..xn--qti2829e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uf66e..xn--qti2829e', strict=True)
+
+ def test_uts46_967(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uf66e..xn--0ugz28as66q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uf66e..xn--0ugz28as66q', strict=True)
+
+ def test_uts46_968(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uf66e.xn--qtiz073e3ik', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uf66e.xn--qtiz073e3ik', strict=True)
+
+ def test_uts46_969(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uf66e.xn--0ugz28axl3pqxna', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uf66e.xn--0ugz28axl3pqxna', strict=True)
+
+ def test_uts46_970(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010bd6.𐹠Ⴑ\U0005a1dc𐫊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010bd6.𐹠Ⴑ\U0005a1dc𐫊', strict=True)
+
+ def test_uts46_971(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010bd6.𐹠ⴑ\U0005a1dc𐫊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010bd6.𐹠ⴑ\U0005a1dc𐫊', strict=True)
+
+ def test_uts46_972(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n49c.xn--8kj8702ewicl862o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n49c.xn--8kj8702ewicl862o', strict=True)
+
+ def test_uts46_973(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n49c.xn--pnd4619jwicl862o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n49c.xn--pnd4619jwicl862o', strict=True)
+
+ def test_uts46_974(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྤ\U0007192f.𝟭Ⴛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྤ\U0007192f.𝟭Ⴛ', strict=True)
+
+ def test_uts46_975(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྤ\U0007192f.1Ⴛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྤ\U0007192f.1Ⴛ', strict=True)
+
+ def test_uts46_976(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྤ\U0007192f.1ⴛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྤ\U0007192f.1ⴛ', strict=True)
+
+ def test_uts46_977(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0fd40533g.xn--1-tws', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0fd40533g.xn--1-tws', strict=True)
+
+ def test_uts46_978(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྤ\U0007192f.𝟭ⴛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྤ\U0007192f.𝟭ⴛ', strict=True)
+
+ def test_uts46_979(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0fd40533g.xn--1-q1g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0fd40533g.xn--1-q1g', strict=True)
+
+ def test_uts46_980(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ࠦ齀。릿\U00010e0b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ࠦ齀。릿\U00010e0b', strict=True)
+
+ def test_uts46_981(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ࠦ齀。릿\U00010e0b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ࠦ齀。릿\U00010e0b', strict=True)
+
+ def test_uts46_982(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----6gd0617i.xn--7y2bm55m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----6gd0617i.xn--7y2bm55m', strict=True)
+
+ def test_uts46_983(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e050aܜ鹝꾗。\U0007ed50\u200d\u200d⏃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e050aܜ鹝꾗。\U0007ed50\u200d\u200d⏃', strict=True)
+
+ def test_uts46_984(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e050aܜ鹝꾗。\U0007ed50\u200d\u200d⏃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e050aܜ鹝꾗。\U0007ed50\u200d\u200d⏃', strict=True)
+
+ def test_uts46_985(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mnb6558e91kyq533a.xn--6mh27269e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mnb6558e91kyq533a.xn--6mh27269e', strict=True)
+
+ def test_uts46_986(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mnb6558e91kyq533a.xn--1uga46zs309y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mnb6558e91kyq533a.xn--1uga46zs309y', strict=True)
+
+ def test_uts46_987(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.-܈--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.-܈--', strict=True)
+
+ def test_uts46_988(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.-܈--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.-܈--', strict=True)
+
+ def test_uts46_989(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.-܈--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.-܈--', strict=True)
+
+ def test_uts46_990(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.-܈--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.-܈--', strict=True)
+
+ def test_uts46_991(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh.xn------eqf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh.xn------eqf', strict=True)
+
+ def test_uts46_992(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹸\U000e02f3。\u200dς𝟩', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹸\U000e02f3。\u200dς𝟩', strict=True)
+
+ def test_uts46_993(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹸\U000e02f3。\u200dς7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹸\U000e02f3。\u200dς7', strict=True)
+
+ def test_uts46_994(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹸\U000e02f3。\u200dΣ7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹸\U000e02f3。\u200dΣ7', strict=True)
+
+ def test_uts46_995(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹸\U000e02f3。\u200dσ7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹸\U000e02f3。\u200dσ7', strict=True)
+
+ def test_uts46_996(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wo0di5177c.xn--7-zmb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wo0di5177c.xn--7-zmb', strict=True)
+
+ def test_uts46_997(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wo0di5177c.xn--7-zmb938s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wo0di5177c.xn--7-zmb938s', strict=True)
+
+ def test_uts46_998(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wo0di5177c.xn--7-xmb248s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wo0di5177c.xn--7-xmb248s', strict=True)
+
+ def test_uts46_999(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹸\U000e02f3。\u200dΣ𝟩', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹸\U000e02f3。\u200dΣ𝟩', strict=True)
+
+ def test_uts46_1000(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹸\U000e02f3。\u200dσ𝟩', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹸\U000e02f3。\u200dσ𝟩', strict=True)
+
+ def test_uts46_1001(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς\U0008570c8.\U0001eb64', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς\U0008570c8.\U0001eb64', strict=True)
+
+ def test_uts46_1002(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς\U0008570c8.\U0001eb64', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς\U0008570c8.\U0001eb64', strict=True)
+
+ def test_uts46_1003(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ\U0008570c8.\U0001eb64', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ\U0008570c8.\U0001eb64', strict=True)
+
+ def test_uts46_1004(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ\U0008570c8.\U0001eb64', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ\U0008570c8.\U0001eb64', strict=True)
+
+ def test_uts46_1005(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-zmb14974n.xn--su6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-zmb14974n.xn--su6h', strict=True)
+
+ def test_uts46_1006(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-xmb44974n.xn--su6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-xmb44974n.xn--su6h', strict=True)
+
+ def test_uts46_1007(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ\U0008570c8.\U0001eb64', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ\U0008570c8.\U0001eb64', strict=True)
+
+ def test_uts46_1008(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ\U0008570c8.\U0001eb64', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ\U0008570c8.\U0001eb64', strict=True)
+
+ def test_uts46_1009(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᡑ🄀ڄ.-𐫄𑲤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᡑ🄀ڄ.-𐫄𑲤', strict=True)
+
+ def test_uts46_1010(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᡑ0.ڄ.-𐫄𑲤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᡑ0.ڄ.-𐫄𑲤', strict=True)
+
+ def test_uts46_1011(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0-o7j.xn--9ib.xn----ek5i065b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0-o7j.xn--9ib.xn----ek5i065b', strict=True)
+
+ def test_uts46_1012(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0-o7j263b.xn--9ib.xn----ek5i065b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0-o7j263b.xn--9ib.xn----ek5i065b', strict=True)
+
+ def test_uts46_1013(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ib722gbw95a.xn----ek5i065b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ib722gbw95a.xn----ek5i065b', strict=True)
+
+ def test_uts46_1014(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ib722gvtfi563c.xn----ek5i065b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ib722gvtfi563c.xn----ek5i065b', strict=True)
+
+ def test_uts46_1015(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𖠍。\U00010abf넯\U0009ed72', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𖠍。\U00010abf넯\U0009ed72', strict=True)
+
+ def test_uts46_1016(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𖠍。\U00010abf넯\U0009ed72', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𖠍。\U00010abf넯\U0009ed72', strict=True)
+
+ def test_uts46_1017(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4e9e.xn--l60bj21opd57g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4e9e.xn--l60bj21opd57g', strict=True)
+
+ def test_uts46_1018(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠇Ⴘ。\u0603Ⴈ𝆊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠇Ⴘ。\u0603Ⴈ𝆊', strict=True)
+
+ def test_uts46_1019(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᠇ⴘ。\u0603ⴈ𝆊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᠇ⴘ。\u0603ⴈ𝆊', strict=True)
+
+ def test_uts46_1020(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--d6e009h.xn--lfb290rfu3z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--d6e009h.xn--lfb290rfu3z', strict=True)
+
+ def test_uts46_1021(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wnd558a.xn--lfb465c1v87a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wnd558a.xn--lfb465c1v87a', strict=True)
+
+ def test_uts46_1022(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒚\U000e02d1𞤰。牣٧Ⴜᣥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒚\U000e02d1𞤰。牣٧Ⴜᣥ', strict=True)
+
+ def test_uts46_1023(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '19.\U000e02d1𞤰。牣٧Ⴜᣥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '19.\U000e02d1𞤰。牣٧Ⴜᣥ', strict=True)
+
+ def test_uts46_1024(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '19.\U000e02d1𞤰。牣٧ⴜᣥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '19.\U000e02d1𞤰。牣٧ⴜᣥ', strict=True)
+
+ def test_uts46_1025(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '19.\U000e02d1𞤎。牣٧Ⴜᣥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '19.\U000e02d1𞤎。牣٧Ⴜᣥ', strict=True)
+
+ def test_uts46_1026(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '19.\U000e02d1𞤎。牣٧ⴜᣥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '19.\U000e02d1𞤎。牣٧ⴜᣥ', strict=True)
+
+ def test_uts46_1027(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '19.xn--oe6h75760c.xn--gib285gtxo2l9d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '19.xn--oe6h75760c.xn--gib285gtxo2l9d', strict=True)
+
+ def test_uts46_1028(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒚\U000e02d1𞤰。牣٧ⴜᣥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒚\U000e02d1𞤰。牣٧ⴜᣥ', strict=True)
+
+ def test_uts46_1029(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒚\U000e02d1𞤎。牣٧Ⴜᣥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒚\U000e02d1𞤎。牣٧Ⴜᣥ', strict=True)
+
+ def test_uts46_1030(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒚\U000e02d1𞤎。牣٧ⴜᣥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒚\U000e02d1𞤎。牣٧ⴜᣥ', strict=True)
+
+ def test_uts46_1031(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cthy466n29j3e.xn--gib285gtxo2l9d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cthy466n29j3e.xn--gib285gtxo2l9d', strict=True)
+
+ def test_uts46_1032(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '19.xn--oe6h75760c.xn--gib404ccxgh00h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '19.xn--oe6h75760c.xn--gib404ccxgh00h', strict=True)
+
+ def test_uts46_1033(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cthy466n29j3e.xn--gib404ccxgh00h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cthy466n29j3e.xn--gib404ccxgh00h', strict=True)
+
+ def test_uts46_1034(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𐋱𐰽⒈.Ⴓ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𐋱𐰽⒈.Ⴓ', strict=True)
+
+ def test_uts46_1035(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𐋱𐰽1..Ⴓ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𐋱𐰽1..Ⴓ', strict=True)
+
+ def test_uts46_1036(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𐋱𐰽1..ⴓ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𐋱𐰽1..ⴓ', strict=True)
+
+ def test_uts46_1037(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---1-895nq11a..xn--blj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---1-895nq11a..xn--blj', strict=True)
+
+ def test_uts46_1038(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𐋱𐰽⒈.ⴓ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𐋱𐰽⒈.ⴓ', strict=True)
+
+ def test_uts46_1039(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ecp0206g90h.xn--blj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ecp0206g90h.xn--blj', strict=True)
+
+ def test_uts46_1040(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---1-895nq11a..xn--rnd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---1-895nq11a..xn--rnd', strict=True)
+
+ def test_uts46_1041(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ecp0206g90h.xn--rnd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ecp0206g90h.xn--rnd', strict=True)
+
+ def test_uts46_1042(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c긃.榶-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c긃.榶-', strict=True)
+
+ def test_uts46_1043(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c긃.榶-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c긃.榶-', strict=True)
+
+ def test_uts46_1044(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ej0b.xn----d87b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ej0b.xn----d87b', strict=True)
+
+ def test_uts46_1045(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug3307c.xn----d87b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug3307c.xn----d87b', strict=True)
+
+ def test_uts46_1046(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '뉓泓\U0001cd7d.্\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '뉓泓\U0001cd7d.্\u200d', strict=True)
+
+ def test_uts46_1047(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '뉓泓\U0001cd7d.্\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '뉓泓\U0001cd7d.্\u200d', strict=True)
+
+ def test_uts46_1048(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lwwp69lqs7m.xn--b7b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lwwp69lqs7m.xn--b7b', strict=True)
+
+ def test_uts46_1049(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lwwp69lqs7m.xn--b7b605i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lwwp69lqs7m.xn--b7b605i', strict=True)
+
+ def test_uts46_1050(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹴ß。ິ\u2b75\U0006a14c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹴ß。ິ\u2b75\U0006a14c', strict=True)
+
+ def test_uts46_1051(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹴ß。ິ\u2b75\U0006a14c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹴ß。ິ\u2b75\U0006a14c', strict=True)
+
+ def test_uts46_1052(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹴SS。ິ\u2b75\U0006a14c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹴SS。ິ\u2b75\U0006a14c', strict=True)
+
+ def test_uts46_1053(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹴ss。ິ\u2b75\U0006a14c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹴ss。ິ\u2b75\U0006a14c', strict=True)
+
+ def test_uts46_1054(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹴Ss。ິ\u2b75\U0006a14c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹴Ss。ິ\u2b75\U0006a14c', strict=True)
+
+ def test_uts46_1055(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-ti3o.xn--57c638l8774i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-ti3o.xn--57c638l8774i', strict=True)
+
+ def test_uts46_1056(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-l1t5169j.xn--57c638l8774i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-l1t5169j.xn--57c638l8774i', strict=True)
+
+ def test_uts46_1057(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca770nip7n.xn--57c638l8774i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca770nip7n.xn--57c638l8774i', strict=True)
+
+ def test_uts46_1058(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹴SS。ິ\u2b75\U0006a14c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹴SS。ິ\u2b75\U0006a14c', strict=True)
+
+ def test_uts46_1059(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹴ss。ິ\u2b75\U0006a14c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹴ss。ິ\u2b75\U0006a14c', strict=True)
+
+ def test_uts46_1060(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹴Ss。ິ\u2b75\U0006a14c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹴Ss。ິ\u2b75\U0006a14c', strict=True)
+
+ def test_uts46_1061(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᭄.᮪-≮≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᭄.᮪-≮≠', strict=True)
+
+ def test_uts46_1062(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᭄.᮪-≮≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᭄.᮪-≮≠', strict=True)
+
+ def test_uts46_1063(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᭄.᮪-≮≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᭄.᮪-≮≠', strict=True)
+
+ def test_uts46_1064(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᭄.᮪-≮≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᭄.᮪-≮≠', strict=True)
+
+ def test_uts46_1065(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1uf.xn----nmlz65aub', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1uf.xn----nmlz65aub', strict=True)
+
+ def test_uts46_1066(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳Ⴑᅟ.𑄴Ⅎ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳Ⴑᅟ.𑄴Ⅎ', strict=True)
+
+ def test_uts46_1067(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳Ⴑᅟ.𑄴Ⅎ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳Ⴑᅟ.𑄴Ⅎ', strict=True)
+
+ def test_uts46_1068(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳ⴑᅟ.𑄴ⅎ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳ⴑᅟ.𑄴ⅎ', strict=True)
+
+ def test_uts46_1069(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳Ⴑᅟ.𑄴ⅎ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳Ⴑᅟ.𑄴ⅎ', strict=True)
+
+ def test_uts46_1070(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1zf224e.xn--73g3065g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1zf224e.xn--73g3065g', strict=True)
+
+ def test_uts46_1071(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳ⴑᅟ.𑄴ⅎ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳ⴑᅟ.𑄴ⅎ', strict=True)
+
+ def test_uts46_1072(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳Ⴑᅟ.𑄴ⅎ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳Ⴑᅟ.𑄴ⅎ', strict=True)
+
+ def test_uts46_1073(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pnd26a55x.xn--73g3065g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pnd26a55x.xn--73g3065g', strict=True)
+
+ def test_uts46_1074(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--osd925cvyn.xn--73g3065g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--osd925cvyn.xn--73g3065g', strict=True)
+
+ def test_uts46_1075(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pnd26a55x.xn--f3g7465g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pnd26a55x.xn--f3g7465g', strict=True)
+
+ def test_uts46_1076(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001c246。Ⴃ𐴣𐹹똯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001c246。Ⴃ𐴣𐹹똯', strict=True)
+
+ def test_uts46_1077(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001c246。Ⴃ𐴣𐹹똯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001c246。Ⴃ𐴣𐹹똯', strict=True)
+
+ def test_uts46_1078(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001c246。ⴃ𐴣𐹹똯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001c246。ⴃ𐴣𐹹똯', strict=True)
+
+ def test_uts46_1079(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001c246。ⴃ𐴣𐹹똯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001c246。ⴃ𐴣𐹹똯', strict=True)
+
+ def test_uts46_1080(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--187g.xn--ukjy205b8rscdeb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--187g.xn--ukjy205b8rscdeb', strict=True)
+
+ def test_uts46_1081(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--187g.xn--bnd4785f8r8bdeb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--187g.xn--bnd4785f8r8bdeb', strict=True)
+
+ def test_uts46_1082(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫀。⳻\U000e067e󠄷ㅤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫀。⳻\U000e067e󠄷ㅤ', strict=True)
+
+ def test_uts46_1083(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫀。⳻\U000e067e󠄷ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫀。⳻\U000e067e󠄷ᅠ', strict=True)
+
+ def test_uts46_1084(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pw9c.xn--mkjw9654i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pw9c.xn--mkjw9654i', strict=True)
+
+ def test_uts46_1085(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pw9c.xn--psd742lxt32w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pw9c.xn--psd742lxt32w', strict=True)
+
+ def test_uts46_1086(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pw9c.xn--mkj83l4v899a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pw9c.xn--mkj83l4v899a', strict=True)
+
+ def test_uts46_1087(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ޚ⾇.ܞ-𐋰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ޚ⾇.ܞ-𐋰', strict=True)
+
+ def test_uts46_1088(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ޚ舛.ܞ-𐋰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ޚ舛.ܞ-𐋰', strict=True)
+
+ def test_uts46_1089(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7qb6383d.xn----20c3154q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7qb6383d.xn----20c3154q', strict=True)
+
+ def test_uts46_1090(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴉ猕\U000f96eb≮.︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴉ猕\U000f96eb≮.︒', strict=True)
+
+ def test_uts46_1091(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴉ猕\U000f96eb≮.︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴉ猕\U000f96eb≮.︒', strict=True)
+
+ def test_uts46_1092(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴉ猕\U000f96eb≮.。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴉ猕\U000f96eb≮.。', strict=True)
+
+ def test_uts46_1093(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴉ猕\U000f96eb≮.。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴉ猕\U000f96eb≮.。', strict=True)
+
+ def test_uts46_1094(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴉ猕\U000f96eb≮.。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴉ猕\U000f96eb≮.。', strict=True)
+
+ def test_uts46_1095(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴉ猕\U000f96eb≮.。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴉ猕\U000f96eb≮.。', strict=True)
+
+ def test_uts46_1096(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh892bbz0d5438s..', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh892bbz0d5438s..', strict=True)
+
+ def test_uts46_1097(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴉ猕\U000f96eb≮.︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴉ猕\U000f96eb≮.︒', strict=True)
+
+ def test_uts46_1098(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴉ猕\U000f96eb≮.︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴉ猕\U000f96eb≮.︒', strict=True)
+
+ def test_uts46_1099(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh892bbz0d5438s.xn--y86c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh892bbz0d5438s.xn--y86c', strict=True)
+
+ def test_uts46_1100(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hnd212gz32d54x5r..', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hnd212gz32d54x5r..', strict=True)
+
+ def test_uts46_1101(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hnd212gz32d54x5r.xn--y86c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hnd212gz32d54x5r.xn--y86c', strict=True)
+
+ def test_uts46_1102(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🏮。ث鳳ߢ󠅉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🏮。ث鳳ߢ󠅉', strict=True)
+
+ def test_uts46_1103(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🏮。ث鳳ߢ󠅉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🏮。ث鳳ߢ󠅉', strict=True)
+
+ def test_uts46_1104(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8m8h.xn--qgb29f6z90a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8m8h.xn--qgb29f6z90a', strict=True)
+
+ def test_uts46_1105(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹶。ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹶。ß', strict=True)
+
+ def test_uts46_1106(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹶。SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹶。SS', strict=True)
+
+ def test_uts46_1107(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹶。ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹶。ss', strict=True)
+
+ def test_uts46_1108(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹶。Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹶。Ss', strict=True)
+
+ def test_uts46_1109(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uo0d.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uo0d.ss', strict=True)
+
+ def test_uts46_1110(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug9105g.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug9105g.ss', strict=True)
+
+ def test_uts46_1111(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug9105g.xn--zca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug9105g.xn--zca', strict=True)
+
+ def test_uts46_1112(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Å둄-.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Å둄-.\u200c', strict=True)
+
+ def test_uts46_1113(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Å둄-.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Å둄-.\u200c', strict=True)
+
+ def test_uts46_1114(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Å둄-.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Å둄-.\u200c', strict=True)
+
+ def test_uts46_1115(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Å둄-.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Å둄-.\u200c', strict=True)
+
+ def test_uts46_1116(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'å둄-.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'å둄-.\u200c', strict=True)
+
+ def test_uts46_1117(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'å둄-.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'å둄-.\u200c', strict=True)
+
+ def test_uts46_1118(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----1fa1788k.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----1fa1788k.', strict=True)
+
+ def test_uts46_1119(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----1fa1788k.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----1fa1788k.xn--0ug', strict=True)
+
+ def test_uts46_1120(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'å둄-.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'å둄-.\u200c', strict=True)
+
+ def test_uts46_1121(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'å둄-.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'å둄-.\u200c', strict=True)
+
+ def test_uts46_1122(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '゙\U000ac391ᷗ𞤀.\U000b1ca2-॓', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '゙\U000ac391ᷗ𞤀.\U000b1ca2-॓', strict=True)
+
+ def test_uts46_1123(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '゙\U000ac391ᷗ𞤢.\U000b1ca2-॓', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '゙\U000ac391ᷗ𞤢.\U000b1ca2-॓', strict=True)
+
+ def test_uts46_1124(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--veg121fwg63altj9d.xn----eyd92688s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--veg121fwg63altj9d.xn----eyd92688s', strict=True)
+
+ def test_uts46_1125(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς.ß\U00074c44\u06dd⵿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς.ß\U00074c44\u06dd⵿', strict=True)
+
+ def test_uts46_1126(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ.SS\U00074c44\u06dd⵿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ.SS\U00074c44\u06dd⵿', strict=True)
+
+ def test_uts46_1127(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ.ss\U00074c44\u06dd⵿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ.ss\U00074c44\u06dd⵿', strict=True)
+
+ def test_uts46_1128(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ.ss\U00074c44\u06dd⵿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ.ss\U00074c44\u06dd⵿', strict=True)
+
+ def test_uts46_1129(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa.xn--ss-y8d4760biv60n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa.xn--ss-y8d4760biv60n', strict=True)
+
+ def test_uts46_1130(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ.ß\U00074c44\u06dd⵿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ.ß\U00074c44\u06dd⵿', strict=True)
+
+ def test_uts46_1131(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ.ß\U00074c44\u06dd⵿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ.ß\U00074c44\u06dd⵿', strict=True)
+
+ def test_uts46_1132(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa.xn--zca281az71b8x73m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa.xn--zca281az71b8x73m', strict=True)
+
+ def test_uts46_1133(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa.xn--zca281az71b8x73m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa.xn--zca281az71b8x73m', strict=True)
+
+ def test_uts46_1134(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡀ𞀟。٫֙', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡀ𞀟。٫֙', strict=True)
+
+ def test_uts46_1135(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡀ𞀟。٫֙', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡀ𞀟。٫֙', strict=True)
+
+ def test_uts46_1136(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8b9a1720d.xn--kcb33b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8b9a1720d.xn--kcb33b', strict=True)
+
+ def test_uts46_1137(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000886c9\u200cࢩ。⧅\U00058621-𐭡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000886c9\u200cࢩ。⧅\U00058621-𐭡', strict=True)
+
+ def test_uts46_1138(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000886c9\u200cࢩ。⧅\U00058621-𐭡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000886c9\u200cࢩ。⧅\U00058621-𐭡', strict=True)
+
+ def test_uts46_1139(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--yyb56242i.xn----zir1232guu71b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--yyb56242i.xn----zir1232guu71b', strict=True)
+
+ def test_uts46_1140(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--yyb780jll63m.xn----zir1232guu71b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--yyb780jll63m.xn----zir1232guu71b', strict=True)
+
+ def test_uts46_1141(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '룱\u200d𰍨\u200c。𝨖︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '룱\u200d𰍨\u200c。𝨖︒', strict=True)
+
+ def test_uts46_1142(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '룱\u200d𰍨\u200c。𝨖︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '룱\u200d𰍨\u200c。𝨖︒', strict=True)
+
+ def test_uts46_1143(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '룱\u200d𰍨\u200c。𝨖。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '룱\u200d𰍨\u200c。𝨖。', strict=True)
+
+ def test_uts46_1144(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '룱\u200d𰍨\u200c。𝨖。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '룱\u200d𰍨\u200c。𝨖。', strict=True)
+
+ def test_uts46_1145(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ct2b0738h.xn--772h.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ct2b0738h.xn--772h.', strict=True)
+
+ def test_uts46_1146(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugb3358ili2v.xn--772h.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugb3358ili2v.xn--772h.', strict=True)
+
+ def test_uts46_1147(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ct2b0738h.xn--y86cl899a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ct2b0738h.xn--y86cl899a', strict=True)
+
+ def test_uts46_1148(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugb3358ili2v.xn--y86cl899a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugb3358ili2v.xn--y86cl899a', strict=True)
+
+ def test_uts46_1149(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄄.᳜⒈ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄄.᳜⒈ß', strict=True)
+
+ def test_uts46_1150(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3,.᳜1.ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3,.᳜1.ß', strict=True)
+
+ def test_uts46_1151(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3,.᳜1.SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3,.᳜1.SS', strict=True)
+
+ def test_uts46_1152(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3,.᳜1.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3,.᳜1.ss', strict=True)
+
+ def test_uts46_1153(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3,.᳜1.Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3,.᳜1.Ss', strict=True)
+
+ def test_uts46_1154(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3,.xn--1-43l.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3,.xn--1-43l.ss', strict=True)
+
+ def test_uts46_1155(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3,.xn--1-43l.xn--zca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3,.xn--1-43l.xn--zca', strict=True)
+
+ def test_uts46_1156(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄄.᳜⒈SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄄.᳜⒈SS', strict=True)
+
+ def test_uts46_1157(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄄.᳜⒈ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄄.᳜⒈ss', strict=True)
+
+ def test_uts46_1158(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄄.᳜⒈Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄄.᳜⒈Ss', strict=True)
+
+ def test_uts46_1159(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3,.xn--ss-k1r094b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3,.xn--ss-k1r094b', strict=True)
+
+ def test_uts46_1160(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3,.xn--zca344lmif', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3,.xn--zca344lmif', strict=True)
+
+ def test_uts46_1161(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--x07h.xn--ss-k1r094b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--x07h.xn--ss-k1r094b', strict=True)
+
+ def test_uts46_1162(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--x07h.xn--zca344lmif', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--x07h.xn--zca344lmif', strict=True)
+
+ def test_uts46_1163(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004730d⵿。\U0001ef13\U000a1128𑐺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004730d⵿。\U0001ef13\U000a1128𑐺', strict=True)
+
+ def test_uts46_1164(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004730d⵿。\U0001ef13\U000a1128𑐺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004730d⵿。\U0001ef13\U000a1128𑐺', strict=True)
+
+ def test_uts46_1165(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--eoj16016a.xn--0v1d3848a3lr0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--eoj16016a.xn--0v1d3848a3lr0d', strict=True)
+
+ def test_uts46_1166(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '်्᷽.≠\u200d㇛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '်्᷽.≠\u200d㇛', strict=True)
+
+ def test_uts46_1167(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '်्᷽.≠\u200d㇛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '်्᷽.≠\u200d㇛', strict=True)
+
+ def test_uts46_1168(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '်्᷽.≠\u200d㇛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '်्᷽.≠\u200d㇛', strict=True)
+
+ def test_uts46_1169(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '်्᷽.≠\u200d㇛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '်्᷽.≠\u200d㇛', strict=True)
+
+ def test_uts46_1170(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '်्᷽.≠\u200d㇛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '်्᷽.≠\u200d㇛', strict=True)
+
+ def test_uts46_1171(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b956a9zm.xn--1ch912d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b956a9zm.xn--1ch912d', strict=True)
+
+ def test_uts46_1172(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b956a9zm.xn--1ug63gz5w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b956a9zm.xn--1ug63gz5w', strict=True)
+
+ def test_uts46_1173(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴁ𐋨娤.\u200d̼٢𑖿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴁ𐋨娤.\u200d̼٢𑖿', strict=True)
+
+ def test_uts46_1174(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴁ𐋨娤.\u200d̼٢𑖿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴁ𐋨娤.\u200d̼٢𑖿', strict=True)
+
+ def test_uts46_1175(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--skjw75lg29h.xn--9ta62nrv36a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--skjw75lg29h.xn--9ta62nrv36a', strict=True)
+
+ def test_uts46_1176(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--skjw75lg29h.xn--9ta62ngt6aou8t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--skjw75lg29h.xn--9ta62ngt6aou8t', strict=True)
+
+ def test_uts46_1177(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8md2578ag21g.xn--9ta62nrv36a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8md2578ag21g.xn--9ta62nrv36a', strict=True)
+
+ def test_uts46_1178(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8md2578ag21g.xn--9ta62ngt6aou8t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8md2578ag21g.xn--9ta62ngt6aou8t', strict=True)
+
+ def test_uts46_1179(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄀Ⴄ٩ࠠ。⒈ྶß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄀Ⴄ٩ࠠ。⒈ྶß', strict=True)
+
+ def test_uts46_1180(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.Ⴄ٩ࠠ。1.ྶß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.Ⴄ٩ࠠ。1.ྶß', strict=True)
+
+ def test_uts46_1181(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.ⴄ٩ࠠ。1.ྶß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.ⴄ٩ࠠ。1.ྶß', strict=True)
+
+ def test_uts46_1182(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.Ⴄ٩ࠠ。1.ྶSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.Ⴄ٩ࠠ。1.ྶSS', strict=True)
+
+ def test_uts46_1183(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.ⴄ٩ࠠ。1.ྶss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.ⴄ٩ࠠ。1.ྶss', strict=True)
+
+ def test_uts46_1184(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.Ⴄ٩ࠠ。1.ྶSs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.Ⴄ٩ࠠ。1.ྶSs', strict=True)
+
+ def test_uts46_1185(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.xn--iib29fp25e.1.xn--ss-1sj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.xn--iib29fp25e.1.xn--ss-1sj', strict=True)
+
+ def test_uts46_1186(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.xn--iib29fp25e.1.xn--zca117e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.xn--iib29fp25e.1.xn--zca117e', strict=True)
+
+ def test_uts46_1187(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄀ⴄ٩ࠠ。⒈ྶß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄀ⴄ٩ࠠ。⒈ྶß', strict=True)
+
+ def test_uts46_1188(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄀Ⴄ٩ࠠ。⒈ྶSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄀Ⴄ٩ࠠ。⒈ྶSS', strict=True)
+
+ def test_uts46_1189(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄀ⴄ٩ࠠ。⒈ྶss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄀ⴄ٩ࠠ。⒈ྶss', strict=True)
+
+ def test_uts46_1190(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄀Ⴄ٩ࠠ。⒈ྶSs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄀Ⴄ٩ࠠ。⒈ྶSs', strict=True)
+
+ def test_uts46_1191(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iib29fp25e0219a.xn--ss-1sj588o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iib29fp25e0219a.xn--ss-1sj588o', strict=True)
+
+ def test_uts46_1192(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iib29fp25e0219a.xn--zca117e3vp', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iib29fp25e0219a.xn--zca117e3vp', strict=True)
+
+ def test_uts46_1193(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.xn--iib29f26o.1.xn--ss-1sj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.xn--iib29f26o.1.xn--ss-1sj', strict=True)
+
+ def test_uts46_1194(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.xn--iib29f26o.1.xn--zca117e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.xn--iib29f26o.1.xn--zca117e', strict=True)
+
+ def test_uts46_1195(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iib29f26o6n43c.xn--ss-1sj588o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iib29f26o6n43c.xn--ss-1sj588o', strict=True)
+
+ def test_uts46_1196(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iib29f26o6n43c.xn--zca117e3vp', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iib29f26o6n43c.xn--zca117e3vp', strict=True)
+
+ def test_uts46_1197(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.\u200c-٫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.\u200c-٫', strict=True)
+
+ def test_uts46_1198(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.\u200c-٫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.\u200c-٫', strict=True)
+
+ def test_uts46_1199(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch.xn----vqc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch.xn----vqc', strict=True)
+
+ def test_uts46_1200(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch.xn----vqc597q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch.xn----vqc597q', strict=True)
+
+ def test_uts46_1201(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٠۱。\U000e0cf6𞠁٥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٠۱。\U000e0cf6𞠁٥', strict=True)
+
+ def test_uts46_1202(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٠۱。\U000e0cf6𞠁٥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٠۱。\U000e0cf6𞠁٥', strict=True)
+
+ def test_uts46_1203(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8hb40a.xn--eib7967vner3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8hb40a.xn--eib7967vner3e', strict=True)
+
+ def test_uts46_1204(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c٣⒖。\U000f1149\U0003dddb᯳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c٣⒖。\U000f1149\U0003dddb᯳', strict=True)
+
+ def test_uts46_1205(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c٣15.。\U000f1149\U0003dddb᯳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c٣15.。\U000f1149\U0003dddb᯳', strict=True)
+
+ def test_uts46_1206(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--15-gyd..xn--1zf13512buy41d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--15-gyd..xn--1zf13512buy41d', strict=True)
+
+ def test_uts46_1207(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--15-gyd983x..xn--1zf13512buy41d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--15-gyd983x..xn--1zf13512buy41d', strict=True)
+
+ def test_uts46_1208(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cib675m.xn--1zf13512buy41d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cib675m.xn--1zf13512buy41d', strict=True)
+
+ def test_uts46_1209(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cib152kwgd.xn--1zf13512buy41d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cib152kwgd.xn--1zf13512buy41d', strict=True)
+
+ def test_uts46_1210(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳.-逋\U000739ad\U000d966e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳.-逋\U000739ad\U000d966e', strict=True)
+
+ def test_uts46_1211(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1zf.xn----483d46987byr50b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1zf.xn----483d46987byr50b', strict=True)
+
+ def test_uts46_1212(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݖ。ㅤ\u200dς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݖ。ㅤ\u200dς', strict=True)
+
+ def test_uts46_1213(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݖ。ᅠ\u200dς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݖ。ᅠ\u200dς', strict=True)
+
+ def test_uts46_1214(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݖ。ᅠ\u200dΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݖ。ᅠ\u200dΣ', strict=True)
+
+ def test_uts46_1215(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݖ。ᅠ\u200dσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݖ。ᅠ\u200dσ', strict=True)
+
+ def test_uts46_1216(self):
+ self.assertEqual(idna.decode('xn--9ob.xn--4xa', uts46=True, strict=True), 'ݖ.σ')
+ self.assertEqual(idna.encode('xn--9ob.xn--4xa', uts46=True, strict=True), b'xn--9ob.xn--4xa')
+
+ def test_uts46_1217(self):
+ self.assertEqual(idna.decode('ݖ.σ', uts46=True, strict=True), 'ݖ.σ')
+ self.assertEqual(idna.encode('ݖ.σ', uts46=True, strict=True), b'xn--9ob.xn--4xa')
+
+ def test_uts46_1218(self):
+ self.assertEqual(idna.decode('ݖ.Σ', uts46=True, strict=True), 'ݖ.σ')
+ self.assertEqual(idna.encode('ݖ.Σ', uts46=True, strict=True), b'xn--9ob.xn--4xa')
+
+ def test_uts46_1219(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ob.xn--4xa795l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ob.xn--4xa795l', strict=True)
+
+ def test_uts46_1220(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ob.xn--3xa995l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ob.xn--3xa995l', strict=True)
+
+ def test_uts46_1221(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݖ。ㅤ\u200dΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݖ。ㅤ\u200dΣ', strict=True)
+
+ def test_uts46_1222(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݖ。ㅤ\u200dσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݖ。ㅤ\u200dσ', strict=True)
+
+ def test_uts46_1223(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ob.xn--4xa380e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ob.xn--4xa380e', strict=True)
+
+ def test_uts46_1224(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ob.xn--4xa380ebol', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ob.xn--4xa380ebol', strict=True)
+
+ def test_uts46_1225(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ob.xn--3xa580ebol', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ob.xn--3xa580ebol', strict=True)
+
+ def test_uts46_1226(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ob.xn--4xa574u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ob.xn--4xa574u', strict=True)
+
+ def test_uts46_1227(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ob.xn--4xa795lq2l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ob.xn--4xa795lq2l', strict=True)
+
+ def test_uts46_1228(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ob.xn--3xa995lq2l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ob.xn--3xa995lq2l', strict=True)
+
+ def test_uts46_1229(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡆႣ。\U000de8a7̕\u200d\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡆႣ。\U000de8a7̕\u200d\u200d', strict=True)
+
+ def test_uts46_1230(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡆႣ。\U000de8a7̕\u200d\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡆႣ。\U000de8a7̕\u200d\u200d', strict=True)
+
+ def test_uts46_1231(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡆⴃ。\U000de8a7̕\u200d\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡆⴃ。\U000de8a7̕\u200d\u200d', strict=True)
+
+ def test_uts46_1232(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--57e237h.xn--5sa98523p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--57e237h.xn--5sa98523p', strict=True)
+
+ def test_uts46_1233(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--57e237h.xn--5sa649la993427a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--57e237h.xn--5sa649la993427a', strict=True)
+
+ def test_uts46_1234(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡆⴃ。\U000de8a7̕\u200d\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡆⴃ。\U000de8a7̕\u200d\u200d', strict=True)
+
+ def test_uts46_1235(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bnd320b.xn--5sa98523p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bnd320b.xn--5sa98523p', strict=True)
+
+ def test_uts46_1236(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bnd320b.xn--5sa649la993427a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bnd320b.xn--5sa649la993427a', strict=True)
+
+ def test_uts46_1237(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㭄\u200dࡏ𑚵.ς𐮮\u200c\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㭄\u200dࡏ𑚵.ς𐮮\u200c\u200d', strict=True)
+
+ def test_uts46_1238(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㭄\u200dࡏ𑚵.ς𐮮\u200c\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㭄\u200dࡏ𑚵.ς𐮮\u200c\u200d', strict=True)
+
+ def test_uts46_1239(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㭄\u200dࡏ𑚵.Σ𐮮\u200c\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㭄\u200dࡏ𑚵.Σ𐮮\u200c\u200d', strict=True)
+
+ def test_uts46_1240(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㭄\u200dࡏ𑚵.σ𐮮\u200c\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㭄\u200dࡏ𑚵.σ𐮮\u200c\u200d', strict=True)
+
+ def test_uts46_1241(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ewb302xhu1l.xn--4xa0426k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ewb302xhu1l.xn--4xa0426k', strict=True)
+
+ def test_uts46_1242(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ewb962jfitku4r.xn--4xa695lda6932v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ewb962jfitku4r.xn--4xa695lda6932v', strict=True)
+
+ def test_uts46_1243(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ewb962jfitku4r.xn--3xa895lda6932v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ewb962jfitku4r.xn--3xa895lda6932v', strict=True)
+
+ def test_uts46_1244(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㭄\u200dࡏ𑚵.Σ𐮮\u200c\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㭄\u200dࡏ𑚵.Σ𐮮\u200c\u200d', strict=True)
+
+ def test_uts46_1245(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㭄\u200dࡏ𑚵.σ𐮮\u200c\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㭄\u200dࡏ𑚵.σ𐮮\u200c\u200d', strict=True)
+
+ def test_uts46_1246(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '឵。\U0001ebf8ꡀ🄋', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '឵。\U0001ebf8ꡀ🄋', strict=True)
+
+ def test_uts46_1247(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--8b9ar252dngd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--8b9ar252dngd', strict=True)
+
+ def test_uts46_1248(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--03e.xn--8b9ar252dngd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--03e.xn--8b9ar252dngd', strict=True)
+
+ def test_uts46_1249(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d0aba暑.⾑٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d0aba暑.⾑٨', strict=True)
+
+ def test_uts46_1250(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d0aba暑.襾٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d0aba暑.襾٨', strict=True)
+
+ def test_uts46_1251(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tlvq3513e.xn--hib9228d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tlvq3513e.xn--hib9228d', strict=True)
+
+ def test_uts46_1252(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄚≯ꡢ。\u0891᷿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄚≯ꡢ。\u0891᷿', strict=True)
+
+ def test_uts46_1253(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄚≯ꡢ。\u0891᷿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄚≯ꡢ。\u0891᷿', strict=True)
+
+ def test_uts46_1254(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh7783c.xn--9xb680i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh7783c.xn--9xb680i', strict=True)
+
+ def test_uts46_1255(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﷃ𮁱୍𐨿.\U000d09e4Ⴗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﷃ𮁱୍𐨿.\U000d09e4Ⴗ', strict=True)
+
+ def test_uts46_1256(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'كمم𮁱୍𐨿.\U000d09e4Ⴗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'كمم𮁱୍𐨿.\U000d09e4Ⴗ', strict=True)
+
+ def test_uts46_1257(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'كمم𮁱୍𐨿.\U000d09e4ⴗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'كمم𮁱୍𐨿.\U000d09e4ⴗ', strict=True)
+
+ def test_uts46_1258(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fhbea662czx68a2tju.xn--fljz2846h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fhbea662czx68a2tju.xn--fljz2846h', strict=True)
+
+ def test_uts46_1259(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﷃ𮁱୍𐨿.\U000d09e4ⴗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﷃ𮁱୍𐨿.\U000d09e4ⴗ', strict=True)
+
+ def test_uts46_1260(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fhbea662czx68a2tju.xn--vnd55511o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fhbea662czx68a2tju.xn--vnd55511o', strict=True)
+
+ def test_uts46_1261(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞀨。᭄\U000a16e8\U0001e387', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞀨。᭄\U000a16e8\U0001e387', strict=True)
+
+ def test_uts46_1262(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞀨。᭄\U000a16e8\U0001e387', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞀨。᭄\U000a16e8\U0001e387', strict=True)
+
+ def test_uts46_1263(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mi4h.xn--1uf6843smg20c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mi4h.xn--1uf6843smg20c', strict=True)
+
+ def test_uts46_1264(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e08fc\u200c.𐺰\u200cᡟ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e08fc\u200c.𐺰\u200cᡟ', strict=True)
+
+ def test_uts46_1265(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e08fc\u200c.𐺰\u200cᡟ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e08fc\u200c.𐺰\u200cᡟ', strict=True)
+
+ def test_uts46_1266(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--q046e.xn--v8e7227j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--q046e.xn--v8e7227j', strict=True)
+
+ def test_uts46_1267(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug18531l.xn--v8e340bp21t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug18531l.xn--v8e340bp21t', strict=True)
+
+ def test_uts46_1268(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢛ\U000e815fß.ጧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢛ\U000e815fß.ጧ', strict=True)
+
+ def test_uts46_1269(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢛ\U000e815fSS.ጧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢛ\U000e815fSS.ጧ', strict=True)
+
+ def test_uts46_1270(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢛ\U000e815fss.ጧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢛ\U000e815fss.ጧ', strict=True)
+
+ def test_uts46_1271(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢛ\U000e815fSs.ጧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢛ\U000e815fSs.ጧ', strict=True)
+
+ def test_uts46_1272(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-7dp66033t.xn--p5d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-7dp66033t.xn--p5d', strict=True)
+
+ def test_uts46_1273(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca562jc642x.xn--p5d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca562jc642x.xn--p5d', strict=True)
+
+ def test_uts46_1274(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⮒\u200c.\U00052697\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⮒\u200c.\U00052697\u200c', strict=True)
+
+ def test_uts46_1275(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b9i.xn--5p9y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b9i.xn--5p9y', strict=True)
+
+ def test_uts46_1276(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugx66b.xn--0ugz2871c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugx66b.xn--0ugz2871c', strict=True)
+
+ def test_uts46_1277(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤂\U00079781𐹯。Ⴜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤂\U00079781𐹯。Ⴜ', strict=True)
+
+ def test_uts46_1278(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤤\U00079781𐹯。ⴜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤤\U00079781𐹯。ⴜ', strict=True)
+
+ def test_uts46_1279(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--no0dr648a51o3b.xn--klj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--no0dr648a51o3b.xn--klj', strict=True)
+
+ def test_uts46_1280(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--no0dr648a51o3b.xn--0nd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--no0dr648a51o3b.xn--0nd', strict=True)
+
+ def test_uts46_1281(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤂\U00079781𐹯。ⴜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤂\U00079781𐹯。ⴜ', strict=True)
+
+ def test_uts46_1282(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹵⮣\u200c𑄰。\U00077d3fﲷ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹵⮣\u200c𑄰。\U00077d3fﲷ', strict=True)
+
+ def test_uts46_1283(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹵⮣\u200c𑄰。\U00077d3fضم', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹵⮣\u200c𑄰。\U00077d3fضم', strict=True)
+
+ def test_uts46_1284(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--s9i5458e7yb.xn--1gb4a66004i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--s9i5458e7yb.xn--1gb4a66004i', strict=True)
+
+ def test_uts46_1285(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug586bcj8p7jc.xn--1gb4a66004i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug586bcj8p7jc.xn--1gb4a66004i', strict=True)
+
+ def test_uts46_1286(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴒ。デß𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴒ。デß𞤵్', strict=True)
+
+ def test_uts46_1287(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴒ。デß𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴒ。デß𞤵్', strict=True)
+
+ def test_uts46_1288(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴒ。デß𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴒ。デß𞤵్', strict=True)
+
+ def test_uts46_1289(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴒ。デß𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴒ。デß𞤵్', strict=True)
+
+ def test_uts46_1290(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴒ。デSS𞤓్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴒ。デSS𞤓్', strict=True)
+
+ def test_uts46_1291(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴒ。デSS𞤓్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴒ。デSS𞤓్', strict=True)
+
+ def test_uts46_1292(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴒ。デss𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴒ。デss𞤵్', strict=True)
+
+ def test_uts46_1293(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴒ。デss𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴒ。デss𞤵్', strict=True)
+
+ def test_uts46_1294(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴒ。デSs𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴒ。デSs𞤵్', strict=True)
+
+ def test_uts46_1295(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴒ。デSs𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴒ。デSs𞤵్', strict=True)
+
+ def test_uts46_1296(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9kj.xn--ss-9nh3648ahh20b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9kj.xn--ss-9nh3648ahh20b', strict=True)
+
+ def test_uts46_1297(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9kj.xn--zca669cmr3a0f28a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9kj.xn--zca669cmr3a0f28a', strict=True)
+
+ def test_uts46_1298(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qnd.xn--ss-9nh3648ahh20b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qnd.xn--ss-9nh3648ahh20b', strict=True)
+
+ def test_uts46_1299(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qnd.xn--zca669cmr3a0f28a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qnd.xn--zca669cmr3a0f28a', strict=True)
+
+ def test_uts46_1300(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴒ。デSS𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴒ。デSS𞤵్', strict=True)
+
+ def test_uts46_1301(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴒ。デSS𞤵్', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴒ。デSS𞤵్', strict=True)
+
+ def test_uts46_1302(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑁿്.7-ߒ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑁿്.7-ߒ', strict=True)
+
+ def test_uts46_1303(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑁿്.7-ߒ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑁿്.7-ߒ', strict=True)
+
+ def test_uts46_1304(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wxc1283k.xn--7--yue', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wxc1283k.xn--7--yue', strict=True)
+
+ def test_uts46_1305(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𑜫\U000e0b47.᜴\U000527a4𑍬ᢧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𑜫\U000e0b47.᜴\U000527a4𑍬ᢧ', strict=True)
+
+ def test_uts46_1306(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𑜫\U000e0b47.᜴\U000527a4𑍬ᢧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𑜫\U000e0b47.᜴\U000527a4𑍬ᢧ', strict=True)
+
+ def test_uts46_1307(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdhx157g68o0g.xn--c0e65eu616c34o7a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdhx157g68o0g.xn--c0e65eu616c34o7a', strict=True)
+
+ def test_uts46_1308(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᷛ\U0008e419Ⴗ쏔。ށ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᷛ\U0008e419Ⴗ쏔。ށ', strict=True)
+
+ def test_uts46_1309(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᷛ\U0008e419Ⴗ쏔。ށ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᷛ\U0008e419Ⴗ쏔。ށ', strict=True)
+
+ def test_uts46_1310(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᷛ\U0008e419ⴗ쏔。ށ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᷛ\U0008e419ⴗ쏔。ށ', strict=True)
+
+ def test_uts46_1311(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᷛ\U0008e419ⴗ쏔。ށ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᷛ\U0008e419ⴗ쏔。ށ', strict=True)
+
+ def test_uts46_1312(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zegy26dw47iy6w2f.xn--iqb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zegy26dw47iy6w2f.xn--iqb', strict=True)
+
+ def test_uts46_1313(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vnd148d733ky6n9e.xn--iqb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vnd148d733ky6n9e.xn--iqb', strict=True)
+
+ def test_uts46_1314(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß。𐋳Ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß。𐋳Ⴌྸ', strict=True)
+
+ def test_uts46_1315(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß。𐋳Ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß。𐋳Ⴌྸ', strict=True)
+
+ def test_uts46_1316(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß。𐋳ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß。𐋳ⴌྸ', strict=True)
+
+ def test_uts46_1317(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS。𐋳Ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS。𐋳Ⴌྸ', strict=True)
+
+ def test_uts46_1318(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss。𐋳ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss。𐋳ⴌྸ', strict=True)
+
+ def test_uts46_1319(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss。𐋳Ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss。𐋳Ⴌྸ', strict=True)
+
+ def test_uts46_1320(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss.xn--lgd921mvv0m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss.xn--lgd921mvv0m', strict=True)
+
+ def test_uts46_1321(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss.𐋳ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss.𐋳ⴌྸ', strict=True)
+
+ def test_uts46_1322(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS.𐋳Ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS.𐋳Ⴌྸ', strict=True)
+
+ def test_uts46_1323(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss.𐋳Ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss.𐋳Ⴌྸ', strict=True)
+
+ def test_uts46_1324(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca.xn--lgd921mvv0m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca.xn--lgd921mvv0m', strict=True)
+
+ def test_uts46_1325(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß.𐋳ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß.𐋳ⴌྸ', strict=True)
+
+ def test_uts46_1326(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß。𐋳ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß。𐋳ⴌྸ', strict=True)
+
+ def test_uts46_1327(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS。𐋳Ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS。𐋳Ⴌྸ', strict=True)
+
+ def test_uts46_1328(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss。𐋳ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss。𐋳ⴌྸ', strict=True)
+
+ def test_uts46_1329(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss。𐋳Ⴌྸ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss。𐋳Ⴌྸ', strict=True)
+
+ def test_uts46_1330(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss.xn--lgd10cu829c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss.xn--lgd10cu829c', strict=True)
+
+ def test_uts46_1331(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca.xn--lgd10cu829c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca.xn--lgd10cu829c', strict=True)
+
+ def test_uts46_1332(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ڞ\U00010da1.\u200c⾝্', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ڞ\U00010da1.\u200c⾝্', strict=True)
+
+ def test_uts46_1333(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ڞ\U00010da1.\u200c身্', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ڞ\U00010da1.\u200c身্', strict=True)
+
+ def test_uts46_1334(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----stc7013r.xn--b7b1419d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----stc7013r.xn--b7b1419d', strict=True)
+
+ def test_uts46_1335(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----stc7013r.xn--b7b305imj2f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----stc7013r.xn--b7b305imj2f', strict=True)
+
+ def test_uts46_1336(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '😮ݤ𑈵𞀖.💅\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '😮ݤ𑈵𞀖.💅\u200d', strict=True)
+
+ def test_uts46_1337(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '😮ݤ𑈵𞀖.💅\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '😮ݤ𑈵𞀖.💅\u200d', strict=True)
+
+ def test_uts46_1338(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--opb4277kuc7elqsa.xn--kr8h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--opb4277kuc7elqsa.xn--kr8h', strict=True)
+
+ def test_uts46_1339(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--opb4277kuc7elqsa.xn--1ug5265p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--opb4277kuc7elqsa.xn--1ug5265p', strict=True)
+
+ def test_uts46_1340(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣲ\u200d꙳ܒ.ᢏ\u200c\U000e0344', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣲ\u200d꙳ܒ.ᢏ\u200c\U000e0344', strict=True)
+
+ def test_uts46_1341(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cnb37gdy00a.xn--89e02253p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cnb37gdy00a.xn--89e02253p', strict=True)
+
+ def test_uts46_1342(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cnb37g904be26j.xn--89e849ax9363a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cnb37g904be26j.xn--89e849ax9363a', strict=True)
+
+ def test_uts46_1343(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴑ.ڿ\U0001ebd3ᠲ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴑ.ڿ\U0001ebd3ᠲ', strict=True)
+
+ def test_uts46_1344(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴑ.ڿ\U0001ebd3ᠲ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴑ.ڿ\U0001ebd3ᠲ', strict=True)
+
+ def test_uts46_1345(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴑ.ڿ\U0001ebd3ᠲ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴑ.ڿ\U0001ebd3ᠲ', strict=True)
+
+ def test_uts46_1346(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8kj.xn--ykb840gd555a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8kj.xn--ykb840gd555a', strict=True)
+
+ def test_uts46_1347(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴑ.ڿ\U0001ebd3ᠲ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴑ.ڿ\U0001ebd3ᠲ', strict=True)
+
+ def test_uts46_1348(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pnd.xn--ykb840gd555a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pnd.xn--ykb840gd555a', strict=True)
+
+ def test_uts46_1349(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᩚ\U0001b99d్。\U0001a76c𝟵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᩚ\U0001b99d్。\U0001a76c𝟵', strict=True)
+
+ def test_uts46_1350(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᩚ\U0001b99d్。\U0001a76c9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᩚ\U0001b99d్。\U0001a76c9', strict=True)
+
+ def test_uts46_1351(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lqc703ebm93a.xn--9-000p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lqc703ebm93a.xn--9-000p', strict=True)
+
+ def test_uts46_1352(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cڠ\U0003fe86𝟗。Ⴣ꒘ﳐ\U00050616', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cڠ\U0003fe86𝟗。Ⴣ꒘ﳐ\U00050616', strict=True)
+
+ def test_uts46_1353(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cڠ\U0003fe869。Ⴣ꒘مخ\U00050616', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cڠ\U0003fe869。Ⴣ꒘مخ\U00050616', strict=True)
+
+ def test_uts46_1354(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cڠ\U0003fe869。ⴣ꒘مخ\U00050616', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cڠ\U0003fe869。ⴣ꒘مخ\U00050616', strict=True)
+
+ def test_uts46_1355(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-vtc42319e.xn--tgb9bz87p833hw316c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-vtc42319e.xn--tgb9bz87p833hw316c', strict=True)
+
+ def test_uts46_1356(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-vtc736qts91g.xn--tgb9bz87p833hw316c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-vtc736qts91g.xn--tgb9bz87p833hw316c', strict=True)
+
+ def test_uts46_1357(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cڠ\U0003fe86𝟗。ⴣ꒘ﳐ\U00050616', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cڠ\U0003fe86𝟗。ⴣ꒘ﳐ\U00050616', strict=True)
+
+ def test_uts46_1358(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-vtc42319e.xn--tgb9bz61cfn8mw3t2c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-vtc42319e.xn--tgb9bz61cfn8mw3t2c', strict=True)
+
+ def test_uts46_1359(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-vtc736qts91g.xn--tgb9bz61cfn8mw3t2c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-vtc736qts91g.xn--tgb9bz61cfn8mw3t2c', strict=True)
+
+ def test_uts46_1360(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡖ。̟\U000576e8ஂ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡖ。̟\U000576e8ஂ-', strict=True)
+
+ def test_uts46_1361(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡖ。̟\U000576e8ஂ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡖ。̟\U000576e8ஂ-', strict=True)
+
+ def test_uts46_1362(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--m8e.xn----mdb555dkk71m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--m8e.xn----mdb555dkk71m', strict=True)
+
+ def test_uts46_1363(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠠浘。絧𞀀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠠浘。絧𞀀', strict=True)
+
+ def test_uts46_1364(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--e0wp491f.xn--ud0a3573e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--e0wp491f.xn--ud0a3573e', strict=True)
+
+ def test_uts46_1365(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֖Ⴋ.𝟳≯︒︊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֖Ⴋ.𝟳≯︒︊', strict=True)
+
+ def test_uts46_1366(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֖Ⴋ.𝟳≯︒︊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֖Ⴋ.𝟳≯︒︊', strict=True)
+
+ def test_uts46_1367(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֖Ⴋ.7≯。︊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֖Ⴋ.7≯。︊', strict=True)
+
+ def test_uts46_1368(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֖Ⴋ.7≯。︊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֖Ⴋ.7≯。︊', strict=True)
+
+ def test_uts46_1369(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֖ⴋ.7≯。︊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֖ⴋ.7≯。︊', strict=True)
+
+ def test_uts46_1370(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֖ⴋ.7≯。︊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֖ⴋ.7≯。︊', strict=True)
+
+ def test_uts46_1371(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hcb613r.xn--7-pgo.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hcb613r.xn--7-pgo.', strict=True)
+
+ def test_uts46_1372(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֖ⴋ.𝟳≯︒︊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֖ⴋ.𝟳≯︒︊', strict=True)
+
+ def test_uts46_1373(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֖ⴋ.𝟳≯︒︊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֖ⴋ.𝟳≯︒︊', strict=True)
+
+ def test_uts46_1374(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hcb613r.xn--7-pgoy530h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hcb613r.xn--7-pgoy530h', strict=True)
+
+ def test_uts46_1375(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hcb887c.xn--7-pgo.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hcb887c.xn--7-pgo.', strict=True)
+
+ def test_uts46_1376(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hcb887c.xn--7-pgoy530h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hcb887c.xn--7-pgoy530h', strict=True)
+
+ def test_uts46_1377(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dF𑓂。\U000e0ea8︒ݾ𐹢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dF𑓂。\U000e0ea8︒ݾ𐹢', strict=True)
+
+ def test_uts46_1378(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dF𑓂。\U000e0ea8。ݾ𐹢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dF𑓂。\U000e0ea8。ݾ𐹢', strict=True)
+
+ def test_uts46_1379(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200df𑓂。\U000e0ea8。ݾ𐹢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200df𑓂。\U000e0ea8。ݾ𐹢', strict=True)
+
+ def test_uts46_1380(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--f-kq9i.xn--7656e.xn--fqb4175k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--f-kq9i.xn--7656e.xn--fqb4175k', strict=True)
+
+ def test_uts46_1381(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--f-tgn9761i.xn--7656e.xn--fqb4175k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--f-tgn9761i.xn--7656e.xn--fqb4175k', strict=True)
+
+ def test_uts46_1382(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200df𑓂。\U000e0ea8︒ݾ𐹢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200df𑓂。\U000e0ea8︒ݾ𐹢', strict=True)
+
+ def test_uts46_1383(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--f-kq9i.xn--fqb1637j8hky9452a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--f-kq9i.xn--fqb1637j8hky9452a', strict=True)
+
+ def test_uts46_1384(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--f-tgn9761i.xn--fqb1637j8hky9452a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--f-tgn9761i.xn--fqb1637j8hky9452a', strict=True)
+
+ def test_uts46_1385(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡅ🄇𐼗︒。𐹻𑜫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡅ🄇𐼗︒。𐹻𑜫', strict=True)
+
+ def test_uts46_1386(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡅ6,𐼗。。𐹻𑜫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡅ6,𐼗。。𐹻𑜫', strict=True)
+
+ def test_uts46_1387(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6,-r4e4420y..xn--zo0di2m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6,-r4e4420y..xn--zo0di2m', strict=True)
+
+ def test_uts46_1388(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6,-r4e6182wo1ra.xn--zo0di2m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6,-r4e6182wo1ra.xn--zo0di2m', strict=True)
+
+ def test_uts46_1389(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3vb4696jpxkjh7s.xn--zo0di2m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3vb4696jpxkjh7s.xn--zo0di2m', strict=True)
+
+ def test_uts46_1390(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010e48.᷀𑈱𐦭', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010e48.᷀𑈱𐦭', strict=True)
+
+ def test_uts46_1391(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jn0d.xn--7dg0871h3lf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jn0d.xn--7dg0871h3lf', strict=True)
+
+ def test_uts46_1392(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴂ䠺。𞤃\U000453ce\U000d9ba6ړ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴂ䠺。𞤃\U000453ce\U000d9ba6ړ', strict=True)
+
+ def test_uts46_1393(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴂ䠺。𞤥\U000453ce\U000d9ba6ړ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴂ䠺。𞤥\U000453ce\U000d9ba6ړ', strict=True)
+
+ def test_uts46_1394(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tkj638f.xn--pjb9818vg4xno967d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tkj638f.xn--pjb9818vg4xno967d', strict=True)
+
+ def test_uts46_1395(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9md875z.xn--pjb9818vg4xno967d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9md875z.xn--pjb9818vg4xno967d', strict=True)
+
+ def test_uts46_1396(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴂ䠺。𞤃\U000453ce\U000d9ba6ړ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴂ䠺。𞤃\U000453ce\U000d9ba6ړ', strict=True)
+
+ def test_uts46_1397(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄇伐︒.\U0001c65a꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄇伐︒.\U0001c65a꣄', strict=True)
+
+ def test_uts46_1398(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6,伐。.\U0001c65a꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6,伐。.\U0001c65a꣄', strict=True)
+
+ def test_uts46_1399(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6,-7i3c..xn--0f9ao925c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6,-7i3c..xn--0f9ao925c', strict=True)
+
+ def test_uts46_1400(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6,-7i3cj157d.xn--0f9ao925c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6,-7i3cj157d.xn--0f9ao925c', strict=True)
+
+ def test_uts46_1401(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--woqs083bel0g.xn--0f9ao925c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--woqs083bel0g.xn--0f9ao925c', strict=True)
+
+ def test_uts46_1402(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹠꯭\ufffb。\u200d𐫓Ⴚ𑂹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹠꯭\ufffb。\u200d𐫓Ⴚ𑂹', strict=True)
+
+ def test_uts46_1403(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐹠꯭\ufffb。\u200d𐫓ⴚ𑂹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐹠꯭\ufffb。\u200d𐫓ⴚ𑂹', strict=True)
+
+ def test_uts46_1404(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--429az70n29i.xn--ilj7702eqyd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--429az70n29i.xn--ilj7702eqyd', strict=True)
+
+ def test_uts46_1405(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugz126coy7bdbm.xn--1ug062chv7ov6e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugz126coy7bdbm.xn--1ug062chv7ov6e', strict=True)
+
+ def test_uts46_1406(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--429az70n29i.xn--ynd3619jqyd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--429az70n29i.xn--ynd3619jqyd', strict=True)
+
+ def test_uts46_1407(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugz126coy7bdbm.xn--ynd959evs1pv6e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugz126coy7bdbm.xn--ynd959evs1pv6e', strict=True)
+
+ def test_uts46_1408(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆠.\U00077434\U000cc7c8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆠.\U00077434\U000cc7c8', strict=True)
+
+ def test_uts46_1409(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆠.\U00077434\U000cc7c8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆠.\U00077434\U000cc7c8', strict=True)
+
+ def test_uts46_1410(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--rx21bhv12i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--rx21bhv12i', strict=True)
+
+ def test_uts46_1411(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫃\u200cႦ.≠\U0001edd9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫃\u200cႦ.≠\U0001edd9', strict=True)
+
+ def test_uts46_1412(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫃\u200cႦ.≠\U0001edd9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫃\u200cႦ.≠\U0001edd9', strict=True)
+
+ def test_uts46_1413(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫃\u200cⴆ.≠\U0001edd9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫃\u200cⴆ.≠\U0001edd9', strict=True)
+
+ def test_uts46_1414(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫃\u200cⴆ.≠\U0001edd9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫃\u200cⴆ.≠\U0001edd9', strict=True)
+
+ def test_uts46_1415(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xkjz802e.xn--1ch2802p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xkjz802e.xn--1ch2802p', strict=True)
+
+ def test_uts46_1416(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug132csv7o.xn--1ch2802p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug132csv7o.xn--1ch2802p', strict=True)
+
+ def test_uts46_1417(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--end1719j.xn--1ch2802p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--end1719j.xn--1ch2802p', strict=True)
+
+ def test_uts46_1418(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--end799ekr1p.xn--1ch2802p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--end799ekr1p.xn--1ch2802p', strict=True)
+
+ def test_uts46_1419(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0072\U00019a62𝟥ꘌ.ࡁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0072\U00019a62𝟥ꘌ.ࡁ', strict=True)
+
+ def test_uts46_1420(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0072\U00019a623ꘌ.ࡁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0072\U00019a623ꘌ.ࡁ', strict=True)
+
+ def test_uts46_1421(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-0g3es485d8i15h.xn--zvb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-0g3es485d8i15h.xn--zvb', strict=True)
+
+ def test_uts46_1422(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.ᢆ\U000e1ca3-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.ᢆ\U000e1ca3-', strict=True)
+
+ def test_uts46_1423(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn----pbkx6497q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn----pbkx6497q', strict=True)
+
+ def test_uts46_1424(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f2697\u200c。\u200c\U0001ec06ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f2697\u200c。\u200c\U0001ec06ς', strict=True)
+
+ def test_uts46_1425(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f2697\u200c。\u200c\U0001ec06ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f2697\u200c。\u200c\U0001ec06ς', strict=True)
+
+ def test_uts46_1426(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f2697\u200c。\u200c\U0001ec06Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f2697\u200c。\u200c\U0001ec06Σ', strict=True)
+
+ def test_uts46_1427(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f2697\u200c。\u200c\U0001ec06σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f2697\u200c。\u200c\U0001ec06σ', strict=True)
+
+ def test_uts46_1428(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qp42f.xn--4xa3011w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qp42f.xn--4xa3011w', strict=True)
+
+ def test_uts46_1429(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug76062m.xn--4xa595lhn92a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug76062m.xn--4xa595lhn92a', strict=True)
+
+ def test_uts46_1430(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug76062m.xn--3xa795lhn92a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug76062m.xn--3xa795lhn92a', strict=True)
+
+ def test_uts46_1431(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f2697\u200c。\u200c\U0001ec06Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f2697\u200c。\u200c\U0001ec06Σ', strict=True)
+
+ def test_uts46_1432(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f2697\u200c。\u200c\U0001ec06σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f2697\u200c。\u200c\U0001ec06σ', strict=True)
+
+ def test_uts46_1433(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '堕𑓂ᬂ。𐮇𞤽\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '堕𑓂ᬂ。𐮇𞤽\u200c-', strict=True)
+
+ def test_uts46_1434(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '堕𑓂ᬂ。𐮇𞤛\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '堕𑓂ᬂ。𐮇𞤛\u200c-', strict=True)
+
+ def test_uts46_1435(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5sf345zdk8h.xn----iv5iw606c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5sf345zdk8h.xn----iv5iw606c', strict=True)
+
+ def test_uts46_1436(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5sf345zdk8h.xn----rgnt157hwl9g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5sf345zdk8h.xn----rgnt157hwl9g', strict=True)
+
+ def test_uts46_1437(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥςتς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥςتς', strict=True)
+
+ def test_uts46_1438(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥςتς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥςتς', strict=True)
+
+ def test_uts46_1439(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤀。ᡥΣتΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤀。ᡥΣتΣ', strict=True)
+
+ def test_uts46_1440(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥσتσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥσتσ', strict=True)
+
+ def test_uts46_1441(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l8e1317j1ebz456b.xn--4xaa85plx4a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l8e1317j1ebz456b.xn--4xaa85plx4a', strict=True)
+
+ def test_uts46_1442(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l8e1317j1ebz456b.xn--3xaa16plx4a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l8e1317j1ebz456b.xn--3xaa16plx4a', strict=True)
+
+ def test_uts46_1443(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤀。ᡥΣتΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤀。ᡥΣتΣ', strict=True)
+
+ def test_uts46_1444(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥσتσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥσتσ', strict=True)
+
+ def test_uts46_1445(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥΣتΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥΣتΣ', strict=True)
+
+ def test_uts46_1446(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥΣتσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥΣتσ', strict=True)
+
+ def test_uts46_1447(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥΣتς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥΣتς', strict=True)
+
+ def test_uts46_1448(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥσتς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥσتς', strict=True)
+
+ def test_uts46_1449(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l8e1317j1ebz456b.xn--3xab95plx4a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l8e1317j1ebz456b.xn--3xab95plx4a', strict=True)
+
+ def test_uts46_1450(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥΣتΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥΣتΣ', strict=True)
+
+ def test_uts46_1451(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥΣتσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥΣتσ', strict=True)
+
+ def test_uts46_1452(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥΣتς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥΣتς', strict=True)
+
+ def test_uts46_1453(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶𑁆ᡕ𞤢。ᡥσتς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶𑁆ᡕ𞤢。ᡥσتς', strict=True)
+
+ def test_uts46_1454(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cf4b0.-𝟻ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cf4b0.-𝟻ß', strict=True)
+
+ def test_uts46_1455(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cf4b0.-5ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cf4b0.-5ß', strict=True)
+
+ def test_uts46_1456(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cf4b0.-5SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cf4b0.-5SS', strict=True)
+
+ def test_uts46_1457(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cf4b0.-5ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cf4b0.-5ss', strict=True)
+
+ def test_uts46_1458(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t960e.-5ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t960e.-5ss', strict=True)
+
+ def test_uts46_1459(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t960e.xn---5-hia', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t960e.xn---5-hia', strict=True)
+
+ def test_uts46_1460(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cf4b0.-𝟻SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cf4b0.-𝟻SS', strict=True)
+
+ def test_uts46_1461(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cf4b0.-𝟻ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cf4b0.-𝟻ss', strict=True)
+
+ def test_uts46_1462(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cf4b0.-𝟻Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cf4b0.-𝟻Ss', strict=True)
+
+ def test_uts46_1463(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cf4b0.-5Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cf4b0.-5Ss', strict=True)
+
+ def test_uts46_1464(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐨿.🤒Ⴥ\U00091bb6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐨿.🤒Ⴥ\U00091bb6', strict=True)
+
+ def test_uts46_1465(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𐨿.🤒ⴥ\U00091bb6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𐨿.🤒ⴥ\U00091bb6', strict=True)
+
+ def test_uts46_1466(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0s9c.xn--tljz038l0gz4b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0s9c.xn--tljz038l0gz4b', strict=True)
+
+ def test_uts46_1467(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug9533g.xn--tljz038l0gz4b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug9533g.xn--tljz038l0gz4b', strict=True)
+
+ def test_uts46_1468(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0s9c.xn--9nd3211w0gz4b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0s9c.xn--9nd3211w0gz4b', strict=True)
+
+ def test_uts46_1469(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug9533g.xn--9nd3211w0gz4b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug9533g.xn--9nd3211w0gz4b', strict=True)
+
+ def test_uts46_1470(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000352c5。ß𬵩\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000352c5。ß𬵩\u200d', strict=True)
+
+ def test_uts46_1471(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000352c5。SS𬵩\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000352c5。SS𬵩\u200d', strict=True)
+
+ def test_uts46_1472(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000352c5。ss𬵩\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000352c5。ss𬵩\u200d', strict=True)
+
+ def test_uts46_1473(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000352c5。Ss𬵩\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000352c5。Ss𬵩\u200d', strict=True)
+
+ def test_uts46_1474(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ey1p.xn--ss-eq36b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ey1p.xn--ss-eq36b', strict=True)
+
+ def test_uts46_1475(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ey1p.xn--ss-n1tx0508a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ey1p.xn--ss-n1tx0508a', strict=True)
+
+ def test_uts46_1476(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ey1p.xn--zca870nz438b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ey1p.xn--zca870nz438b', strict=True)
+
+ def test_uts46_1477(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𭉝。߱́𞹻', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𭉝。߱́𞹻', strict=True)
+
+ def test_uts46_1478(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𭉝。߱́غ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𭉝。߱́غ', strict=True)
+
+ def test_uts46_1479(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--634m.xn--lsa46nuub', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--634m.xn--lsa46nuub', strict=True)
+
+ def test_uts46_1480(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugy003y.xn--lsa46nuub', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugy003y.xn--lsa46nuub', strict=True)
+
+ def test_uts46_1481(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ef0c\u200c𑈶。𐹡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ef0c\u200c𑈶。𐹡', strict=True)
+
+ def test_uts46_1482(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9g1d1288a.xn--8n0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9g1d1288a.xn--8n0d', strict=True)
+
+ def test_uts46_1483(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug7946gzpxf.xn--8n0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug7946gzpxf.xn--8n0d', strict=True)
+
+ def test_uts46_1484(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻ς≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻ς≠', strict=True)
+
+ def test_uts46_1485(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻ς≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻ς≠', strict=True)
+
+ def test_uts46_1486(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻ς≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻ς≠', strict=True)
+
+ def test_uts46_1487(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻ς≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻ς≠', strict=True)
+
+ def test_uts46_1488(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻Σ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻Σ≠', strict=True)
+
+ def test_uts46_1489(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻Σ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻Σ≠', strict=True)
+
+ def test_uts46_1490(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻σ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻σ≠', strict=True)
+
+ def test_uts46_1491(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻σ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻σ≠', strict=True)
+
+ def test_uts46_1492(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zb9h5968x.xn--4xa378i1mfjw7y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zb9h5968x.xn--4xa378i1mfjw7y', strict=True)
+
+ def test_uts46_1493(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug3766p5nm1b.xn--4xa378i1mfjw7y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug3766p5nm1b.xn--4xa378i1mfjw7y', strict=True)
+
+ def test_uts46_1494(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug3766p5nm1b.xn--3xa578i1mfjw7y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug3766p5nm1b.xn--3xa578i1mfjw7y', strict=True)
+
+ def test_uts46_1495(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻Σ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻Σ≠', strict=True)
+
+ def test_uts46_1496(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻Σ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻Σ≠', strict=True)
+
+ def test_uts46_1497(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻σ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻σ≠', strict=True)
+
+ def test_uts46_1498(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅯\U00087f6d\u200c🜭。𑖿᪻σ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅯\U00087f6d\u200c🜭。𑖿᪻σ≠', strict=True)
+
+ def test_uts46_1499(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒋。⒈\u200d\U000b3d22', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒋。⒈\u200d\U000b3d22', strict=True)
+
+ def test_uts46_1500(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4.。1.\u200d\U000b3d22', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4.。1.\u200d\U000b3d22', strict=True)
+
+ def test_uts46_1501(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4..1.xn--sf51d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4..1.xn--sf51d', strict=True)
+
+ def test_uts46_1502(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4..1.xn--1ug64613i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4..1.xn--1ug64613i', strict=True)
+
+ def test_uts46_1503(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wsh.xn--tsh07994h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wsh.xn--tsh07994h', strict=True)
+
+ def test_uts46_1504(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wsh.xn--1ug58o74922a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wsh.xn--1ug58o74922a', strict=True)
+
+ def test_uts46_1505(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لß。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لß。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1506(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لß。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لß。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1507(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لß。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لß。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1508(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لSS。᩠𐇽\U000be162𞤜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لSS。᩠𐇽\U000be162𞤜', strict=True)
+
+ def test_uts46_1509(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لss。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لss。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1510(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لss。᩠𐇽\U000be162𞤜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لss。᩠𐇽\U000be162𞤜', strict=True)
+
+ def test_uts46_1511(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-svd.xn--jof2298hn83fln78f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-svd.xn--jof2298hn83fln78f', strict=True)
+
+ def test_uts46_1512(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لß。᩠𐇽\U000be162𞤜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لß。᩠𐇽\U000be162𞤜', strict=True)
+
+ def test_uts46_1513(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca57y.xn--jof2298hn83fln78f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca57y.xn--jof2298hn83fln78f', strict=True)
+
+ def test_uts46_1514(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لSS。᩠𐇽\U000be162𞤜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لSS。᩠𐇽\U000be162𞤜', strict=True)
+
+ def test_uts46_1515(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لss。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لss。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1516(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لss。᩠𐇽\U000be162𞤜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لss。᩠𐇽\U000be162𞤜', strict=True)
+
+ def test_uts46_1517(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لß。᩠𐇽\U000be162𞤜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لß。᩠𐇽\U000be162𞤜', strict=True)
+
+ def test_uts46_1518(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لSS。᩠𐇽\U000be162𞤜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لSS。᩠𐇽\U000be162𞤜', strict=True)
+
+ def test_uts46_1519(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لss。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لss。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1520(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لss。᩠𐇽\U000be162𞤜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لss。᩠𐇽\U000be162𞤜', strict=True)
+
+ def test_uts46_1521(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لß。᩠𐇽\U000be162𞤜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لß。᩠𐇽\U000be162𞤜', strict=True)
+
+ def test_uts46_1522(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لSS。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لSS。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1523(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لSs。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لSs。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1524(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لSS。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لSS。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1525(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لSs。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لSs。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1526(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لSS。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لSS。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1527(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لSs。᩠𐇽\U000be162𞤾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لSs。᩠𐇽\U000be162𞤾', strict=True)
+
+ def test_uts46_1528(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹽𑄳\U0007c732.ᷟី꠆𑜫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹽𑄳\U0007c732.ᷟី꠆𑜫', strict=True)
+
+ def test_uts46_1529(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1o0di0c0652w.xn--33e362arr1l153d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1o0di0c0652w.xn--33e362arr1l153d', strict=True)
+
+ def test_uts46_1530(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴓ𑜫\u200d\U00097b53.ڧ𑰶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴓ𑜫\u200d\U00097b53.ڧ𑰶', strict=True)
+
+ def test_uts46_1531(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴓ𑜫\u200d\U00097b53.ڧ𑰶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴓ𑜫\u200d\U00097b53.ڧ𑰶', strict=True)
+
+ def test_uts46_1532(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴓ𑜫\u200d\U00097b53.ڧ𑰶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴓ𑜫\u200d\U00097b53.ڧ𑰶', strict=True)
+
+ def test_uts46_1533(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--blj6306ey091d.xn--9jb4223l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--blj6306ey091d.xn--9jb4223l', strict=True)
+
+ def test_uts46_1534(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugy52cym7p7xu5e.xn--9jb4223l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugy52cym7p7xu5e.xn--9jb4223l', strict=True)
+
+ def test_uts46_1535(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴓ𑜫\u200d\U00097b53.ڧ𑰶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴓ𑜫\u200d\U00097b53.ڧ𑰶', strict=True)
+
+ def test_uts46_1536(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rnd8945ky009c.xn--9jb4223l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rnd8945ky009c.xn--9jb4223l', strict=True)
+
+ def test_uts46_1537(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rnd479ep20q7x12e.xn--9jb4223l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rnd479ep20q7x12e.xn--9jb4223l', strict=True)
+
+ def test_uts46_1538(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨿.🄆—', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨿.🄆—', strict=True)
+
+ def test_uts46_1539(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨿.5,—', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨿.5,—', strict=True)
+
+ def test_uts46_1540(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0s9c.xn--5,-81t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0s9c.xn--5,-81t', strict=True)
+
+ def test_uts46_1541(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0s9c.xn--8ug8324p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0s9c.xn--8ug8324p', strict=True)
+
+ def test_uts46_1542(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000942b1\U000419ae۸。\U000e0fad-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000942b1\U000419ae۸。\U000e0fad-', strict=True)
+
+ def test_uts46_1543(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lmb18944c0g2z.xn----2k81m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lmb18944c0g2z.xn----2k81m', strict=True)
+
+ def test_uts46_1544(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c5f8ߍ𐹮。\u06ddᡎᠴ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c5f8ߍ𐹮。\u06ddᡎᠴ', strict=True)
+
+ def test_uts46_1545(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--osb0855kcc2r.xn--tlb299fhc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--osb0855kcc2r.xn--tlb299fhc', strict=True)
+
+ def test_uts46_1546(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dᠮႾ🄂.🚗ࡁ𮹌\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dᠮႾ🄂.🚗ࡁ𮹌\u200c', strict=True)
+
+ def test_uts46_1547(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dᠮႾ1,.🚗ࡁ𮹌\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dᠮႾ1,.🚗ࡁ𮹌\u200c', strict=True)
+
+ def test_uts46_1548(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dᠮⴞ1,.🚗ࡁ𮹌\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dᠮⴞ1,.🚗ࡁ𮹌\u200c', strict=True)
+
+ def test_uts46_1549(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1,-v3o625k.xn--zvb3124wpkpf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1,-v3o625k.xn--zvb3124wpkpf', strict=True)
+
+ def test_uts46_1550(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1,-v3o161c53q.xn--zvb692j9664aic1g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1,-v3o161c53q.xn--zvb692j9664aic1g', strict=True)
+
+ def test_uts46_1551(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dᠮⴞ🄂.🚗ࡁ𮹌\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dᠮⴞ🄂.🚗ࡁ𮹌\u200c', strict=True)
+
+ def test_uts46_1552(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1,-ogkx89c.xn--zvb3124wpkpf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1,-ogkx89c.xn--zvb3124wpkpf', strict=True)
+
+ def test_uts46_1553(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1,-ogkx89c39j.xn--zvb692j9664aic1g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1,-ogkx89c39j.xn--zvb692j9664aic1g', strict=True)
+
+ def test_uts46_1554(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--h7e438h1p44a.xn--zvb3124wpkpf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--h7e438h1p44a.xn--zvb3124wpkpf', strict=True)
+
+ def test_uts46_1555(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--h7e341b0wlbv45b.xn--zvb692j9664aic1g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--h7e341b0wlbv45b.xn--zvb692j9664aic1g', strict=True)
+
+ def test_uts46_1556(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd129ai554b.xn--zvb3124wpkpf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd129ai554b.xn--zvb3124wpkpf', strict=True)
+
+ def test_uts46_1557(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd129ay2gnw71c.xn--zvb692j9664aic1g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd129ay2gnw71c.xn--zvb692j9664aic1g', strict=True)
+
+ def test_uts46_1558(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0601ڗ.𑚶\U0007c877⾆', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0601ڗ.𑚶\U0007c877⾆', strict=True)
+
+ def test_uts46_1559(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0601ڗ.𑚶\U0007c877舌', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0601ڗ.𑚶\U0007c877舌', strict=True)
+
+ def test_uts46_1560(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jfb41a.xn--tc1ap851axo39c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jfb41a.xn--tc1ap851axo39c', strict=True)
+
+ def test_uts46_1561(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🞅\U000e0ce1\U000dc359.\U000725b7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🞅\U000e0ce1\U000dc359.\U000725b7', strict=True)
+
+ def test_uts46_1562(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ie9hi1349bqdlb.xn--oj69a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ie9hi1349bqdlb.xn--oj69a', strict=True)
+
+ def test_uts46_1563(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃧\U0006f84e-\U000ab8dd.4Ⴄ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃧\U0006f84e-\U000ab8dd.4Ⴄ\u200c', strict=True)
+
+ def test_uts46_1564(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃧\U0006f84e-\U000ab8dd.4ⴄ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃧\U0006f84e-\U000ab8dd.4ⴄ\u200c', strict=True)
+
+ def test_uts46_1565(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----9snu5320fi76w.xn--4-ivs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----9snu5320fi76w.xn--4-ivs', strict=True)
+
+ def test_uts46_1566(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----9snu5320fi76w.xn--4-sgn589c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----9snu5320fi76w.xn--4-sgn589c', strict=True)
+
+ def test_uts46_1567(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----9snu5320fi76w.xn--4-f0g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----9snu5320fi76w.xn--4-f0g', strict=True)
+
+ def test_uts46_1568(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----9snu5320fi76w.xn--4-f0g649i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----9snu5320fi76w.xn--4-f0g649i', strict=True)
+
+ def test_uts46_1569(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ。𝌠ß𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ。𝌠ß𖫱', strict=True)
+
+ def test_uts46_1570(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ。𝌠ß𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ。𝌠ß𖫱', strict=True)
+
+ def test_uts46_1571(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ。𝌠SS𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ。𝌠SS𖫱', strict=True)
+
+ def test_uts46_1572(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ。𝌠ss𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ。𝌠ss𖫱', strict=True)
+
+ def test_uts46_1573(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ。𝌠Ss𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ。𝌠Ss𖫱', strict=True)
+
+ def test_uts46_1574(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hwe.xn--ss-ci1ub261a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hwe.xn--ss-ci1ub261a', strict=True)
+
+ def test_uts46_1575(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ.𝌠ss𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ.𝌠ss𖫱', strict=True)
+
+ def test_uts46_1576(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ.𝌠SS𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ.𝌠SS𖫱', strict=True)
+
+ def test_uts46_1577(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ.𝌠Ss𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ.𝌠Ss𖫱', strict=True)
+
+ def test_uts46_1578(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hwe.xn--zca4946pblnc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hwe.xn--zca4946pblnc', strict=True)
+
+ def test_uts46_1579(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ.𝌠ß𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ.𝌠ß𖫱', strict=True)
+
+ def test_uts46_1580(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ。𝌠SS𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ。𝌠SS𖫱', strict=True)
+
+ def test_uts46_1581(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ。𝌠ss𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ。𝌠ss𖫱', strict=True)
+
+ def test_uts46_1582(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᚭ。𝌠Ss𖫱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᚭ。𝌠Ss𖫱', strict=True)
+
+ def test_uts46_1583(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₁。𞤫ꡪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₁。𞤫ꡪ', strict=True)
+
+ def test_uts46_1584(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1。𞤫ꡪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1。𞤫ꡪ', strict=True)
+
+ def test_uts46_1585(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1。𞤉ꡪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1。𞤉ꡪ', strict=True)
+
+ def test_uts46_1586(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--gd9al691d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--gd9al691d', strict=True)
+
+ def test_uts46_1587(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₁。𞤉ꡪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₁。𞤉ꡪ', strict=True)
+
+ def test_uts46_1588(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0002fefc\u200c.\U0001ed9e\U000bb664\U00065607', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0002fefc\u200c.\U0001ed9e\U000bb664\U00065607', strict=True)
+
+ def test_uts46_1589(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kg4n.xn--2b7hs861pl540a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kg4n.xn--2b7hs861pl540a', strict=True)
+
+ def test_uts46_1590(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug27500a.xn--2b7hs861pl540a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug27500a.xn--2b7hs861pl540a', strict=True)
+
+ def test_uts46_1591(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑑄≯。𑜤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑑄≯。𑜤', strict=True)
+
+ def test_uts46_1592(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑑄≯。𑜤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑑄≯。𑜤', strict=True)
+
+ def test_uts46_1593(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑑄≯。𑜤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑑄≯。𑜤', strict=True)
+
+ def test_uts46_1594(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑑄≯。𑜤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑑄≯。𑜤', strict=True)
+
+ def test_uts46_1595(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh5636g.xn--ci2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh5636g.xn--ci2d', strict=True)
+
+ def test_uts46_1596(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴋ≮𱲆。\u200dާ𐋣', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴋ≮𱲆。\u200dާ𐋣', strict=True)
+
+ def test_uts46_1597(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴋ≮𱲆。\u200dާ𐋣', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴋ≮𱲆。\u200dާ𐋣', strict=True)
+
+ def test_uts46_1598(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴋ≮𱲆。\u200dާ𐋣', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴋ≮𱲆。\u200dާ𐋣', strict=True)
+
+ def test_uts46_1599(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴋ≮𱲆。\u200dާ𐋣', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴋ≮𱲆。\u200dާ𐋣', strict=True)
+
+ def test_uts46_1600(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdhz03bxt42d.xn--lrb6479j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdhz03bxt42d.xn--lrb6479j', strict=True)
+
+ def test_uts46_1601(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdhz03bxt42d.xn--lrb506jqr4n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdhz03bxt42d.xn--lrb506jqr4n', strict=True)
+
+ def test_uts46_1602(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jnd802gsm17c.xn--lrb6479j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jnd802gsm17c.xn--lrb6479j', strict=True)
+
+ def test_uts46_1603(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jnd802gsm17c.xn--lrb506jqr4n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jnd802gsm17c.xn--lrb506jqr4n', strict=True)
+
+ def test_uts46_1604(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '្.\U00086f52≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '្.\U00086f52≯', strict=True)
+
+ def test_uts46_1605(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '្.\U00086f52≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '្.\U00086f52≯', strict=True)
+
+ def test_uts46_1606(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u4e.xn--hdhx0084f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u4e.xn--hdhx0084f', strict=True)
+
+ def test_uts46_1607(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004f047᜴.𐨺É⬓𑄴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004f047᜴.𐨺É⬓𑄴', strict=True)
+
+ def test_uts46_1608(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004f047᜴.𐨺É⬓𑄴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004f047᜴.𐨺É⬓𑄴', strict=True)
+
+ def test_uts46_1609(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004f047᜴.𐨺É⬓𑄴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004f047᜴.𐨺É⬓𑄴', strict=True)
+
+ def test_uts46_1610(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004f047᜴.𐨺É⬓𑄴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004f047᜴.𐨺É⬓𑄴', strict=True)
+
+ def test_uts46_1611(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004f047᜴.𐨺é⬓𑄴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004f047᜴.𐨺é⬓𑄴', strict=True)
+
+ def test_uts46_1612(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004f047᜴.𐨺é⬓𑄴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004f047᜴.𐨺é⬓𑄴', strict=True)
+
+ def test_uts46_1613(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--c0e34564d.xn--9ca207st53lg3f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--c0e34564d.xn--9ca207st53lg3f', strict=True)
+
+ def test_uts46_1614(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004f047᜴.𐨺é⬓𑄴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004f047᜴.𐨺é⬓𑄴', strict=True)
+
+ def test_uts46_1615(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004f047᜴.𐨺é⬓𑄴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004f047᜴.𐨺é⬓𑄴', strict=True)
+
+ def test_uts46_1616(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢇ\u200d꣄。︒𞤺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢇ\u200d꣄。︒𞤺', strict=True)
+
+ def test_uts46_1617(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢇ\u200d꣄。。𞤺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢇ\u200d꣄。。𞤺', strict=True)
+
+ def test_uts46_1618(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢇ\u200d꣄。。𞤘', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢇ\u200d꣄。。𞤘', strict=True)
+
+ def test_uts46_1619(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--09e4694e..xn--ye6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--09e4694e..xn--ye6h', strict=True)
+
+ def test_uts46_1620(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--09e669a6x8j..xn--ye6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--09e669a6x8j..xn--ye6h', strict=True)
+
+ def test_uts46_1621(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢇ\u200d꣄。︒𞤘', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢇ\u200d꣄。︒𞤘', strict=True)
+
+ def test_uts46_1622(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--09e4694e.xn--y86cv562b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--09e4694e.xn--y86cv562b', strict=True)
+
+ def test_uts46_1623(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--09e669a6x8j.xn--y86cv562b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--09e669a6x8j.xn--y86cv562b', strict=True)
+
+ def test_uts46_1624(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea6c\U00096671᜔\u200c。رު≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea6c\U00096671᜔\u200c。رު≮', strict=True)
+
+ def test_uts46_1625(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea6c\U00096671᜔\u200c。رު≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea6c\U00096671᜔\u200c。رު≮', strict=True)
+
+ def test_uts46_1626(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea6c\U00096671᜔\u200c。رު≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea6c\U00096671᜔\u200c。رު≮', strict=True)
+
+ def test_uts46_1627(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea6c\U00096671᜔\u200c。رު≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea6c\U00096671᜔\u200c。رު≮', strict=True)
+
+ def test_uts46_1628(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fze3930v7hz6b.xn--wgb86el10d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fze3930v7hz6b.xn--wgb86el10d', strict=True)
+
+ def test_uts46_1629(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fze607b9651bjwl7c.xn--wgb86el10d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fze607b9651bjwl7c.xn--wgb86el10d', strict=True)
+
+ def test_uts46_1630(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴣ.ٓᢤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴣ.ٓᢤ', strict=True)
+
+ def test_uts46_1631(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴣ.ٓᢤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴣ.ٓᢤ', strict=True)
+
+ def test_uts46_1632(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴣ.ٓᢤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴣ.ٓᢤ', strict=True)
+
+ def test_uts46_1633(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rlj.xn--vhb294g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rlj.xn--vhb294g', strict=True)
+
+ def test_uts46_1634(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴣ.ٓᢤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴣ.ٓᢤ', strict=True)
+
+ def test_uts46_1635(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7nd.xn--vhb294g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7nd.xn--vhb294g', strict=True)
+
+ def test_uts46_1636(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄈ࠓ.싉\U000841bbჄ\U00082850', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄈ࠓ.싉\U000841bbჄ\U00082850', strict=True)
+
+ def test_uts46_1637(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄈ࠓ.싉\U000841bbჄ\U00082850', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄈ࠓ.싉\U000841bbჄ\U00082850', strict=True)
+
+ def test_uts46_1638(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄈ࠓ.싉\U000841bbჄ\U00082850', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄈ࠓ.싉\U000841bbჄ\U00082850', strict=True)
+
+ def test_uts46_1639(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄈ࠓ.싉\U000841bbჄ\U00082850', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄈ࠓ.싉\U000841bbჄ\U00082850', strict=True)
+
+ def test_uts46_1640(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄈ࠓ.싉\U000841bbⴤ\U00082850', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄈ࠓ.싉\U000841bbⴤ\U00082850', strict=True)
+
+ def test_uts46_1641(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄈ࠓ.싉\U000841bbⴤ\U00082850', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄈ࠓ.싉\U000841bbⴤ\U00082850', strict=True)
+
+ def test_uts46_1642(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--oub.xn--sljz109bpe25dviva', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--oub.xn--sljz109bpe25dviva', strict=True)
+
+ def test_uts46_1643(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄈ࠓ.싉\U000841bbⴤ\U00082850', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄈ࠓ.싉\U000841bbⴤ\U00082850', strict=True)
+
+ def test_uts46_1644(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄈ࠓ.싉\U000841bbⴤ\U00082850', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄈ࠓ.싉\U000841bbⴤ\U00082850', strict=True)
+
+ def test_uts46_1645(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--oub.xn--8nd9522gpe69cviva', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--oub.xn--8nd9522gpe69cviva', strict=True)
+
+ def test_uts46_1646(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꨬ𑲫≮.⤂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꨬ𑲫≮.⤂', strict=True)
+
+ def test_uts46_1647(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꨬ𑲫≮.⤂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꨬ𑲫≮.⤂', strict=True)
+
+ def test_uts46_1648(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꨬ𑲫≮.⤂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꨬ𑲫≮.⤂', strict=True)
+
+ def test_uts46_1649(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꨬ𑲫≮.⤂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꨬ𑲫≮.⤂', strict=True)
+
+ def test_uts46_1650(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh1854cn19c.xn--kqi', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh1854cn19c.xn--kqi', strict=True)
+
+ def test_uts46_1651(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮Ⴢ.Ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮Ⴢ.Ⴃ', strict=True)
+
+ def test_uts46_1652(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮Ⴢ.Ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮Ⴢ.Ⴃ', strict=True)
+
+ def test_uts46_1653(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮Ⴢ.Ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮Ⴢ.Ⴃ', strict=True)
+
+ def test_uts46_1654(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮Ⴢ.Ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮Ⴢ.Ⴃ', strict=True)
+
+ def test_uts46_1655(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮ⴢ.ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮ⴢ.ⴃ', strict=True)
+
+ def test_uts46_1656(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮ⴢ.ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮ⴢ.ⴃ', strict=True)
+
+ def test_uts46_1657(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮Ⴢ.ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮Ⴢ.ⴃ', strict=True)
+
+ def test_uts46_1658(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮Ⴢ.ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮Ⴢ.ⴃ', strict=True)
+
+ def test_uts46_1659(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mfb266l4khr54u.xn--ukj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mfb266l4khr54u.xn--ukj', strict=True)
+
+ def test_uts46_1660(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮ⴢ.ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮ⴢ.ⴃ', strict=True)
+
+ def test_uts46_1661(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮ⴢ.ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮ⴢ.ⴃ', strict=True)
+
+ def test_uts46_1662(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮Ⴢ.ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮Ⴢ.ⴃ', strict=True)
+
+ def test_uts46_1663(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0604𐩔≮Ⴢ.ⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0604𐩔≮Ⴢ.ⴃ', strict=True)
+
+ def test_uts46_1664(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mfb416c0jox02t.xn--ukj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mfb416c0jox02t.xn--ukj', strict=True)
+
+ def test_uts46_1665(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mfb416c0jox02t.xn--bnd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mfb416c0jox02t.xn--bnd', strict=True)
+
+ def test_uts46_1666(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑁅。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑁅。-', strict=True)
+
+ def test_uts46_1667(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--210d.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--210d.-', strict=True)
+
+ def test_uts46_1668(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '්\U00095e3d\U000e09f1。饈≠٤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '්\U00095e3d\U000e09f1。饈≠٤', strict=True)
+
+ def test_uts46_1669(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '්\U00095e3d\U000e09f1。饈≠٤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '්\U00095e3d\U000e09f1。饈≠٤', strict=True)
+
+ def test_uts46_1670(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '්\U00095e3d\U000e09f1。饈≠٤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '්\U00095e3d\U000e09f1。饈≠٤', strict=True)
+
+ def test_uts46_1671(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '්\U00095e3d\U000e09f1。饈≠٤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '්\U00095e3d\U000e09f1。饈≠٤', strict=True)
+
+ def test_uts46_1672(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--h1c25913jfwov.xn--dib144ler5f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--h1c25913jfwov.xn--dib144ler5f', strict=True)
+
+ def test_uts46_1673(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞥃ᠠ⁷。≯邅⬻4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞥃ᠠ⁷。≯邅⬻4', strict=True)
+
+ def test_uts46_1674(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞥃ᠠ⁷。≯邅⬻4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞥃ᠠ⁷。≯邅⬻4', strict=True)
+
+ def test_uts46_1675(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞥃ᠠ7。≯邅⬻4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞥃ᠠ7。≯邅⬻4', strict=True)
+
+ def test_uts46_1676(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞥃ᠠ7。≯邅⬻4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞥃ᠠ7。≯邅⬻4', strict=True)
+
+ def test_uts46_1677(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤡ᠠ7。≯邅⬻4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤡ᠠ7。≯邅⬻4', strict=True)
+
+ def test_uts46_1678(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤡ᠠ7。≯邅⬻4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤡ᠠ7。≯邅⬻4', strict=True)
+
+ def test_uts46_1679(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7-v4j2826w.xn--4-ogoy01bou3i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7-v4j2826w.xn--4-ogoy01bou3i', strict=True)
+
+ def test_uts46_1680(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤡ᠠ⁷。≯邅⬻4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤡ᠠ⁷。≯邅⬻4', strict=True)
+
+ def test_uts46_1681(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤡ᠠ⁷。≯邅⬻4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤡ᠠ⁷。≯邅⬻4', strict=True)
+
+ def test_uts46_1682(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a0fefᡳ-𑐻.𐹴𐋫\u0605\U000d13b3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a0fefᡳ-𑐻.𐹴𐋫\u0605\U000d13b3', strict=True)
+
+ def test_uts46_1683(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----m9j3429kxmy7e.xn--nfb7950kdihrp812a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----m9j3429kxmy7e.xn--nfb7950kdihrp812a', strict=True)
+
+ def test_uts46_1684(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a0d86ࡅੑ.넨-\U000f69c8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a0d86ࡅੑ.넨-\U000f69c8', strict=True)
+
+ def test_uts46_1685(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a0d86ࡅੑ.넨-\U000f69c8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a0d86ࡅੑ.넨-\U000f69c8', strict=True)
+
+ def test_uts46_1686(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3vb26hb6834b.xn----i37ez0957g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3vb26hb6834b.xn----i37ez0957g', strict=True)
+
+ def test_uts46_1687(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡦᡑ\u200d⒈。𐋣-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡦᡑ\u200d⒈。𐋣-', strict=True)
+
+ def test_uts46_1688(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡦᡑ\u200d1.。𐋣-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡦᡑ\u200d1.。𐋣-', strict=True)
+
+ def test_uts46_1689(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-o7j0610f..xn----381i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-o7j0610f..xn----381i', strict=True)
+
+ def test_uts46_1690(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-o7j663bdl7m..xn----381i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-o7j663bdl7m..xn----381i', strict=True)
+
+ def test_uts46_1691(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--h8e863drj7h.xn----381i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--h8e863drj7h.xn----381i', strict=True)
+
+ def test_uts46_1692(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--h8e470bl0d838o.xn----381i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--h8e470bl0d838o.xn----381i', strict=True)
+
+ def test_uts46_1693(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴌ。\U0010df20ﭩ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴌ。\U0010df20ﭩ', strict=True)
+
+ def test_uts46_1694(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴌ。\U0010df20ٹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴌ。\U0010df20ٹ', strict=True)
+
+ def test_uts46_1695(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴌ。\U0010df20ٹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴌ。\U0010df20ٹ', strict=True)
+
+ def test_uts46_1696(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3kj.xn--yib19191t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3kj.xn--yib19191t', strict=True)
+
+ def test_uts46_1697(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴌ。\U0010df20ﭩ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴌ。\U0010df20ﭩ', strict=True)
+
+ def test_uts46_1698(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--knd.xn--yib19191t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--knd.xn--yib19191t', strict=True)
+
+ def test_uts46_1699(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐮁𐭱.྄፞-ᳺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐮁𐭱.྄፞-ᳺ', strict=True)
+
+ def test_uts46_1700(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--r19c5a.xn----xjg270ag3m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--r19c5a.xn----xjg270ag3m', strict=True)
+
+ def test_uts46_1701(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈䰹\u200d-。웈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈䰹\u200d-。웈', strict=True)
+
+ def test_uts46_1702(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈䰹\u200d-。웈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈䰹\u200d-。웈', strict=True)
+
+ def test_uts46_1703(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.䰹\u200d-。웈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.䰹\u200d-。웈', strict=True)
+
+ def test_uts46_1704(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.䰹\u200d-。웈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.䰹\u200d-。웈', strict=True)
+
+ def test_uts46_1705(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn----zw5a.xn--kp5b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn----zw5a.xn--kp5b', strict=True)
+
+ def test_uts46_1706(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn----tgnz80r.xn--kp5b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn----tgnz80r.xn--kp5b', strict=True)
+
+ def test_uts46_1707(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----dcp160o.xn--kp5b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----dcp160o.xn--kp5b', strict=True)
+
+ def test_uts46_1708(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----tgnx5rjr6c.xn--kp5b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----tgnx5rjr6c.xn--kp5b', strict=True)
+
+ def test_uts46_1709(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'て。\u200c\U000e0cfd߳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'て。\u200c\U000e0cfd߳', strict=True)
+
+ def test_uts46_1710(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--m9j.xn--rtb10784p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--m9j.xn--rtb10784p', strict=True)
+
+ def test_uts46_1711(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--m9j.xn--rtb154j9l73w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--m9j.xn--rtb154j9l73w', strict=True)
+
+ def test_uts46_1712(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς。꧀ۧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς。꧀ۧ', strict=True)
+
+ def test_uts46_1713(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς。꧀ۧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς。꧀ۧ', strict=True)
+
+ def test_uts46_1714(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ。꧀ۧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ。꧀ۧ', strict=True)
+
+ def test_uts46_1715(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ。꧀ۧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ。꧀ۧ', strict=True)
+
+ def test_uts46_1716(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa.xn--3lb1944f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa.xn--3lb1944f', strict=True)
+
+ def test_uts46_1717(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa.xn--3lb1944f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa.xn--3lb1944f', strict=True)
+
+ def test_uts46_1718(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ。꧀ۧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ。꧀ۧ', strict=True)
+
+ def test_uts46_1719(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ。꧀ۧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ。꧀ۧ', strict=True)
+
+ def test_uts46_1720(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '்\U000e5ac5\U0008c251.ႢႵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '்\U000e5ac5\U0008c251.ႢႵ', strict=True)
+
+ def test_uts46_1721(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '்\U000e5ac5\U0008c251.ⴂⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '்\U000e5ac5\U0008c251.ⴂⴕ', strict=True)
+
+ def test_uts46_1722(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '்\U000e5ac5\U0008c251.Ⴂⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '்\U000e5ac5\U0008c251.Ⴂⴕ', strict=True)
+
+ def test_uts46_1723(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xmc83135idcxza.xn--tkjwb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xmc83135idcxza.xn--tkjwb', strict=True)
+
+ def test_uts46_1724(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xmc83135idcxza.xn--9md086l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xmc83135idcxza.xn--9md086l', strict=True)
+
+ def test_uts46_1725(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xmc83135idcxza.xn--9md2b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xmc83135idcxza.xn--9md2b', strict=True)
+
+ def test_uts46_1726(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᰲ🄈⾛֦.\u200d\U000af964߽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᰲ🄈⾛֦.\u200d\U000af964߽', strict=True)
+
+ def test_uts46_1727(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᰲ7,走֦.\u200d\U000af964߽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᰲ7,走֦.\u200d\U000af964߽', strict=True)
+
+ def test_uts46_1728(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7,-bid991urn3k.xn--1tb13454l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7,-bid991urn3k.xn--1tb13454l', strict=True)
+
+ def test_uts46_1729(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7,-bid991urn3k.xn--1tb334j1197q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7,-bid991urn3k.xn--1tb334j1197q', strict=True)
+
+ def test_uts46_1730(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xcb756i493fwi5o.xn--1tb13454l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xcb756i493fwi5o.xn--1tb13454l', strict=True)
+
+ def test_uts46_1731(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xcb756i493fwi5o.xn--1tb334j1197q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xcb756i493fwi5o.xn--1tb334j1197q', strict=True)
+
+ def test_uts46_1732(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢗ。Ӏ\U0005d13b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢗ。Ӏ\U0005d13b', strict=True)
+
+ def test_uts46_1733(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢗ。Ӏ\U0005d13b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢗ。Ӏ\U0005d13b', strict=True)
+
+ def test_uts46_1734(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢗ。ӏ\U0005d13b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢗ。ӏ\U0005d13b', strict=True)
+
+ def test_uts46_1735(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hbf.xn--s5a83117e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hbf.xn--s5a83117e', strict=True)
+
+ def test_uts46_1736(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢗ。ӏ\U0005d13b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢗ。ӏ\U0005d13b', strict=True)
+
+ def test_uts46_1737(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hbf.xn--d5a86117e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hbf.xn--d5a86117e', strict=True)
+
+ def test_uts46_1738(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٨-。\U000603c7🝆ᄾ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٨-。\U000603c7🝆ᄾ', strict=True)
+
+ def test_uts46_1739(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----oqc.xn--qrd1699v327w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----oqc.xn--qrd1699v327w', strict=True)
+
+ def test_uts46_1740(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𐋷𖾑。󠆬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𐋷𖾑。󠆬', strict=True)
+
+ def test_uts46_1741(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----991iq40y.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----991iq40y.', strict=True)
+
+ def test_uts46_1742(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹳🐴멈.꯭\U0005087c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹳🐴멈.꯭\U0005087c', strict=True)
+
+ def test_uts46_1743(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹳🐴멈.꯭\U0005087c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹳🐴멈.꯭\U0005087c', strict=True)
+
+ def test_uts46_1744(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--422b325mqb6i.xn--429a8682s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--422b325mqb6i.xn--429a8682s', strict=True)
+
+ def test_uts46_1745(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug6681d406b7bwk.xn--429a8682s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug6681d406b7bwk.xn--429a8682s', strict=True)
+
+ def test_uts46_1746(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.ݩ\u0603', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.ݩ\u0603', strict=True)
+
+ def test_uts46_1747(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.ݩ\u0603', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.ݩ\u0603', strict=True)
+
+ def test_uts46_1748(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh.xn--lfb92e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh.xn--lfb92e', strict=True)
+
+ def test_uts46_1749(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010dad⾆。\u200c𑚶\U0009fc43\U0001ec18', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010dad⾆。\u200c𑚶\U0009fc43\U0001ec18', strict=True)
+
+ def test_uts46_1750(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010dad舌。\u200c𑚶\U0009fc43\U0001ec18', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010dad舌。\u200c𑚶\U0009fc43\U0001ec18', strict=True)
+
+ def test_uts46_1751(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tc1ao37z.xn--6e2dw557azds2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tc1ao37z.xn--6e2dw557azds2d', strict=True)
+
+ def test_uts46_1752(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tc1ao37z.xn--0ugx728gi1nfwqz2e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tc1ao37z.xn--0ugx728gi1nfwqz2e', strict=True)
+
+ def test_uts46_1753(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cჀ-.𝟷ς𞴺ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cჀ-.𝟷ς𞴺ς', strict=True)
+
+ def test_uts46_1754(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cჀ-.1ς𞴺ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cჀ-.1ς𞴺ς', strict=True)
+
+ def test_uts46_1755(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴠ-.1ς𞴺ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴠ-.1ς𞴺ς', strict=True)
+
+ def test_uts46_1756(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cჀ-.1Σ𞴺Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cჀ-.1Σ𞴺Σ', strict=True)
+
+ def test_uts46_1757(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴠ-.1σ𞴺σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴠ-.1σ𞴺σ', strict=True)
+
+ def test_uts46_1758(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cჀ-.1σ𞴺Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cჀ-.1σ𞴺Σ', strict=True)
+
+ def test_uts46_1759(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----2ws.xn--1-0mba52321c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----2ws.xn--1-0mba52321c', strict=True)
+
+ def test_uts46_1760(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rgn530d.xn--1-0mba52321c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rgn530d.xn--1-0mba52321c', strict=True)
+
+ def test_uts46_1761(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cჀ-.1ς𞴺Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cჀ-.1ς𞴺Σ', strict=True)
+
+ def test_uts46_1762(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴠ-.1ς𞴺σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴠ-.1ς𞴺σ', strict=True)
+
+ def test_uts46_1763(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rgn530d.xn--1-ymbd52321c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rgn530d.xn--1-ymbd52321c', strict=True)
+
+ def test_uts46_1764(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rgn530d.xn--1-ymba92321c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rgn530d.xn--1-ymba92321c', strict=True)
+
+ def test_uts46_1765(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴠ-.𝟷ς𞴺ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴠ-.𝟷ς𞴺ς', strict=True)
+
+ def test_uts46_1766(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cჀ-.𝟷Σ𞴺Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cჀ-.𝟷Σ𞴺Σ', strict=True)
+
+ def test_uts46_1767(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴠ-.𝟷σ𞴺σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴠ-.𝟷σ𞴺σ', strict=True)
+
+ def test_uts46_1768(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cჀ-.𝟷σ𞴺Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cჀ-.𝟷σ𞴺Σ', strict=True)
+
+ def test_uts46_1769(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cჀ-.𝟷ς𞴺Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cჀ-.𝟷ς𞴺Σ', strict=True)
+
+ def test_uts46_1770(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴠ-.𝟷ς𞴺σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴠ-.𝟷ς𞴺σ', strict=True)
+
+ def test_uts46_1771(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----z1g.xn--1-0mba52321c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----z1g.xn--1-0mba52321c', strict=True)
+
+ def test_uts46_1772(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----z1g168i.xn--1-0mba52321c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----z1g168i.xn--1-0mba52321c', strict=True)
+
+ def test_uts46_1773(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----z1g168i.xn--1-ymbd52321c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----z1g168i.xn--1-ymbd52321c', strict=True)
+
+ def test_uts46_1774(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----z1g168i.xn--1-ymba92321c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----z1g168i.xn--1-ymba92321c', strict=True)
+
+ def test_uts46_1775(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑲘󠄒\U00013461。𝟪Ⴜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑲘󠄒\U00013461。𝟪Ⴜ', strict=True)
+
+ def test_uts46_1776(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑲘󠄒\U00013461。8Ⴜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑲘󠄒\U00013461。8Ⴜ', strict=True)
+
+ def test_uts46_1777(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑲘󠄒\U00013461。8ⴜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑲘󠄒\U00013461。8ⴜ', strict=True)
+
+ def test_uts46_1778(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7m3d291b.xn--8-vws', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7m3d291b.xn--8-vws', strict=True)
+
+ def test_uts46_1779(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑲘󠄒\U00013461。𝟪ⴜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑲘󠄒\U00013461。𝟪ⴜ', strict=True)
+
+ def test_uts46_1780(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7m3d291b.xn--8-s1g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7m3d291b.xn--8-s1g', strict=True)
+
+ def test_uts46_1781(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䪏ګߠु。뭕ᢝឹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䪏ګߠु。뭕ᢝឹ', strict=True)
+
+ def test_uts46_1782(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䪏ګߠु。뭕ᢝឹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䪏ګߠु。뭕ᢝឹ', strict=True)
+
+ def test_uts46_1783(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䪏ګߠु。뭕ᢝឹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䪏ګߠु。뭕ᢝឹ', strict=True)
+
+ def test_uts46_1784(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䪏ګߠु。뭕ᢝឹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䪏ګߠु。뭕ᢝឹ', strict=True)
+
+ def test_uts46_1785(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ekb23dj4at01n.xn--43e96bh910b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ekb23dj4at01n.xn--43e96bh910b', strict=True)
+
+ def test_uts46_1786(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮫。🂉\U000e0070', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮫。🂉\U000e0070', strict=True)
+
+ def test_uts46_1787(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮫。🂉\U000e0070', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮫。🂉\U000e0070', strict=True)
+
+ def test_uts46_1788(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zxf.xn--fx7ho0250c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zxf.xn--fx7ho0250c', strict=True)
+
+ def test_uts46_1789(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e9383ૄ。ς\u200d𐹮𑈵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e9383ૄ。ς\u200d𐹮𑈵', strict=True)
+
+ def test_uts46_1790(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e9383ૄ。Σ\u200d𐹮𑈵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e9383ૄ。Σ\u200d𐹮𑈵', strict=True)
+
+ def test_uts46_1791(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e9383ૄ。σ\u200d𐹮𑈵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e9383ૄ。σ\u200d𐹮𑈵', strict=True)
+
+ def test_uts46_1792(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dfc53161q.xn--4xa8467k5mc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dfc53161q.xn--4xa8467k5mc', strict=True)
+
+ def test_uts46_1793(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dfc53161q.xn--4xa895lzo7nsfd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dfc53161q.xn--4xa895lzo7nsfd', strict=True)
+
+ def test_uts46_1794(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dfc53161q.xn--3xa006lzo7nsfd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dfc53161q.xn--3xa006lzo7nsfd', strict=True)
+
+ def test_uts46_1795(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫀ᡂ𑜫.𑘿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫀ᡂ𑜫.𑘿', strict=True)
+
+ def test_uts46_1796(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫀ᡂ𑜫.𑘿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫀ᡂ𑜫.𑘿', strict=True)
+
+ def test_uts46_1797(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--17e9625js1h.xn--sb2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--17e9625js1h.xn--sb2d', strict=True)
+
+ def test_uts46_1798(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ec6b6\U000f82d6\U00096a70-。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ec6b6\U000f82d6\U00096a70-。\u200c', strict=True)
+
+ def test_uts46_1799(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----7i12hu122k9ire.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----7i12hu122k9ire.', strict=True)
+
+ def test_uts46_1800(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----7i12hu122k9ire.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----7i12hu122k9ire.xn--0ug', strict=True)
+
+ def test_uts46_1801(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣.߂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣.߂', strict=True)
+
+ def test_uts46_1802(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣.߂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣.߂', strict=True)
+
+ def test_uts46_1803(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bo0d.xn--dsb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bo0d.xn--dsb', strict=True)
+
+ def test_uts46_1804(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ߡ。Ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ߡ。Ↄ', strict=True)
+
+ def test_uts46_1805(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ߡ。Ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ߡ。Ↄ', strict=True)
+
+ def test_uts46_1806(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ߡ。ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ߡ。ↄ', strict=True)
+
+ def test_uts46_1807(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----8cd.xn--r5g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----8cd.xn--r5g', strict=True)
+
+ def test_uts46_1808(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ߡ。ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ߡ。ↄ', strict=True)
+
+ def test_uts46_1809(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----8cd.xn--q5g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----8cd.xn--q5g', strict=True)
+
+ def test_uts46_1810(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-︒󠄄。ß哑\u200c\U00010d7f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-︒󠄄。ß哑\u200c\U00010d7f', strict=True)
+
+ def test_uts46_1811(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-。󠄄。ß哑\u200c\U00010d7f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-。󠄄。ß哑\u200c\U00010d7f', strict=True)
+
+ def test_uts46_1812(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-。󠄄。SS哑\u200c\U00010d5f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-。󠄄。SS哑\u200c\U00010d5f', strict=True)
+
+ def test_uts46_1813(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-。󠄄。ss哑\u200c\U00010d7f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-。󠄄。ss哑\u200c\U00010d7f', strict=True)
+
+ def test_uts46_1814(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-。󠄄。Ss哑\u200c\U00010d5f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-。󠄄。Ss哑\u200c\U00010d5f', strict=True)
+
+ def test_uts46_1815(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-..xn--ss-h46c5711e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-..xn--ss-h46c5711e', strict=True)
+
+ def test_uts46_1816(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----tgn..xn--ss-k1ts75zb8ym', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----tgn..xn--ss-k1ts75zb8ym', strict=True)
+
+ def test_uts46_1817(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----tgn..xn--zca670n5f0binyk', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----tgn..xn--zca670n5f0binyk', strict=True)
+
+ def test_uts46_1818(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-︒󠄄。SS哑\u200c\U00010d5f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-︒󠄄。SS哑\u200c\U00010d5f', strict=True)
+
+ def test_uts46_1819(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-︒󠄄。ss哑\u200c\U00010d7f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-︒󠄄。ss哑\u200c\U00010d7f', strict=True)
+
+ def test_uts46_1820(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-︒󠄄。Ss哑\u200c\U00010d5f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-︒󠄄。Ss哑\u200c\U00010d5f', strict=True)
+
+ def test_uts46_1821(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----o89h.xn--ss-h46c5711e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----o89h.xn--ss-h46c5711e', strict=True)
+
+ def test_uts46_1822(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----tgnt341h.xn--ss-k1ts75zb8ym', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----tgnt341h.xn--ss-k1ts75zb8ym', strict=True)
+
+ def test_uts46_1823(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----tgnt341h.xn--zca670n5f0binyk', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----tgnt341h.xn--zca670n5f0binyk', strict=True)
+
+ def test_uts46_1824(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-。󠄄。SS哑\u200c\U00010d7f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-。󠄄。SS哑\u200c\U00010d7f', strict=True)
+
+ def test_uts46_1825(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-。󠄄。Ss哑\u200c\U00010d7f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-。󠄄。Ss哑\u200c\U00010d7f', strict=True)
+
+ def test_uts46_1826(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-︒󠄄。SS哑\u200c\U00010d7f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-︒󠄄。SS哑\u200c\U00010d7f', strict=True)
+
+ def test_uts46_1827(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-︒󠄄。Ss哑\u200c\U00010d7f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-︒󠄄。Ss哑\u200c\U00010d7f', strict=True)
+
+ def test_uts46_1828(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒.𑑂︯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒.𑑂︯', strict=True)
+
+ def test_uts46_1829(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒.𑑂︯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒.𑑂︯', strict=True)
+
+ def test_uts46_1830(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。.𑑂︯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。.𑑂︯', strict=True)
+
+ def test_uts46_1831(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..xn--s96cu30b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..xn--s96cu30b', strict=True)
+
+ def test_uts46_1832(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86c.xn--s96cu30b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86c.xn--s96cu30b', strict=True)
+
+ def test_uts46_1833(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꤬。\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꤬。\u200d', strict=True)
+
+ def test_uts46_1834(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zi9a.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zi9a.', strict=True)
+
+ def test_uts46_1835(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zi9a.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zi9a.xn--1ug', strict=True)
+
+ def test_uts46_1836(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U000e0e21。ﳗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U000e0e21。ﳗ', strict=True)
+
+ def test_uts46_1837(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U000e0e21。هج', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U000e0e21。هج', strict=True)
+
+ def test_uts46_1838(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--d356e.xn--rgb7c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--d356e.xn--rgb7c', strict=True)
+
+ def test_uts46_1839(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug80651l.xn--rgb7c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug80651l.xn--rgb7c', strict=True)
+
+ def test_uts46_1840(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-Ⴄ𝟢٣.𑍴ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-Ⴄ𝟢٣.𑍴ς', strict=True)
+
+ def test_uts46_1841(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-Ⴄ0٣.𑍴ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-Ⴄ0٣.𑍴ς', strict=True)
+
+ def test_uts46_1842(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ⴄ0٣.𑍴ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ⴄ0٣.𑍴ς', strict=True)
+
+ def test_uts46_1843(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-Ⴄ0٣.𑍴Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-Ⴄ0٣.𑍴Σ', strict=True)
+
+ def test_uts46_1844(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ⴄ0٣.𑍴σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ⴄ0٣.𑍴σ', strict=True)
+
+ def test_uts46_1845(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---0-iyd8660b.xn--4xa9120l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---0-iyd8660b.xn--4xa9120l', strict=True)
+
+ def test_uts46_1846(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---0-iyd8660b.xn--3xa1220l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---0-iyd8660b.xn--3xa1220l', strict=True)
+
+ def test_uts46_1847(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ⴄ𝟢٣.𑍴ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ⴄ𝟢٣.𑍴ς', strict=True)
+
+ def test_uts46_1848(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-Ⴄ𝟢٣.𑍴Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-Ⴄ𝟢٣.𑍴Σ', strict=True)
+
+ def test_uts46_1849(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ⴄ𝟢٣.𑍴σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ⴄ𝟢٣.𑍴σ', strict=True)
+
+ def test_uts46_1850(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---0-iyd216h.xn--4xa9120l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---0-iyd216h.xn--4xa9120l', strict=True)
+
+ def test_uts46_1851(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---0-iyd216h.xn--3xa1220l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---0-iyd216h.xn--3xa1220l', strict=True)
+
+ def test_uts46_1852(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e6204。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e6204。-', strict=True)
+
+ def test_uts46_1853(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xm38e.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xm38e.-', strict=True)
+
+ def test_uts46_1854(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘ß≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘ß≯', strict=True)
+
+ def test_uts46_1855(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘ß≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘ß≯', strict=True)
+
+ def test_uts46_1856(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘ß≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘ß≯', strict=True)
+
+ def test_uts46_1857(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘ß≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘ß≯', strict=True)
+
+ def test_uts46_1858(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘SS≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘SS≯', strict=True)
+
+ def test_uts46_1859(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘SS≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘SS≯', strict=True)
+
+ def test_uts46_1860(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘ss≯', strict=True)
+
+ def test_uts46_1861(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘ss≯', strict=True)
+
+ def test_uts46_1862(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘Ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘Ss≯', strict=True)
+
+ def test_uts46_1863(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘Ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘Ss≯', strict=True)
+
+ def test_uts46_1864(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pgh4639f.xn--ss-ifj426nle504a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pgh4639f.xn--ss-ifj426nle504a', strict=True)
+
+ def test_uts46_1865(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pgh4639f.xn--zca593eo6oc013y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pgh4639f.xn--zca593eo6oc013y', strict=True)
+
+ def test_uts46_1866(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘SS≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘SS≯', strict=True)
+
+ def test_uts46_1867(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘SS≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘SS≯', strict=True)
+
+ def test_uts46_1868(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘ss≯', strict=True)
+
+ def test_uts46_1869(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘ss≯', strict=True)
+
+ def test_uts46_1870(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘Ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘Ss≯', strict=True)
+
+ def test_uts46_1871(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⋠𐋮.\U000b622e༘Ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⋠𐋮.\U000b622e༘Ss≯', strict=True)
+
+ def test_uts46_1872(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1𐋸٤。\U000e08aeﮤ\U0007774a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1𐋸٤。\U000e08aeﮤ\U0007774a', strict=True)
+
+ def test_uts46_1873(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1𐋸٤。\U000e08aeۀ\U0007774a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1𐋸٤。\U000e08aeۀ\U0007774a', strict=True)
+
+ def test_uts46_1874(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1𐋸٤。\U000e08aeۀ\U0007774a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1𐋸٤。\U000e08aeۀ\U0007774a', strict=True)
+
+ def test_uts46_1875(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-hqc3905q.xn--zkb83268gqee4a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-hqc3905q.xn--zkb83268gqee4a', strict=True)
+
+ def test_uts46_1876(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '儭-。𐹴Ⴢ\U00065ce0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '儭-。𐹴Ⴢ\U00065ce0\u200c', strict=True)
+
+ def test_uts46_1877(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '儭-。𐹴Ⴢ\U00065ce0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '儭-。𐹴Ⴢ\U00065ce0\u200c', strict=True)
+
+ def test_uts46_1878(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '儭-。𐹴ⴢ\U00065ce0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '儭-。𐹴ⴢ\U00065ce0\u200c', strict=True)
+
+ def test_uts46_1879(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gz7a.xn--qlj9223eywx0b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gz7a.xn--qlj9223eywx0b', strict=True)
+
+ def test_uts46_1880(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gz7a.xn--0ug472cfq0pus98b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gz7a.xn--0ug472cfq0pus98b', strict=True)
+
+ def test_uts46_1881(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '儭-。𐹴ⴢ\U00065ce0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '儭-。𐹴ⴢ\U00065ce0\u200c', strict=True)
+
+ def test_uts46_1882(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gz7a.xn--6nd5001kyw98a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gz7a.xn--6nd5001kyw98a', strict=True)
+
+ def test_uts46_1883(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gz7a.xn--6nd249ejl4pusr7b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gz7a.xn--6nd249ejl4pusr7b', strict=True)
+
+ def test_uts46_1884(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟺𐋷ڹ.𞤭\U000bf361', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟺𐋷ڹ.𞤭\U000bf361', strict=True)
+
+ def test_uts46_1885(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4𐋷ڹ.𞤭\U000bf361', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4𐋷ڹ.𞤭\U000bf361', strict=True)
+
+ def test_uts46_1886(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4𐋷ڹ.𞤋\U000bf361', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4𐋷ڹ.𞤋\U000bf361', strict=True)
+
+ def test_uts46_1887(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-cvc5384q.xn--le6hi7322b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-cvc5384q.xn--le6hi7322b', strict=True)
+
+ def test_uts46_1888(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟺𐋷ڹ.𞤋\U000bf361', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟺𐋷ڹ.𞤋\U000bf361', strict=True)
+
+ def test_uts46_1889(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯-ꡋ𑲣.⒈𐹭', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯-ꡋ𑲣.⒈𐹭', strict=True)
+
+ def test_uts46_1890(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯-ꡋ𑲣.⒈𐹭', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯-ꡋ𑲣.⒈𐹭', strict=True)
+
+ def test_uts46_1891(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯-ꡋ𑲣.1.𐹭', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯-ꡋ𑲣.1.𐹭', strict=True)
+
+ def test_uts46_1892(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯-ꡋ𑲣.1.𐹭', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯-ꡋ𑲣.1.𐹭', strict=True)
+
+ def test_uts46_1893(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ogox061d5i8d.1.xn--lo0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ogox061d5i8d.1.xn--lo0d', strict=True)
+
+ def test_uts46_1894(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ogox061d5i8d.xn--tsh0666f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ogox061d5i8d.xn--tsh0666f', strict=True)
+
+ def test_uts46_1895(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̰.\U000f0731蚀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̰.\U000f0731蚀', strict=True)
+
+ def test_uts46_1896(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̰.\U000f0731蚀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̰.\U000f0731蚀', strict=True)
+
+ def test_uts46_1897(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xta.xn--e91aw9417e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xta.xn--e91aw9417e', strict=True)
+
+ def test_uts46_1898(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּႸ.𞡼𑇀ß⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּႸ.𞡼𑇀ß⃗', strict=True)
+
+ def test_uts46_1899(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּႸ.𞡼𑇀ß⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּႸ.𞡼𑇀ß⃗', strict=True)
+
+ def test_uts46_1900(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּⴘ.𞡼𑇀ß⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּⴘ.𞡼𑇀ß⃗', strict=True)
+
+ def test_uts46_1901(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּႸ.𞡼𑇀SS⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּႸ.𞡼𑇀SS⃗', strict=True)
+
+ def test_uts46_1902(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּⴘ.𞡼𑇀ss⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּⴘ.𞡼𑇀ss⃗', strict=True)
+
+ def test_uts46_1903(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kdb1d278n.xn--ss-yju5690ken9h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kdb1d278n.xn--ss-yju5690ken9h', strict=True)
+
+ def test_uts46_1904(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kdb1d278n.xn--zca284nhg9nrrxg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kdb1d278n.xn--zca284nhg9nrrxg', strict=True)
+
+ def test_uts46_1905(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּⴘ.𞡼𑇀ß⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּⴘ.𞡼𑇀ß⃗', strict=True)
+
+ def test_uts46_1906(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּႸ.𞡼𑇀SS⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּႸ.𞡼𑇀SS⃗', strict=True)
+
+ def test_uts46_1907(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּⴘ.𞡼𑇀ss⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּⴘ.𞡼𑇀ss⃗', strict=True)
+
+ def test_uts46_1908(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kdb1d867b.xn--ss-yju5690ken9h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kdb1d867b.xn--ss-yju5690ken9h', strict=True)
+
+ def test_uts46_1909(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kdb1d867b.xn--zca284nhg9nrrxg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kdb1d867b.xn--zca284nhg9nrrxg', strict=True)
+
+ def test_uts46_1910(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּႸ.𞡼𑇀ss⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּႸ.𞡼𑇀ss⃗', strict=True)
+
+ def test_uts46_1911(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'יּႸ.𞡼𑇀ss⃗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'יּႸ.𞡼𑇀ss⃗', strict=True)
+
+ def test_uts46_1912(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮣ𐹰\U00081c53。凬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮣ𐹰\U00081c53。凬', strict=True)
+
+ def test_uts46_1913(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮣ𐹰\U00081c53。凬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮣ𐹰\U00081c53。凬', strict=True)
+
+ def test_uts46_1914(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rxfz314ilg20c.xn--t9q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rxfz314ilg20c.xn--t9q', strict=True)
+
+ def test_uts46_1915(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🢟🄈\u200dꡎ。྄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🢟🄈\u200dꡎ。྄', strict=True)
+
+ def test_uts46_1916(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🢟7,\u200dꡎ。྄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🢟7,\u200dꡎ。྄', strict=True)
+
+ def test_uts46_1917(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7,-gh9hg322i.xn--3ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7,-gh9hg322i.xn--3ed', strict=True)
+
+ def test_uts46_1918(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7,-n1t0654eqo3o.xn--3ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7,-n1t0654eqo3o.xn--3ed', strict=True)
+
+ def test_uts46_1919(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nc9aq743ds0e.xn--3ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nc9aq743ds0e.xn--3ed', strict=True)
+
+ def test_uts46_1920(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug4874cfd0kbmg.xn--3ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug4874cfd0kbmg.xn--3ed', strict=True)
+
+ def test_uts46_1921(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡔ。္ᢇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡔ。္ᢇ', strict=True)
+
+ def test_uts46_1922(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tc9a.xn--9jd663b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tc9a.xn--9jd663b', strict=True)
+
+ def test_uts46_1923(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃫≮.𝨖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃫≮.𝨖', strict=True)
+
+ def test_uts46_1924(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃫≮.𝨖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃫≮.𝨖', strict=True)
+
+ def test_uts46_1925(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--e1g71d.xn--772h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--e1g71d.xn--772h', strict=True)
+
+ def test_uts46_1926(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴢ≯褦.ᠪߪႾݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴢ≯褦.ᠪߪႾݧ', strict=True)
+
+ def test_uts46_1927(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴢ≯褦.ᠪߪႾݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴢ≯褦.ᠪߪႾݧ', strict=True)
+
+ def test_uts46_1928(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴢ≯褦.ᠪߪႾݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴢ≯褦.ᠪߪႾݧ', strict=True)
+
+ def test_uts46_1929(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴢ≯褦.ᠪߪႾݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴢ≯褦.ᠪߪႾݧ', strict=True)
+
+ def test_uts46_1930(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+
+ def test_uts46_1931(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+
+ def test_uts46_1932(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+
+ def test_uts46_1933(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+
+ def test_uts46_1934(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh433bev8e.xn--rpb5x392bcyt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh433bev8e.xn--rpb5x392bcyt', strict=True)
+
+ def test_uts46_1935(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+
+ def test_uts46_1936(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+
+ def test_uts46_1937(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+
+ def test_uts46_1938(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴢ≯褦.ᠪߪⴞݧ', strict=True)
+
+ def test_uts46_1939(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6nd461g478e.xn--rpb5x392bcyt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6nd461g478e.xn--rpb5x392bcyt', strict=True)
+
+ def test_uts46_1940(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6nd461g478e.xn--rpb5x49td2h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6nd461g478e.xn--rpb5x49td2h', strict=True)
+
+ def test_uts46_1941(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008a246󠆒\u200c꥓。𞤙ٻꡘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008a246󠆒\u200c꥓。𞤙ٻꡘ', strict=True)
+
+ def test_uts46_1942(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008a246󠆒\u200c꥓。𞤻ٻꡘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008a246󠆒\u200c꥓。𞤻ٻꡘ', strict=True)
+
+ def test_uts46_1943(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3j9al6189a.xn--0ib8893fegvj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3j9al6189a.xn--0ib8893fegvj', strict=True)
+
+ def test_uts46_1944(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug8815chtz0e.xn--0ib8893fegvj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug8815chtz0e.xn--0ib8893fegvj', strict=True)
+
+ def test_uts46_1945(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.≯', strict=True)
+
+ def test_uts46_1946(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.≯', strict=True)
+
+ def test_uts46_1947(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--hdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--hdh', strict=True)
+
+ def test_uts46_1948(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--hdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--hdh', strict=True)
+
+ def test_uts46_1949(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𰅧\U00063a60-.꯭-悜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𰅧\U00063a60-.꯭-悜', strict=True)
+
+ def test_uts46_1950(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𰅧\U00063a60-.꯭-悜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𰅧\U00063a60-.꯭-悜', strict=True)
+
+ def test_uts46_1951(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----7m53aj640l.xn----8f4br83t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----7m53aj640l.xn----8f4br83t', strict=True)
+
+ def test_uts46_1952(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡉ\U000364e7⬞ᢜ.-\u200d𞣑\u202e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡉ\U000364e7⬞ᢜ.-\u200d𞣑\u202e', strict=True)
+
+ def test_uts46_1953(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--87e0ol04cdl39e.xn----qinu247r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--87e0ol04cdl39e.xn----qinu247r', strict=True)
+
+ def test_uts46_1954(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--87e0ol04cdl39e.xn----ugn5e3763s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--87e0ol04cdl39e.xn----ugn5e3763s', strict=True)
+
+ def test_uts46_1955(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒐\u200c衃Ⴝ.ڂႴ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒐\u200c衃Ⴝ.ڂႴ', strict=True)
+
+ def test_uts46_1956(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.\u200c衃Ⴝ.ڂႴ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.\u200c衃Ⴝ.ڂႴ', strict=True)
+
+ def test_uts46_1957(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.\u200c衃ⴝ.ڂⴔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.\u200c衃ⴝ.ڂⴔ', strict=True)
+
+ def test_uts46_1958(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.\u200c衃Ⴝ.ڂⴔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.\u200c衃Ⴝ.ڂⴔ', strict=True)
+
+ def test_uts46_1959(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.xn--llj1920a.xn--7ib268q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.xn--llj1920a.xn--7ib268q', strict=True)
+
+ def test_uts46_1960(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.xn--0ug862cbm5e.xn--7ib268q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.xn--0ug862cbm5e.xn--7ib268q', strict=True)
+
+ def test_uts46_1961(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒐\u200c衃ⴝ.ڂⴔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒐\u200c衃ⴝ.ڂⴔ', strict=True)
+
+ def test_uts46_1962(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒐\u200c衃Ⴝ.ڂⴔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒐\u200c衃Ⴝ.ڂⴔ', strict=True)
+
+ def test_uts46_1963(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1shy52abz3f.xn--7ib268q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1shy52abz3f.xn--7ib268q', strict=True)
+
+ def test_uts46_1964(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugx0px1izu2h.xn--7ib268q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugx0px1izu2h.xn--7ib268q', strict=True)
+
+ def test_uts46_1965(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.xn--1nd9032d.xn--7ib268q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.xn--1nd9032d.xn--7ib268q', strict=True)
+
+ def test_uts46_1966(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.xn--1nd159e1y2f.xn--7ib268q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.xn--1nd159e1y2f.xn--7ib268q', strict=True)
+
+ def test_uts46_1967(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.xn--1nd9032d.xn--7ib433c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.xn--1nd9032d.xn--7ib433c', strict=True)
+
+ def test_uts46_1968(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.xn--1nd159e1y2f.xn--7ib433c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.xn--1nd159e1y2f.xn--7ib433c', strict=True)
+
+ def test_uts46_1969(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1nd362hy16e.xn--7ib268q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1nd362hy16e.xn--7ib268q', strict=True)
+
+ def test_uts46_1970(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1nd159ecmd785k.xn--7ib268q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1nd159ecmd785k.xn--7ib268q', strict=True)
+
+ def test_uts46_1971(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1nd362hy16e.xn--7ib433c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1nd362hy16e.xn--7ib433c', strict=True)
+
+ def test_uts46_1972(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1nd159ecmd785k.xn--7ib433c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1nd159ecmd785k.xn--7ib433c', strict=True)
+
+ def test_uts46_1973(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߡ\u200c。--⸬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߡ\u200c。--⸬', strict=True)
+
+ def test_uts46_1974(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8sb.xn-----iw2a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8sb.xn-----iw2a', strict=True)
+
+ def test_uts46_1975(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8sb884j.xn-----iw2a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8sb884j.xn-----iw2a', strict=True)
+
+ def test_uts46_1976(self):
+ self.assertEqual(idna.decode('𞥓.ܘ', uts46=True, strict=True), '𞥓.ܘ')
+ self.assertEqual(idna.encode('𞥓.ܘ', uts46=True, strict=True), b'xn--of6h.xn--inb')
+
+ def test_uts46_1977(self):
+ self.assertEqual(idna.decode('𞥓.ܘ', uts46=True, strict=True), '𞥓.ܘ')
+ self.assertEqual(idna.encode('𞥓.ܘ', uts46=True, strict=True), b'xn--of6h.xn--inb')
+
+ def test_uts46_1978(self):
+ self.assertEqual(idna.decode('xn--of6h.xn--inb', uts46=True, strict=True), '𞥓.ܘ')
+ self.assertEqual(idna.encode('xn--of6h.xn--inb', uts46=True, strict=True), b'xn--of6h.xn--inb')
+
+ def test_uts46_1979(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄽-.-්', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄽-.-්', strict=True)
+
+ def test_uts46_1980(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄽-.-්', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄽-.-්', strict=True)
+
+ def test_uts46_1981(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn----ptf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn----ptf', strict=True)
+
+ def test_uts46_1982(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠇝ݛ-.ᤧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠇝ݛ-.ᤧ', strict=True)
+
+ def test_uts46_1983(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----k4c.xn--lff', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----k4c.xn--lff', strict=True)
+
+ def test_uts46_1984(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤴󠆹⦉𐹺.꠆⒌\U000d8938', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤴󠆹⦉𐹺.꠆⒌\U000d8938', strict=True)
+
+ def test_uts46_1985(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤴󠆹⦉𐹺.꠆5.\U000d8938', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤴󠆹⦉𐹺.꠆5.\U000d8938', strict=True)
+
+ def test_uts46_1986(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤒󠆹⦉𐹺.꠆5.\U000d8938', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤒󠆹⦉𐹺.꠆5.\U000d8938', strict=True)
+
+ def test_uts46_1987(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fuix729epewf.xn--5-w93e.xn--7b83e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fuix729epewf.xn--5-w93e.xn--7b83e', strict=True)
+
+ def test_uts46_1988(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤒󠆹⦉𐹺.꠆⒌\U000d8938', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤒󠆹⦉𐹺.꠆⒌\U000d8938', strict=True)
+
+ def test_uts46_1989(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fuix729epewf.xn--xsh5029b6e77i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fuix729epewf.xn--xsh5029b6e77i', strict=True)
+
+ def test_uts46_1990(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄸₀。𑖿\u200c𐦂\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄸₀。𑖿\u200c𐦂\u200d', strict=True)
+
+ def test_uts46_1991(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄸0。𑖿\u200c𐦂\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄸0。𑖿\u200c𐦂\u200d', strict=True)
+
+ def test_uts46_1992(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.xn--mn9cz2s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.xn--mn9cz2s', strict=True)
+
+ def test_uts46_1993(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.xn--0ugc8040p9hk', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.xn--0ugc8040p9hk', strict=True)
+
+ def test_uts46_1994(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴚ𐋸󠄄。𝟝ퟶ်', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴚ𐋸󠄄。𝟝ퟶ်', strict=True)
+
+ def test_uts46_1995(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴚ𐋸󠄄。5ퟶ်', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴚ𐋸󠄄。5ퟶ်', strict=True)
+
+ def test_uts46_1996(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴚ𐋸󠄄。5ퟶ်', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴚ𐋸󠄄。5ퟶ်', strict=True)
+
+ def test_uts46_1997(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ilj2659d.xn--5-dug9054m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ilj2659d.xn--5-dug9054m', strict=True)
+
+ def test_uts46_1998(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴚ𐋸.5ퟶ်', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴚ𐋸.5ퟶ်', strict=True)
+
+ def test_uts46_1999(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴚ𐋸.5ퟶ်', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴚ𐋸.5ퟶ်', strict=True)
+
+ def test_uts46_2000(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴚ𐋸󠄄。𝟝ퟶ်', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴚ𐋸󠄄。𝟝ퟶ်', strict=True)
+
+ def test_uts46_2001(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ynd2415j.xn--5-dug9054m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ynd2415j.xn--5-dug9054m', strict=True)
+
+ def test_uts46_2002(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-ᠹ﹪.ᷡᤢ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-ᠹ﹪.ᷡᤢ', strict=True)
+
+ def test_uts46_2003(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-ᠹ%.ᷡᤢ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-ᠹ%.ᷡᤢ', strict=True)
+
+ def test_uts46_2004(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---%-u4o.xn--gff52t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---%-u4o.xn--gff52t', strict=True)
+
+ def test_uts46_2005(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---%-u4oy48b.xn--gff52t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---%-u4oy48b.xn--gff52t', strict=True)
+
+ def test_uts46_2006(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----c6jx047j.xn--gff52t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----c6jx047j.xn--gff52t', strict=True)
+
+ def test_uts46_2007(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----c6j614b1z4v.xn--gff52t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----c6j614b1z4v.xn--gff52t', strict=True)
+
+ def test_uts46_2008(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.ᠿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.ᠿ', strict=True)
+
+ def test_uts46_2009(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.ᠿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.ᠿ', strict=True)
+
+ def test_uts46_2010(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch.xn--y7e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch.xn--y7e', strict=True)
+
+ def test_uts46_2011(self):
+ self.assertEqual(idna.decode('ܣ֣。㌪', uts46=True, strict=True), 'ܣ֣.ハイツ')
+ self.assertEqual(idna.encode('ܣ֣。㌪', uts46=True, strict=True), b'xn--ucb18e.xn--eck4c5a')
+
+ def test_uts46_2012(self):
+ self.assertEqual(idna.decode('ܣ֣。ハイツ', uts46=True, strict=True), 'ܣ֣.ハイツ')
+ self.assertEqual(idna.encode('ܣ֣。ハイツ', uts46=True, strict=True), b'xn--ucb18e.xn--eck4c5a')
+
+ def test_uts46_2013(self):
+ self.assertEqual(idna.decode('xn--ucb18e.xn--eck4c5a', uts46=True, strict=True), 'ܣ֣.ハイツ')
+ self.assertEqual(idna.encode('xn--ucb18e.xn--eck4c5a', uts46=True, strict=True), b'xn--ucb18e.xn--eck4c5a')
+
+ def test_uts46_2014(self):
+ self.assertEqual(idna.decode('ܣ֣.ハイツ', uts46=True, strict=True), 'ܣ֣.ハイツ')
+ self.assertEqual(idna.encode('ܣ֣.ハイツ', uts46=True, strict=True), b'xn--ucb18e.xn--eck4c5a')
+
+ def test_uts46_2015(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ede5󠆀≮.⵿-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ede5󠆀≮.⵿-', strict=True)
+
+ def test_uts46_2016(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ede5󠆀≮.⵿-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ede5󠆀≮.⵿-', strict=True)
+
+ def test_uts46_2017(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdhx802p.xn----i2s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdhx802p.xn----i2s', strict=True)
+
+ def test_uts46_2018(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₆榎\U000a658e്。𞤅ۭﱚ\U000e0ba8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₆榎\U000a658e്。𞤅ۭﱚ\U000e0ba8', strict=True)
+
+ def test_uts46_2019(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6榎\U000a658e്。𞤅ۭيي\U000e0ba8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6榎\U000a658e്。𞤅ۭيي\U000e0ba8', strict=True)
+
+ def test_uts46_2020(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6榎\U000a658e്。𞤧ۭيي\U000e0ba8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6榎\U000a658e്。𞤧ۭيي\U000e0ba8', strict=True)
+
+ def test_uts46_2021(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-kmf4691ejv41j.xn--mhba10ch545mn8v8h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-kmf4691ejv41j.xn--mhba10ch545mn8v8h', strict=True)
+
+ def test_uts46_2022(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₆榎\U000a658e്。𞤧ۭﱚ\U000e0ba8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₆榎\U000a658e്。𞤧ۭﱚ\U000e0ba8', strict=True)
+
+ def test_uts46_2023(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𣩫.\U0008c472', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𣩫.\U0008c472', strict=True)
+
+ def test_uts46_2024(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𣩫.\U0008c472', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𣩫.\U0008c472', strict=True)
+
+ def test_uts46_2025(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--td3j.xn--4628b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--td3j.xn--4628b', strict=True)
+
+ def test_uts46_2026(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d︒。ڹ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d︒。ڹ\u200c', strict=True)
+
+ def test_uts46_2027(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86c.xn--skb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86c.xn--skb', strict=True)
+
+ def test_uts46_2028(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug2658f.xn--skb080k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug2658f.xn--skb080k', strict=True)
+
+ def test_uts46_2029(self):
+ self.assertEqual(idna.decode('xn--skb', uts46=True, strict=True), 'ڹ')
+ self.assertEqual(idna.encode('xn--skb', uts46=True, strict=True), b'xn--skb')
+
+ def test_uts46_2030(self):
+ self.assertEqual(idna.decode('ڹ', uts46=True, strict=True), 'ڹ')
+ self.assertEqual(idna.encode('ڹ', uts46=True, strict=True), b'xn--skb')
+
+ def test_uts46_2031(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹦\u200c𐹶。\u206d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹦\u200c𐹶。\u206d', strict=True)
+
+ def test_uts46_2032(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--eo0d6a.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--eo0d6a.', strict=True)
+
+ def test_uts46_2033(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug4994goba.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug4994goba.', strict=True)
+
+ def test_uts46_2034(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--eo0d6a.xn--sxg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--eo0d6a.xn--sxg', strict=True)
+
+ def test_uts46_2035(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug4994goba.xn--sxg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug4994goba.xn--sxg', strict=True)
+
+ def test_uts46_2036(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '్𝨾֩𝟭。-𑜨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '్𝨾֩𝟭。-𑜨', strict=True)
+
+ def test_uts46_2037(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '్𝨾֩1。-𑜨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '్𝨾֩1。-𑜨', strict=True)
+
+ def test_uts46_2038(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-rfc312cdp45c.xn----nq0j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-rfc312cdp45c.xn----nq0j', strict=True)
+
+ def test_uts46_2039(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a3fc8。뙏', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a3fc8。뙏', strict=True)
+
+ def test_uts46_2040(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a3fc8。뙏', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a3fc8。뙏', strict=True)
+
+ def test_uts46_2041(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ph26c.xn--281b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ph26c.xn--281b', strict=True)
+
+ def test_uts46_2042(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00055a1a󠄌\U000d1f40ᡀ.ࢶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00055a1a󠄌\U000d1f40ᡀ.ࢶ', strict=True)
+
+ def test_uts46_2043(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--z7e98100evc01b.xn--czb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--z7e98100evc01b.xn--czb', strict=True)
+
+ def test_uts46_2044(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。\U0004505b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。\U0004505b', strict=True)
+
+ def test_uts46_2045(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。\U0004505b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。\U0004505b', strict=True)
+
+ def test_uts46_2046(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--6x4u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--6x4u', strict=True)
+
+ def test_uts46_2047(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--6x4u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--6x4u', strict=True)
+
+ def test_uts46_2048(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡋ皥.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡋ皥.-', strict=True)
+
+ def test_uts46_2049(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡋ皥.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡋ皥.-', strict=True)
+
+ def test_uts46_2050(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9vb4167c.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9vb4167c.-', strict=True)
+
+ def test_uts46_2051(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000108f8̕𐮇.⒈ꡦ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000108f8̕𐮇.⒈ꡦ', strict=True)
+
+ def test_uts46_2052(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000108f8̕𐮇.1.ꡦ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000108f8̕𐮇.1.ꡦ', strict=True)
+
+ def test_uts46_2053(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5sa9915kgvb.1.xn--cd9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5sa9915kgvb.1.xn--cd9a', strict=True)
+
+ def test_uts46_2054(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5sa9915kgvb.xn--tshw539b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5sa9915kgvb.xn--tshw539b', strict=True)
+
+ def test_uts46_2055(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+
+ def test_uts46_2056(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+
+ def test_uts46_2057(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+
+ def test_uts46_2058(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+
+ def test_uts46_2059(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+
+ def test_uts46_2060(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+
+ def test_uts46_2061(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴛ\u200c֢\u200d。ᅠĀ𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴛ\u200c֢\u200d。ᅠĀ𐹦', strict=True)
+
+ def test_uts46_2062(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴛ\u200c֢\u200d。ᅠĀ𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴛ\u200c֢\u200d。ᅠĀ𐹦', strict=True)
+
+ def test_uts46_2063(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb323r.xn--yda4409k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb323r.xn--yda4409k', strict=True)
+
+ def test_uts46_2064(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb736kea974k.xn--yda4409k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb736kea974k.xn--yda4409k', strict=True)
+
+ def test_uts46_2065(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+
+ def test_uts46_2066(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴛ\u200c֢\u200d。ᅠā𐹦', strict=True)
+
+ def test_uts46_2067(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴛ\u200c֢\u200d。ᅠĀ𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴛ\u200c֢\u200d。ᅠĀ𐹦', strict=True)
+
+ def test_uts46_2068(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴛ\u200c֢\u200d。ᅠĀ𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴛ\u200c֢\u200d。ᅠĀ𐹦', strict=True)
+
+ def test_uts46_2069(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb597c.xn--yda594fdn5q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb597c.xn--yda594fdn5q', strict=True)
+
+ def test_uts46_2070(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb597cdmmfa.xn--yda594fdn5q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb597cdmmfa.xn--yda594fdn5q', strict=True)
+
+ def test_uts46_2071(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb323r.xn--yda594fdn5q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb323r.xn--yda594fdn5q', strict=True)
+
+ def test_uts46_2072(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb736kea974k.xn--yda594fdn5q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb736kea974k.xn--yda594fdn5q', strict=True)
+
+ def test_uts46_2073(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb597c.xn--yda9741khjj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb597c.xn--yda9741khjj', strict=True)
+
+ def test_uts46_2074(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb597cdmmfa.xn--yda9741khjj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb597cdmmfa.xn--yda9741khjj', strict=True)
+
+ def test_uts46_2075(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb323r.xn--yda9741khjj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb323r.xn--yda9741khjj', strict=True)
+
+ def test_uts46_2076(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tcb736kea974k.xn--yda9741khjj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tcb736kea974k.xn--yda9741khjj', strict=True)
+
+ def test_uts46_2077(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\ufff9\u200c。曳⾑𐋰≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\ufff9\u200c。曳⾑𐋰≯', strict=True)
+
+ def test_uts46_2078(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\ufff9\u200c。曳⾑𐋰≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\ufff9\u200c。曳⾑𐋰≯', strict=True)
+
+ def test_uts46_2079(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\ufff9\u200c。曳襾𐋰≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\ufff9\u200c。曳襾𐋰≯', strict=True)
+
+ def test_uts46_2080(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\ufff9\u200c。曳襾𐋰≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\ufff9\u200c。曳襾𐋰≯', strict=True)
+
+ def test_uts46_2081(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vn7c.xn--hdh501y8wvfs5h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vn7c.xn--hdh501y8wvfs5h', strict=True)
+
+ def test_uts46_2082(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug2139f.xn--hdh501y8wvfs5h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug2139f.xn--hdh501y8wvfs5h', strict=True)
+
+ def test_uts46_2083(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯⒈。ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯⒈。ß', strict=True)
+
+ def test_uts46_2084(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯⒈。ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯⒈。ß', strict=True)
+
+ def test_uts46_2085(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯1.。ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯1.。ß', strict=True)
+
+ def test_uts46_2086(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯1.。ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯1.。ß', strict=True)
+
+ def test_uts46_2087(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯1.。SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯1.。SS', strict=True)
+
+ def test_uts46_2088(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯1.。SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯1.。SS', strict=True)
+
+ def test_uts46_2089(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯1.。ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯1.。ss', strict=True)
+
+ def test_uts46_2090(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯1.。ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯1.。ss', strict=True)
+
+ def test_uts46_2091(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯1.。Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯1.。Ss', strict=True)
+
+ def test_uts46_2092(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯1.。Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯1.。Ss', strict=True)
+
+ def test_uts46_2093(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-ogo..ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-ogo..ss', strict=True)
+
+ def test_uts46_2094(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-ogo..xn--zca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-ogo..xn--zca', strict=True)
+
+ def test_uts46_2095(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯⒈。SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯⒈。SS', strict=True)
+
+ def test_uts46_2096(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯⒈。SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯⒈。SS', strict=True)
+
+ def test_uts46_2097(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯⒈。ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯⒈。ss', strict=True)
+
+ def test_uts46_2098(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯⒈。ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯⒈。ss', strict=True)
+
+ def test_uts46_2099(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯⒈。Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯⒈。Ss', strict=True)
+
+ def test_uts46_2100(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯⒈。Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯⒈。Ss', strict=True)
+
+ def test_uts46_2101(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh84f.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh84f.ss', strict=True)
+
+ def test_uts46_2102(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh84f.xn--zca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh84f.xn--zca', strict=True)
+
+ def test_uts46_2103(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٧\u200dﮖ。ߚ-₆Ⴙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٧\u200dﮖ。ߚ-₆Ⴙ', strict=True)
+
+ def test_uts46_2104(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٧\u200dڳ。ߚ-6Ⴙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٧\u200dڳ。ߚ-6Ⴙ', strict=True)
+
+ def test_uts46_2105(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٧\u200dڳ。ߚ-6ⴙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٧\u200dڳ。ߚ-6ⴙ', strict=True)
+
+ def test_uts46_2106(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gib6m.xn---6-lve6529a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gib6m.xn---6-lve6529a', strict=True)
+
+ def test_uts46_2107(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gib6m343e.xn---6-lve6529a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gib6m343e.xn---6-lve6529a', strict=True)
+
+ def test_uts46_2108(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٧\u200dﮖ。ߚ-₆ⴙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٧\u200dﮖ。ߚ-₆ⴙ', strict=True)
+
+ def test_uts46_2109(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gib6m.xn---6-lve002g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gib6m.xn---6-lve002g', strict=True)
+
+ def test_uts46_2110(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gib6m343e.xn---6-lve002g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gib6m343e.xn---6-lve002g', strict=True)
+
+ def test_uts46_2111(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。≠', strict=True)
+
+ def test_uts46_2112(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。≠', strict=True)
+
+ def test_uts46_2113(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。≠', strict=True)
+
+ def test_uts46_2114(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。≠', strict=True)
+
+ def test_uts46_2115(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--1ch', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--1ch', strict=True)
+
+ def test_uts46_2116(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--1ch', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--1ch', strict=True)
+
+ def test_uts46_2117(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑖿𝨔.ᡟ𑖿ᭂ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑖿𝨔.ᡟ𑖿ᭂ\u200c', strict=True)
+
+ def test_uts46_2118(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--461dw464a.xn--v8e29loy65a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--461dw464a.xn--v8e29loy65a', strict=True)
+
+ def test_uts46_2119(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--461dw464a.xn--v8e29ldzfo952a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--461dw464a.xn--v8e29ldzfo952a', strict=True)
+
+ def test_uts46_2120(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000948f3\u200d\U00091771.𖬴Ↄ≠-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000948f3\u200d\U00091771.𖬴Ↄ≠-', strict=True)
+
+ def test_uts46_2121(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000948f3\u200d\U00091771.𖬴Ↄ≠-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000948f3\u200d\U00091771.𖬴Ↄ≠-', strict=True)
+
+ def test_uts46_2122(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000948f3\u200d\U00091771.𖬴ↄ≠-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000948f3\u200d\U00091771.𖬴ↄ≠-', strict=True)
+
+ def test_uts46_2123(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000948f3\u200d\U00091771.𖬴ↄ≠-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000948f3\u200d\U00091771.𖬴ↄ≠-', strict=True)
+
+ def test_uts46_2124(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6j00chy9a.xn----81n51bt713h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6j00chy9a.xn----81n51bt713h', strict=True)
+
+ def test_uts46_2125(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug15151gkb5a.xn----81n51bt713h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug15151gkb5a.xn----81n51bt713h', strict=True)
+
+ def test_uts46_2126(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6j00chy9a.xn----61n81bt713h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6j00chy9a.xn----61n81bt713h', strict=True)
+
+ def test_uts46_2127(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug15151gkb5a.xn----61n81bt713h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug15151gkb5a.xn----61n81bt713h', strict=True)
+
+ def test_uts46_2128(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߢς\u200d𝟳。蔑\U0009b5a2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߢς\u200d𝟳。蔑\U0009b5a2', strict=True)
+
+ def test_uts46_2129(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߢς\u200d7。蔑\U0009b5a2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߢς\u200d7。蔑\U0009b5a2', strict=True)
+
+ def test_uts46_2130(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߢΣ\u200d7。蔑\U0009b5a2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߢΣ\u200d7。蔑\U0009b5a2', strict=True)
+
+ def test_uts46_2131(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߢσ\u200d7。蔑\U0009b5a2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߢσ\u200d7。蔑\U0009b5a2', strict=True)
+
+ def test_uts46_2132(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7-zmb872a.xn--wy1ao4929b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7-zmb872a.xn--wy1ao4929b', strict=True)
+
+ def test_uts46_2133(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7-zmb872aez5a.xn--wy1ao4929b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7-zmb872aez5a.xn--wy1ao4929b', strict=True)
+
+ def test_uts46_2134(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7-xmb182aez5a.xn--wy1ao4929b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7-xmb182aez5a.xn--wy1ao4929b', strict=True)
+
+ def test_uts46_2135(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߢΣ\u200d𝟳。蔑\U0009b5a2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߢΣ\u200d𝟳。蔑\U0009b5a2', strict=True)
+
+ def test_uts46_2136(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߢσ\u200d𝟳。蔑\U0009b5a2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߢσ\u200d𝟳。蔑\U0009b5a2', strict=True)
+
+ def test_uts46_2137(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹰.\u0600', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹰.\u0600', strict=True)
+
+ def test_uts46_2138(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--oo0d.xn--ifb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--oo0d.xn--ifb', strict=True)
+
+ def test_uts46_2139(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ࢨ.𱠖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ࢨ.𱠖', strict=True)
+
+ def test_uts46_2140(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----mod.xn--5o9n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----mod.xn--5o9n', strict=True)
+
+ def test_uts46_2141(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𞱸󠇀。誆⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𞱸󠇀。誆⒈', strict=True)
+
+ def test_uts46_2142(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𞱸󠇀。誆⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𞱸󠇀。誆⒈', strict=True)
+
+ def test_uts46_2143(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𞱸󠇀。誆1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𞱸󠇀。誆1.', strict=True)
+
+ def test_uts46_2144(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𞱸󠇀。誆1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𞱸󠇀。誆1.', strict=True)
+
+ def test_uts46_2145(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh7151p.xn--1-dy1d.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh7151p.xn--1-dy1d.', strict=True)
+
+ def test_uts46_2146(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh7151p.xn--tsh1248a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh7151p.xn--tsh1248a', strict=True)
+
+ def test_uts46_2147(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ؖ𞥙䐊ِ.︒م↺ڜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ؖ𞥙䐊ِ.︒م↺ڜ', strict=True)
+
+ def test_uts46_2148(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ؖ𞥙䐊ِ.。م↺ڜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ؖ𞥙䐊ِ.。م↺ڜ', strict=True)
+
+ def test_uts46_2149(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4fb0j490qjg4x..xn--hhb8o948e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4fb0j490qjg4x..xn--hhb8o948e', strict=True)
+
+ def test_uts46_2150(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4fb0j490qjg4x.xn--hhb8o948euo5r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4fb0j490qjg4x.xn--hhb8o948euo5r', strict=True)
+
+ def test_uts46_2151(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.\u200cૅ\U000e9e24۴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.\u200cૅ\U000e9e24۴', strict=True)
+
+ def test_uts46_2152(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.\u200cૅ\U000e9e24۴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.\u200cૅ\U000e9e24۴', strict=True)
+
+ def test_uts46_2153(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---?-6g4k75207c.xn--hmb76q74166b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---?-6g4k75207c.xn--hmb76q74166b', strict=True)
+
+ def test_uts46_2154(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---?-6g4k75207c.xn--hmb76q48y18505a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---?-6g4k75207c.xn--hmb76q48y18505a', strict=True)
+
+ def test_uts46_2155(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.xn--hmb76q74166b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.xn--hmb76q74166b', strict=True)
+
+ def test_uts46_2156(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.xn--hmb76q74166b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.xn--hmb76q74166b', strict=True)
+
+ def test_uts46_2157(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.XN--HMB76Q74166B', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.XN--HMB76Q74166B', strict=True)
+
+ def test_uts46_2158(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.XN--HMB76Q74166B', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.XN--HMB76Q74166B', strict=True)
+
+ def test_uts46_2159(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.Xn--Hmb76q74166b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.Xn--Hmb76q74166b', strict=True)
+
+ def test_uts46_2160(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.Xn--Hmb76q74166b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.Xn--Hmb76q74166b', strict=True)
+
+ def test_uts46_2161(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.xn--hmb76q48y18505a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.xn--hmb76q48y18505a', strict=True)
+
+ def test_uts46_2162(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.xn--hmb76q48y18505a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.xn--hmb76q48y18505a', strict=True)
+
+ def test_uts46_2163(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.XN--HMB76Q48Y18505A', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.XN--HMB76Q48Y18505A', strict=True)
+
+ def test_uts46_2164(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.XN--HMB76Q48Y18505A', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.XN--HMB76Q48Y18505A', strict=True)
+
+ def test_uts46_2165(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.Xn--Hmb76q48y18505a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.Xn--Hmb76q48y18505a', strict=True)
+
+ def test_uts46_2166(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '퀬-?\U00076cd2.Xn--Hmb76q48y18505a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '퀬-?\U00076cd2.Xn--Hmb76q48y18505a', strict=True)
+
+ def test_uts46_2167(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴌ.𐹾︒𑁿\U0001ef84', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴌ.𐹾︒𑁿\U0001ef84', strict=True)
+
+ def test_uts46_2168(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴌ.𐹾。𑁿\U0001ef84', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴌ.𐹾。𑁿\U0001ef84', strict=True)
+
+ def test_uts46_2169(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴌ.𐹾。𑁿\U0001ef84', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴌ.𐹾。𑁿\U0001ef84', strict=True)
+
+ def test_uts46_2170(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3kj.xn--2o0d.xn--q30dg029a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3kj.xn--2o0d.xn--q30dg029a', strict=True)
+
+ def test_uts46_2171(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴌ.𐹾︒𑁿\U0001ef84', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴌ.𐹾︒𑁿\U0001ef84', strict=True)
+
+ def test_uts46_2172(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3kj.xn--y86c030a9ob6374b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3kj.xn--y86c030a9ob6374b', strict=True)
+
+ def test_uts46_2173(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--knd.xn--2o0d.xn--q30dg029a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--knd.xn--2o0d.xn--q30dg029a', strict=True)
+
+ def test_uts46_2174(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--knd.xn--y86c030a9ob6374b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--knd.xn--y86c030a9ob6374b', strict=True)
+
+ def test_uts46_2175(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000677bf╏。\U0001ea55\U000e007e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000677bf╏。\U0001ea55\U000e007e', strict=True)
+
+ def test_uts46_2176(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iyh90030d.xn--1m6hs0260c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iyh90030d.xn--1m6hs0260c', strict=True)
+
+ def test_uts46_2177(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d┮󠇐.ఀ్᜴\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d┮󠇐.ఀ్᜴\u200d', strict=True)
+
+ def test_uts46_2178(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d┮󠇐.ఀ్᜴\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d┮󠇐.ఀ్᜴\u200d', strict=True)
+
+ def test_uts46_2179(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kxh.xn--eoc8m432a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kxh.xn--eoc8m432a', strict=True)
+
+ def test_uts46_2180(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug04r.xn--eoc8m432a40i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug04r.xn--eoc8m432a40i', strict=True)
+
+ def test_uts46_2181(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000b96aa。🄂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000b96aa。🄂', strict=True)
+
+ def test_uts46_2182(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000b96aa。1,', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000b96aa。1,', strict=True)
+
+ def test_uts46_2183(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n433d.1,', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n433d.1,', strict=True)
+
+ def test_uts46_2184(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n433d.xn--v07h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n433d.xn--v07h', strict=True)
+
+ def test_uts46_2185(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑍨刍.🛦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑍨刍.🛦', strict=True)
+
+ def test_uts46_2186(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rbry728b.xn--y88h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rbry728b.xn--y88h', strict=True)
+
+ def test_uts46_2187(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e030f3。ᯱ𝟒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e030f3。ᯱ𝟒', strict=True)
+
+ def test_uts46_2188(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e030f3。ᯱ4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e030f3。ᯱ4', strict=True)
+
+ def test_uts46_2189(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-ib31m.xn--4-pql', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-ib31m.xn--4-pql', strict=True)
+
+ def test_uts46_2190(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڇ6Ⴔ辘.ﴢڇ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڇ6Ⴔ辘.ﴢڇ\u200c', strict=True)
+
+ def test_uts46_2191(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڇ6Ⴔ辘.صيڇ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڇ6Ⴔ辘.صيڇ\u200c', strict=True)
+
+ def test_uts46_2192(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڇ6ⴔ辘.صيڇ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڇ6ⴔ辘.صيڇ\u200c', strict=True)
+
+ def test_uts46_2193(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-gsc2270akm6f.xn--0gb6bxk', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-gsc2270akm6f.xn--0gb6bxk', strict=True)
+
+ def test_uts46_2194(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-gsc2270akm6f.xn--0gb6bxkx18g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-gsc2270akm6f.xn--0gb6bxkx18g', strict=True)
+
+ def test_uts46_2195(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڇ6ⴔ辘.ﴢڇ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڇ6ⴔ辘.ﴢڇ\u200c', strict=True)
+
+ def test_uts46_2196(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-gsc039eqq6k.xn--0gb6bxk', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-gsc039eqq6k.xn--0gb6bxk', strict=True)
+
+ def test_uts46_2197(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-gsc039eqq6k.xn--0gb6bxkx18g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-gsc039eqq6k.xn--0gb6bxkx18g', strict=True)
+
+ def test_uts46_2198(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄍.𐮭\U0001ec2c\U000bbade۹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄍.𐮭\U0001ec2c\U000bbade۹', strict=True)
+
+ def test_uts46_2199(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--mmb3954kd0uf1zx7f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--mmb3954kd0uf1zx7f', strict=True)
+
+ def test_uts46_2200(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\ua87d≯.\U000bbc80\U00092cc4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\ua87d≯.\U000bbc80\U00092cc4', strict=True)
+
+ def test_uts46_2201(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\ua87d≯.\U000bbc80\U00092cc4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\ua87d≯.\U000bbc80\U00092cc4', strict=True)
+
+ def test_uts46_2202(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\ua87d≯.\U000bbc80\U00092cc4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\ua87d≯.\U000bbc80\U00092cc4', strict=True)
+
+ def test_uts46_2203(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\ua87d≯.\U000bbc80\U00092cc4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\ua87d≯.\U000bbc80\U00092cc4', strict=True)
+
+ def test_uts46_2204(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh8193c.xn--5z40cp629b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh8193c.xn--5z40cp629b', strict=True)
+
+ def test_uts46_2205(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ςოٻ.ςܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ςოٻ.ςܔ', strict=True)
+
+ def test_uts46_2206(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ΣᲝٻ.Σܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ΣᲝٻ.Σܔ', strict=True)
+
+ def test_uts46_2207(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σოٻ.σܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σოٻ.σܔ', strict=True)
+
+ def test_uts46_2208(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σოٻ.σܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σოٻ.σܔ', strict=True)
+
+ def test_uts46_2209(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa60l26n.xn--4xa21o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa60l26n.xn--4xa21o', strict=True)
+
+ def test_uts46_2210(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σოٻ.ςܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σოٻ.ςܔ', strict=True)
+
+ def test_uts46_2211(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σოٻ.ςܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σოٻ.ςܔ', strict=True)
+
+ def test_uts46_2212(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa60l26n.xn--3xa41o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa60l26n.xn--3xa41o', strict=True)
+
+ def test_uts46_2213(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa80l26n.xn--3xa41o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa80l26n.xn--3xa41o', strict=True)
+
+ def test_uts46_2214(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σოٻ.Σܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σოٻ.Σܔ', strict=True)
+
+ def test_uts46_2215(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008459a݈𠄯ݟ。\U000e06e9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008459a݈𠄯ݟ。\U000e06e9', strict=True)
+
+ def test_uts46_2216(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008459a݈𠄯ݟ。\U000e06e9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008459a݈𠄯ݟ。\U000e06e9', strict=True)
+
+ def test_uts46_2217(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vob0c4369twfv8b.xn--kl46e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vob0c4369twfv8b.xn--kl46e', strict=True)
+
+ def test_uts46_2218(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0cdb.\u200d䤫≠Ⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0cdb.\u200d䤫≠Ⴞ', strict=True)
+
+ def test_uts46_2219(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0cdb.\u200d䤫≠Ⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0cdb.\u200d䤫≠Ⴞ', strict=True)
+
+ def test_uts46_2220(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0cdb.\u200d䤫≠Ⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0cdb.\u200d䤫≠Ⴞ', strict=True)
+
+ def test_uts46_2221(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0cdb.\u200d䤫≠Ⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0cdb.\u200d䤫≠Ⴞ', strict=True)
+
+ def test_uts46_2222(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0cdb.\u200d䤫≠ⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0cdb.\u200d䤫≠ⴞ', strict=True)
+
+ def test_uts46_2223(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0cdb.\u200d䤫≠ⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0cdb.\u200d䤫≠ⴞ', strict=True)
+
+ def test_uts46_2224(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1t56e.xn--1ch153bqvw', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1t56e.xn--1ch153bqvw', strict=True)
+
+ def test_uts46_2225(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1t56e.xn--1ug73gzzpwi3a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1t56e.xn--1ug73gzzpwi3a', strict=True)
+
+ def test_uts46_2226(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0cdb.\u200d䤫≠ⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0cdb.\u200d䤫≠ⴞ', strict=True)
+
+ def test_uts46_2227(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0cdb.\u200d䤫≠ⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0cdb.\u200d䤫≠ⴞ', strict=True)
+
+ def test_uts46_2228(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1t56e.xn--2nd141ghl2a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1t56e.xn--2nd141ghl2a', strict=True)
+
+ def test_uts46_2229(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1t56e.xn--2nd159e9vb743e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1t56e.xn--2nd159e9vb743e', strict=True)
+
+ def test_uts46_2230(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐽘𑈵.𐹣🕥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐽘𑈵.𐹣🕥', strict=True)
+
+ def test_uts46_2231(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐽘𑈵.𐹣🕥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐽘𑈵.𐹣🕥', strict=True)
+
+ def test_uts46_2232(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bv0d02c.xn--bo0dq650b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bv0d02c.xn--bo0dq650b', strict=True)
+
+ def test_uts46_2233(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒊⒈𑁄。9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒊⒈𑁄。9', strict=True)
+
+ def test_uts46_2234(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3.1.𑁄。9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3.1.𑁄。9', strict=True)
+
+ def test_uts46_2235(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3.1.xn--110d.j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3.1.xn--110d.j', strict=True)
+
+ def test_uts46_2236(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tshd3512p.j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tshd3512p.j', strict=True)
+
+ def test_uts46_2237(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200cⷱ≮.𐹱\U000ad3f44₉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200cⷱ≮.𐹱\U000ad3f44₉', strict=True)
+
+ def test_uts46_2238(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200cⷱ≮.𐹱\U000ad3f44₉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200cⷱ≮.𐹱\U000ad3f44₉', strict=True)
+
+ def test_uts46_2239(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200cⷱ≮.𐹱\U000ad3f449', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200cⷱ≮.𐹱\U000ad3f449', strict=True)
+
+ def test_uts46_2240(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200cⷱ≮.𐹱\U000ad3f449', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200cⷱ≮.𐹱\U000ad3f449', strict=True)
+
+ def test_uts46_2241(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ngo823c.xn--49-ki3om2611f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ngo823c.xn--49-ki3om2611f', strict=True)
+
+ def test_uts46_2242(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----sgn20i14s.xn--49-ki3om2611f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----sgn20i14s.xn--49-ki3om2611f', strict=True)
+
+ def test_uts46_2243(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≯딾。ࡇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≯딾。ࡇ', strict=True)
+
+ def test_uts46_2244(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≯딾。ࡇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≯딾。ࡇ', strict=True)
+
+ def test_uts46_2245(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≯딾。ࡇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≯딾。ࡇ', strict=True)
+
+ def test_uts46_2246(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≯딾。ࡇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≯딾。ࡇ', strict=True)
+
+ def test_uts46_2247(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----pgow547d.xn--5vb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----pgow547d.xn--5vb', strict=True)
+
+ def test_uts46_2248(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑙢⒈𐹠-。\U000e05d0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑙢⒈𐹠-。\U000e05d0\u200c', strict=True)
+
+ def test_uts46_2249(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑙢1.𐹠-。\U000e05d0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑙢1.𐹠-。\U000e05d0\u200c', strict=True)
+
+ def test_uts46_2250(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-bf0j.xn----516i.xn--jd46e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-bf0j.xn----516i.xn--jd46e', strict=True)
+
+ def test_uts46_2251(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-bf0j.xn----516i.xn--0ug23321l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-bf0j.xn----516i.xn--0ug23321l', strict=True)
+
+ def test_uts46_2252(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----dcpy090hiyg.xn--jd46e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----dcpy090hiyg.xn--jd46e', strict=True)
+
+ def test_uts46_2253(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----dcpy090hiyg.xn--0ug23321l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----dcpy090hiyg.xn--0ug23321l', strict=True)
+
+ def test_uts46_2254(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '͊.𐨎', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '͊.𐨎', strict=True)
+
+ def test_uts46_2255(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '͊.𐨎', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '͊.𐨎', strict=True)
+
+ def test_uts46_2256(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--oua.xn--mr9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--oua.xn--mr9c', strict=True)
+
+ def test_uts46_2257(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '훉≮。ิ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '훉≮。ิ', strict=True)
+
+ def test_uts46_2258(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '훉≮。ิ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '훉≮。ิ', strict=True)
+
+ def test_uts46_2259(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '훉≮。ิ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '훉≮。ิ', strict=True)
+
+ def test_uts46_2260(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '훉≮。ิ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '훉≮。ิ', strict=True)
+
+ def test_uts46_2261(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh2512e.xn--i4c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh2512e.xn--i4c', strict=True)
+
+ def test_uts46_2262(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⷷ\U0009e8c9🃘.\U00034207𝟸ٙ𞤯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⷷ\U0009e8c9🃘.\U00034207𝟸ٙ𞤯', strict=True)
+
+ def test_uts46_2263(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⷷ\U0009e8c9🃘.\U000342072ٙ𞤯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⷷ\U0009e8c9🃘.\U000342072ٙ𞤯', strict=True)
+
+ def test_uts46_2264(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⷷ\U0009e8c9🃘.\U000342072ٙ𞤍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⷷ\U0009e8c9🃘.\U000342072ٙ𞤍', strict=True)
+
+ def test_uts46_2265(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--trj8045le6s9b.xn--2-upc23918acjsj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--trj8045le6s9b.xn--2-upc23918acjsj', strict=True)
+
+ def test_uts46_2266(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⷷ\U0009e8c9🃘.\U00034207𝟸ٙ𞤍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⷷ\U0009e8c9🃘.\U00034207𝟸ٙ𞤍', strict=True)
+
+ def test_uts46_2267(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d71e9ßᢞ\u200c。٠\U0001edfbﳔ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d71e9ßᢞ\u200c。٠\U0001edfbﳔ-', strict=True)
+
+ def test_uts46_2268(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d71e9ßᢞ\u200c。٠\U0001edfbنخ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d71e9ßᢞ\u200c。٠\U0001edfbنخ-', strict=True)
+
+ def test_uts46_2269(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d71e9SSᢞ\u200c。٠\U0001edfbنخ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d71e9SSᢞ\u200c。٠\U0001edfbنخ-', strict=True)
+
+ def test_uts46_2270(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d71e9ssᢞ\u200c。٠\U0001edfbنخ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d71e9ssᢞ\u200c。٠\U0001edfbنخ-', strict=True)
+
+ def test_uts46_2271(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d71e9Ssᢞ\u200c。٠\U0001edfbنخ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d71e9Ssᢞ\u200c。٠\U0001edfbنخ-', strict=True)
+
+ def test_uts46_2272(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-jepz4596r.xn----dnc5e1er384z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-jepz4596r.xn----dnc5e1er384z', strict=True)
+
+ def test_uts46_2273(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-jep006bqt765b.xn----dnc5e1er384z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-jep006bqt765b.xn----dnc5e1er384z', strict=True)
+
+ def test_uts46_2274(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca272jbif10059a.xn----dnc5e1er384z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca272jbif10059a.xn----dnc5e1er384z', strict=True)
+
+ def test_uts46_2275(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d71e9SSᢞ\u200c。٠\U0001edfbﳔ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d71e9SSᢞ\u200c。٠\U0001edfbﳔ-', strict=True)
+
+ def test_uts46_2276(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d71e9ssᢞ\u200c。٠\U0001edfbﳔ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d71e9ssᢞ\u200c。٠\U0001edfbﳔ-', strict=True)
+
+ def test_uts46_2277(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d71e9Ssᢞ\u200c。٠\U0001edfbﳔ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d71e9Ssᢞ\u200c。٠\U0001edfbﳔ-', strict=True)
+
+ def test_uts46_2278(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡆ。Ↄྵ놮-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡆ。Ↄྵ놮-', strict=True)
+
+ def test_uts46_2279(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡆ。Ↄྵ놮-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡆ。Ↄྵ놮-', strict=True)
+
+ def test_uts46_2280(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡆ。ↄྵ놮-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡆ。ↄྵ놮-', strict=True)
+
+ def test_uts46_2281(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡆ。ↄྵ놮-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡆ。ↄྵ놮-', strict=True)
+
+ def test_uts46_2282(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fc9a.xn----qmg097k469k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fc9a.xn----qmg097k469k', strict=True)
+
+ def test_uts46_2283(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fc9a.xn----qmg787k869k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fc9a.xn----qmg787k869k', strict=True)
+
+ def test_uts46_2284(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﶭ\u200d.\U00065c0cک', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﶭ\u200d.\U00065c0cک', strict=True)
+
+ def test_uts46_2285(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'لمي\u200d.\U00065c0cک', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'لمي\u200d.\U00065c0cک', strict=True)
+
+ def test_uts46_2286(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ghbcp.xn--ckb36214f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ghbcp.xn--ckb36214f', strict=True)
+
+ def test_uts46_2287(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ghbcp494x.xn--ckb36214f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ghbcp494x.xn--ckb36214f', strict=True)
+
+ def test_uts46_2288(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴜᰯ𐳒≯。۠ᜲྺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴜᰯ𐳒≯。۠ᜲྺ', strict=True)
+
+ def test_uts46_2289(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴜᰯ𐳒≯。۠ᜲྺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴜᰯ𐳒≯。۠ᜲྺ', strict=True)
+
+ def test_uts46_2290(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴜᰯ𐳒≯。۠ᜲྺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴜᰯ𐳒≯。۠ᜲྺ', strict=True)
+
+ def test_uts46_2291(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴜᰯ𐳒≯。۠ᜲྺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴜᰯ𐳒≯。۠ᜲྺ', strict=True)
+
+ def test_uts46_2292(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴜᰯ𐲒≯。۠ᜲྺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴜᰯ𐲒≯。۠ᜲྺ', strict=True)
+
+ def test_uts46_2293(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴜᰯ𐲒≯。۠ᜲྺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴜᰯ𐲒≯。۠ᜲྺ', strict=True)
+
+ def test_uts46_2294(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--r1f68xh1jgv7u.xn--wlb646b4ng', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--r1f68xh1jgv7u.xn--wlb646b4ng', strict=True)
+
+ def test_uts46_2295(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0nd679cf3eq67y.xn--wlb646b4ng', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0nd679cf3eq67y.xn--wlb646b4ng', strict=True)
+
+ def test_uts46_2296(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋵。ﳬ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋵。ﳬ', strict=True)
+
+ def test_uts46_2297(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋵。كم', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋵。كم', strict=True)
+
+ def test_uts46_2298(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--p97c.xn--fhbe', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--p97c.xn--fhbe', strict=True)
+
+ def test_uts46_2299(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋵.كم', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋵.كم', strict=True)
+
+ def test_uts46_2300(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮\U0001d176.\U00071c81ꫬ⹈\U000f096d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮\U0001d176.\U00071c81ꫬ⹈\U000f096d', strict=True)
+
+ def test_uts46_2301(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮\U0001d176.\U00071c81ꫬ⹈\U000f096d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮\U0001d176.\U00071c81ꫬ⹈\U000f096d', strict=True)
+
+ def test_uts46_2302(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮\U0001d176.\U00071c81ꫬ⹈\U000f096d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮\U0001d176.\U00071c81ꫬ⹈\U000f096d', strict=True)
+
+ def test_uts46_2303(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮\U0001d176.\U00071c81ꫬ⹈\U000f096d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮\U0001d176.\U00071c81ꫬ⹈\U000f096d', strict=True)
+
+ def test_uts46_2304(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh.xn--4tjx101bsg00ds9pyc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh.xn--4tjx101bsg00ds9pyc', strict=True)
+
+ def test_uts46_2305(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh0880o.xn--4tjx101bsg00ds9pyc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh0880o.xn--4tjx101bsg00ds9pyc', strict=True)
+
+ def test_uts46_2306(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⷰ͘ᢕ.͡𐹷\U000e0d0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⷰ͘ᢕ.͡𐹷\U000e0d0d', strict=True)
+
+ def test_uts46_2307(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⷰ͘ᢕ.͡𐹷\U000e0d0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⷰ͘ᢕ.͡𐹷\U000e0d0d', strict=True)
+
+ def test_uts46_2308(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2ua889htsp.xn--cva2687k2tv0g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2ua889htsp.xn--cva2687k2tv0g', strict=True)
+
+ def test_uts46_2309(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﵹᡐ\u200cڭ.𑋪ׇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﵹᡐ\u200cڭ.𑋪ׇ', strict=True)
+
+ def test_uts46_2310(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'غممᡐ\u200cڭ.𑋪ׇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'غممᡐ\u200cڭ.𑋪ׇ', strict=True)
+
+ def test_uts46_2311(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5gbwa03bg24e.xn--vdb1198k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5gbwa03bg24e.xn--vdb1198k', strict=True)
+
+ def test_uts46_2312(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5gbwa03bg24eptk.xn--vdb1198k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5gbwa03bg24eptk.xn--vdb1198k', strict=True)
+
+ def test_uts46_2313(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑑂。\u200d\U000e5780🞕\U000a5054', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑑂。\u200d\U000e5780🞕\U000a5054', strict=True)
+
+ def test_uts46_2314(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑑂。\u200d\U000e5780🞕\U000a5054', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑑂。\u200d\U000e5780🞕\U000a5054', strict=True)
+
+ def test_uts46_2315(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8v1d.xn--ye9h41035a2qqs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8v1d.xn--ye9h41035a2qqs', strict=True)
+
+ def test_uts46_2316(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8v1d.xn--1ug1386plvx1cd8vya', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8v1d.xn--1ug1386plvx1cd8vya', strict=True)
+
+ def test_uts46_2317(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ש。⒚', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ש。⒚', strict=True)
+
+ def test_uts46_2318(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ש。19.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ש。19.', strict=True)
+
+ def test_uts46_2319(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gjc.1j.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gjc.1j.', strict=True)
+
+ def test_uts46_2320(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gjc.xn--cth', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gjc.xn--cth', strict=True)
+
+ def test_uts46_2321(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0010afbbࡅ\u200c。ᢎ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0010afbbࡅ\u200c。ᢎ\u200d', strict=True)
+
+ def test_uts46_2322(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0010afbbࡅ\u200c。ᢎ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0010afbbࡅ\u200c。ᢎ\u200d', strict=True)
+
+ def test_uts46_2323(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3vb50049s.xn--79e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3vb50049s.xn--79e', strict=True)
+
+ def test_uts46_2324(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3vb882jz4411a.xn--79e259a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3vb882jz4411a.xn--79e259a', strict=True)
+
+ def test_uts46_2325(self):
+ self.assertEqual(idna.decode('ßুᷭ。ؠ8₅', uts46=True, strict=True), 'ßুᷭ.ؠ85')
+ self.assertEqual(idna.encode('ßুᷭ。ؠ8₅', uts46=True, strict=True), b'xn--zca266bwrr.xn--85-psd')
+
+ def test_uts46_2326(self):
+ self.assertEqual(idna.decode('ßুᷭ。ؠ85', uts46=True, strict=True), 'ßুᷭ.ؠ85')
+ self.assertEqual(idna.encode('ßুᷭ。ؠ85', uts46=True, strict=True), b'xn--zca266bwrr.xn--85-psd')
+
+ def test_uts46_2327(self):
+ self.assertEqual(idna.decode('SSুᷭ。ؠ85', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('SSুᷭ。ؠ85', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2328(self):
+ self.assertEqual(idna.decode('ssুᷭ。ؠ85', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('ssুᷭ。ؠ85', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2329(self):
+ self.assertEqual(idna.decode('Ssুᷭ。ؠ85', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('Ssুᷭ。ؠ85', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2330(self):
+ self.assertEqual(idna.decode('xn--ss-e2f077r.xn--85-psd', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('xn--ss-e2f077r.xn--85-psd', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2331(self):
+ self.assertEqual(idna.decode('ssুᷭ.ؠ85', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('ssুᷭ.ؠ85', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2332(self):
+ self.assertEqual(idna.decode('SSুᷭ.ؠ85', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('SSুᷭ.ؠ85', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2333(self):
+ self.assertEqual(idna.decode('Ssুᷭ.ؠ85', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('Ssুᷭ.ؠ85', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2334(self):
+ self.assertEqual(idna.decode('xn--zca266bwrr.xn--85-psd', uts46=True, strict=True), 'ßুᷭ.ؠ85')
+ self.assertEqual(idna.encode('xn--zca266bwrr.xn--85-psd', uts46=True, strict=True), b'xn--zca266bwrr.xn--85-psd')
+
+ def test_uts46_2335(self):
+ self.assertEqual(idna.decode('ßুᷭ.ؠ85', uts46=True, strict=True), 'ßুᷭ.ؠ85')
+ self.assertEqual(idna.encode('ßুᷭ.ؠ85', uts46=True, strict=True), b'xn--zca266bwrr.xn--85-psd')
+
+ def test_uts46_2336(self):
+ self.assertEqual(idna.decode('SSুᷭ。ؠ8₅', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('SSুᷭ。ؠ8₅', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2337(self):
+ self.assertEqual(idna.decode('ssুᷭ。ؠ8₅', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('ssুᷭ。ؠ8₅', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2338(self):
+ self.assertEqual(idna.decode('Ssুᷭ。ؠ8₅', uts46=True, strict=True), 'ssুᷭ.ؠ85')
+ self.assertEqual(idna.encode('Ssুᷭ。ؠ8₅', uts46=True, strict=True), b'xn--ss-e2f077r.xn--85-psd')
+
+ def test_uts46_2339(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્҄魅𝟣.₃𐹥ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્҄魅𝟣.₃𐹥ß', strict=True)
+
+ def test_uts46_2340(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્҄魅1.3𐹥ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્҄魅1.3𐹥ß', strict=True)
+
+ def test_uts46_2341(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્҄魅1.3𐹥SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્҄魅1.3𐹥SS', strict=True)
+
+ def test_uts46_2342(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્҄魅1.3𐹥ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્҄魅1.3𐹥ss', strict=True)
+
+ def test_uts46_2343(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્҄魅1.3𐹥Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્҄魅1.3𐹥Ss', strict=True)
+
+ def test_uts46_2344(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-0xb049b102o.xn--3ss-nv9t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-0xb049b102o.xn--3ss-nv9t', strict=True)
+
+ def test_uts46_2345(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-0xb049b102o.xn--3-qfa7018r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-0xb049b102o.xn--3-qfa7018r', strict=True)
+
+ def test_uts46_2346(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્҄魅𝟣.₃𐹥SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્҄魅𝟣.₃𐹥SS', strict=True)
+
+ def test_uts46_2347(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્҄魅𝟣.₃𐹥ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્҄魅𝟣.₃𐹥ss', strict=True)
+
+ def test_uts46_2348(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્҄魅𝟣.₃𐹥Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્҄魅𝟣.₃𐹥Ss', strict=True)
+
+ def test_uts46_2349(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܫ。𑓂⒈𑜫\U000e0ffb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܫ。𑓂⒈𑜫\U000e0ffb', strict=True)
+
+ def test_uts46_2350(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܫ。𑓂1.𑜫\U000e0ffb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܫ。𑓂1.𑜫\U000e0ffb', strict=True)
+
+ def test_uts46_2351(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1nb.xn--1-jq9i.xn--ji2dg9877c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1nb.xn--1-jq9i.xn--ji2dg9877c', strict=True)
+
+ def test_uts46_2352(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1nb.xn--tsh7798f6rbrt828c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1nb.xn--tsh7798f6rbrt828c', strict=True)
+
+ def test_uts46_2353(self):
+ self.assertEqual(idna.decode('︍છ。嵨', uts46=True, strict=True), 'છ.嵨')
+ self.assertEqual(idna.encode('︍છ。嵨', uts46=True, strict=True), b'xn--6dc.xn--tot')
+
+ def test_uts46_2354(self):
+ self.assertEqual(idna.decode('xn--6dc.xn--tot', uts46=True, strict=True), 'છ.嵨')
+ self.assertEqual(idna.encode('xn--6dc.xn--tot', uts46=True, strict=True), b'xn--6dc.xn--tot')
+
+ def test_uts46_2355(self):
+ self.assertEqual(idna.decode('છ.嵨', uts46=True, strict=True), 'છ.嵨')
+ self.assertEqual(idna.encode('છ.嵨', uts46=True, strict=True), b'xn--6dc.xn--tot')
+
+ def test_uts46_2356(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴔ≠Ⴀ.𐹥𐹰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴔ≠Ⴀ.𐹥𐹰', strict=True)
+
+ def test_uts46_2357(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴔ≠Ⴀ.𐹥𐹰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴔ≠Ⴀ.𐹥𐹰', strict=True)
+
+ def test_uts46_2358(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴔ≠ⴀ.𐹥𐹰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴔ≠ⴀ.𐹥𐹰', strict=True)
+
+ def test_uts46_2359(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴔ≠ⴀ.𐹥𐹰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴔ≠ⴀ.𐹥𐹰', strict=True)
+
+ def test_uts46_2360(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch603bxb.xn--do0dwa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch603bxb.xn--do0dwa', strict=True)
+
+ def test_uts46_2361(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7md3b171g.xn--do0dwa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7md3b171g.xn--do0dwa', strict=True)
+
+ def test_uts46_2362(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200c⒙𐫥。𝨵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200c⒙𐫥。𝨵', strict=True)
+
+ def test_uts46_2363(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200c18.𐫥。𝨵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200c18.𐫥。𝨵', strict=True)
+
+ def test_uts46_2364(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-18.xn--rx9c.xn--382h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-18.xn--rx9c.xn--382h', strict=True)
+
+ def test_uts46_2365(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---18-9m0a.xn--rx9c.xn--382h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---18-9m0a.xn--rx9c.xn--382h', strict=True)
+
+ def test_uts46_2366(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ddps939g.xn--382h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ddps939g.xn--382h', strict=True)
+
+ def test_uts46_2367(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----sgn18r3191a.xn--382h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----sgn18r3191a.xn--382h', strict=True)
+
+ def test_uts46_2368(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒.ʌᠣ-𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒.ʌᠣ-𐹽', strict=True)
+
+ def test_uts46_2369(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。.ʌᠣ-𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。.ʌᠣ-𐹽', strict=True)
+
+ def test_uts46_2370(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。.Ʌᠣ-𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。.Ʌᠣ-𐹽', strict=True)
+
+ def test_uts46_2371(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..xn----73a596nuh9t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..xn----73a596nuh9t', strict=True)
+
+ def test_uts46_2372(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒.Ʌᠣ-𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒.Ʌᠣ-𐹽', strict=True)
+
+ def test_uts46_2373(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86c.xn----73a596nuh9t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86c.xn----73a596nuh9t', strict=True)
+
+ def test_uts46_2374(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︅︒。𦀾᳠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︅︒。𦀾᳠', strict=True)
+
+ def test_uts46_2375(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︅。。𦀾᳠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︅。。𦀾᳠', strict=True)
+
+ def test_uts46_2376(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..xn--t6f5138v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..xn--t6f5138v', strict=True)
+
+ def test_uts46_2377(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86c.xn--t6f5138v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86c.xn--t6f5138v', strict=True)
+
+ def test_uts46_2378(self):
+ self.assertEqual(idna.decode('xn--t6f5138v', uts46=True, strict=True), '𦀾᳠')
+ self.assertEqual(idna.encode('xn--t6f5138v', uts46=True, strict=True), b'xn--t6f5138v')
+
+ def test_uts46_2379(self):
+ self.assertEqual(idna.decode('𦀾᳠', uts46=True, strict=True), '𦀾᳠')
+ self.assertEqual(idna.encode('𦀾᳠', uts46=True, strict=True), b'xn--t6f5138v')
+
+ def test_uts46_2380(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001eb91ß\U0010f79e。ᡁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001eb91ß\U0010f79e。ᡁ', strict=True)
+
+ def test_uts46_2381(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001eb91SS\U0010f79e。ᡁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001eb91SS\U0010f79e。ᡁ', strict=True)
+
+ def test_uts46_2382(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001eb91ss\U0010f79e。ᡁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001eb91ss\U0010f79e。ᡁ', strict=True)
+
+ def test_uts46_2383(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001eb91Ss\U0010f79e。ᡁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001eb91Ss\U0010f79e。ᡁ', strict=True)
+
+ def test_uts46_2384(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-o412ac6305g.xn--07e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-o412ac6305g.xn--07e', strict=True)
+
+ def test_uts46_2385(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca9432wb989f.xn--07e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca9432wb989f.xn--07e', strict=True)
+
+ def test_uts46_2386(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꥓\u200dج٬。𱆎\U000fb85f\u200c󠅆', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꥓\u200dج٬。𱆎\U000fb85f\u200c󠅆', strict=True)
+
+ def test_uts46_2387(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rgb2k6711c.xn--ec8nj3948b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rgb2k6711c.xn--ec8nj3948b', strict=True)
+
+ def test_uts46_2388(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rgb2k500fhq9j.xn--0ug78870a5sp9d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rgb2k500fhq9j.xn--0ug78870a5sp9d', strict=True)
+
+ def test_uts46_2389(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-ß\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-ß\u200c≠', strict=True)
+
+ def test_uts46_2390(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-ß\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-ß\u200c≠', strict=True)
+
+ def test_uts46_2391(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-ß\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-ß\u200c≠', strict=True)
+
+ def test_uts46_2392(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-ß\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-ß\u200c≠', strict=True)
+
+ def test_uts46_2393(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-SS\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-SS\u200c≠', strict=True)
+
+ def test_uts46_2394(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-SS\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-SS\u200c≠', strict=True)
+
+ def test_uts46_2395(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-ss\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-ss\u200c≠', strict=True)
+
+ def test_uts46_2396(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-ss\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-ss\u200c≠', strict=True)
+
+ def test_uts46_2397(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-Ss\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-Ss\u200c≠', strict=True)
+
+ def test_uts46_2398(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-Ss\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-Ss\u200c≠', strict=True)
+
+ def test_uts46_2399(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u836e.xn---ss-gl2a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u836e.xn---ss-gl2a', strict=True)
+
+ def test_uts46_2400(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u836e.xn---ss-cn0at5l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u836e.xn---ss-cn0at5l', strict=True)
+
+ def test_uts46_2401(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u836e.xn----qfa750ve7b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u836e.xn----qfa750ve7b', strict=True)
+
+ def test_uts46_2402(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-SS\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-SS\u200c≠', strict=True)
+
+ def test_uts46_2403(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-SS\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-SS\u200c≠', strict=True)
+
+ def test_uts46_2404(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-ss\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-ss\u200c≠', strict=True)
+
+ def test_uts46_2405(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-ss\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-ss\u200c≠', strict=True)
+
+ def test_uts46_2406(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-Ss\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-Ss\u200c≠', strict=True)
+
+ def test_uts46_2407(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e054f.-Ss\u200c≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e054f.-Ss\u200c≠', strict=True)
+
+ def test_uts46_2408(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡙ\u200c。≯𐋲≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡙ\u200c。≯𐋲≠', strict=True)
+
+ def test_uts46_2409(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡙ\u200c。≯𐋲≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡙ\u200c。≯𐋲≠', strict=True)
+
+ def test_uts46_2410(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡙ\u200c。≯𐋲≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡙ\u200c。≯𐋲≠', strict=True)
+
+ def test_uts46_2411(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡙ\u200c。≯𐋲≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡙ\u200c。≯𐋲≠', strict=True)
+
+ def test_uts46_2412(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--p8e.xn--1ch3a7084l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--p8e.xn--1ch3a7084l', strict=True)
+
+ def test_uts46_2413(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡙ.≯𐋲≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡙ.≯𐋲≠', strict=True)
+
+ def test_uts46_2414(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡙ.≯𐋲≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡙ.≯𐋲≠', strict=True)
+
+ def test_uts46_2415(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--p8e650b.xn--1ch3a7084l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--p8e650b.xn--1ch3a7084l', strict=True)
+
+ def test_uts46_2416(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹧𞲄\U000e006d\U00046f29。͎🄀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹧𞲄\U000e006d\U00046f29。͎🄀', strict=True)
+
+ def test_uts46_2417(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹧𞲄\U000e006d\U00046f29。͎0.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹧𞲄\U000e006d\U00046f29。͎0.', strict=True)
+
+ def test_uts46_2418(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fo0dw409aq58qrn69d.xn--0-bgb.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fo0dw409aq58qrn69d.xn--0-bgb.', strict=True)
+
+ def test_uts46_2419(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fo0dw409aq58qrn69d.xn--sua6883w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fo0dw409aq58qrn69d.xn--sua6883w', strict=True)
+
+ def test_uts46_2420(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴄ.\u200dܡ\U000fb8cbς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴄ.\u200dܡ\U000fb8cbς', strict=True)
+
+ def test_uts46_2421(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴄ.\u200dܡ\U000fb8cbς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴄ.\u200dܡ\U000fb8cbς', strict=True)
+
+ def test_uts46_2422(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴄ.\u200dܡ\U000fb8cbς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴄ.\u200dܡ\U000fb8cbς', strict=True)
+
+ def test_uts46_2423(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴄ.\u200dܡ\U000fb8cbΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴄ.\u200dܡ\U000fb8cbΣ', strict=True)
+
+ def test_uts46_2424(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴄ.\u200dܡ\U000fb8cbσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴄ.\u200dܡ\U000fb8cbσ', strict=True)
+
+ def test_uts46_2425(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vkj.xn--4xa73ob5892c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vkj.xn--4xa73ob5892c', strict=True)
+
+ def test_uts46_2426(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vkj.xn--4xa73o3t5ajq467a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vkj.xn--4xa73o3t5ajq467a', strict=True)
+
+ def test_uts46_2427(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vkj.xn--3xa93o3t5ajq467a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vkj.xn--3xa93o3t5ajq467a', strict=True)
+
+ def test_uts46_2428(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴄ.\u200dܡ\U000fb8cbς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴄ.\u200dܡ\U000fb8cbς', strict=True)
+
+ def test_uts46_2429(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴄ.\u200dܡ\U000fb8cbΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴄ.\u200dܡ\U000fb8cbΣ', strict=True)
+
+ def test_uts46_2430(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴄ.\u200dܡ\U000fb8cbσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴄ.\u200dܡ\U000fb8cbσ', strict=True)
+
+ def test_uts46_2431(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cnd.xn--4xa73ob5892c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cnd.xn--4xa73ob5892c', strict=True)
+
+ def test_uts46_2432(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cnd.xn--4xa73o3t5ajq467a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cnd.xn--4xa73o3t5ajq467a', strict=True)
+
+ def test_uts46_2433(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cnd.xn--3xa93o3t5ajq467a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cnd.xn--3xa93o3t5ajq467a', strict=True)
+
+ def test_uts46_2434(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000aed5bؓ.Ⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000aed5bؓ.Ⴕ', strict=True)
+
+ def test_uts46_2435(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000aed5bؓ.ⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000aed5bؓ.ⴕ', strict=True)
+
+ def test_uts46_2436(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1fb94204l.xn--dlj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1fb94204l.xn--dlj', strict=True)
+
+ def test_uts46_2437(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1fb94204l.xn--tnd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1fb94204l.xn--tnd', strict=True)
+
+ def test_uts46_2438(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ᷳ𞤥。\u200c꣄\U000e0a89\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ᷳ𞤥。\u200c꣄\U000e0a89\u200d', strict=True)
+
+ def test_uts46_2439(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ᷳ𞤥。\u200c꣄\U000e0a89\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ᷳ𞤥。\u200c꣄\U000e0a89\u200d', strict=True)
+
+ def test_uts46_2440(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ᷳ𞤃。\u200c꣄\U000e0a89\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ᷳ𞤃。\u200c꣄\U000e0a89\u200d', strict=True)
+
+ def test_uts46_2441(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ᷳ𞤃。\u200c꣄\U000e0a89\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ᷳ𞤃。\u200c꣄\U000e0a89\u200d', strict=True)
+
+ def test_uts46_2442(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ofg13qyr21c.xn--0f9au6706d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ofg13qyr21c.xn--0f9au6706d', strict=True)
+
+ def test_uts46_2443(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ofg13qyr21c.xn--0ugc0116hix29k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ofg13qyr21c.xn--0ugc0116hix29k', strict=True)
+
+ def test_uts46_2444(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c󠄷。\U00092441', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c󠄷。\U00092441', strict=True)
+
+ def test_uts46_2445(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c󠄷。\U00092441', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c󠄷。\U00092441', strict=True)
+
+ def test_uts46_2446(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--w720c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--w720c', strict=True)
+
+ def test_uts46_2447(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--w720c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--w720c', strict=True)
+
+ def test_uts46_2448(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈ූ焅.\U000d7859\u200dꡟ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈ූ焅.\U000d7859\u200dꡟ', strict=True)
+
+ def test_uts46_2449(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.ූ焅.\U000d7859\u200dꡟ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.ූ焅.\U000d7859\u200dꡟ', strict=True)
+
+ def test_uts46_2450(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--t1c6981c.xn--4c9a21133d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--t1c6981c.xn--4c9a21133d', strict=True)
+
+ def test_uts46_2451(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--t1c6981c.xn--1ugz184c9lw7i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--t1c6981c.xn--1ugz184c9lw7i', strict=True)
+
+ def test_uts46_2452(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t1c337io97c.xn--4c9a21133d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t1c337io97c.xn--4c9a21133d', strict=True)
+
+ def test_uts46_2453(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t1c337io97c.xn--1ugz184c9lw7i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t1c337io97c.xn--1ugz184c9lw7i', strict=True)
+
+ def test_uts46_2454(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍ς≮.ς𝪦𞤕0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍ς≮.ς𝪦𞤕0', strict=True)
+
+ def test_uts46_2455(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍ς≮.ς𝪦𞤕0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍ς≮.ς𝪦𞤕0', strict=True)
+
+ def test_uts46_2456(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍ς≮.ς𝪦𞤷0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍ς≮.ς𝪦𞤷0', strict=True)
+
+ def test_uts46_2457(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍ς≮.ς𝪦𞤷0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍ς≮.ς𝪦𞤷0', strict=True)
+
+ def test_uts46_2458(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍Σ≮.Σ𝪦𞤕0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍Σ≮.Σ𝪦𞤕0', strict=True)
+
+ def test_uts46_2459(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍Σ≮.Σ𝪦𞤕0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍Σ≮.Σ𝪦𞤕0', strict=True)
+
+ def test_uts46_2460(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍σ≮.σ𝪦𞤷0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍σ≮.σ𝪦𞤷0', strict=True)
+
+ def test_uts46_2461(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍σ≮.σ𝪦𞤷0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍σ≮.σ𝪦𞤷0', strict=True)
+
+ def test_uts46_2462(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍Σ≮.Σ𝪦𞤷0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍Σ≮.Σ𝪦𞤷0', strict=True)
+
+ def test_uts46_2463(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍Σ≮.Σ𝪦𞤷0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍Σ≮.Σ𝪦𞤷0', strict=True)
+
+ def test_uts46_2464(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa544kvid.xn--0-zmb55727aggma', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa544kvid.xn--0-zmb55727aggma', strict=True)
+
+ def test_uts46_2465(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa744kvid.xn--0-xmb85727aggma', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa744kvid.xn--0-xmb85727aggma', strict=True)
+
+ def test_uts46_2466(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍σ≮.σ𝪦𞤕0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍σ≮.σ𝪦𞤕0', strict=True)
+
+ def test_uts46_2467(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᷍σ≮.σ𝪦𞤕0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᷍σ≮.σ𝪦𞤕0', strict=True)
+
+ def test_uts46_2468(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a29beßֹ𐫙.֭ࢡ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a29beßֹ𐫙.֭ࢡ', strict=True)
+
+ def test_uts46_2469(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a29beSSֹ𐫙.֭ࢡ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a29beSSֹ𐫙.֭ࢡ', strict=True)
+
+ def test_uts46_2470(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a29bessֹ𐫙.֭ࢡ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a29bessֹ𐫙.֭ࢡ', strict=True)
+
+ def test_uts46_2471(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a29beSsֹ𐫙.֭ࢡ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a29beSsֹ𐫙.֭ࢡ', strict=True)
+
+ def test_uts46_2472(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-xjd6058xlz50g.xn--4cb62m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-xjd6058xlz50g.xn--4cb62m', strict=True)
+
+ def test_uts46_2473(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca89v339zj118e.xn--4cb62m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca89v339zj118e.xn--4cb62m', strict=True)
+
+ def test_uts46_2474(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𞣄。⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𞣄。⒈', strict=True)
+
+ def test_uts46_2475(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𞣄。1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𞣄。1.', strict=True)
+
+ def test_uts46_2476(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----xc8r.b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----xc8r.b.', strict=True)
+
+ def test_uts46_2477(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----xc8r.xn--tsh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----xc8r.xn--tsh', strict=True)
+
+ def test_uts46_2478(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00048822𐫖𝟡。ؾ𑘿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00048822𐫖𝟡。ؾ𑘿', strict=True)
+
+ def test_uts46_2479(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00048822𐫖9。ؾ𑘿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00048822𐫖9。ؾ𑘿', strict=True)
+
+ def test_uts46_2480(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-el5iv442t.xn--9gb0830l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-el5iv442t.xn--9gb0830l', strict=True)
+
+ def test_uts46_2481(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٨ﲌ٨ᩝ.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٨ﲌ٨ᩝ.\u200d', strict=True)
+
+ def test_uts46_2482(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٨نم٨ᩝ.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٨نم٨ᩝ.\u200d', strict=True)
+
+ def test_uts46_2483(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hhbb5hc956w.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hhbb5hc956w.', strict=True)
+
+ def test_uts46_2484(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hhbb5hc956w.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hhbb5hc956w.xn--1ug', strict=True)
+
+ def test_uts46_2485(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟘.Ⴇ\U000c0cd1ﵐ\U0006b0f1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟘.Ⴇ\U000c0cd1ﵐ\U0006b0f1', strict=True)
+
+ def test_uts46_2486(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.Ⴇ\U000c0cd1تجم\U0006b0f1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.Ⴇ\U000c0cd1تجم\U0006b0f1', strict=True)
+
+ def test_uts46_2487(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.ⴇ\U000c0cd1تجم\U0006b0f1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.ⴇ\U000c0cd1تجم\U0006b0f1', strict=True)
+
+ def test_uts46_2488(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.xn--pgbe9ez79qd207lvff8b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.xn--pgbe9ez79qd207lvff8b', strict=True)
+
+ def test_uts46_2489(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟘.ⴇ\U000c0cd1ﵐ\U0006b0f1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟘.ⴇ\U000c0cd1ﵐ\U0006b0f1', strict=True)
+
+ def test_uts46_2490(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0.xn--pgbe9e344c2725svff8b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0.xn--pgbe9e344c2725svff8b', strict=True)
+
+ def test_uts46_2491(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑇀▍.⁞ᠰ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑇀▍.⁞ᠰ', strict=True)
+
+ def test_uts46_2492(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9zh3057f.xn--j7e103b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9zh3057f.xn--j7e103b', strict=True)
+
+ def test_uts46_2493(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d-ٺ.\U0008fbe9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d-ٺ.\U0008fbe9', strict=True)
+
+ def test_uts46_2494(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qrc.xn--ts49b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qrc.xn--ts49b', strict=True)
+
+ def test_uts46_2495(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qrc357q.xn--ts49b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qrc357q.xn--ts49b', strict=True)
+
+ def test_uts46_2496(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᠢ𐮂𐫘寐。\u200c≯✳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᠢ𐮂𐫘寐。\u200c≯✳', strict=True)
+
+ def test_uts46_2497(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᠢ𐮂𐫘寐。\u200c≯✳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᠢ𐮂𐫘寐。\u200c≯✳', strict=True)
+
+ def test_uts46_2498(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᠢ𐮂𐫘寐。\u200c≯✳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᠢ𐮂𐫘寐。\u200c≯✳', strict=True)
+
+ def test_uts46_2499(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᠢ𐮂𐫘寐。\u200c≯✳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᠢ𐮂𐫘寐。\u200c≯✳', strict=True)
+
+ def test_uts46_2500(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--46e6675axzzhota.xn--hdh99p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--46e6675axzzhota.xn--hdh99p', strict=True)
+
+ def test_uts46_2501(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--46e6675axzzhota.xn--0ug06gu8f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--46e6675axzzhota.xn--0ug06gu8f', strict=True)
+
+ def test_uts46_2502(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。\U000f8c9cႺႴ\U0001ea07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。\U000f8c9cႺႴ\U0001ea07', strict=True)
+
+ def test_uts46_2503(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。\U000f8c9cႺႴ\U0001ea07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。\U000f8c9cႺႴ\U0001ea07', strict=True)
+
+ def test_uts46_2504(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。\U000f8c9cⴚⴔ\U0001ea07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。\U000f8c9cⴚⴔ\U0001ea07', strict=True)
+
+ def test_uts46_2505(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。\U000f8c9cႺⴔ\U0001ea07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。\U000f8c9cႺⴔ\U0001ea07', strict=True)
+
+ def test_uts46_2506(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--cljl81825an3r4h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--cljl81825an3r4h', strict=True)
+
+ def test_uts46_2507(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--cljl81825an3r4h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--cljl81825an3r4h', strict=True)
+
+ def test_uts46_2508(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。\U000f8c9cⴚⴔ\U0001ea07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。\U000f8c9cⴚⴔ\U0001ea07', strict=True)
+
+ def test_uts46_2509(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。\U000f8c9cႺⴔ\U0001ea07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。\U000f8c9cႺⴔ\U0001ea07', strict=True)
+
+ def test_uts46_2510(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--ynd036lq981an3r4h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--ynd036lq981an3r4h', strict=True)
+
+ def test_uts46_2511(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--ynd036lq981an3r4h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--ynd036lq981an3r4h', strict=True)
+
+ def test_uts46_2512(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--sndl01647an3h1h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--sndl01647an3h1h', strict=True)
+
+ def test_uts46_2513(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--sndl01647an3h1h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--sndl01647an3h1h', strict=True)
+
+ def test_uts46_2514(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-3.\u200dヌᢕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-3.\u200dヌᢕ', strict=True)
+
+ def test_uts46_2515(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-3.xn--fbf115j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-3.xn--fbf115j', strict=True)
+
+ def test_uts46_2516(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-3.xn--fbf739aq5o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-3.xn--fbf739aq5o', strict=True)
+
+ def test_uts46_2517(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🂃٦ß\u200d。\U000e0802\U000adc0d\U0001ea52-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🂃٦ß\u200d。\U000e0802\U000adc0d\U0001ea52-', strict=True)
+
+ def test_uts46_2518(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🂃٦SS\u200d。\U000e0802\U000adc0d\U0001ea52-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🂃٦SS\u200d。\U000e0802\U000adc0d\U0001ea52-', strict=True)
+
+ def test_uts46_2519(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🂃٦ss\u200d。\U000e0802\U000adc0d\U0001ea52-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🂃٦ss\u200d。\U000e0802\U000adc0d\U0001ea52-', strict=True)
+
+ def test_uts46_2520(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-pyd98921c.xn----nz8rh7531csznt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-pyd98921c.xn----nz8rh7531csznt', strict=True)
+
+ def test_uts46_2521(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-pyd483x5k99b.xn----nz8rh7531csznt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-pyd483x5k99b.xn----nz8rh7531csznt', strict=True)
+
+ def test_uts46_2522(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca34z68yzu83b.xn----nz8rh7531csznt', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca34z68yzu83b.xn----nz8rh7531csznt', strict=True)
+
+ def test_uts46_2523(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🂃٦Ss\u200d。\U000e0802\U000adc0d\U0001ea52-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🂃٦Ss\u200d。\U000e0802\U000adc0d\U0001ea52-', strict=True)
+
+ def test_uts46_2524(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꇟ-𐾺ڟ。\U000b003a\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꇟ-𐾺ڟ。\U000b003a\u200c', strict=True)
+
+ def test_uts46_2525(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----utc4430jd3zd.xn--bp20d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----utc4430jd3zd.xn--bp20d', strict=True)
+
+ def test_uts46_2526(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----utc4430jd3zd.xn--0ugx6670i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----utc4430jd3zd.xn--0ugx6670i', strict=True)
+
+ def test_uts46_2527(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٥.҄𐨗𝩋\U00034903', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٥.҄𐨗𝩋\U00034903', strict=True)
+
+ def test_uts46_2528(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--eib.xn--n3a0405kus8eft5l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--eib.xn--n3a0405kus8eft5l', strict=True)
+
+ def test_uts46_2529(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.\U00071f13ى𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.\U00071f13ى𐨿', strict=True)
+
+ def test_uts46_2530(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--lhb4124khbq4b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--lhb4124khbq4b', strict=True)
+
+ def test_uts46_2531(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28ς.\U0001ed99녫ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28ς.\U0001ed99녫ß', strict=True)
+
+ def test_uts46_2532(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28ς.\U0001ed99녫ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28ς.\U0001ed99녫ß', strict=True)
+
+ def test_uts46_2533(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28Σ.\U0001ed99녫SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28Σ.\U0001ed99녫SS', strict=True)
+
+ def test_uts46_2534(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28Σ.\U0001ed99녫SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28Σ.\U0001ed99녫SS', strict=True)
+
+ def test_uts46_2535(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28σ.\U0001ed99녫ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28σ.\U0001ed99녫ss', strict=True)
+
+ def test_uts46_2536(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28σ.\U0001ed99녫ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28σ.\U0001ed99녫ss', strict=True)
+
+ def test_uts46_2537(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28Σ.\U0001ed99녫ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28Σ.\U0001ed99녫ss', strict=True)
+
+ def test_uts46_2538(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28Σ.\U0001ed99녫ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28Σ.\U0001ed99녫ss', strict=True)
+
+ def test_uts46_2539(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28Σ.\U0001ed99녫Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28Σ.\U0001ed99녫Ss', strict=True)
+
+ def test_uts46_2540(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28Σ.\U0001ed99녫Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28Σ.\U0001ed99녫Ss', strict=True)
+
+ def test_uts46_2541(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa76659r.xn--ss-d64i8755h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa76659r.xn--ss-d64i8755h', strict=True)
+
+ def test_uts46_2542(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28Σ.\U0001ed99녫ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28Σ.\U0001ed99녫ß', strict=True)
+
+ def test_uts46_2543(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28Σ.\U0001ed99녫ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28Σ.\U0001ed99녫ß', strict=True)
+
+ def test_uts46_2544(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28σ.\U0001ed99녫ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28σ.\U0001ed99녫ß', strict=True)
+
+ def test_uts46_2545(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000feb28σ.\U0001ed99녫ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000feb28σ.\U0001ed99녫ß', strict=True)
+
+ def test_uts46_2546(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa76659r.xn--zca5051g4h4i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa76659r.xn--zca5051g4h4i', strict=True)
+
+ def test_uts46_2547(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa96659r.xn--zca5051g4h4i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa96659r.xn--zca5051g4h4i', strict=True)
+
+ def test_uts46_2548(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ្\u200d。≠\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ្\u200d。≠\u200d\u200c', strict=True)
+
+ def test_uts46_2549(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ្\u200d。≠\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ្\u200d。≠\u200d\u200c', strict=True)
+
+ def test_uts46_2550(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ្\u200d。≠\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ្\u200d。≠\u200d\u200c', strict=True)
+
+ def test_uts46_2551(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ្\u200d。≠\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ្\u200d。≠\u200d\u200c', strict=True)
+
+ def test_uts46_2552(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ្\u200d。≠\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ្\u200d。≠\u200d\u200c', strict=True)
+
+ def test_uts46_2553(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ្\u200d。≠\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ្\u200d。≠\u200d\u200c', strict=True)
+
+ def test_uts46_2554(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u4e969b.xn--1ch', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u4e969b.xn--1ch', strict=True)
+
+ def test_uts46_2555(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ្.≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ្.≠', strict=True)
+
+ def test_uts46_2556(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ្.≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ្.≠', strict=True)
+
+ def test_uts46_2557(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ្.≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ្.≠', strict=True)
+
+ def test_uts46_2558(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ្.≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ្.≠', strict=True)
+
+ def test_uts46_2559(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u4e823bq1a.xn--0ugb89o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u4e823bq1a.xn--0ugb89o', strict=True)
+
+ def test_uts46_2560(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ្\u200d。≠\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ្\u200d。≠\u200d\u200c', strict=True)
+
+ def test_uts46_2561(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ្\u200d。≠\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ្\u200d。≠\u200d\u200c', strict=True)
+
+ def test_uts46_2562(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u4e319b.xn--1ch', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u4e319b.xn--1ch', strict=True)
+
+ def test_uts46_2563(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u4e823bcza.xn--0ugb89o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u4e823bcza.xn--0ugb89o', strict=True)
+
+ def test_uts46_2564(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋺꫶꥓\U000e7989.\u200c᜔ڏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋺꫶꥓\U000e7989.\u200c᜔ڏ', strict=True)
+
+ def test_uts46_2565(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋺꫶꥓\U000e7989.\u200c᜔ڏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋺꫶꥓\U000e7989.\u200c᜔ڏ', strict=True)
+
+ def test_uts46_2566(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3j9a14ak27osbz2o.xn--ljb175f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3j9a14ak27osbz2o.xn--ljb175f', strict=True)
+
+ def test_uts46_2567(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3j9a14ak27osbz2o.xn--ljb175f1wg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3j9a14ak27osbz2o.xn--ljb175f1wg', strict=True)
+
+ def test_uts46_2568(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007a52fྨ.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007a52fྨ.≯', strict=True)
+
+ def test_uts46_2569(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007a52fྨ.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007a52fྨ.≯', strict=True)
+
+ def test_uts46_2570(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007a52fྨ.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007a52fྨ.≯', strict=True)
+
+ def test_uts46_2571(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007a52fྨ.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007a52fྨ.≯', strict=True)
+
+ def test_uts46_2572(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4fd57150h.xn--hdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4fd57150h.xn--hdh', strict=True)
+
+ def test_uts46_2573(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𞡄Ⴓ.𐇽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𞡄Ⴓ.𐇽', strict=True)
+
+ def test_uts46_2574(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𞡄Ⴓ.𐇽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𞡄Ⴓ.𐇽', strict=True)
+
+ def test_uts46_2575(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𞡄ⴓ.𐇽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𞡄ⴓ.𐇽', strict=True)
+
+ def test_uts46_2576(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--blj7492l.xn--m27c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--blj7492l.xn--m27c', strict=True)
+
+ def test_uts46_2577(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugz52c4i16a.xn--m27c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugz52c4i16a.xn--m27c', strict=True)
+
+ def test_uts46_2578(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d𞡄ⴓ.𐇽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d𞡄ⴓ.𐇽', strict=True)
+
+ def test_uts46_2579(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rnd5552v.xn--m27c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rnd5552v.xn--m27c', strict=True)
+
+ def test_uts46_2580(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rnd379ex885a.xn--m27c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rnd379ex885a.xn--m27c', strict=True)
+
+ def test_uts46_2581(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐪒ß꣪.ᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐪒ß꣪.ᡤ', strict=True)
+
+ def test_uts46_2582(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐪒ß꣪.ᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐪒ß꣪.ᡤ', strict=True)
+
+ def test_uts46_2583(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐪒SS꣪.ᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐪒SS꣪.ᡤ', strict=True)
+
+ def test_uts46_2584(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐪒ss꣪.ᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐪒ss꣪.ᡤ', strict=True)
+
+ def test_uts46_2585(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-tu9hw933a.xn--08e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-tu9hw933a.xn--08e', strict=True)
+
+ def test_uts46_2586(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca2517f2hvc.xn--08e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca2517f2hvc.xn--08e', strict=True)
+
+ def test_uts46_2587(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐪒SS꣪.ᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐪒SS꣪.ᡤ', strict=True)
+
+ def test_uts46_2588(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐪒ss꣪.ᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐪒ss꣪.ᡤ', strict=True)
+
+ def test_uts46_2589(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐪒Ss꣪.ᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐪒Ss꣪.ᡤ', strict=True)
+
+ def test_uts46_2590(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐪒Ss꣪.ᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐪒Ss꣪.ᡤ', strict=True)
+
+ def test_uts46_2591(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨿󠆌鸮𑚶.ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨿󠆌鸮𑚶.ς', strict=True)
+
+ def test_uts46_2592(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨿󠆌鸮𑚶.Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨿󠆌鸮𑚶.Σ', strict=True)
+
+ def test_uts46_2593(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨿󠆌鸮𑚶.σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨿󠆌鸮𑚶.σ', strict=True)
+
+ def test_uts46_2594(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l76a726rt2h.xn--4xa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l76a726rt2h.xn--4xa', strict=True)
+
+ def test_uts46_2595(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l76a726rt2h.xn--3xa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l76a726rt2h.xn--3xa', strict=True)
+
+ def test_uts46_2596(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒗𞤬。-𑚶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒗𞤬。-𑚶', strict=True)
+
+ def test_uts46_2597(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '16.𞤬。-𑚶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '16.𞤬。-𑚶', strict=True)
+
+ def test_uts46_2598(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '16.𞤊。-𑚶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '16.𞤊。-𑚶', strict=True)
+
+ def test_uts46_2599(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '16.xn--ke6h.xn----4j0j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '16.xn--ke6h.xn----4j0j', strict=True)
+
+ def test_uts46_2600(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒗𞤊。-𑚶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒗𞤊。-𑚶', strict=True)
+
+ def test_uts46_2601(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8shw466n.xn----4j0j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8shw466n.xn----4j0j', strict=True)
+
+ def test_uts46_2602(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࢳ𞤿⾫。𐹣ڏ⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࢳ𞤿⾫。𐹣ڏ⒈', strict=True)
+
+ def test_uts46_2603(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࢳ𞤿隹。𐹣ڏ1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࢳ𞤿隹。𐹣ڏ1.', strict=True)
+
+ def test_uts46_2604(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࢳ𞤝隹。𐹣ڏ1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࢳ𞤝隹。𐹣ڏ1.', strict=True)
+
+ def test_uts46_2605(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8yb0383efiwk.xn--1-wsc3373r.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8yb0383efiwk.xn--1-wsc3373r.', strict=True)
+
+ def test_uts46_2606(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࢳ𞤝⾫。𐹣ڏ⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࢳ𞤝⾫。𐹣ڏ⒈', strict=True)
+
+ def test_uts46_2607(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8yb0383efiwk.xn--ljb064mol4n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8yb0383efiwk.xn--ljb064mol4n', strict=True)
+
+ def test_uts46_2608(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u2433\U0001a39b𝟧١.ᡢ8ི\u0600', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u2433\U0001a39b𝟧١.ᡢ8ི\u0600', strict=True)
+
+ def test_uts46_2609(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u2433\U0001a39b5١.ᡢ8ི\u0600', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u2433\U0001a39b5١.ᡢ8ི\u0600', strict=True)
+
+ def test_uts46_2610(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5-bqc410un435a.xn--8-rkc763epjj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5-bqc410un435a.xn--8-rkc763epjj', strict=True)
+
+ def test_uts46_2611(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹠.🄀⒒-\U000e8c08', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹠.🄀⒒-\U000e8c08', strict=True)
+
+ def test_uts46_2612(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹠.0.11.-\U000e8c08', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹠.0.11.-\U000e8c08', strict=True)
+
+ def test_uts46_2613(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7n0d.0.11.xn----8j07m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7n0d.0.11.xn----8j07m', strict=True)
+
+ def test_uts46_2614(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7n0d.xn----xcp9757q1s13g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7n0d.xn----xcp9757q1s13g', strict=True)
+
+ def test_uts46_2615(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς-。\u200c𝟭-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς-。\u200c𝟭-', strict=True)
+
+ def test_uts46_2616(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς-。\u200c1-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς-。\u200c1-', strict=True)
+
+ def test_uts46_2617(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ-。\u200c1-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ-。\u200c1-', strict=True)
+
+ def test_uts46_2618(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ-。\u200c1-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ-。\u200c1-', strict=True)
+
+ def test_uts46_2619(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----zmb.1-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----zmb.1-', strict=True)
+
+ def test_uts46_2620(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----zmb.xn--1--i1t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----zmb.xn--1--i1t', strict=True)
+
+ def test_uts46_2621(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----xmb.xn--1--i1t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----xmb.xn--1--i1t', strict=True)
+
+ def test_uts46_2622(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ-。\u200c𝟭-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ-。\u200c𝟭-', strict=True)
+
+ def test_uts46_2623(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ-。\u200c𝟭-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ-。\u200c𝟭-', strict=True)
+
+ def test_uts46_2624(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᜴-ೢ.󠄩Ⴄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᜴-ೢ.󠄩Ⴄ', strict=True)
+
+ def test_uts46_2625(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᜴-ೢ.󠄩Ⴄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᜴-ೢ.󠄩Ⴄ', strict=True)
+
+ def test_uts46_2626(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᜴-ೢ.󠄩ⴄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᜴-ೢ.󠄩ⴄ', strict=True)
+
+ def test_uts46_2627(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ggf830f.xn--vkj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ggf830f.xn--vkj', strict=True)
+
+ def test_uts46_2628(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᜴-ೢ.󠄩ⴄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᜴-ೢ.󠄩ⴄ', strict=True)
+
+ def test_uts46_2629(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ggf830f.xn--cnd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ggf830f.xn--cnd', strict=True)
+
+ def test_uts46_2630(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ad217♋ڻ𐦥。॔⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ad217♋ڻ𐦥。॔⒈', strict=True)
+
+ def test_uts46_2631(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ad217♋ڻ𐦥。॔1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ad217♋ڻ𐦥。॔1.', strict=True)
+
+ def test_uts46_2632(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ukb372n129m3rs7f.xn--1-fyd.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ukb372n129m3rs7f.xn--1-fyd.', strict=True)
+
+ def test_uts46_2633(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ukb372n129m3rs7f.xn--u3b240l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ukb372n129m3rs7f.xn--u3b240l', strict=True)
+
+ def test_uts46_2634(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֤.ہ᪳\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֤.ہ᪳\u200c', strict=True)
+
+ def test_uts46_2635(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֤.ہ᪳\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֤.ہ᪳\u200c', strict=True)
+
+ def test_uts46_2636(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vcb.xn--0kb623h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vcb.xn--0kb623h', strict=True)
+
+ def test_uts46_2637(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vcb.xn--0kb623hm1d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vcb.xn--0kb623hm1d', strict=True)
+
+ def test_uts46_2638(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00062b4fࡆ≮્.\U0001e98a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00062b4fࡆ≮્.\U0001e98a', strict=True)
+
+ def test_uts46_2639(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00062b4fࡆ≮્.\U0001e98a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00062b4fࡆ≮્.\U0001e98a', strict=True)
+
+ def test_uts46_2640(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00062b4fࡆ≮્.\U0001e98a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00062b4fࡆ≮્.\U0001e98a', strict=True)
+
+ def test_uts46_2641(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00062b4fࡆ≮્.\U0001e98a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00062b4fࡆ≮્.\U0001e98a', strict=True)
+
+ def test_uts46_2642(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4vb80kq29ayo62l.xn--8g6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4vb80kq29ayo62l.xn--8g6h', strict=True)
+
+ def test_uts46_2643(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。𞀘⒈ꡍ擉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。𞀘⒈ꡍ擉', strict=True)
+
+ def test_uts46_2644(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。𞀘1.ꡍ擉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。𞀘1.ꡍ擉', strict=True)
+
+ def test_uts46_2645(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--1-1p4r.xn--s7uv61m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--1-1p4r.xn--s7uv61m', strict=True)
+
+ def test_uts46_2646(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--1-1p4r.xn--s7uv61m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--1-1p4r.xn--s7uv61m', strict=True)
+
+ def test_uts46_2647(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--tsh026uql4bew9p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--tsh026uql4bew9p', strict=True)
+
+ def test_uts46_2648(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--tsh026uql4bew9p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--tsh026uql4bew9p', strict=True)
+
+ def test_uts46_2649(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₈ߋ.ﭤ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₈ߋ.ﭤ≠', strict=True)
+
+ def test_uts46_2650(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₈ߋ.ﭤ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₈ߋ.ﭤ≠', strict=True)
+
+ def test_uts46_2651(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ߋ.ٿ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ߋ.ٿ≠', strict=True)
+
+ def test_uts46_2652(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ߋ.ٿ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ߋ.ٿ≠', strict=True)
+
+ def test_uts46_2653(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-zbd.xn--4ib883l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-zbd.xn--4ib883l', strict=True)
+
+ def test_uts46_2654(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢡߞ\U000b9423.⒒ق𑍦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢡߞ\U000b9423.⒒ق𑍦', strict=True)
+
+ def test_uts46_2655(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢡߞ\U000b9423.11.ق𑍦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢡߞ\U000b9423.11.ق𑍦', strict=True)
+
+ def test_uts46_2656(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5sb596fi873t.11.xn--ehb4198k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5sb596fi873t.11.xn--ehb4198k', strict=True)
+
+ def test_uts46_2657(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5sb596fi873t.xn--ehb336mvy7n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5sb596fi873t.xn--ehb336mvy7n', strict=True)
+
+ def test_uts46_2658(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '่-𐹺𝟜.ͣۡ⒏', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '่-𐹺𝟜.ͣۡ⒏', strict=True)
+
+ def test_uts46_2659(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '่-𐹺4.ͣۡ8.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '่-𐹺4.ͣۡ8.', strict=True)
+
+ def test_uts46_2660(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---4-owiz479s.xn--8-ihb69x.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---4-owiz479s.xn--8-ihb69x.', strict=True)
+
+ def test_uts46_2661(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---4-owiz479s.xn--eva20pjv9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---4-owiz479s.xn--eva20pjv9a', strict=True)
+
+ def test_uts46_2662(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⫐。Ⴠ-\U000c3422', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⫐。Ⴠ-\U000c3422', strict=True)
+
+ def test_uts46_2663(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⫐。Ⴠ-\U000c3422', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⫐。Ⴠ-\U000c3422', strict=True)
+
+ def test_uts46_2664(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⫐。ⴠ-\U000c3422', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⫐。ⴠ-\U000c3422', strict=True)
+
+ def test_uts46_2665(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--r3i.xn----2wst7439i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--r3i.xn----2wst7439i', strict=True)
+
+ def test_uts46_2666(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⫐。ⴠ-\U000c3422', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⫐。ⴠ-\U000c3422', strict=True)
+
+ def test_uts46_2667(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--r3i.xn----z1g58579u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--r3i.xn----z1g58579u', strict=True)
+
+ def test_uts46_2668(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑑂◊.⦟∠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑑂◊.⦟∠', strict=True)
+
+ def test_uts46_2669(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑑂◊.⦟∠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑑂◊.⦟∠', strict=True)
+
+ def test_uts46_2670(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--01h3338f.xn--79g270a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--01h3338f.xn--79g270a', strict=True)
+
+ def test_uts46_2671(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f330-٢。\U000cbe1bꡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f330-٢。\U000cbe1bꡂ', strict=True)
+
+ def test_uts46_2672(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----dqc20828e.xn--bc9an2879c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----dqc20828e.xn--bc9an2879c', strict=True)
+
+ def test_uts46_2673(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٸ。\U000e03ec݁\U0001eaad𐹪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٸ。\U000e03ec݁\U0001eaad𐹪', strict=True)
+
+ def test_uts46_2674(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'يٴ。\U000e03ec݁\U0001eaad𐹪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'يٴ。\U000e03ec݁\U0001eaad𐹪', strict=True)
+
+ def test_uts46_2675(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mhb8f.xn--oob2585kfdsfsbo7h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mhb8f.xn--oob2585kfdsfsbo7h', strict=True)
+
+ def test_uts46_2676(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫆ꌄ。\u200dᣬ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫆ꌄ。\u200dᣬ', strict=True)
+
+ def test_uts46_2677(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫆ꌄ。\u200dᣬ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫆ꌄ。\u200dᣬ', strict=True)
+
+ def test_uts46_2678(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y77ao18q.xn--wdf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y77ao18q.xn--wdf', strict=True)
+
+ def test_uts46_2679(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y77ao18q.xn--wdf367a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y77ao18q.xn--wdf367a', strict=True)
+
+ def test_uts46_2680(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₀٢。\U000c5a9e≯-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₀٢。\U000c5a9e≯-', strict=True)
+
+ def test_uts46_2681(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₀٢。\U000c5a9e≯-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₀٢。\U000c5a9e≯-', strict=True)
+
+ def test_uts46_2682(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0٢。\U000c5a9e≯-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0٢。\U000c5a9e≯-', strict=True)
+
+ def test_uts46_2683(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0٢。\U000c5a9e≯-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0٢。\U000c5a9e≯-', strict=True)
+
+ def test_uts46_2684(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0-dqc.xn----ogov3342l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0-dqc.xn----ogov3342l', strict=True)
+
+ def test_uts46_2685(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̜𐹫-\U0001ebc3.𐋤ࡅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̜𐹫-\U0001ebc3.𐋤ࡅ', strict=True)
+
+ def test_uts46_2686(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gdb7046r692g.xn--3vb1349j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gdb7046r692g.xn--3vb1349j', strict=True)
+
+ def test_uts46_2687(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。𝩑𐹩Ⴡ֔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。𝩑𐹩Ⴡ֔', strict=True)
+
+ def test_uts46_2688(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。𝩑𐹩Ⴡ֔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。𝩑𐹩Ⴡ֔', strict=True)
+
+ def test_uts46_2689(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。𝩑𐹩Ⴡ֔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。𝩑𐹩Ⴡ֔', strict=True)
+
+ def test_uts46_2690(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。𝩑𐹩Ⴡ֔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。𝩑𐹩Ⴡ֔', strict=True)
+
+ def test_uts46_2691(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。𝩑𐹩ⴡ֔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。𝩑𐹩ⴡ֔', strict=True)
+
+ def test_uts46_2692(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。𝩑𐹩ⴡ֔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。𝩑𐹩ⴡ֔', strict=True)
+
+ def test_uts46_2693(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch.xn--fcb363rk03mypug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch.xn--fcb363rk03mypug', strict=True)
+
+ def test_uts46_2694(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。𝩑𐹩ⴡ֔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。𝩑𐹩ⴡ֔', strict=True)
+
+ def test_uts46_2695(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。𝩑𐹩ⴡ֔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。𝩑𐹩ⴡ֔', strict=True)
+
+ def test_uts46_2696(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch.xn--fcb538c649rypog', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch.xn--fcb538c649rypog', strict=True)
+
+ def test_uts46_2697(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𖫳≠.Ⴀ𐮀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𖫳≠.Ⴀ𐮀', strict=True)
+
+ def test_uts46_2698(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𖫳≠.Ⴀ𐮀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𖫳≠.Ⴀ𐮀', strict=True)
+
+ def test_uts46_2699(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𖫳≠.ⴀ𐮀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𖫳≠.ⴀ𐮀', strict=True)
+
+ def test_uts46_2700(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𖫳≠.ⴀ𐮀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𖫳≠.ⴀ𐮀', strict=True)
+
+ def test_uts46_2701(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch9250k.xn--rkj6232e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch9250k.xn--rkj6232e', strict=True)
+
+ def test_uts46_2702(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch9250k.xn--7md2659j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch9250k.xn--7md2659j', strict=True)
+
+ def test_uts46_2703(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅾ܶܦ.ᢚ閪\u08e2𝩟', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅾ܶܦ.ᢚ閪\u08e2𝩟', strict=True)
+
+ def test_uts46_2704(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅾ܶܦ.ᢚ閪\u08e2𝩟', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅾ܶܦ.ᢚ閪\u08e2𝩟', strict=True)
+
+ def test_uts46_2705(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wnb5a.xn--l0b161fis8gbp5m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wnb5a.xn--l0b161fis8gbp5m', strict=True)
+
+ def test_uts46_2706(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d󠇜ۋ꣩。⃝ྰ-ᛟ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d󠇜ۋ꣩。⃝ྰ-ᛟ', strict=True)
+
+ def test_uts46_2707(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d󠇜ۋ꣩。⃝ྰ-ᛟ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d󠇜ۋ꣩。⃝ྰ-ᛟ', strict=True)
+
+ def test_uts46_2708(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--blb8114f.xn----gmg236cj6k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--blb8114f.xn----gmg236cj6k', strict=True)
+
+ def test_uts46_2709(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--blb540ke10h.xn----gmg236cj6k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--blb540ke10h.xn----gmg236cj6k', strict=True)
+
+ def test_uts46_2710(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '헁\U000d8599ฺ\U000da35a。ں𝟜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '헁\U000d8599ฺ\U000da35a。ں𝟜', strict=True)
+
+ def test_uts46_2711(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '헁\U000d8599ฺ\U000da35a。ں𝟜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '헁\U000d8599ฺ\U000da35a。ں𝟜', strict=True)
+
+ def test_uts46_2712(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '헁\U000d8599ฺ\U000da35a。ں4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '헁\U000d8599ฺ\U000da35a。ں4', strict=True)
+
+ def test_uts46_2713(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '헁\U000d8599ฺ\U000da35a。ں4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '헁\U000d8599ฺ\U000da35a。ں4', strict=True)
+
+ def test_uts46_2714(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--o4c1723h8g85gt4ya.xn--4-dvc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--o4c1723h8g85gt4ya.xn--4-dvc', strict=True)
+
+ def test_uts46_2715(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹭。\U000c3c42\u200cႾ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹭。\U000c3c42\u200cႾ', strict=True)
+
+ def test_uts46_2716(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹭。\U000c3c42\u200cႾ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹭。\U000c3c42\u200cႾ', strict=True)
+
+ def test_uts46_2717(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹭。\U000c3c42\u200cⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹭。\U000c3c42\u200cⴞ', strict=True)
+
+ def test_uts46_2718(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lo0d.xn--mljx1099g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lo0d.xn--mljx1099g', strict=True)
+
+ def test_uts46_2719(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lo0d.xn--0ugx72cwi33v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lo0d.xn--0ugx72cwi33v', strict=True)
+
+ def test_uts46_2720(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹭。\U000c3c42\u200cⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹭。\U000c3c42\u200cⴞ', strict=True)
+
+ def test_uts46_2721(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lo0d.xn--2nd75260n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lo0d.xn--2nd75260n', strict=True)
+
+ def test_uts46_2722(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lo0d.xn--2nd949eqw95u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lo0d.xn--2nd949eqw95u', strict=True)
+
+ def test_uts46_2723(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꥓.̽\U000110bd馋', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꥓.̽\U000110bd馋', strict=True)
+
+ def test_uts46_2724(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3j9a.xn--bua0708eqzrd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3j9a.xn--bua0708eqzrd', strict=True)
+
+ def test_uts46_2725(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c8add\U000aa6f8\u200d。䜖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c8add\U000aa6f8\u200d。䜖', strict=True)
+
+ def test_uts46_2726(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c8add\U000aa6f8\u200d。䜖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c8add\U000aa6f8\u200d。䜖', strict=True)
+
+ def test_uts46_2727(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--g138cxw05a.xn--k0o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--g138cxw05a.xn--k0o', strict=True)
+
+ def test_uts46_2728(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug30527h9mxi.xn--k0o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug30527h9mxi.xn--k0o', strict=True)
+
+ def test_uts46_2729(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡯ⚉姶🄉.۷\u200d🎪\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡯ⚉姶🄉.۷\u200d🎪\u200d', strict=True)
+
+ def test_uts46_2730(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡯ⚉姶8,.۷\u200d🎪\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡯ⚉姶8,.۷\u200d🎪\u200d', strict=True)
+
+ def test_uts46_2731(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8,-g9oy26fzu4d.xn--kmb6733w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8,-g9oy26fzu4d.xn--kmb6733w', strict=True)
+
+ def test_uts46_2732(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8,-g9oy26fzu4d.xn--kmb859ja94998b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8,-g9oy26fzu4d.xn--kmb859ja94998b', strict=True)
+
+ def test_uts46_2733(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--c9e433epi4b3j20a.xn--kmb6733w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--c9e433epi4b3j20a.xn--kmb6733w', strict=True)
+
+ def test_uts46_2734(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--c9e433epi4b3j20a.xn--kmb859ja94998b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--c9e433epi4b3j20a.xn--kmb859ja94998b', strict=True)
+
+ def test_uts46_2735(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ef40.𐹸🚖ฺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ef40.𐹸🚖ฺ', strict=True)
+
+ def test_uts46_2736(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0n7h.xn--o4c9032klszf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0n7h.xn--o4c9032klszf', strict=True)
+
+ def test_uts46_2737(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴔᠵ。𐹧݇۹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴔᠵ。𐹧݇۹', strict=True)
+
+ def test_uts46_2738(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴔᠵ。𐹧݇۹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴔᠵ。𐹧݇۹', strict=True)
+
+ def test_uts46_2739(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴔᠵ。𐹧݇۹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴔᠵ。𐹧݇۹', strict=True)
+
+ def test_uts46_2740(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--o7e997h.xn--mmb9ml895e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--o7e997h.xn--mmb9ml895e', strict=True)
+
+ def test_uts46_2741(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴔᠵ。𐹧݇۹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴔᠵ。𐹧݇۹', strict=True)
+
+ def test_uts46_2742(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--snd659a.xn--mmb9ml895e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--snd659a.xn--mmb9ml895e', strict=True)
+
+ def test_uts46_2743(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '፟ᡈ\u200c.︒-𖾐-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '፟ᡈ\u200c.︒-𖾐-', strict=True)
+
+ def test_uts46_2744(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '፟ᡈ\u200c.。-𖾐-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '፟ᡈ\u200c.。-𖾐-', strict=True)
+
+ def test_uts46_2745(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b7d82w..xn-----pe4u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b7d82w..xn-----pe4u', strict=True)
+
+ def test_uts46_2746(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b7d82wo4h..xn-----pe4u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b7d82wo4h..xn-----pe4u', strict=True)
+
+ def test_uts46_2747(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b7d82w.xn-----c82nz547a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b7d82w.xn-----c82nz547a', strict=True)
+
+ def test_uts46_2748(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b7d82wo4h.xn-----c82nz547a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b7d82wo4h.xn-----c82nz547a', strict=True)
+
+ def test_uts46_2749(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈\u0601⒖\u200c.ᷰߛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈\u0601⒖\u200c.ᷰߛ', strict=True)
+
+ def test_uts46_2750(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.\u060115.\u200c.ᷰߛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.\u060115.\u200c.ᷰߛ', strict=True)
+
+ def test_uts46_2751(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--15-1pd..xn--2sb914i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--15-1pd..xn--2sb914i', strict=True)
+
+ def test_uts46_2752(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--15-1pd.xn--0ug.xn--2sb914i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--15-1pd.xn--0ug.xn--2sb914i', strict=True)
+
+ def test_uts46_2753(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jfb347mib.xn--2sb914i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jfb347mib.xn--2sb914i', strict=True)
+
+ def test_uts46_2754(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jfb844kmfdwb.xn--2sb914i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jfb844kmfdwb.xn--2sb914i', strict=True)
+
+ def test_uts46_2755(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝩜。-୍Ⴋ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝩜。-୍Ⴋ', strict=True)
+
+ def test_uts46_2756(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝩜。-୍ⴋ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝩜。-୍ⴋ', strict=True)
+
+ def test_uts46_2757(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--792h.xn----bse820x', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--792h.xn----bse820x', strict=True)
+
+ def test_uts46_2758(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--792h.xn----bse632b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--792h.xn----bse632b', strict=True)
+
+ def test_uts46_2759(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ßჀ.ؠ刯Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ßჀ.ؠ刯Ⴝ', strict=True)
+
+ def test_uts46_2760(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ßⴠ.ؠ刯ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ßⴠ.ؠ刯ⴝ', strict=True)
+
+ def test_uts46_2761(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SSჀ.ؠ刯Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SSჀ.ؠ刯Ⴝ', strict=True)
+
+ def test_uts46_2762(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ssⴠ.ؠ刯ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ssⴠ.ؠ刯ⴝ', strict=True)
+
+ def test_uts46_2763(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ssⴠ.ؠ刯Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ssⴠ.ؠ刯Ⴝ', strict=True)
+
+ def test_uts46_2764(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-j81a.xn--fgb670rovy', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-j81a.xn--fgb670rovy', strict=True)
+
+ def test_uts46_2765(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca277t.xn--fgb670rovy', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca277t.xn--fgb670rovy', strict=True)
+
+ def test_uts46_2766(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-j81a.xn--fgb845cb66c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-j81a.xn--fgb845cb66c', strict=True)
+
+ def test_uts46_2767(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-wgk.xn--fgb845cb66c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-wgk.xn--fgb845cb66c', strict=True)
+
+ def test_uts46_2768(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca442f.xn--fgb845cb66c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca442f.xn--fgb845cb66c', strict=True)
+
+ def test_uts46_2769(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪ႣℲ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪ႣℲ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2770(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪ႣℲ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪ႣℲ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2771(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪ႣℲ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪ႣℲ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2772(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪ႣℲ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪ႣℲ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2773(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪ⴃⅎ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪ⴃⅎ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2774(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪ⴃⅎ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪ⴃⅎ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2775(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪Ⴃⅎ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪Ⴃⅎ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2776(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪Ⴃⅎ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪Ⴃⅎ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2777(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--yxf24x4ol.xn--sib102gc69k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--yxf24x4ol.xn--sib102gc69k', strict=True)
+
+ def test_uts46_2778(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪ⴃⅎ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪ⴃⅎ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2779(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪ⴃⅎ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪ⴃⅎ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2780(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪Ⴃⅎ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪Ⴃⅎ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2781(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᮪Ⴃⅎ。ᠳ툻ٳ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᮪Ⴃⅎ。ᠳ툻ٳ', strict=True)
+
+ def test_uts46_2782(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bnd957c2pe.xn--sib102gc69k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bnd957c2pe.xn--sib102gc69k', strict=True)
+
+ def test_uts46_2783(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bnd957cone.xn--sib102gc69k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bnd957cone.xn--sib102gc69k', strict=True)
+
+ def test_uts46_2784(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '۬.ࢢ𐹫ټ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '۬.ࢢ𐹫ټ', strict=True)
+
+ def test_uts46_2785(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8lb.xn--1ib31ily45b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8lb.xn--1ib31ily45b', strict=True)
+
+ def test_uts46_2790(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴣ𐹻.\u200c𝪣≮\U000e0a49', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴣ𐹻.\u200c𝪣≮\U000e0a49', strict=True)
+
+ def test_uts46_2791(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴣ𐹻.\u200c𝪣≮\U000e0a49', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴣ𐹻.\u200c𝪣≮\U000e0a49', strict=True)
+
+ def test_uts46_2792(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴣ𐹻.\u200c𝪣≮\U000e0a49', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴣ𐹻.\u200c𝪣≮\U000e0a49', strict=True)
+
+ def test_uts46_2793(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴣ𐹻.\u200c𝪣≮\U000e0a49', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴣ𐹻.\u200c𝪣≮\U000e0a49', strict=True)
+
+ def test_uts46_2794(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rlj6323e.xn--gdh4944ob3x3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rlj6323e.xn--gdh4944ob3x3e', strict=True)
+
+ def test_uts46_2795(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rlj6323e.xn--0ugy6gn120eb103g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rlj6323e.xn--0ugy6gn120eb103g', strict=True)
+
+ def test_uts46_2796(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7nd8101k.xn--gdh4944ob3x3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7nd8101k.xn--gdh4944ob3x3e', strict=True)
+
+ def test_uts46_2797(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7nd8101k.xn--0ugy6gn120eb103g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7nd8101k.xn--0ugy6gn120eb103g', strict=True)
+
+ def test_uts46_2798(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟵隁⯮.᠍\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟵隁⯮.᠍\u200c', strict=True)
+
+ def test_uts46_2799(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9隁⯮.᠍\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9隁⯮.᠍\u200c', strict=True)
+
+ def test_uts46_2800(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-mfs8024b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-mfs8024b.', strict=True)
+
+ def test_uts46_2801(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9隁⯮.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9隁⯮.', strict=True)
+
+ def test_uts46_2802(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-mfs8024b.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-mfs8024b.xn--0ug', strict=True)
+
+ def test_uts46_2803(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒏𐹧。Ⴣ྄彦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒏𐹧。Ⴣ྄彦', strict=True)
+
+ def test_uts46_2804(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8.𐹧。Ⴣ྄彦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8.𐹧。Ⴣ྄彦', strict=True)
+
+ def test_uts46_2805(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8.𐹧。ⴣ྄彦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8.𐹧。ⴣ྄彦', strict=True)
+
+ def test_uts46_2806(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8.xn--fo0d.xn--3ed972m6o8a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8.xn--fo0d.xn--3ed972m6o8a', strict=True)
+
+ def test_uts46_2807(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒏𐹧。ⴣ྄彦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒏𐹧。ⴣ྄彦', strict=True)
+
+ def test_uts46_2808(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0sh2466f.xn--3ed972m6o8a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0sh2466f.xn--3ed972m6o8a', strict=True)
+
+ def test_uts46_2809(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8.xn--fo0d.xn--3ed15dt93o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8.xn--fo0d.xn--3ed15dt93o', strict=True)
+
+ def test_uts46_2810(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0sh2466f.xn--3ed15dt93o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0sh2466f.xn--3ed15dt93o', strict=True)
+
+ def test_uts46_2811(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-问\U0006cc14⒛。\u0604-\U0005c5c9橬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-问\U0006cc14⒛。\u0604-\U0005c5c9橬', strict=True)
+
+ def test_uts46_2812(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-问\U0006cc1420.。\u0604-\U0005c5c9橬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-问\U0006cc1420.。\u0604-\U0005c5c9橬', strict=True)
+
+ def test_uts46_2813(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---20-658jx1776d..xn----ykc7228efm46d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---20-658jx1776d..xn----ykc7228efm46d', strict=True)
+
+ def test_uts46_2814(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----hdpu849bhis3e.xn----ykc7228efm46d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----hdpu849bhis3e.xn----ykc7228efm46d', strict=True)
+
+ def test_uts46_2815(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮬႬ\u200c̥。𝟸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮬႬ\u200c̥。𝟸', strict=True)
+
+ def test_uts46_2816(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮬႬ\u200c̥。2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮬႬ\u200c̥。2', strict=True)
+
+ def test_uts46_2817(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮬⴌ\u200c̥。2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮬⴌ\u200c̥。2', strict=True)
+
+ def test_uts46_2818(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mta176jjjm.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mta176jjjm.c', strict=True)
+
+ def test_uts46_2819(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mta176j97cl2q.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mta176j97cl2q.c', strict=True)
+
+ def test_uts46_2820(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮬⴌ\u200c̥。𝟸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮬⴌ\u200c̥。𝟸', strict=True)
+
+ def test_uts46_2821(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mta930emri.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mta930emri.c', strict=True)
+
+ def test_uts46_2822(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mta930emribme.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mta930emribme.c', strict=True)
+
+ def test_uts46_2823(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '?。꠆٩\U000e04a9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '?。꠆٩\U000e04a9', strict=True)
+
+ def test_uts46_2824(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '?.xn--iib9583fusy0i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '?.xn--iib9583fusy0i', strict=True)
+
+ def test_uts46_2825(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄁͟⾶。₇︒눇≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄁͟⾶。₇︒눇≮', strict=True)
+
+ def test_uts46_2826(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄁͟⾶。₇︒눇≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄁͟⾶。₇︒눇≮', strict=True)
+
+ def test_uts46_2827(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄁͟飛。7。눇≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄁͟飛。7。눇≮', strict=True)
+
+ def test_uts46_2828(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄁͟飛。7。눇≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄁͟飛。7。눇≮', strict=True)
+
+ def test_uts46_2829(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ua0567e.7.xn--gdh6767c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ua0567e.7.xn--gdh6767c', strict=True)
+
+ def test_uts46_2830(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ua0567e.xn--7-ngou006d1ttc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ua0567e.xn--7-ngou006d1ttc', strict=True)
+
+ def test_uts46_2831(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c︉𐹴\u200d.\u200c⿃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c︉𐹴\u200d.\u200c⿃', strict=True)
+
+ def test_uts46_2832(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c︉𐹴\u200d.\u200c鳥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c︉𐹴\u200d.\u200c鳥', strict=True)
+
+ def test_uts46_2833(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--so0d.xn--6x6a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--so0d.xn--6x6a', strict=True)
+
+ def test_uts46_2834(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugc6024p.xn--0ug1920c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugc6024p.xn--0ug1920c', strict=True)
+
+ def test_uts46_2835(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🍮.\u200d\U000e05d2𐦁𝨝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🍮.\u200d\U000e05d2𐦁𝨝', strict=True)
+
+ def test_uts46_2836(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🍮.\u200d\U000e05d2𐦁𝨝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🍮.\u200d\U000e05d2𐦁𝨝', strict=True)
+
+ def test_uts46_2837(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lj8h.xn--ln9ci476aqmr2g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lj8h.xn--ln9ci476aqmr2g', strict=True)
+
+ def test_uts46_2838(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lj8h.xn--1ug6603gr1pfwq37h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lj8h.xn--1ug6603gr1pfwq37h', strict=True)
+
+ def test_uts46_2839(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽृ.𞤓\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽृ.𞤓\u200d', strict=True)
+
+ def test_uts46_2840(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽृ.𞤵\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽृ.𞤵\u200d', strict=True)
+
+ def test_uts46_2841(self):
+ self.assertEqual(idna.decode('xn--2ib43l.xn--te6h', uts46=True, strict=True), 'ٽृ.𞤵')
+ self.assertEqual(idna.encode('xn--2ib43l.xn--te6h', uts46=True, strict=True), b'xn--2ib43l.xn--te6h')
+
+ def test_uts46_2842(self):
+ self.assertEqual(idna.decode('ٽृ.𞤵', uts46=True, strict=True), 'ٽृ.𞤵')
+ self.assertEqual(idna.encode('ٽृ.𞤵', uts46=True, strict=True), b'xn--2ib43l.xn--te6h')
+
+ def test_uts46_2843(self):
+ self.assertEqual(idna.decode('ٽृ.𞤓', uts46=True, strict=True), 'ٽृ.𞤵')
+ self.assertEqual(idna.encode('ٽृ.𞤓', uts46=True, strict=True), b'xn--2ib43l.xn--te6h')
+
+ def test_uts46_2844(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2ib43l.xn--1ugy711p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2ib43l.xn--1ugy711p', strict=True)
+
+ def test_uts46_2845(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٤੍-.\U000e573d္\U00066990', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٤੍-.\U000e573d္\U00066990', strict=True)
+
+ def test_uts46_2846(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٤੍-.\U000e573d္\U00066990', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٤੍-.\U000e573d္\U00066990', strict=True)
+
+ def test_uts46_2847(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gqc711a.xn--9jd88234f3qm0b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gqc711a.xn--9jd88234f3qm0b', strict=True)
+
+ def test_uts46_2848(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4်-𐹸。ꨩ\u200c𐹴≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4်-𐹸。ꨩ\u200c𐹴≮', strict=True)
+
+ def test_uts46_2849(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4်-𐹸。ꨩ\u200c𐹴≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4်-𐹸。ꨩ\u200c𐹴≮', strict=True)
+
+ def test_uts46_2850(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4်-𐹸。ꨩ\u200c𐹴≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4်-𐹸。ꨩ\u200c𐹴≮', strict=True)
+
+ def test_uts46_2851(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4်-𐹸。ꨩ\u200c𐹴≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4်-𐹸。ꨩ\u200c𐹴≮', strict=True)
+
+ def test_uts46_2852(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4--e4j7831r.xn--gdh8754cz40c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4--e4j7831r.xn--gdh8754cz40c', strict=True)
+
+ def test_uts46_2853(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4--e4j7831r.xn--0ugy6gjy5sl3ud', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4--e4j7831r.xn--0ugy6gjy5sl3ud', strict=True)
+
+ def test_uts46_2854(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。ᅠ྄ྖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。ᅠ྄ྖ', strict=True)
+
+ def test_uts46_2855(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。ᅠ྄ྖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。ᅠ྄ྖ', strict=True)
+
+ def test_uts46_2856(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--3ed0b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--3ed0b', strict=True)
+
+ def test_uts46_2857(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--3ed0b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--3ed0b', strict=True)
+
+ def test_uts46_2858(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--3ed0b20h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--3ed0b20h', strict=True)
+
+ def test_uts46_2859(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--3ed0b20h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--3ed0b20h', strict=True)
+
+ def test_uts46_2860(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--3ed0by082k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--3ed0by082k', strict=True)
+
+ def test_uts46_2861(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--3ed0by082k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--3ed0by082k', strict=True)
+
+ def test_uts46_2862(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯\U0008d605.\u200d𐅼\U000b21db', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯\U0008d605.\u200d𐅼\U000b21db', strict=True)
+
+ def test_uts46_2863(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯\U0008d605.\u200d𐅼\U000b21db', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯\U0008d605.\u200d𐅼\U000b21db', strict=True)
+
+ def test_uts46_2864(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯\U0008d605.\u200d𐅼\U000b21db', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯\U0008d605.\u200d𐅼\U000b21db', strict=True)
+
+ def test_uts46_2865(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯\U0008d605.\u200d𐅼\U000b21db', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯\U0008d605.\u200d𐅼\U000b21db', strict=True)
+
+ def test_uts46_2866(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh84488f.xn--xy7cw2886b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh84488f.xn--xy7cw2886b', strict=True)
+
+ def test_uts46_2867(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh84488f.xn--1ug8099fbjp4e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh84488f.xn--1ug8099fbjp4e', strict=True)
+
+ def test_uts46_2868(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'فß𐰯。𝟕𐫫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'فß𐰯。𝟕𐫫', strict=True)
+
+ def test_uts46_2869(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'فß𐰯。7𐫫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'فß𐰯。7𐫫', strict=True)
+
+ def test_uts46_2870(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'فSS𐰯。7𐫫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'فSS𐰯。7𐫫', strict=True)
+
+ def test_uts46_2871(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'فss𐰯。7𐫫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'فss𐰯。7𐫫', strict=True)
+
+ def test_uts46_2872(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-jvd2339x.xn--7-mm5i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-jvd2339x.xn--7-mm5i', strict=True)
+
+ def test_uts46_2873(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca96ys96y.xn--7-mm5i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca96ys96y.xn--7-mm5i', strict=True)
+
+ def test_uts46_2874(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'فSS𐰯。𝟕𐫫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'فSS𐰯。𝟕𐫫', strict=True)
+
+ def test_uts46_2875(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'فss𐰯。𝟕𐫫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'فss𐰯。𝟕𐫫', strict=True)
+
+ def test_uts46_2876(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'فSs𐰯。7𐫫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'فSs𐰯。7𐫫', strict=True)
+
+ def test_uts46_2877(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'فSs𐰯。𝟕𐫫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'فSs𐰯。𝟕𐫫', strict=True)
+
+ def test_uts46_2878(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ßެާࢱ。𐭁\U00105b99𐹲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ßެާࢱ。𐭁\U00105b99𐹲', strict=True)
+
+ def test_uts46_2879(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SSެާࢱ。𐭁\U00105b99𐹲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SSެާࢱ。𐭁\U00105b99𐹲', strict=True)
+
+ def test_uts46_2880(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ssެާࢱ。𐭁\U00105b99𐹲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ssެާࢱ。𐭁\U00105b99𐹲', strict=True)
+
+ def test_uts46_2881(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ssެާࢱ。𐭁\U00105b99𐹲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ssެާࢱ。𐭁\U00105b99𐹲', strict=True)
+
+ def test_uts46_2882(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-9qet02k.xn--e09co8cr9861c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-9qet02k.xn--e09co8cr9861c', strict=True)
+
+ def test_uts46_2883(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca685aoa95h.xn--e09co8cr9861c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca685aoa95h.xn--e09co8cr9861c', strict=True)
+
+ def test_uts46_2884(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。\U000e0257⒌\U0001ebdb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。\U000e0257⒌\U0001ebdb', strict=True)
+
+ def test_uts46_2885(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。\U000e02575.\U0001ebdb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。\U000e02575.\U0001ebdb', strict=True)
+
+ def test_uts46_2886(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--5-zz21m.xn--6x6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--5-zz21m.xn--6x6h', strict=True)
+
+ def test_uts46_2887(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--xsh6367n1bi3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--xsh6367n1bi3e', strict=True)
+
+ def test_uts46_2888(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fς.-≮ﲫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fς.-≮ﲫ', strict=True)
+
+ def test_uts46_2889(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fς.-≮ﲫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fς.-≮ﲫ', strict=True)
+
+ def test_uts46_2890(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fς.-≮خج', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fς.-≮خج', strict=True)
+
+ def test_uts46_2891(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fς.-≮خج', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fς.-≮خج', strict=True)
+
+ def test_uts46_2892(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fΣ.-≮خج', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fΣ.-≮خج', strict=True)
+
+ def test_uts46_2893(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fΣ.-≮خج', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fΣ.-≮خج', strict=True)
+
+ def test_uts46_2894(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fσ.-≮خج', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fσ.-≮خج', strict=True)
+
+ def test_uts46_2895(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fσ.-≮خج', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fσ.-≮خج', strict=True)
+
+ def test_uts46_2896(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa92520c.xn----9mcf1400a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa92520c.xn----9mcf1400a', strict=True)
+
+ def test_uts46_2897(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa13520c.xn----9mcf1400a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa13520c.xn----9mcf1400a', strict=True)
+
+ def test_uts46_2898(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fΣ.-≮ﲫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fΣ.-≮ﲫ', strict=True)
+
+ def test_uts46_2899(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fΣ.-≮ﲫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fΣ.-≮ﲫ', strict=True)
+
+ def test_uts46_2900(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fσ.-≮ﲫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fσ.-≮ﲫ', strict=True)
+
+ def test_uts46_2901(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003c38fσ.-≮ﲫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003c38fσ.-≮ﲫ', strict=True)
+
+ def test_uts46_2902(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡗࢸܙ.\U00054914\U000e06d9్ﰾ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡗࢸܙ.\U00054914\U000e06d9్ﰾ', strict=True)
+
+ def test_uts46_2903(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡗࢸܙ.\U00054914\U000e06d9్كي', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡗࢸܙ.\U00054914\U000e06d9్كي', strict=True)
+
+ def test_uts46_2904(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jnb34fs003a.xn--fhbo927bk128mpi24d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jnb34fs003a.xn--fhbo927bk128mpi24d', strict=True)
+
+ def test_uts46_2905(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐠰ࢷ𞤌𐫭。𐋦៍𝩃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐠰ࢷ𞤌𐫭。𐋦៍𝩃', strict=True)
+
+ def test_uts46_2906(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐠰ࢷ𞤮𐫭。𐋦៍𝩃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐠰ࢷ𞤮𐫭。𐋦៍𝩃', strict=True)
+
+ def test_uts46_2907(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dzb5191kezbrw47a.xn--p4e3841jz9tf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dzb5191kezbrw47a.xn--p4e3841jz9tf', strict=True)
+
+ def test_uts46_2908(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐠰ࢷ𞤮𐫭.𐋦៍𝩃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐠰ࢷ𞤮𐫭.𐋦៍𝩃', strict=True)
+
+ def test_uts46_2909(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐠰ࢷ𞤌𐫭.𐋦៍𝩃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐠰ࢷ𞤌𐫭.𐋦៍𝩃', strict=True)
+
+ def test_uts46_2910(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₂㘷--。ۓ\u200c𐫆𑖿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₂㘷--。ۓ\u200c𐫆𑖿', strict=True)
+
+ def test_uts46_2911(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₂㘷--。ۓ\u200c𐫆𑖿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₂㘷--。ۓ\u200c𐫆𑖿', strict=True)
+
+ def test_uts46_2912(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2㘷--。ۓ\u200c𐫆𑖿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2㘷--。ۓ\u200c𐫆𑖿', strict=True)
+
+ def test_uts46_2913(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2㘷--。ۓ\u200c𐫆𑖿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2㘷--。ۓ\u200c𐫆𑖿', strict=True)
+
+ def test_uts46_2914(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2---u58b.xn--jlb8024k14g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2---u58b.xn--jlb8024k14g', strict=True)
+
+ def test_uts46_2915(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2---u58b.xn--jlb820ku99nbgj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2---u58b.xn--jlb820ku99nbgj', strict=True)
+
+ def test_uts46_2916(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𘊻.ᡮح-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𘊻.ᡮح-', strict=True)
+
+ def test_uts46_2917(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𘊻.ᡮح-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𘊻.ᡮح-', strict=True)
+
+ def test_uts46_2918(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----bp5n.xn----bnc231l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----bp5n.xn----bnc231l', strict=True)
+
+ def test_uts46_2919(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c-ß。ᢣ𐹭ؿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c-ß。ᢣ𐹭ؿ', strict=True)
+
+ def test_uts46_2920(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c-ß。ᢣ𐹭ؿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c-ß。ᢣ𐹭ؿ', strict=True)
+
+ def test_uts46_2921(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c-SS。ᢣ𐹭ؿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c-SS。ᢣ𐹭ؿ', strict=True)
+
+ def test_uts46_2922(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c-ss。ᢣ𐹭ؿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c-ss。ᢣ𐹭ؿ', strict=True)
+
+ def test_uts46_2923(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c-Ss。ᢣ𐹭ؿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c-Ss。ᢣ𐹭ؿ', strict=True)
+
+ def test_uts46_2924(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ss.xn--bhb925glx3p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ss.xn--bhb925glx3p', strict=True)
+
+ def test_uts46_2925(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---ss-8m0a.xn--bhb925glx3p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---ss-8m0a.xn--bhb925glx3p', strict=True)
+
+ def test_uts46_2926(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qfa550v.xn--bhb925glx3p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qfa550v.xn--bhb925glx3p', strict=True)
+
+ def test_uts46_2927(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c-SS。ᢣ𐹭ؿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c-SS。ᢣ𐹭ؿ', strict=True)
+
+ def test_uts46_2928(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c-ss。ᢣ𐹭ؿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c-ss。ᢣ𐹭ؿ', strict=True)
+
+ def test_uts46_2929(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c-Ss。ᢣ𐹭ؿ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c-Ss。ᢣ𐹭ؿ', strict=True)
+
+ def test_uts46_2930(self):
+ self.assertEqual(idna.decode('꧐Ӏ᮪ࣶ.눵', uts46=True, strict=True), '꧐ӏ᮪ࣶ.눵')
+ self.assertEqual(idna.encode('꧐Ӏ᮪ࣶ.눵', uts46=True, strict=True), b'xn--s5a04sn4u297k.xn--2e1b')
+
+ def test_uts46_2931(self):
+ self.assertEqual(idna.decode('꧐Ӏ᮪ࣶ.눵', uts46=True, strict=True), '꧐ӏ᮪ࣶ.눵')
+ self.assertEqual(idna.encode('꧐Ӏ᮪ࣶ.눵', uts46=True, strict=True), b'xn--s5a04sn4u297k.xn--2e1b')
+
+ def test_uts46_2932(self):
+ self.assertEqual(idna.decode('꧐Ӏ᮪ࣶ.눵', uts46=True, strict=True), '꧐ӏ᮪ࣶ.눵')
+ self.assertEqual(idna.encode('꧐Ӏ᮪ࣶ.눵', uts46=True, strict=True), b'xn--s5a04sn4u297k.xn--2e1b')
+
+ def test_uts46_2933(self):
+ self.assertEqual(idna.decode('꧐Ӏ᮪ࣶ.눵', uts46=True, strict=True), '꧐ӏ᮪ࣶ.눵')
+ self.assertEqual(idna.encode('꧐Ӏ᮪ࣶ.눵', uts46=True, strict=True), b'xn--s5a04sn4u297k.xn--2e1b')
+
+ def test_uts46_2934(self):
+ self.assertEqual(idna.decode('꧐ӏ᮪ࣶ.눵', uts46=True, strict=True), '꧐ӏ᮪ࣶ.눵')
+ self.assertEqual(idna.encode('꧐ӏ᮪ࣶ.눵', uts46=True, strict=True), b'xn--s5a04sn4u297k.xn--2e1b')
+
+ def test_uts46_2935(self):
+ self.assertEqual(idna.decode('꧐ӏ᮪ࣶ.눵', uts46=True, strict=True), '꧐ӏ᮪ࣶ.눵')
+ self.assertEqual(idna.encode('꧐ӏ᮪ࣶ.눵', uts46=True, strict=True), b'xn--s5a04sn4u297k.xn--2e1b')
+
+ def test_uts46_2936(self):
+ self.assertEqual(idna.decode('xn--s5a04sn4u297k.xn--2e1b', uts46=True, strict=True), '꧐ӏ᮪ࣶ.눵')
+ self.assertEqual(idna.encode('xn--s5a04sn4u297k.xn--2e1b', uts46=True, strict=True), b'xn--s5a04sn4u297k.xn--2e1b')
+
+ def test_uts46_2937(self):
+ self.assertEqual(idna.decode('꧐ӏ᮪ࣶ.눵', uts46=True, strict=True), '꧐ӏ᮪ࣶ.눵')
+ self.assertEqual(idna.encode('꧐ӏ᮪ࣶ.눵', uts46=True, strict=True), b'xn--s5a04sn4u297k.xn--2e1b')
+
+ def test_uts46_2938(self):
+ self.assertEqual(idna.decode('꧐ӏ᮪ࣶ.눵', uts46=True, strict=True), '꧐ӏ᮪ࣶ.눵')
+ self.assertEqual(idna.encode('꧐ӏ᮪ࣶ.눵', uts46=True, strict=True), b'xn--s5a04sn4u297k.xn--2e1b')
+
+ def test_uts46_2939(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--d5a07sn4u297k.xn--2e1b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--d5a07sn4u297k.xn--2e1b', strict=True)
+
+ def test_uts46_2940(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꣪。\U0001613f𑆾󠇗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꣪。\U0001613f𑆾󠇗', strict=True)
+
+ def test_uts46_2941(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꣪。\U0001613f𑆾󠇗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꣪。\U0001613f𑆾󠇗', strict=True)
+
+ def test_uts46_2942(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3g9a.xn--ud1dz07k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3g9a.xn--ud1dz07k', strict=True)
+
+ def test_uts46_2943(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c74d3𑚳。\U00050dff≯⾇', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c74d3𑚳。\U00050dff≯⾇', strict=True)
+
+ def test_uts46_2944(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c74d3𑚳。\U00050dff≯⾇', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c74d3𑚳。\U00050dff≯⾇', strict=True)
+
+ def test_uts46_2945(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c74d3𑚳。\U00050dff≯舛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c74d3𑚳。\U00050dff≯舛', strict=True)
+
+ def test_uts46_2946(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c74d3𑚳。\U00050dff≯舛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c74d3𑚳。\U00050dff≯舛', strict=True)
+
+ def test_uts46_2947(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3e2d79770c.xn--hdh0088abyy1c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3e2d79770c.xn--hdh0088abyy1c', strict=True)
+
+ def test_uts46_2948(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫇١\u200c.\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫇١\u200c.\u200d\u200c', strict=True)
+
+ def test_uts46_2949(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫇١\u200c.\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫇١\u200c.\u200d\u200c', strict=True)
+
+ def test_uts46_2952(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9hb652kv99n.xn--0ugb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9hb652kv99n.xn--0ugb', strict=True)
+
+ def test_uts46_2953(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00061148砪≯ᢑ。≯𝩚\U00093d14\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00061148砪≯ᢑ。≯𝩚\U00093d14\u200c', strict=True)
+
+ def test_uts46_2954(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00061148砪≯ᢑ。≯𝩚\U00093d14\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00061148砪≯ᢑ。≯𝩚\U00093d14\u200c', strict=True)
+
+ def test_uts46_2955(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00061148砪≯ᢑ。≯𝩚\U00093d14\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00061148砪≯ᢑ。≯𝩚\U00093d14\u200c', strict=True)
+
+ def test_uts46_2956(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00061148砪≯ᢑ。≯𝩚\U00093d14\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00061148砪≯ᢑ。≯𝩚\U00093d14\u200c', strict=True)
+
+ def test_uts46_2957(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bbf561cf95e57y3e.xn--hdh0834o7mj6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bbf561cf95e57y3e.xn--hdh0834o7mj6b', strict=True)
+
+ def test_uts46_2958(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bbf561cf95e57y3e.xn--0ugz6gc910ejro8c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bbf561cf95e57y3e.xn--0ugz6gc910ejro8c', strict=True)
+
+ def test_uts46_2959(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴥ.𑄳㊸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴥ.𑄳㊸', strict=True)
+
+ def test_uts46_2960(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴥ.𑄳43', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴥ.𑄳43', strict=True)
+
+ def test_uts46_2961(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴥ.𑄳43', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴥ.𑄳43', strict=True)
+
+ def test_uts46_2962(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tlj.xn--43-274o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tlj.xn--43-274o', strict=True)
+
+ def test_uts46_2963(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴥ.𑄳㊸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴥ.𑄳㊸', strict=True)
+
+ def test_uts46_2964(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9nd.xn--43-274o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9nd.xn--43-274o', strict=True)
+
+ def test_uts46_2965(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟎٣。Ⴒᡇࣲ𐹠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟎٣。Ⴒᡇࣲ𐹠', strict=True)
+
+ def test_uts46_2966(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0٣。Ⴒᡇࣲ𐹠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0٣。Ⴒᡇࣲ𐹠', strict=True)
+
+ def test_uts46_2967(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '0٣。ⴒᡇࣲ𐹠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '0٣。ⴒᡇࣲ𐹠', strict=True)
+
+ def test_uts46_2968(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0-fqc.xn--10b369eivp359r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0-fqc.xn--10b369eivp359r', strict=True)
+
+ def test_uts46_2969(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟎٣。ⴒᡇࣲ𐹠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟎٣。ⴒᡇࣲ𐹠', strict=True)
+
+ def test_uts46_2970(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0-fqc.xn--10b180bnwgfy0z', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0-fqc.xn--10b180bnwgfy0z', strict=True)
+
+ def test_uts46_2971(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00057aa8󠄉ᅠྷ.\U000787b0꥓', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00057aa8󠄉ᅠྷ.\U000787b0꥓', strict=True)
+
+ def test_uts46_2972(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00057aa8󠄉ᅠྷ.\U000787b0꥓', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00057aa8󠄉ᅠྷ.\U000787b0꥓', strict=True)
+
+ def test_uts46_2973(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kgd72212e.xn--3j9au7544a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kgd72212e.xn--3j9au7544a', strict=True)
+
+ def test_uts46_2974(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kgd36f9z57y.xn--3j9au7544a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kgd36f9z57y.xn--3j9au7544a', strict=True)
+
+ def test_uts46_2975(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kgd7493jee34a.xn--3j9au7544a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kgd7493jee34a.xn--3j9au7544a', strict=True)
+
+ def test_uts46_2976(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ؘ.۳\u200c꥓', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ؘ.۳\u200c꥓', strict=True)
+
+ def test_uts46_2977(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6fb.xn--gmb0524f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6fb.xn--gmb0524f', strict=True)
+
+ def test_uts46_2978(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6fb.xn--gmb469jjf1h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6fb.xn--gmb469jjf1h', strict=True)
+
+ def test_uts46_2979(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡌ.︒ᢑ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡌ.︒ᢑ', strict=True)
+
+ def test_uts46_2980(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡌ.。ᢑ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡌ.。ᢑ', strict=True)
+
+ def test_uts46_2981(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--c8e..xn--bbf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--c8e..xn--bbf', strict=True)
+
+ def test_uts46_2982(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--c8e.xn--bbf9168i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--c8e.xn--bbf9168i', strict=True)
+
+ def test_uts46_2983(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑋪ၳ。\U0001ef67', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑋪ၳ。\U0001ef67', strict=True)
+
+ def test_uts46_2984(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑋪ၳ。\U0001ef67', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑋪ၳ。\U0001ef67', strict=True)
+
+ def test_uts46_2985(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xld7443k.xn--4o7h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xld7443k.xn--4o7h', strict=True)
+
+ def test_uts46_2986(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001edcf。ᠢ\U00093606', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001edcf。ᠢ\U00093606', strict=True)
+
+ def test_uts46_2987(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hd7h.xn--46e66060j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hd7h.xn--46e66060j', strict=True)
+
+ def test_uts46_2988(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑄳㴼.\u200c𐹡⃫\U0006bea6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑄳㴼.\u200c𐹡⃫\U0006bea6', strict=True)
+
+ def test_uts46_2989(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑄳㴼.\u200c𐹡⃫\U0006bea6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑄳㴼.\u200c𐹡⃫\U0006bea6', strict=True)
+
+ def test_uts46_2990(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iym9428c.xn--e1g3464g08p3b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iym9428c.xn--e1g3464g08p3b', strict=True)
+
+ def test_uts46_2991(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iym9428c.xn--0ug46a7218cllv0c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iym9428c.xn--0ug46a7218cllv0c', strict=True)
+
+ def test_uts46_2992(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00060edf𐹳𑈯。̝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00060edf𐹳𑈯。̝', strict=True)
+
+ def test_uts46_2993(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00060edf𐹳𑈯。̝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00060edf𐹳𑈯。̝', strict=True)
+
+ def test_uts46_2994(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ro0dw7dey96m.xn--eta', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ro0dw7dey96m.xn--eta', strict=True)
+
+ def test_uts46_2995(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢊ뾜\U000e0c74𑚶。࢝𐹥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢊ뾜\U000e0c74𑚶。࢝𐹥', strict=True)
+
+ def test_uts46_2996(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢊ뾜\U000e0c74𑚶。࢝𐹥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢊ뾜\U000e0c74𑚶。࢝𐹥', strict=True)
+
+ def test_uts46_2997(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--39e4566fjv8bwmt6n.xn--myb6415k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--39e4566fjv8bwmt6n.xn--myb6415k', strict=True)
+
+ def test_uts46_2998(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹥≠。𐋲\U000e09e0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹥≠。𐋲\U000e09e0\u200c', strict=True)
+
+ def test_uts46_2999(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹥≠。𐋲\U000e09e0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹥≠。𐋲\U000e09e0\u200c', strict=True)
+
+ def test_uts46_3000(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹥≠。𐋲\U000e09e0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹥≠。𐋲\U000e09e0\u200c', strict=True)
+
+ def test_uts46_3001(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹥≠。𐋲\U000e09e0\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹥≠。𐋲\U000e09e0\u200c', strict=True)
+
+ def test_uts46_3002(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch6704g.xn--m97cw2999c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch6704g.xn--m97cw2999c', strict=True)
+
+ def test_uts46_3003(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch6704g.xn--0ug3840g51u4g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch6704g.xn--0ug3840g51u4g', strict=True)
+
+ def test_uts46_3004(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟ\U00059be0्.\u200d꥓\U00010aa4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟ\U00059be0्.\u200d꥓\U00010aa4', strict=True)
+
+ def test_uts46_3005(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟ\U00059be0्.\u200d꥓\U00010aa4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟ\U00059be0्.\u200d꥓\U00010aa4', strict=True)
+
+ def test_uts46_3006(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b91514e.xn--3j9al95p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b91514e.xn--3j9al95p', strict=True)
+
+ def test_uts46_3007(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b91514e.xn--1ug6815co9wc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b91514e.xn--1ug6815co9wc', strict=True)
+
+ def test_uts46_3008(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b542bb085j.xn--3j9al95p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b542bb085j.xn--3j9al95p', strict=True)
+
+ def test_uts46_3009(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n3b542bb085j.xn--1ug6815co9wc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n3b542bb085j.xn--1ug6815co9wc', strict=True)
+
+ def test_uts46_3010(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008c2d4󠆎󠆗𑲕。≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008c2d4󠆎󠆗𑲕。≮', strict=True)
+
+ def test_uts46_3011(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008c2d4󠆎󠆗𑲕。≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008c2d4󠆎󠆗𑲕。≮', strict=True)
+
+ def test_uts46_3012(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4m3dv4354a.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4m3dv4354a.xn--gdh', strict=True)
+
+ def test_uts46_3013(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆦.ࣣ暀≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆦.ࣣ暀≠', strict=True)
+
+ def test_uts46_3014(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆦.ࣣ暀≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆦.ࣣ暀≠', strict=True)
+
+ def test_uts46_3015(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--m0b461k3g2c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--m0b461k3g2c', strict=True)
+
+ def test_uts46_3016(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐡤꯭。ﴰ\U0009c585ᷰ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐡤꯭。ﴰ\U0009c585ᷰ', strict=True)
+
+ def test_uts46_3017(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐡤꯭。شم\U0009c585ᷰ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐡤꯭。شم\U0009c585ᷰ', strict=True)
+
+ def test_uts46_3018(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--429ak76o.xn--zgb8a701kox37t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--429ak76o.xn--zgb8a701kox37t', strict=True)
+
+ def test_uts46_3019(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝉃\u200d⒈。Ⴌ\U0001ec53', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝉃\u200d⒈。Ⴌ\U0001ec53', strict=True)
+
+ def test_uts46_3020(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝉃\u200d1.。Ⴌ\U0001ec53', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝉃\u200d1.。Ⴌ\U0001ec53', strict=True)
+
+ def test_uts46_3021(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝉃\u200d1.。ⴌ\U0001ec53', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝉃\u200d1.。ⴌ\U0001ec53', strict=True)
+
+ def test_uts46_3022(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-px8q..xn--3kj4524l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-px8q..xn--3kj4524l', strict=True)
+
+ def test_uts46_3023(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-tgn9827q..xn--3kj4524l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-tgn9827q..xn--3kj4524l', strict=True)
+
+ def test_uts46_3024(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝉃\u200d⒈。ⴌ\U0001ec53', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝉃\u200d⒈。ⴌ\U0001ec53', strict=True)
+
+ def test_uts46_3025(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tshz828m.xn--3kj4524l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tshz828m.xn--3kj4524l', strict=True)
+
+ def test_uts46_3026(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug68oq348b.xn--3kj4524l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug68oq348b.xn--3kj4524l', strict=True)
+
+ def test_uts46_3027(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-px8q..xn--knd8464v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-px8q..xn--knd8464v', strict=True)
+
+ def test_uts46_3028(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-tgn9827q..xn--knd8464v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-tgn9827q..xn--knd8464v', strict=True)
+
+ def test_uts46_3029(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tshz828m.xn--knd8464v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tshz828m.xn--knd8464v', strict=True)
+
+ def test_uts46_3030(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug68oq348b.xn--knd8464v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug68oq348b.xn--knd8464v', strict=True)
+
+ def test_uts46_3031(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e08d9੍𱫘𞤸.ς\U00075bde\U00108c14', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e08d9੍𱫘𞤸.ς\U00075bde\U00108c14', strict=True)
+
+ def test_uts46_3032(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e08d9੍𱫘𞤖.Σ\U00075bde\U00108c14', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e08d9੍𱫘𞤖.Σ\U00075bde\U00108c14', strict=True)
+
+ def test_uts46_3033(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e08d9੍𱫘𞤸.σ\U00075bde\U00108c14', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e08d9੍𱫘𞤸.σ\U00075bde\U00108c14', strict=True)
+
+ def test_uts46_3034(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e08d9੍𱫘𞤖.σ\U00075bde\U00108c14', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e08d9੍𱫘𞤖.σ\U00075bde\U00108c14', strict=True)
+
+ def test_uts46_3035(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ybc0236vjvxgt5q0g.xn--4xa82737giye6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ybc0236vjvxgt5q0g.xn--4xa82737giye6b', strict=True)
+
+ def test_uts46_3036(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e08d9੍𱫘𞤖.ς\U00075bde\U00108c14', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e08d9੍𱫘𞤖.ς\U00075bde\U00108c14', strict=True)
+
+ def test_uts46_3037(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ybc0236vjvxgt5q0g.xn--3xa03737giye6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ybc0236vjvxgt5q0g.xn--3xa03737giye6b', strict=True)
+
+ def test_uts46_3038(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e08d9੍𱫘𞤸.Σ\U00075bde\U00108c14', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e08d9੍𱫘𞤸.Σ\U00075bde\U00108c14', strict=True)
+
+ def test_uts46_3039(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߓ。\u200c𐫀\U0009eb71', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߓ。\u200c𐫀\U0009eb71', strict=True)
+
+ def test_uts46_3040(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--usb.xn--pw9ci1099a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--usb.xn--pw9ci1099a', strict=True)
+
+ def test_uts46_3041(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--usb.xn--0ug9553gm3v5d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--usb.xn--0ug9553gm3v5d', strict=True)
+
+ def test_uts46_3042(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᰮ𞀝.֦ꡟ𞤕󠆖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᰮ𞀝.֦ꡟ𞤕󠆖', strict=True)
+
+ def test_uts46_3043(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᰮ𞀝.֦ꡟ𞤷󠆖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᰮ𞀝.֦ꡟ𞤷󠆖', strict=True)
+
+ def test_uts46_3044(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--q1f4493q.xn--xcb8244fifvj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--q1f4493q.xn--xcb8244fifvj', strict=True)
+
+ def test_uts46_3045(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䂹\U000fe585𐋦.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䂹\U000fe585𐋦.\u200d', strict=True)
+
+ def test_uts46_3046(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䂹\U000fe585𐋦.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䂹\U000fe585𐋦.\u200d', strict=True)
+
+ def test_uts46_3047(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0on3543c5981i.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0on3543c5981i.', strict=True)
+
+ def test_uts46_3048(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0on3543c5981i.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0on3543c5981i.xn--1ug', strict=True)
+
+ def test_uts46_3049(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꧀\u200c𐹲\u200c。ݧ🄉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꧀\u200c𐹲\u200c。ݧ🄉', strict=True)
+
+ def test_uts46_3050(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꧀\u200c𐹲\u200c。ݧ8,', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꧀\u200c𐹲\u200c。ݧ8,', strict=True)
+
+ def test_uts46_3051(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7m9an32q.xn--8,-qle', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7m9an32q.xn--8,-qle', strict=True)
+
+ def test_uts46_3052(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0uga8686hdgvd.xn--8,-qle', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0uga8686hdgvd.xn--8,-qle', strict=True)
+
+ def test_uts46_3053(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7m9an32q.xn--rpb6081w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7m9an32q.xn--rpb6081w', strict=True)
+
+ def test_uts46_3054(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0uga8686hdgvd.xn--rpb6081w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0uga8686hdgvd.xn--rpb6081w', strict=True)
+
+ def test_uts46_3055(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒。Ⴃ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒。Ⴃ≯', strict=True)
+
+ def test_uts46_3056(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒。Ⴃ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒。Ⴃ≯', strict=True)
+
+ def test_uts46_3057(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。。Ⴃ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。。Ⴃ≯', strict=True)
+
+ def test_uts46_3058(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。。Ⴃ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。。Ⴃ≯', strict=True)
+
+ def test_uts46_3059(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。。ⴃ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。。ⴃ≯', strict=True)
+
+ def test_uts46_3060(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。。ⴃ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。。ⴃ≯', strict=True)
+
+ def test_uts46_3061(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..xn--hdh782b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..xn--hdh782b', strict=True)
+
+ def test_uts46_3062(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒。ⴃ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒。ⴃ≯', strict=True)
+
+ def test_uts46_3063(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒。ⴃ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒。ⴃ≯', strict=True)
+
+ def test_uts46_3064(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86c.xn--hdh782b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86c.xn--hdh782b', strict=True)
+
+ def test_uts46_3065(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..xn--bnd622g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..xn--bnd622g', strict=True)
+
+ def test_uts46_3066(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86c.xn--bnd622g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86c.xn--bnd622g', strict=True)
+
+ def test_uts46_3067(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹮。\U000e08bc\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹮。\U000e08bc\u200d', strict=True)
+
+ def test_uts46_3068(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹮。\U000e08bc\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹮。\U000e08bc\u200d', strict=True)
+
+ def test_uts46_3069(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mo0d.xn--wy46e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mo0d.xn--wy46e', strict=True)
+
+ def test_uts46_3070(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mo0d.xn--1ug18431l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mo0d.xn--1ug18431l', strict=True)
+
+ def test_uts46_3071(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴞ𐹨。︒ݽ\u200dႯ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴞ𐹨。︒ݽ\u200dႯ', strict=True)
+
+ def test_uts46_3072(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴞ𐹨。。ݽ\u200dႯ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴞ𐹨。。ݽ\u200dႯ', strict=True)
+
+ def test_uts46_3073(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴞ𐹨。。ݽ\u200dⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴞ𐹨。。ݽ\u200dⴏ', strict=True)
+
+ def test_uts46_3074(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴞ𐹨。。ݽ\u200dⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴞ𐹨。。ݽ\u200dⴏ', strict=True)
+
+ def test_uts46_3075(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mlju223e..xn--eqb053q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mlju223e..xn--eqb053q', strict=True)
+
+ def test_uts46_3076(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mlju223e..xn--eqb096jpgj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mlju223e..xn--eqb096jpgj', strict=True)
+
+ def test_uts46_3077(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴞ𐹨。︒ݽ\u200dⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴞ𐹨。︒ݽ\u200dⴏ', strict=True)
+
+ def test_uts46_3078(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴞ𐹨。︒ݽ\u200dⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴞ𐹨。︒ݽ\u200dⴏ', strict=True)
+
+ def test_uts46_3079(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mlju223e.xn--eqb053qjk7l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mlju223e.xn--eqb053qjk7l', strict=True)
+
+ def test_uts46_3080(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mlju223e.xn--eqb096jpgj9y7r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mlju223e.xn--eqb096jpgj9y7r', strict=True)
+
+ def test_uts46_3081(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd0990k..xn--eqb053q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd0990k..xn--eqb053q', strict=True)
+
+ def test_uts46_3082(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd0990k..xn--eqb096jpgj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd0990k..xn--eqb096jpgj', strict=True)
+
+ def test_uts46_3083(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd0990k..xn--eqb228b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd0990k..xn--eqb228b', strict=True)
+
+ def test_uts46_3084(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd0990k..xn--eqb228bgzm', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd0990k..xn--eqb228bgzm', strict=True)
+
+ def test_uts46_3085(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd0990k.xn--eqb053qjk7l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd0990k.xn--eqb053qjk7l', strict=True)
+
+ def test_uts46_3086(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd0990k.xn--eqb096jpgj9y7r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd0990k.xn--eqb096jpgj9y7r', strict=True)
+
+ def test_uts46_3087(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd0990k.xn--eqb228b583r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd0990k.xn--eqb228b583r', strict=True)
+
+ def test_uts46_3088(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd0990k.xn--eqb228bgzmvp0t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd0990k.xn--eqb228bgzmvp0t', strict=True)
+
+ def test_uts46_3089(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႦ𝟹。-⃒-ߑ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႦ𝟹。-⃒-ߑ', strict=True)
+
+ def test_uts46_3090(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႦ3。-⃒-ߑ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႦ3。-⃒-ߑ', strict=True)
+
+ def test_uts46_3091(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴆ3。-⃒-ߑ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴆ3。-⃒-ߑ', strict=True)
+
+ def test_uts46_3092(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-lvs.xn-----vue617w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-lvs.xn-----vue617w', strict=True)
+
+ def test_uts46_3093(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-rgnv99c.xn-----vue617w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-rgnv99c.xn-----vue617w', strict=True)
+
+ def test_uts46_3094(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴆ𝟹。-⃒-ߑ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴆ𝟹。-⃒-ߑ', strict=True)
+
+ def test_uts46_3095(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-i0g.xn-----vue617w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-i0g.xn-----vue617w', strict=True)
+
+ def test_uts46_3096(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-i0g939i.xn-----vue617w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-i0g939i.xn-----vue617w', strict=True)
+
+ def test_uts46_3097(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '箃Ⴡ-\U000e005d。≠-🤖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '箃Ⴡ-\U000e005d。≠-🤖', strict=True)
+
+ def test_uts46_3098(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '箃Ⴡ-\U000e005d。≠-🤖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '箃Ⴡ-\U000e005d。≠-🤖', strict=True)
+
+ def test_uts46_3099(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '箃Ⴡ-\U000e005d。≠-🤖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '箃Ⴡ-\U000e005d。≠-🤖', strict=True)
+
+ def test_uts46_3100(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '箃Ⴡ-\U000e005d。≠-🤖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '箃Ⴡ-\U000e005d。≠-🤖', strict=True)
+
+ def test_uts46_3101(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '箃ⴡ-\U000e005d。≠-🤖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '箃ⴡ-\U000e005d。≠-🤖', strict=True)
+
+ def test_uts46_3102(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '箃ⴡ-\U000e005d。≠-🤖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '箃ⴡ-\U000e005d。≠-🤖', strict=True)
+
+ def test_uts46_3103(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----4wsr321ay823p.xn----tfot873s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----4wsr321ay823p.xn----tfot873s', strict=True)
+
+ def test_uts46_3104(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '箃ⴡ-\U000e005d。≠-🤖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '箃ⴡ-\U000e005d。≠-🤖', strict=True)
+
+ def test_uts46_3105(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '箃ⴡ-\U000e005d。≠-🤖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '箃ⴡ-\U000e005d。≠-🤖', strict=True)
+
+ def test_uts46_3106(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----11g3013fy8x5m.xn----tfot873s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----11g3013fy8x5m.xn----tfot873s', strict=True)
+
+ def test_uts46_3107(self):
+ self.assertEqual(idna.decode('ߥ.ڵ', uts46=True, strict=True), 'ߥ.ڵ')
+ self.assertEqual(idna.encode('ߥ.ڵ', uts46=True, strict=True), b'xn--dtb.xn--okb')
+
+ def test_uts46_3108(self):
+ self.assertEqual(idna.decode('xn--dtb.xn--okb', uts46=True, strict=True), 'ߥ.ڵ')
+ self.assertEqual(idna.encode('xn--dtb.xn--okb', uts46=True, strict=True), b'xn--dtb.xn--okb')
+
+ def test_uts46_3109(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200d.𞤿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200d.𞤿', strict=True)
+
+ def test_uts46_3110(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200d.𞤝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200d.𞤝', strict=True)
+
+ def test_uts46_3111(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--3e6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--3e6h', strict=True)
+
+ def test_uts46_3112(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugc.xn--3e6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugc.xn--3e6h', strict=True)
+
+ def test_uts46_3113(self):
+ self.assertEqual(idna.decode('xn--3e6h', uts46=True, strict=True), '𞤿')
+ self.assertEqual(idna.encode('xn--3e6h', uts46=True, strict=True), b'xn--3e6h')
+
+ def test_uts46_3114(self):
+ self.assertEqual(idna.decode('𞤿', uts46=True, strict=True), '𞤿')
+ self.assertEqual(idna.encode('𞤿', uts46=True, strict=True), b'xn--3e6h')
+
+ def test_uts46_3115(self):
+ self.assertEqual(idna.decode('𞤝', uts46=True, strict=True), '𞤿')
+ self.assertEqual(idna.encode('𞤝', uts46=True, strict=True), b'xn--3e6h')
+
+ def test_uts46_3116(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🜑𐹧ع.ς𑍍蜹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🜑𐹧ع.ς𑍍蜹', strict=True)
+
+ def test_uts46_3117(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🜑𐹧ع.Σ𑍍蜹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🜑𐹧ع.Σ𑍍蜹', strict=True)
+
+ def test_uts46_3118(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🜑𐹧ع.σ𑍍蜹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🜑𐹧ع.σ𑍍蜹', strict=True)
+
+ def test_uts46_3119(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4gb3736kk4zf.xn--4xa2248dy27d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4gb3736kk4zf.xn--4xa2248dy27d', strict=True)
+
+ def test_uts46_3120(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4gb3736kk4zf.xn--3xa4248dy27d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4gb3736kk4zf.xn--3xa4248dy27d', strict=True)
+
+ def test_uts46_3121(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ab810ス\U001067e4٩.\U000da0df', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ab810ス\U001067e4٩.\U000da0df', strict=True)
+
+ def test_uts46_3122(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ab810ス\U001067e4٩.\U000da0df', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ab810ス\U001067e4٩.\U000da0df', strict=True)
+
+ def test_uts46_3123(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iib777sp230oo708a.xn--7824e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iib777sp230oo708a.xn--7824e', strict=True)
+
+ def test_uts46_3124(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪣\U0009585d.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪣\U0009585d.֚?ۂ', strict=True)
+
+ def test_uts46_3125(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪣\U0009585d.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪣\U0009585d.֚?ۂ', strict=True)
+
+ def test_uts46_3126(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪣\U0009585d.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪣\U0009585d.֚?ۂ', strict=True)
+
+ def test_uts46_3127(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪣\U0009585d.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪣\U0009585d.֚?ۂ', strict=True)
+
+ def test_uts46_3128(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8c3hu7971a.xn--?-wec30g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8c3hu7971a.xn--?-wec30g', strict=True)
+
+ def test_uts46_3129(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8c3hu7971a.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8c3hu7971a.֚?ۂ', strict=True)
+
+ def test_uts46_3130(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8c3hu7971a.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8c3hu7971a.֚?ۂ', strict=True)
+
+ def test_uts46_3131(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--8C3HU7971A.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--8C3HU7971A.֚?ۂ', strict=True)
+
+ def test_uts46_3132(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--8C3HU7971A.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--8C3HU7971A.֚?ۂ', strict=True)
+
+ def test_uts46_3133(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--8c3hu7971a.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--8c3hu7971a.֚?ۂ', strict=True)
+
+ def test_uts46_3134(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--8c3hu7971a.֚?ۂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--8c3hu7971a.֚?ۂ', strict=True)
+
+ def test_uts46_3135(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٠\U000aa4f5\u200c。ݗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٠\U000aa4f5\u200c。ݗ', strict=True)
+
+ def test_uts46_3136(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8hb82030l.xn--bpb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8hb82030l.xn--bpb', strict=True)
+
+ def test_uts46_3137(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8hb852ke991q.xn--bpb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8hb852ke991q.xn--bpb', strict=True)
+
+ def test_uts46_3138(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '်\u200d\u200c。-\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '်\u200d\u200c。-\u200c', strict=True)
+
+ def test_uts46_3139(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bkd.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bkd.-', strict=True)
+
+ def test_uts46_3140(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bkd412fca.xn----sgn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bkd412fca.xn----sgn', strict=True)
+
+ def test_uts46_3141(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒。᭄ᡉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒。᭄ᡉ', strict=True)
+
+ def test_uts46_3142(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。。᭄ᡉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。。᭄ᡉ', strict=True)
+
+ def test_uts46_3143(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..xn--87e93m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..xn--87e93m', strict=True)
+
+ def test_uts46_3144(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86c.xn--87e93m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86c.xn--87e93m', strict=True)
+
+ def test_uts46_3145(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݘß。ጫᢊݨ𝟐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݘß。ጫᢊݨ𝟐', strict=True)
+
+ def test_uts46_3146(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݘß。ጫᢊݨ2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݘß。ጫᢊݨ2', strict=True)
+
+ def test_uts46_3147(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݘSS。ጫᢊݨ2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݘSS。ጫᢊݨ2', strict=True)
+
+ def test_uts46_3148(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݘss。ጫᢊݨ2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݘss。ጫᢊݨ2', strict=True)
+
+ def test_uts46_3149(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-gke.xn--2-b5c641gfmf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-gke.xn--2-b5c641gfmf', strict=True)
+
+ def test_uts46_3150(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca724a.xn--2-b5c641gfmf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca724a.xn--2-b5c641gfmf', strict=True)
+
+ def test_uts46_3151(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݘSS。ጫᢊݨ𝟐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݘSS。ጫᢊݨ𝟐', strict=True)
+
+ def test_uts46_3152(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݘss。ጫᢊݨ𝟐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݘss。ጫᢊݨ𝟐', strict=True)
+
+ def test_uts46_3153(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݘSs。ጫᢊݨ2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݘSs。ጫᢊݨ2', strict=True)
+
+ def test_uts46_3154(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݘSs。ጫᢊݨ𝟐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݘSs。ጫᢊݨ𝟐', strict=True)
+
+ def test_uts46_3155(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '߃\U0001ed87ᚲ.ं͓𝟚্', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '߃\U0001ed87ᚲ.ं͓𝟚্', strict=True)
+
+ def test_uts46_3156(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '߃\U0001ed87ᚲ.ं͓2্', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '߃\U0001ed87ᚲ.ं͓2্', strict=True)
+
+ def test_uts46_3157(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--esb067enh07a.xn--2-lgb874bjxa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--esb067enh07a.xn--2-lgb874bjxa', strict=True)
+
+ def test_uts46_3158(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-᮫︒\u200d.\U00052d88\U00065e53', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-᮫︒\u200d.\U00052d88\U00065e53', strict=True)
+
+ def test_uts46_3159(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-᮫。\u200d.\U00052d88\U00065e53', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-᮫。\u200d.\U00052d88\U00065e53', strict=True)
+
+ def test_uts46_3160(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qml..xn--x50zy803a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qml..xn--x50zy803a', strict=True)
+
+ def test_uts46_3161(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qml.xn--1ug.xn--x50zy803a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qml.xn--1ug.xn--x50zy803a', strict=True)
+
+ def test_uts46_3162(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qml1407i.xn--x50zy803a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qml1407i.xn--x50zy803a', strict=True)
+
+ def test_uts46_3163(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qmlv7tw180a.xn--x50zy803a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qmlv7tw180a.xn--x50zy803a', strict=True)
+
+ def test_uts46_3164(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e09ae.≯𞀆', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e09ae.≯𞀆', strict=True)
+
+ def test_uts46_3165(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e09ae.≯𞀆', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e09ae.≯𞀆', strict=True)
+
+ def test_uts46_3166(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t546e.xn--hdh5166o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t546e.xn--hdh5166o', strict=True)
+
+ def test_uts46_3167(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𑄳\U000e0297𐹩。\U0001ebb1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𑄳\U000e0297𐹩。\U0001ebb1', strict=True)
+
+ def test_uts46_3168(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----p26i72em2894c.xn--zw6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----p26i72em2894c.xn--zw6h', strict=True)
+
+ def test_uts46_3169(self):
+ self.assertEqual(idna.decode('ڹ.ᡳᅟ', uts46=True, strict=True), 'ڹ.ᡳ')
+ self.assertEqual(idna.encode('ڹ.ᡳᅟ', uts46=True, strict=True), b'xn--skb.xn--g9e')
+
+ def test_uts46_3170(self):
+ self.assertEqual(idna.decode('ڹ.ᡳᅟ', uts46=True, strict=True), 'ڹ.ᡳ')
+ self.assertEqual(idna.encode('ڹ.ᡳᅟ', uts46=True, strict=True), b'xn--skb.xn--g9e')
+
+ def test_uts46_3171(self):
+ self.assertEqual(idna.decode('xn--skb.xn--g9e', uts46=True, strict=True), 'ڹ.ᡳ')
+ self.assertEqual(idna.encode('xn--skb.xn--g9e', uts46=True, strict=True), b'xn--skb.xn--g9e')
+
+ def test_uts46_3172(self):
+ self.assertEqual(idna.decode('ڹ.ᡳ', uts46=True, strict=True), 'ڹ.ᡳ')
+ self.assertEqual(idna.encode('ڹ.ᡳ', uts46=True, strict=True), b'xn--skb.xn--g9e')
+
+ def test_uts46_3173(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--skb.xn--osd737a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--skb.xn--osd737a', strict=True)
+
+ def test_uts46_3174(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㨛𘱎.︒𝟕ഁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㨛𘱎.︒𝟕ഁ', strict=True)
+
+ def test_uts46_3175(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㨛𘱎.。7ഁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㨛𘱎.。7ഁ', strict=True)
+
+ def test_uts46_3176(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mbm8237g..xn--7-7hf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mbm8237g..xn--7-7hf', strict=True)
+
+ def test_uts46_3177(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mbm8237g.xn--7-7hf1526p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mbm8237g.xn--7-7hf1526p', strict=True)
+
+ def test_uts46_3178(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤣≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤣≮', strict=True)
+
+ def test_uts46_3179(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤣≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤣≮', strict=True)
+
+ def test_uts46_3180(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤣≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤣≮', strict=True)
+
+ def test_uts46_3181(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤣≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤣≮', strict=True)
+
+ def test_uts46_3182(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤁≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤁≮', strict=True)
+
+ def test_uts46_3183(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤁≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤁≮', strict=True)
+
+ def test_uts46_3184(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----dxc06304e.xn--gdh5020pk5c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----dxc06304e.xn--gdh5020pk5c', strict=True)
+
+ def test_uts46_3185(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤁≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤁≮', strict=True)
+
+ def test_uts46_3186(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤁≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u06dd\U0003bc67-。\U0001edc1\u2064𞤁≮', strict=True)
+
+ def test_uts46_3187(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\u200c꫶ᢥ.⊶ჁႶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\u200c꫶ᢥ.⊶ჁႶ', strict=True)
+
+ def test_uts46_3188(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\u200c꫶ᢥ.⊶ჁႶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\u200c꫶ᢥ.⊶ჁႶ', strict=True)
+
+ def test_uts46_3189(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\u200c꫶ᢥ.⊶ⴡⴖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\u200c꫶ᢥ.⊶ⴡⴖ', strict=True)
+
+ def test_uts46_3190(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS\u200c꫶ᢥ.⊶ჁႶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS\u200c꫶ᢥ.⊶ჁႶ', strict=True)
+
+ def test_uts46_3191(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss\u200c꫶ᢥ.⊶ⴡⴖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss\u200c꫶ᢥ.⊶ⴡⴖ', strict=True)
+
+ def test_uts46_3192(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss\u200c꫶ᢥ.⊶Ⴡⴖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss\u200c꫶ᢥ.⊶Ⴡⴖ', strict=True)
+
+ def test_uts46_3193(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-4epx629f.xn--ifh802b6a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-4epx629f.xn--ifh802b6a', strict=True)
+
+ def test_uts46_3194(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss꫶ᢥ.⊶ⴡⴖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss꫶ᢥ.⊶ⴡⴖ', strict=True)
+
+ def test_uts46_3195(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS꫶ᢥ.⊶ჁႶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS꫶ᢥ.⊶ჁႶ', strict=True)
+
+ def test_uts46_3196(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss꫶ᢥ.⊶Ⴡⴖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss꫶ᢥ.⊶Ⴡⴖ', strict=True)
+
+ def test_uts46_3197(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-4ep585bkm5p.xn--ifh802b6a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-4ep585bkm5p.xn--ifh802b6a', strict=True)
+
+ def test_uts46_3198(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca682johfi89m.xn--ifh802b6a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca682johfi89m.xn--ifh802b6a', strict=True)
+
+ def test_uts46_3199(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\u200c꫶ᢥ.⊶ⴡⴖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\u200c꫶ᢥ.⊶ⴡⴖ', strict=True)
+
+ def test_uts46_3200(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS\u200c꫶ᢥ.⊶ჁႶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS\u200c꫶ᢥ.⊶ჁႶ', strict=True)
+
+ def test_uts46_3201(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss\u200c꫶ᢥ.⊶ⴡⴖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss\u200c꫶ᢥ.⊶ⴡⴖ', strict=True)
+
+ def test_uts46_3202(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss\u200c꫶ᢥ.⊶Ⴡⴖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss\u200c꫶ᢥ.⊶Ⴡⴖ', strict=True)
+
+ def test_uts46_3203(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-4epx629f.xn--5nd703gyrh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-4epx629f.xn--5nd703gyrh', strict=True)
+
+ def test_uts46_3204(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-4ep585bkm5p.xn--5nd703gyrh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-4ep585bkm5p.xn--5nd703gyrh', strict=True)
+
+ def test_uts46_3205(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-4epx629f.xn--undv409k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-4epx629f.xn--undv409k', strict=True)
+
+ def test_uts46_3206(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-4ep585bkm5p.xn--undv409k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-4ep585bkm5p.xn--undv409k', strict=True)
+
+ def test_uts46_3207(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca682johfi89m.xn--undv409k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca682johfi89m.xn--undv409k', strict=True)
+
+ def test_uts46_3208(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。ς\U000e0049', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。ς\U000e0049', strict=True)
+
+ def test_uts46_3209(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。Σ\U000e0049', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。Σ\U000e0049', strict=True)
+
+ def test_uts46_3210(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。σ\U000e0049', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。σ\U000e0049', strict=True)
+
+ def test_uts46_3211(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--4xa24344p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--4xa24344p', strict=True)
+
+ def test_uts46_3212(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--4xa24344p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--4xa24344p', strict=True)
+
+ def test_uts46_3213(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--3xa44344p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--3xa44344p', strict=True)
+
+ def test_uts46_3214(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ed51ß.ݑ\u200d𞤛-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ed51ß.ݑ\u200d𞤛-', strict=True)
+
+ def test_uts46_3215(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ed51ß.ݑ\u200d𞤽-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ed51ß.ݑ\u200d𞤽-', strict=True)
+
+ def test_uts46_3216(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ed51SS.ݑ\u200d𞤛-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ed51SS.ݑ\u200d𞤛-', strict=True)
+
+ def test_uts46_3217(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ed51ss.ݑ\u200d𞤽-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ed51ss.ݑ\u200d𞤽-', strict=True)
+
+ def test_uts46_3218(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ed51Ss.ݑ\u200d𞤽-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ed51Ss.ݑ\u200d𞤽-', strict=True)
+
+ def test_uts46_3219(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-2722a.xn----z3c03218a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-2722a.xn----z3c03218a', strict=True)
+
+ def test_uts46_3220(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-2722a.xn----z3c011q9513b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-2722a.xn----z3c011q9513b', strict=True)
+
+ def test_uts46_3221(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca5423w.xn----z3c011q9513b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca5423w.xn----z3c011q9513b', strict=True)
+
+ def test_uts46_3222(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ed51ss.ݑ\u200d𞤛-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ed51ss.ݑ\u200d𞤛-', strict=True)
+
+ def test_uts46_3223(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ed51Ss.ݑ\u200d𞤛-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ed51Ss.ݑ\u200d𞤛-', strict=True)
+
+ def test_uts46_3224(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑘽\u200d𞤧.𐹧\U000e19aa-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑘽\u200d𞤧.𐹧\U000e19aa-', strict=True)
+
+ def test_uts46_3225(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑘽\u200d𞤧.𐹧\U000e19aa-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑘽\u200d𞤧.𐹧\U000e19aa-', strict=True)
+
+ def test_uts46_3226(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑘽\u200d𞤅.𐹧\U000e19aa-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑘽\u200d𞤅.𐹧\U000e19aa-', strict=True)
+
+ def test_uts46_3227(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qb2ds317a.xn----k26iq1483f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qb2ds317a.xn----k26iq1483f', strict=True)
+
+ def test_uts46_3228(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugz808gdimf.xn----k26iq1483f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugz808gdimf.xn----k26iq1483f', strict=True)
+
+ def test_uts46_3229(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑘽\u200d𞤅.𐹧\U000e19aa-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑘽\u200d𞤅.𐹧\U000e19aa-', strict=True)
+
+ def test_uts46_3230(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒒\U000a8619\U000b3ce0𑓀.-\U000de84a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒒\U000a8619\U000b3ce0𑓀.-\U000de84a', strict=True)
+
+ def test_uts46_3231(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '11.\U000a8619\U000b3ce0𑓀.-\U000de84a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '11.\U000a8619\U000b3ce0𑓀.-\U000de84a', strict=True)
+
+ def test_uts46_3232(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '11.xn--uz1d59632bxujd.xn----x310m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '11.xn--uz1d59632bxujd.xn----x310m', strict=True)
+
+ def test_uts46_3233(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3shy698frsu9dt1me.xn----x310m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3shy698frsu9dt1me.xn----x310m', strict=True)
+
+ def test_uts46_3234(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。\u200d', strict=True)
+
+ def test_uts46_3235(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。\u200d', strict=True)
+
+ def test_uts46_3236(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.', strict=True)
+
+ def test_uts46_3237(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--1ug', strict=True)
+
+ def test_uts46_3238(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.ς¹-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.ς¹-?', strict=True)
+
+ def test_uts46_3239(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.ς¹-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.ς¹-?', strict=True)
+
+ def test_uts46_3240(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.ς1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.ς1-?', strict=True)
+
+ def test_uts46_3241(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.ς1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.ς1-?', strict=True)
+
+ def test_uts46_3242(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.Σ1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.Σ1-?', strict=True)
+
+ def test_uts46_3243(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.Σ1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.Σ1-?', strict=True)
+
+ def test_uts46_3244(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.σ1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.σ1-?', strict=True)
+
+ def test_uts46_3245(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.σ1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.σ1-?', strict=True)
+
+ def test_uts46_3246(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--88e732c.xn--1-?-pzc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--88e732c.xn--1-?-pzc', strict=True)
+
+ def test_uts46_3247(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--88e732c.xn--1-?-lzc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--88e732c.xn--1-?-lzc', strict=True)
+
+ def test_uts46_3248(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.Σ¹-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.Σ¹-?', strict=True)
+
+ def test_uts46_3249(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.Σ¹-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.Σ¹-?', strict=True)
+
+ def test_uts46_3250(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.σ¹-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.σ¹-?', strict=True)
+
+ def test_uts46_3251(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ᡬ.σ¹-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ᡬ.σ¹-?', strict=True)
+
+ def test_uts46_3252(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--88e732c.σ1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--88e732c.σ1-?', strict=True)
+
+ def test_uts46_3253(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--88E732C.Σ1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--88E732C.Σ1-?', strict=True)
+
+ def test_uts46_3254(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--88e732c.ς1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--88e732c.ς1-?', strict=True)
+
+ def test_uts46_3255(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--88e732c.ς1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--88e732c.ς1-?', strict=True)
+
+ def test_uts46_3256(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--88e732c.σ1-?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--88e732c.σ1-?', strict=True)
+
+ def test_uts46_3257(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ቬ\U0009483c\U000415f6。𐨬𝟠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ቬ\U0009483c\U000415f6。𐨬𝟠', strict=True)
+
+ def test_uts46_3258(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ቬ\U0009483c\U000415f6。𐨬8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ቬ\U0009483c\U000415f6。𐨬8', strict=True)
+
+ def test_uts46_3259(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--d0d41273c887z.xn--8-ob5i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--d0d41273c887z.xn--8-ob5i', strict=True)
+
+ def test_uts46_3260(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010c72。蔫ݦ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010c72。蔫ݦ', strict=True)
+
+ def test_uts46_3261(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--389c.xn--qpb7055d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--389c.xn--qpb7055d', strict=True)
+
+ def test_uts46_3262(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00092ca7₃。ꡚ𛇑󠄳ه', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00092ca7₃。ꡚ𛇑󠄳ه', strict=True)
+
+ def test_uts46_3263(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00092ca73。ꡚ𛇑󠄳ه', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00092ca73。ꡚ𛇑󠄳ه', strict=True)
+
+ def test_uts46_3264(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-ep59g.xn--jhb5904fcp0h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-ep59g.xn--jhb5904fcp0h', strict=True)
+
+ def test_uts46_3265(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蓸ق≠.ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蓸ق≠.ß', strict=True)
+
+ def test_uts46_3266(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蓸ق≠.ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蓸ق≠.ß', strict=True)
+
+ def test_uts46_3267(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蓸ق≠.SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蓸ق≠.SS', strict=True)
+
+ def test_uts46_3268(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蓸ق≠.SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蓸ق≠.SS', strict=True)
+
+ def test_uts46_3269(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蓸ق≠.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蓸ق≠.ss', strict=True)
+
+ def test_uts46_3270(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蓸ق≠.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蓸ق≠.ss', strict=True)
+
+ def test_uts46_3271(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蓸ق≠.Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蓸ق≠.Ss', strict=True)
+
+ def test_uts46_3272(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蓸ق≠.Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蓸ق≠.Ss', strict=True)
+
+ def test_uts46_3273(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ehb015lnt1e.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ehb015lnt1e.ss', strict=True)
+
+ def test_uts46_3274(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ehb015lnt1e.xn--zca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ehb015lnt1e.xn--zca', strict=True)
+
+ def test_uts46_3275(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡎٺී⒊.𐹹\U0001ec69\U000e00ea\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡎٺී⒊.𐹹\U0001ec69\U000e00ea\u200c', strict=True)
+
+ def test_uts46_3276(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡎٺී3..𐹹\U0001ec69\U000e00ea\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡎٺී3..𐹹\U0001ec69\U000e00ea\u200c', strict=True)
+
+ def test_uts46_3277(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-prc71ls9j..xn--xo0dw109an237f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-prc71ls9j..xn--xo0dw109an237f', strict=True)
+
+ def test_uts46_3278(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-prc71ls9j..xn--0ug3205g7eyf3c96h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-prc71ls9j..xn--0ug3205g7eyf3c96h', strict=True)
+
+ def test_uts46_3279(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zib94gfziuq1a.xn--xo0dw109an237f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zib94gfziuq1a.xn--xo0dw109an237f', strict=True)
+
+ def test_uts46_3280(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zib94gfziuq1a.xn--0ug3205g7eyf3c96h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zib94gfziuq1a.xn--0ug3205g7eyf3c96h', strict=True)
+
+ def test_uts46_3281(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς\u200d-.Ⴣ𦟙', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς\u200d-.Ⴣ𦟙', strict=True)
+
+ def test_uts46_3282(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς\u200d-.ⴣ𦟙', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς\u200d-.ⴣ𦟙', strict=True)
+
+ def test_uts46_3283(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ\u200d-.Ⴣ𦟙', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ\u200d-.Ⴣ𦟙', strict=True)
+
+ def test_uts46_3284(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ\u200d-.ⴣ𦟙', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ\u200d-.ⴣ𦟙', strict=True)
+
+ def test_uts46_3285(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----zmb.xn--rlj2573p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----zmb.xn--rlj2573p', strict=True)
+
+ def test_uts46_3286(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----zmb048s.xn--rlj2573p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----zmb048s.xn--rlj2573p', strict=True)
+
+ def test_uts46_3287(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----xmb348s.xn--rlj2573p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----xmb348s.xn--rlj2573p', strict=True)
+
+ def test_uts46_3288(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----zmb.xn--7nd64871a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----zmb.xn--7nd64871a', strict=True)
+
+ def test_uts46_3289(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----zmb048s.xn--7nd64871a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----zmb048s.xn--7nd64871a', strict=True)
+
+ def test_uts46_3290(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----xmb348s.xn--7nd64871a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----xmb348s.xn--7nd64871a', strict=True)
+
+ def test_uts46_3291(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。🞳𝟲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。🞳𝟲', strict=True)
+
+ def test_uts46_3292(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。🞳𝟲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。🞳𝟲', strict=True)
+
+ def test_uts46_3293(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。🞳6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。🞳6', strict=True)
+
+ def test_uts46_3294(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠。🞳6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠。🞳6', strict=True)
+
+ def test_uts46_3295(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch.xn--6-dl4s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch.xn--6-dl4s', strict=True)
+
+ def test_uts46_3296(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.🞳6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.🞳6', strict=True)
+
+ def test_uts46_3297(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.🞳6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.🞳6', strict=True)
+
+ def test_uts46_3298(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c5b3d.蠔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c5b3d.蠔', strict=True)
+
+ def test_uts46_3299(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--g747d.xn--xl2a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--g747d.xn--xl2a', strict=True)
+
+ def test_uts46_3300(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣦ\u200d.뼽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣦ\u200d.뼽', strict=True)
+
+ def test_uts46_3301(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣦ\u200d.뼽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣦ\u200d.뼽', strict=True)
+
+ def test_uts46_3302(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣦ\u200d.뼽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣦ\u200d.뼽', strict=True)
+
+ def test_uts46_3303(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣦ\u200d.뼽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣦ\u200d.뼽', strict=True)
+
+ def test_uts46_3304(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--p0b.xn--e43b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--p0b.xn--e43b', strict=True)
+
+ def test_uts46_3305(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--p0b869i.xn--e43b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--p0b869i.xn--e43b', strict=True)
+
+ def test_uts46_3306(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '₇்\U001030b7ے。👖ٵ-\U0001ea91', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '₇்\U001030b7ے。👖ٵ-\U0001ea91', strict=True)
+
+ def test_uts46_3307(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '7்\U001030b7ے。👖اٴ-\U0001ea91', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '7்\U001030b7ے。👖اٴ-\U0001ea91', strict=True)
+
+ def test_uts46_3308(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7-rwc839aj3073c.xn----ymc5uv818oghka', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7-rwc839aj3073c.xn----ymc5uv818oghka', strict=True)
+
+ def test_uts46_3309(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。ݻ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。ݻ', strict=True)
+
+ def test_uts46_3310(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。ݻ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。ݻ', strict=True)
+
+ def test_uts46_3311(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--cqb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--cqb', strict=True)
+
+ def test_uts46_3312(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑇌\U000356d3。-⒈ꡏܫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑇌\U000356d3。-⒈ꡏܫ', strict=True)
+
+ def test_uts46_3313(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑇌\U000356d3。-1.ꡏܫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑇌\U000356d3。-1.ꡏܫ', strict=True)
+
+ def test_uts46_3314(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8d1dg030h.-1.xn--1nb7163f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8d1dg030h.-1.xn--1nb7163f', strict=True)
+
+ def test_uts46_3315(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8d1dg030h.xn----u1c466tp10j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8d1dg030h.xn----u1c466tp10j', strict=True)
+
+ def test_uts46_3316(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '璛᜴گ.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '璛᜴گ.-', strict=True)
+
+ def test_uts46_3317(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ikb175frt4e.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ikb175frt4e.-', strict=True)
+
+ def test_uts46_3318(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆰ࢡ੍샕.𐹲휁', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆰ࢡ੍샕.𐹲휁', strict=True)
+
+ def test_uts46_3319(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆰ࢡ੍샕.𐹲휁', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆰ࢡ੍샕.𐹲휁', strict=True)
+
+ def test_uts46_3320(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆰ࢡ੍샕.𐹲휁', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆰ࢡ੍샕.𐹲휁', strict=True)
+
+ def test_uts46_3321(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆰ࢡ੍샕.𐹲휁', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆰ࢡ੍샕.𐹲휁', strict=True)
+
+ def test_uts46_3322(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qyb07fj857a.xn--728bv72h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qyb07fj857a.xn--728bv72h', strict=True)
+
+ def test_uts46_3323(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004da3d.\U0004be15', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004da3d.\U0004be15', strict=True)
+
+ def test_uts46_3324(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004da3d.\U0004be15', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004da3d.\U0004be15', strict=True)
+
+ def test_uts46_3325(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pr3x.xn--rv7w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pr3x.xn--rv7w', strict=True)
+
+ def test_uts46_3326(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽ𞥕。𑑂𞤶Ⴍ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽ𞥕。𑑂𞤶Ⴍ-', strict=True)
+
+ def test_uts46_3327(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽ𞥕。𑑂𞤶Ⴍ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽ𞥕。𑑂𞤶Ⴍ-', strict=True)
+
+ def test_uts46_3328(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽ𞥕。𑑂𞤶ⴍ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽ𞥕。𑑂𞤶ⴍ-', strict=True)
+
+ def test_uts46_3329(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽ𞥕。𑑂𞤔Ⴍ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽ𞥕。𑑂𞤔Ⴍ-', strict=True)
+
+ def test_uts46_3330(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽ𞥕。𑑂𞤔ⴍ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽ𞥕。𑑂𞤔ⴍ-', strict=True)
+
+ def test_uts46_3331(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2ib0338v.xn----zvs0199fo91g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2ib0338v.xn----zvs0199fo91g', strict=True)
+
+ def test_uts46_3332(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽ𞥕。𑑂𞤶ⴍ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽ𞥕。𑑂𞤶ⴍ-', strict=True)
+
+ def test_uts46_3333(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽ𞥕。𑑂𞤔Ⴍ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽ𞥕。𑑂𞤔Ⴍ-', strict=True)
+
+ def test_uts46_3334(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٽ𞥕。𑑂𞤔ⴍ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٽ𞥕。𑑂𞤔ⴍ-', strict=True)
+
+ def test_uts46_3335(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2ib0338v.xn----w0g2740ro9vg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2ib0338v.xn----w0g2740ro9vg', strict=True)
+
+ def test_uts46_3336(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010bc0\U00010e09\U0001e9cf。\U000626a7₄Ⴋ\U00042e6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010bc0\U00010e09\U0001e9cf。\U000626a7₄Ⴋ\U00042e6b', strict=True)
+
+ def test_uts46_3337(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010bc0\U00010e09\U0001e9cf。\U000626a74Ⴋ\U00042e6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010bc0\U00010e09\U0001e9cf。\U000626a74Ⴋ\U00042e6b', strict=True)
+
+ def test_uts46_3338(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010bc0\U00010e09\U0001e9cf。\U000626a74ⴋ\U00042e6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010bc0\U00010e09\U0001e9cf。\U000626a74ⴋ\U00042e6b', strict=True)
+
+ def test_uts46_3339(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--039c42bq865a.xn--4-wvs27840bnrzm', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--039c42bq865a.xn--4-wvs27840bnrzm', strict=True)
+
+ def test_uts46_3340(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010bc0\U00010e09\U0001e9cf。\U000626a7₄ⴋ\U00042e6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010bc0\U00010e09\U0001e9cf。\U000626a7₄ⴋ\U00042e6b', strict=True)
+
+ def test_uts46_3341(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--039c42bq865a.xn--4-t0g49302fnrzm', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--039c42bq865a.xn--4-t0g49302fnrzm', strict=True)
+
+ def test_uts46_3342(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4ڽ︒\U000e0465.≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4ڽ︒\U000e0465.≠', strict=True)
+
+ def test_uts46_3343(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4ڽ︒\U000e0465.≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4ڽ︒\U000e0465.≠', strict=True)
+
+ def test_uts46_3344(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4ڽ。\U000e0465.≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4ڽ。\U000e0465.≠', strict=True)
+
+ def test_uts46_3345(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4ڽ。\U000e0465.≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4ڽ。\U000e0465.≠', strict=True)
+
+ def test_uts46_3346(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-kvc.xn--5136e.xn--1ch', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-kvc.xn--5136e.xn--1ch', strict=True)
+
+ def test_uts46_3347(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-kvc5601q2h50i.xn--1ch', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-kvc5601q2h50i.xn--1ch', strict=True)
+
+ def test_uts46_3348(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟓。ۗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟓。ۗ', strict=True)
+
+ def test_uts46_3349(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '5。ۗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '5。ۗ', strict=True)
+
+ def test_uts46_3350(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '5.xn--nlb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '5.xn--nlb', strict=True)
+
+ def test_uts46_3351(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000bae29.⾕', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000bae29.⾕', strict=True)
+
+ def test_uts46_3352(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000bae29.谷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000bae29.谷', strict=True)
+
+ def test_uts46_3353(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--i183d.xn--6g3a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--i183d.xn--6g3a', strict=True)
+
+ def test_uts46_3354(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug26167i.xn--6g3a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug26167i.xn--6g3a', strict=True)
+
+ def test_uts46_3355(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒\U000cec07\u200d.-ܼ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒\U000cec07\u200d.-ܼ\u200c', strict=True)
+
+ def test_uts46_3356(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。\U000cec07\u200d.-ܼ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。\U000cec07\u200d.-ܼ\u200c', strict=True)
+
+ def test_uts46_3357(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--hh50e.xn----t2c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--hh50e.xn----t2c', strict=True)
+
+ def test_uts46_3358(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--1ug05310k.xn----t2c071q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--1ug05310k.xn----t2c071q', strict=True)
+
+ def test_uts46_3359(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86c71305c.xn----t2c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86c71305c.xn----t2c', strict=True)
+
+ def test_uts46_3360(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug1658ftw26f.xn----t2c071q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug1658ftw26f.xn----t2c071q', strict=True)
+
+ def test_uts46_3361(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𞤟。ᡨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𞤟。ᡨ', strict=True)
+
+ def test_uts46_3362(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𞤟。ᡨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𞤟。ᡨ', strict=True)
+
+ def test_uts46_3363(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𞥁。ᡨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𞥁。ᡨ', strict=True)
+
+ def test_uts46_3364(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𞥁。ᡨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𞥁。ᡨ', strict=True)
+
+ def test_uts46_3365(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdhz520p.xn--48e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdhz520p.xn--48e', strict=True)
+
+ def test_uts46_3366(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ུ𫫰𝨄。ܓ𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ུ𫫰𝨄。ܓ𐹦', strict=True)
+
+ def test_uts46_3367(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ned8985uo92e.xn--dnb6395k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ned8985uo92e.xn--dnb6395k', strict=True)
+
+ def test_uts46_3368(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̼ߛ⁷𝟹。𝟬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̼ߛ⁷𝟹。𝟬', strict=True)
+
+ def test_uts46_3369(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̼ߛ73。0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̼ߛ73。0', strict=True)
+
+ def test_uts46_3370(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--73-9yb648b.a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--73-9yb648b.a', strict=True)
+
+ def test_uts46_3371(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d.𝟗', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d.𝟗', strict=True)
+
+ def test_uts46_3372(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d.j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d.j', strict=True)
+
+ def test_uts46_3373(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d.J', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d.J', strict=True)
+
+ def test_uts46_3374(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.j', strict=True)
+
+ def test_uts46_3375(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.j', strict=True)
+
+ def test_uts46_3376(self):
+ self.assertEqual(idna.decode('j', uts46=True, strict=True), 'j')
+ self.assertEqual(idna.encode('j', uts46=True, strict=True), b'j')
+
+ def test_uts46_3377(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݹᡭ𪕈。ڶࣙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݹᡭ𪕈。ڶࣙ', strict=True)
+
+ def test_uts46_3378(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9pb497fs270c.xn--pkb80i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9pb497fs270c.xn--pkb80i', strict=True)
+
+ def test_uts46_3379(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܦ5ߢ겙。᳴\U00010dda', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܦ5ߢ겙。᳴\U00010dda', strict=True)
+
+ def test_uts46_3380(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܦ5ߢ겙。᳴\U00010dda', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܦ5ߢ겙。᳴\U00010dda', strict=True)
+
+ def test_uts46_3381(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܦ5ߢ겙。᳴\U00010dda', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܦ5ߢ겙。᳴\U00010dda', strict=True)
+
+ def test_uts46_3382(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܦ5ߢ겙。᳴\U00010dda', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܦ5ߢ겙。᳴\U00010dda', strict=True)
+
+ def test_uts46_3383(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5-j1c97c2483c.xn--e7f2093h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5-j1c97c2483c.xn--e7f2093h', strict=True)
+
+ def test_uts46_3384(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴍ\U0003f8cdꡨ֮。Ⴞ\u200c\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴍ\U0003f8cdꡨ֮。Ⴞ\u200c\u200c', strict=True)
+
+ def test_uts46_3385(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴍ\U0003f8cdꡨ֮。ⴞ\u200c\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴍ\U0003f8cdꡨ֮。ⴞ\u200c\u200c', strict=True)
+
+ def test_uts46_3386(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5cb172r175fug38a.xn--mlj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5cb172r175fug38a.xn--mlj', strict=True)
+
+ def test_uts46_3387(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5cb172r175fug38a.xn--0uga051h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5cb172r175fug38a.xn--0uga051h', strict=True)
+
+ def test_uts46_3388(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5cb347co96jug15a.xn--2nd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5cb347co96jug15a.xn--2nd', strict=True)
+
+ def test_uts46_3389(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5cb347co96jug15a.xn--2nd059ea', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5cb347co96jug15a.xn--2nd059ea', strict=True)
+
+ def test_uts46_3390(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋰。\U000d14f1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋰。\U000d14f1', strict=True)
+
+ def test_uts46_3391(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--k97c.xn--q031e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--k97c.xn--q031e', strict=True)
+
+ def test_uts46_3392(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e13a6឴୍.𐹾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e13a6឴୍.𐹾', strict=True)
+
+ def test_uts46_3393(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ic59305p.xn--2o0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ic59305p.xn--2o0d', strict=True)
+
+ def test_uts46_3394(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ic364dho91z.xn--2o0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ic364dho91z.xn--2o0d', strict=True)
+
+ def test_uts46_3395(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣟႫ\U00036ff8귤.\U000a017c𝟢휪ૣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣟႫ\U00036ff8귤.\U000a017c𝟢휪ૣ', strict=True)
+
+ def test_uts46_3396(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣟႫ\U00036ff8귤.\U000a017c𝟢휪ૣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣟႫ\U00036ff8귤.\U000a017c𝟢휪ૣ', strict=True)
+
+ def test_uts46_3397(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣟႫ\U00036ff8귤.\U000a017c0휪ૣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣟႫ\U00036ff8귤.\U000a017c0휪ૣ', strict=True)
+
+ def test_uts46_3398(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣟႫ\U00036ff8귤.\U000a017c0휪ૣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣟႫ\U00036ff8귤.\U000a017c0휪ૣ', strict=True)
+
+ def test_uts46_3399(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣟⴋ\U00036ff8귤.\U000a017c0휪ૣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣟⴋ\U00036ff8귤.\U000a017c0휪ૣ', strict=True)
+
+ def test_uts46_3400(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣟⴋ\U00036ff8귤.\U000a017c0휪ૣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣟⴋ\U00036ff8귤.\U000a017c0휪ૣ', strict=True)
+
+ def test_uts46_3401(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--i0b436pkl2g2h42a.xn--0-8le8997mulr5f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--i0b436pkl2g2h42a.xn--0-8le8997mulr5f', strict=True)
+
+ def test_uts46_3402(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣟⴋ\U00036ff8귤.\U000a017c𝟢휪ૣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣟⴋ\U00036ff8귤.\U000a017c𝟢휪ૣ', strict=True)
+
+ def test_uts46_3403(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣟⴋ\U00036ff8귤.\U000a017c𝟢휪ૣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣟⴋ\U00036ff8귤.\U000a017c𝟢휪ૣ', strict=True)
+
+ def test_uts46_3404(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--i0b601b6r7l2hs0a.xn--0-8le8997mulr5f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--i0b601b6r7l2hs0a.xn--0-8le8997mulr5f', strict=True)
+
+ def test_uts46_3405(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ބ.𞡝\u0601', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ބ.𞡝\u0601', strict=True)
+
+ def test_uts46_3406(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ބ.𞡝\u0601', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ބ.𞡝\u0601', strict=True)
+
+ def test_uts46_3407(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lqb.xn--jfb1808v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lqb.xn--jfb1808v', strict=True)
+
+ def test_uts46_3408(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્₃.8꣄\u200d🃤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્₃.8꣄\u200d🃤', strict=True)
+
+ def test_uts46_3409(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્3.8꣄\u200d🃤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્3.8꣄\u200d🃤', strict=True)
+
+ def test_uts46_3410(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-yke.xn--8-sl4et308f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-yke.xn--8-sl4et308f', strict=True)
+
+ def test_uts46_3411(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-yke.xn--8-ugnv982dbkwm', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-yke.xn--8-ugnv982dbkwm', strict=True)
+
+ def test_uts46_3412(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '℻⩷𝆆。𞤠󠆁᠌', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '℻⩷𝆆。𞤠󠆁᠌', strict=True)
+
+ def test_uts46_3413(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'FAX⩷𝆆。𞤠󠆁᠌', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'FAX⩷𝆆。𞤠󠆁᠌', strict=True)
+
+ def test_uts46_3414(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'fax⩷𝆆。𞥂󠆁᠌', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'fax⩷𝆆。𞥂󠆁᠌', strict=True)
+
+ def test_uts46_3415(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Fax⩷𝆆。𞤠󠆁᠌', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Fax⩷𝆆。𞤠󠆁᠌', strict=True)
+
+ def test_uts46_3416(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fax-4c9a1676t.xn--6e6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fax-4c9a1676t.xn--6e6h', strict=True)
+
+ def test_uts46_3417(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '℻⩷𝆆。𞥂󠆁᠌', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '℻⩷𝆆。𞥂󠆁᠌', strict=True)
+
+ def test_uts46_3418(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'FAX⩷𝆆。𞥂󠆁᠌', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'FAX⩷𝆆。𞥂󠆁᠌', strict=True)
+
+ def test_uts46_3419(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'fax⩷𝆆。𞤠󠆁᠌', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'fax⩷𝆆。𞤠󠆁᠌', strict=True)
+
+ def test_uts46_3420(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'fax⩷𝆆.𞥂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'fax⩷𝆆.𞥂', strict=True)
+
+ def test_uts46_3421(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'FAX⩷𝆆.𞤠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'FAX⩷𝆆.𞤠', strict=True)
+
+ def test_uts46_3422(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Fax⩷𝆆.𞤠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Fax⩷𝆆.𞤠', strict=True)
+
+ def test_uts46_3423(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'FAX⩷𝆆.𞥂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'FAX⩷𝆆.𞥂', strict=True)
+
+ def test_uts46_3424(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Fax⩷𝆆.𞥂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Fax⩷𝆆.𞥂', strict=True)
+
+ def test_uts46_3425(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡕ≠ၞ\U000eeff1。\U00010d67󠄫ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡕ≠ၞ\U000eeff1。\U00010d67󠄫ᅠ', strict=True)
+
+ def test_uts46_3426(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡕ≠ၞ\U000eeff1。\U00010d67󠄫ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡕ≠ၞ\U000eeff1。\U00010d67󠄫ᅠ', strict=True)
+
+ def test_uts46_3427(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡕ≠ၞ\U000eeff1。\U00010d67󠄫ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡕ≠ၞ\U000eeff1。\U00010d67󠄫ᅠ', strict=True)
+
+ def test_uts46_3428(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡕ≠ၞ\U000eeff1。\U00010d67󠄫ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡕ≠ၞ\U000eeff1。\U00010d67󠄫ᅠ', strict=True)
+
+ def test_uts46_3429(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cld333gn31h0158l.xn--3g0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cld333gn31h0158l.xn--3g0d', strict=True)
+
+ def test_uts46_3430(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cld333gn31h0158l.xn--psd1510k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cld333gn31h0158l.xn--psd1510k', strict=True)
+
+ def test_uts46_3431(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cld333gn31h0158l.xn--cl7c96v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cld333gn31h0158l.xn--cl7c96v', strict=True)
+
+ def test_uts46_3432(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '鱊。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '鱊。\u200c', strict=True)
+
+ def test_uts46_3435(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rt6a.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rt6a.xn--0ug', strict=True)
+
+ def test_uts46_3436(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8𐹣.𑍨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8𐹣.𑍨', strict=True)
+
+ def test_uts46_3437(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8𐹣.𑍨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8𐹣.𑍨', strict=True)
+
+ def test_uts46_3438(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-d26i.xn--0p1d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-d26i.xn--0p1d', strict=True)
+
+ def test_uts46_3439(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⏹𐧀.𐫯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⏹𐧀.𐫯', strict=True)
+
+ def test_uts46_3440(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⏹𐧀.𐫯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⏹𐧀.𐫯', strict=True)
+
+ def test_uts46_3441(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qoh9161g.xn--1x9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qoh9161g.xn--1x9c', strict=True)
+
+ def test_uts46_3442(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤺ߌ4.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤺ߌ4.\u200d', strict=True)
+
+ def test_uts46_3443(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤺ߌ4.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤺ߌ4.\u200d', strict=True)
+
+ def test_uts46_3444(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤘ߌ4.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤘ߌ4.\u200d', strict=True)
+
+ def test_uts46_3447(self):
+ self.assertEqual(idna.decode('𞤘ߌ4.', uts46=True, strict=True), '𞤺ߌ4.')
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤘ߌ4.', strict=True)
+
+ def test_uts46_3448(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-0bd15808a.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-0bd15808a.xn--1ug', strict=True)
+
+ def test_uts46_3449(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤘ߌ4.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤘ߌ4.\u200d', strict=True)
+
+ def test_uts46_3450(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒗ঁ⃯-.\u08e2•', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒗ঁ⃯-.\u08e2•', strict=True)
+
+ def test_uts46_3451(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '16.ঁ⃯-.\u08e2•', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '16.ঁ⃯-.\u08e2•', strict=True)
+
+ def test_uts46_3452(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '16.xn----z0d801p.xn--l0b810j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '16.xn----z0d801p.xn--l0b810j', strict=True)
+
+ def test_uts46_3453(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----z0d801p6kd.xn--l0b810j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----z0d801p6kd.xn--l0b810j', strict=True)
+
+ def test_uts46_3454(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。䏛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。䏛', strict=True)
+
+ def test_uts46_3455(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。䏛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。䏛', strict=True)
+
+ def test_uts46_3456(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--xco', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--xco', strict=True)
+
+ def test_uts46_3457(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000520e0.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000520e0.\u200d', strict=True)
+
+ def test_uts46_3458(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000520e0.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000520e0.\u200d', strict=True)
+
+ def test_uts46_3459(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dj8y.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dj8y.', strict=True)
+
+ def test_uts46_3460(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugz7551c.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugz7551c.xn--1ug', strict=True)
+
+ def test_uts46_3461(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈⓰\U000e58c7。𐹠\u200d\U00097de6Ⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈⓰\U000e58c7。𐹠\u200d\U00097de6Ⴕ', strict=True)
+
+ def test_uts46_3462(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.⓰\U000e58c7。𐹠\u200d\U00097de6Ⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.⓰\U000e58c7。𐹠\u200d\U00097de6Ⴕ', strict=True)
+
+ def test_uts46_3463(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.⓰\U000e58c7。𐹠\u200d\U00097de6ⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.⓰\U000e58c7。𐹠\u200d\U00097de6ⴕ', strict=True)
+
+ def test_uts46_3464(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--svh00804k.xn--dljv223ee5t2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--svh00804k.xn--dljv223ee5t2d', strict=True)
+
+ def test_uts46_3465(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--svh00804k.xn--1ug352csp0psg45e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--svh00804k.xn--1ug352csp0psg45e', strict=True)
+
+ def test_uts46_3466(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈⓰\U000e58c7。𐹠\u200d\U00097de6ⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈⓰\U000e58c7。𐹠\u200d\U00097de6ⴕ', strict=True)
+
+ def test_uts46_3467(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh0nz9380h.xn--dljv223ee5t2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh0nz9380h.xn--dljv223ee5t2d', strict=True)
+
+ def test_uts46_3468(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh0nz9380h.xn--1ug352csp0psg45e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh0nz9380h.xn--1ug352csp0psg45e', strict=True)
+
+ def test_uts46_3469(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--svh00804k.xn--tnd1990ke579c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--svh00804k.xn--tnd1990ke579c', strict=True)
+
+ def test_uts46_3470(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--svh00804k.xn--tnd969erj4psgl3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--svh00804k.xn--tnd969erj4psgl3e', strict=True)
+
+ def test_uts46_3471(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh0nz9380h.xn--tnd1990ke579c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh0nz9380h.xn--tnd1990ke579c', strict=True)
+
+ def test_uts46_3472(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh0nz9380h.xn--tnd969erj4psgl3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh0nz9380h.xn--tnd969erj4psgl3e', strict=True)
+
+ def test_uts46_3473(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠊ᠮ-ß。᳐効\u0601\U000378ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠊ᠮ-ß。᳐効\u0601\U000378ed', strict=True)
+
+ def test_uts46_3474(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠊ᠮ-ß。᳐効\u0601\U000378ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠊ᠮ-ß。᳐効\u0601\U000378ed', strict=True)
+
+ def test_uts46_3475(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠊ᠮ-SS。᳐効\u0601\U000378ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠊ᠮ-SS。᳐効\u0601\U000378ed', strict=True)
+
+ def test_uts46_3476(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠊ᠮ-ss。᳐効\u0601\U000378ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠊ᠮ-ss。᳐効\u0601\U000378ed', strict=True)
+
+ def test_uts46_3477(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠊ᠮ-Ss。᳐効\u0601\U000378ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠊ᠮ-Ss。᳐効\u0601\U000378ed', strict=True)
+
+ def test_uts46_3478(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---ss-21t18904a.xn--jfb197i791bi6x4c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---ss-21t18904a.xn--jfb197i791bi6x4c', strict=True)
+
+ def test_uts46_3479(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qfa310pg973b.xn--jfb197i791bi6x4c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qfa310pg973b.xn--jfb197i791bi6x4c', strict=True)
+
+ def test_uts46_3480(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠊ᠮ-SS。᳐効\u0601\U000378ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠊ᠮ-SS。᳐効\u0601\U000378ed', strict=True)
+
+ def test_uts46_3481(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠊ᠮ-ss。᳐効\u0601\U000378ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠊ᠮ-ss。᳐効\u0601\U000378ed', strict=True)
+
+ def test_uts46_3482(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠊ᠮ-Ss。᳐効\u0601\U000378ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠊ᠮ-Ss。᳐効\u0601\U000378ed', strict=True)
+
+ def test_uts46_3483(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑇀.\U000e0a31', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑇀.\U000e0a31', strict=True)
+
+ def test_uts46_3484(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wd1d.xn--k946e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wd1d.xn--k946e', strict=True)
+
+ def test_uts46_3485(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '␒3ﮈ。𝟘𐨿\U00010e46', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '␒3ﮈ。𝟘𐨿\U00010e46', strict=True)
+
+ def test_uts46_3486(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '␒3ڈ。0𐨿\U00010e46', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '␒3ڈ。0𐨿\U00010e46', strict=True)
+
+ def test_uts46_3487(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-jsc897t.xn--0-sc5iy3h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-jsc897t.xn--0-sc5iy3h', strict=True)
+
+ def test_uts46_3488(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݫ6ઁࢦ。ᷣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݫ6ઁࢦ。ᷣ', strict=True)
+
+ def test_uts46_3489(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݫ6ઁࢦ。ᷣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݫ6ઁࢦ。ᷣ', strict=True)
+
+ def test_uts46_3490(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-h5c06gj6c.xn--7eg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-h5c06gj6c.xn--7eg', strict=True)
+
+ def test_uts46_3491(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0605-\U0003d91eႢ。\U00085936\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0605-\U0003d91eႢ。\U00085936\u200d', strict=True)
+
+ def test_uts46_3492(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0605-\U0003d91eⴂ。\U00085936\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0605-\U0003d91eⴂ。\U00085936\u200d', strict=True)
+
+ def test_uts46_3493(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----0kc8501a5399e.xn--ss06b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----0kc8501a5399e.xn--ss06b', strict=True)
+
+ def test_uts46_3494(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----0kc8501a5399e.xn--1ugy3204f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----0kc8501a5399e.xn--1ugy3204f', strict=True)
+
+ def test_uts46_3495(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----0kc662fc152h.xn--ss06b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----0kc662fc152h.xn--ss06b', strict=True)
+
+ def test_uts46_3496(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----0kc662fc152h.xn--1ugy3204f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----0kc662fc152h.xn--1ugy3204f', strict=True)
+
+ def test_uts46_3497(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾆.ꡈ5≯ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾆.ꡈ5≯ß', strict=True)
+
+ def test_uts46_3498(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾆.ꡈ5≯ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾆.ꡈ5≯ß', strict=True)
+
+ def test_uts46_3499(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舌.ꡈ5≯ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舌.ꡈ5≯ß', strict=True)
+
+ def test_uts46_3500(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舌.ꡈ5≯ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舌.ꡈ5≯ß', strict=True)
+
+ def test_uts46_3501(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舌.ꡈ5≯SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舌.ꡈ5≯SS', strict=True)
+
+ def test_uts46_3502(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舌.ꡈ5≯SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舌.ꡈ5≯SS', strict=True)
+
+ def test_uts46_3503(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舌.ꡈ5≯ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舌.ꡈ5≯ss', strict=True)
+
+ def test_uts46_3504(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舌.ꡈ5≯ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舌.ꡈ5≯ss', strict=True)
+
+ def test_uts46_3505(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舌.ꡈ5≯Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舌.ꡈ5≯Ss', strict=True)
+
+ def test_uts46_3506(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舌.ꡈ5≯Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舌.ꡈ5≯Ss', strict=True)
+
+ def test_uts46_3507(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tc1a.xn--5ss-3m2a5009e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tc1a.xn--5ss-3m2a5009e', strict=True)
+
+ def test_uts46_3508(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tc1a.xn--5-qfa988w745i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tc1a.xn--5-qfa988w745i', strict=True)
+
+ def test_uts46_3509(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾆.ꡈ5≯SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾆.ꡈ5≯SS', strict=True)
+
+ def test_uts46_3510(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾆.ꡈ5≯SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾆.ꡈ5≯SS', strict=True)
+
+ def test_uts46_3511(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾆.ꡈ5≯ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾆.ꡈ5≯ss', strict=True)
+
+ def test_uts46_3512(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾆.ꡈ5≯ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾆.ꡈ5≯ss', strict=True)
+
+ def test_uts46_3513(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾆.ꡈ5≯Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾆.ꡈ5≯Ss', strict=True)
+
+ def test_uts46_3514(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾆.ꡈ5≯Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾆.ꡈ5≯Ss', strict=True)
+
+ def test_uts46_3515(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્8\u200d.\U000be088ݜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્8\u200d.\U000be088ݜ', strict=True)
+
+ def test_uts46_3516(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '્8\u200d.\U000be088ݜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '્8\u200d.\U000be088ݜ', strict=True)
+
+ def test_uts46_3517(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-yke.xn--gpb79046m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-yke.xn--gpb79046m', strict=True)
+
+ def test_uts46_3518(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-yke534n.xn--gpb79046m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-yke534n.xn--gpb79046m', strict=True)
+
+ def test_uts46_3519(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000b8dc6ੰ≮\U000b94d9.\U0005e3a7⁷\U000e0bd9ڶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000b8dc6ੰ≮\U000b94d9.\U0005e3a7⁷\U000e0bd9ڶ', strict=True)
+
+ def test_uts46_3520(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000b8dc6ੰ≮\U000b94d9.\U0005e3a7⁷\U000e0bd9ڶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000b8dc6ੰ≮\U000b94d9.\U0005e3a7⁷\U000e0bd9ڶ', strict=True)
+
+ def test_uts46_3521(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000b8dc6ੰ≮\U000b94d9.\U0005e3a77\U000e0bd9ڶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000b8dc6ੰ≮\U000b94d9.\U0005e3a77\U000e0bd9ڶ', strict=True)
+
+ def test_uts46_3522(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000b8dc6ੰ≮\U000b94d9.\U0005e3a77\U000e0bd9ڶ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000b8dc6ੰ≮\U000b94d9.\U0005e3a77\U000e0bd9ڶ', strict=True)
+
+ def test_uts46_3523(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ycc893jqh38rb6fa.xn--7-5uc53836ixt41c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ycc893jqh38rb6fa.xn--7-5uc53836ixt41c', strict=True)
+
+ def test_uts46_3524(self):
+ self.assertEqual(idna.decode('𞤪.ς', uts46=True, strict=True), '𞤪.ς')
+ self.assertEqual(idna.encode('𞤪.ς', uts46=True, strict=True), b'xn--ie6h.xn--3xa')
+
+ def test_uts46_3525(self):
+ self.assertEqual(idna.decode('𞤈.Σ', uts46=True, strict=True), '𞤪.σ')
+ self.assertEqual(idna.encode('𞤈.Σ', uts46=True, strict=True), b'xn--ie6h.xn--4xa')
+
+ def test_uts46_3526(self):
+ self.assertEqual(idna.decode('𞤪.σ', uts46=True, strict=True), '𞤪.σ')
+ self.assertEqual(idna.encode('𞤪.σ', uts46=True, strict=True), b'xn--ie6h.xn--4xa')
+
+ def test_uts46_3527(self):
+ self.assertEqual(idna.decode('𞤈.σ', uts46=True, strict=True), '𞤪.σ')
+ self.assertEqual(idna.encode('𞤈.σ', uts46=True, strict=True), b'xn--ie6h.xn--4xa')
+
+ def test_uts46_3528(self):
+ self.assertEqual(idna.decode('xn--ie6h.xn--4xa', uts46=True, strict=True), '𞤪.σ')
+ self.assertEqual(idna.encode('xn--ie6h.xn--4xa', uts46=True, strict=True), b'xn--ie6h.xn--4xa')
+
+ def test_uts46_3529(self):
+ self.assertEqual(idna.decode('𞤈.ς', uts46=True, strict=True), '𞤪.ς')
+ self.assertEqual(idna.encode('𞤈.ς', uts46=True, strict=True), b'xn--ie6h.xn--3xa')
+
+ def test_uts46_3530(self):
+ self.assertEqual(idna.decode('xn--ie6h.xn--3xa', uts46=True, strict=True), '𞤪.ς')
+ self.assertEqual(idna.encode('xn--ie6h.xn--3xa', uts46=True, strict=True), b'xn--ie6h.xn--3xa')
+
+ def test_uts46_3531(self):
+ self.assertEqual(idna.decode('𞤪.Σ', uts46=True, strict=True), '𞤪.σ')
+ self.assertEqual(idna.encode('𞤪.Σ', uts46=True, strict=True), b'xn--ie6h.xn--4xa')
+
+ def test_uts46_3532(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႺ。ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႺ。ς', strict=True)
+
+ def test_uts46_3533(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႺ。ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႺ。ς', strict=True)
+
+ def test_uts46_3534(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴚ。ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴚ。ς', strict=True)
+
+ def test_uts46_3535(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႺ。Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႺ。Σ', strict=True)
+
+ def test_uts46_3536(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴚ。σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴚ。σ', strict=True)
+
+ def test_uts46_3537(self):
+ self.assertEqual(idna.decode('xn--ilj.xn--4xa', uts46=True, strict=True), 'ⴚ.σ')
+ self.assertEqual(idna.encode('xn--ilj.xn--4xa', uts46=True, strict=True), b'xn--ilj.xn--4xa')
+
+ def test_uts46_3538(self):
+ self.assertEqual(idna.decode('ⴚ.σ', uts46=True, strict=True), 'ⴚ.σ')
+ self.assertEqual(idna.encode('ⴚ.σ', uts46=True, strict=True), b'xn--ilj.xn--4xa')
+
+ def test_uts46_3539(self):
+ self.assertEqual(idna.decode('Ⴚ.Σ', uts46=True, strict=True), 'ⴚ.σ')
+ self.assertEqual(idna.encode('Ⴚ.Σ', uts46=True, strict=True), b'xn--ilj.xn--4xa')
+
+ def test_uts46_3540(self):
+ self.assertEqual(idna.decode('ⴚ.ς', uts46=True, strict=True), 'ⴚ.ς')
+ self.assertEqual(idna.encode('ⴚ.ς', uts46=True, strict=True), b'xn--ilj.xn--3xa')
+
+ def test_uts46_3541(self):
+ self.assertEqual(idna.decode('Ⴚ.ς', uts46=True, strict=True), 'ⴚ.ς')
+ self.assertEqual(idna.encode('Ⴚ.ς', uts46=True, strict=True), b'xn--ilj.xn--3xa')
+
+ def test_uts46_3542(self):
+ self.assertEqual(idna.decode('xn--ilj.xn--3xa', uts46=True, strict=True), 'ⴚ.ς')
+ self.assertEqual(idna.encode('xn--ilj.xn--3xa', uts46=True, strict=True), b'xn--ilj.xn--3xa')
+
+ def test_uts46_3543(self):
+ self.assertEqual(idna.decode('Ⴚ.σ', uts46=True, strict=True), 'ⴚ.σ')
+ self.assertEqual(idna.encode('Ⴚ.σ', uts46=True, strict=True), b'xn--ilj.xn--4xa')
+
+ def test_uts46_3544(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug262c.xn--4xa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug262c.xn--4xa', strict=True)
+
+ def test_uts46_3545(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug262c.xn--3xa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug262c.xn--3xa', strict=True)
+
+ def test_uts46_3546(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴚ。ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴚ。ς', strict=True)
+
+ def test_uts46_3547(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႺ。Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႺ。Σ', strict=True)
+
+ def test_uts46_3548(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴚ。σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴚ。σ', strict=True)
+
+ def test_uts46_3549(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ynd.xn--4xa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ynd.xn--4xa', strict=True)
+
+ def test_uts46_3550(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ynd.xn--3xa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ynd.xn--3xa', strict=True)
+
+ def test_uts46_3551(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ynd759e.xn--4xa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ynd759e.xn--4xa', strict=True)
+
+ def test_uts46_3552(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ynd759e.xn--3xa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ynd759e.xn--3xa', strict=True)
+
+ def test_uts46_3553(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤃.𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤃.𐹦', strict=True)
+
+ def test_uts46_3554(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤃.𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤃.𐹦', strict=True)
+
+ def test_uts46_3555(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤥.𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤥.𐹦', strict=True)
+
+ def test_uts46_3556(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--de6h.xn--eo0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--de6h.xn--eo0d', strict=True)
+
+ def test_uts46_3557(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤥.𐹦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤥.𐹦', strict=True)
+
+ def test_uts46_3558(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d⾕。\u200c꥓̐ꡎ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d⾕。\u200c꥓̐ꡎ', strict=True)
+
+ def test_uts46_3559(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d⾕。\u200c꥓̐ꡎ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d⾕。\u200c꥓̐ꡎ', strict=True)
+
+ def test_uts46_3560(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d谷。\u200c꥓̐ꡎ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d谷。\u200c꥓̐ꡎ', strict=True)
+
+ def test_uts46_3561(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6g3a.xn--0sa8175flwa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6g3a.xn--0sa8175flwa', strict=True)
+
+ def test_uts46_3562(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug0273b.xn--0sa359l6n7g13a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug0273b.xn--0sa359l6n7g13a', strict=True)
+
+ def test_uts46_3563(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڪ-뉔.𞤐\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڪ-뉔.𞤐\u200c', strict=True)
+
+ def test_uts46_3564(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڪ-뉔.𞤐\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڪ-뉔.𞤐\u200c', strict=True)
+
+ def test_uts46_3565(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڪ-뉔.𞤐\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڪ-뉔.𞤐\u200c', strict=True)
+
+ def test_uts46_3566(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڪ-뉔.𞤐\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڪ-뉔.𞤐\u200c', strict=True)
+
+ def test_uts46_3567(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڪ-뉔.𞤲\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڪ-뉔.𞤲\u200c', strict=True)
+
+ def test_uts46_3568(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڪ-뉔.𞤲\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڪ-뉔.𞤲\u200c', strict=True)
+
+ def test_uts46_3569(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----guc3592k.xn--qe6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----guc3592k.xn--qe6h', strict=True)
+
+ def test_uts46_3570(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----guc3592k.xn--0ug7611p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----guc3592k.xn--0ug7611p', strict=True)
+
+ def test_uts46_3571(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڪ-뉔.𞤲\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڪ-뉔.𞤲\u200c', strict=True)
+
+ def test_uts46_3572(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڪ-뉔.𞤲\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڪ-뉔.𞤲\u200c', strict=True)
+
+ def test_uts46_3573(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00054cb55ᦛς.꣄ݻܸ᳒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00054cb55ᦛς.꣄ݻܸ᳒', strict=True)
+
+ def test_uts46_3574(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00054cb55ᦛς.꣄ݻܸ᳒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00054cb55ᦛς.꣄ݻܸ᳒', strict=True)
+
+ def test_uts46_3575(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00054cb55ᦛς.꣄ݻܸ᳒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00054cb55ᦛς.꣄ݻܸ᳒', strict=True)
+
+ def test_uts46_3576(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00054cb55ᦛΣ.꣄ݻܸ᳒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00054cb55ᦛΣ.꣄ݻܸ᳒', strict=True)
+
+ def test_uts46_3577(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00054cb55ᦛσ.꣄ݻܸ᳒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00054cb55ᦛσ.꣄ݻܸ᳒', strict=True)
+
+ def test_uts46_3578(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5-0mb988ng603j.xn--fob7kk44dl41k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5-0mb988ng603j.xn--fob7kk44dl41k', strict=True)
+
+ def test_uts46_3579(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5-ymb298ng603j.xn--fob7kk44dl41k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5-ymb298ng603j.xn--fob7kk44dl41k', strict=True)
+
+ def test_uts46_3580(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00054cb55ᦛΣ.꣄ݻܸ᳒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00054cb55ᦛΣ.꣄ݻܸ᳒', strict=True)
+
+ def test_uts46_3581(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00054cb55ᦛσ.꣄ݻܸ᳒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00054cb55ᦛσ.꣄ݻܸ᳒', strict=True)
+
+ def test_uts46_3582(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00054cb55ᦛΣ.꣄ݻܸ᳒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00054cb55ᦛΣ.꣄ݻܸ᳒', strict=True)
+
+ def test_uts46_3583(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00054cb55ᦛσ.꣄ݻܸ᳒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00054cb55ᦛσ.꣄ݻܸ᳒', strict=True)
+
+ def test_uts46_3584(self):
+ self.assertEqual(idna.decode('淽。ᠾ', uts46=True, strict=True), '淽.ᠾ')
+ self.assertEqual(idna.encode('淽。ᠾ', uts46=True, strict=True), b'xn--34w.xn--x7e')
+
+ def test_uts46_3585(self):
+ self.assertEqual(idna.decode('xn--34w.xn--x7e', uts46=True, strict=True), '淽.ᠾ')
+ self.assertEqual(idna.encode('xn--34w.xn--x7e', uts46=True, strict=True), b'xn--34w.xn--x7e')
+
+ def test_uts46_3586(self):
+ self.assertEqual(idna.decode('淽.ᠾ', uts46=True, strict=True), '淽.ᠾ')
+ self.assertEqual(idna.encode('淽.ᠾ', uts46=True, strict=True), b'xn--34w.xn--x7e')
+
+ def test_uts46_3587(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹴𑘷。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹴𑘷。-', strict=True)
+
+ def test_uts46_3588(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--so0do6k.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--so0do6k.-', strict=True)
+
+ def test_uts46_3589(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000aca29Ⴓ❓。𑄨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000aca29Ⴓ❓。𑄨', strict=True)
+
+ def test_uts46_3590(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000aca29Ⴓ❓。𑄨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000aca29Ⴓ❓。𑄨', strict=True)
+
+ def test_uts46_3591(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000aca29ⴓ❓。𑄨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000aca29ⴓ❓。𑄨', strict=True)
+
+ def test_uts46_3592(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8di78qvw32y.xn--k80d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8di78qvw32y.xn--k80d', strict=True)
+
+ def test_uts46_3593(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000aca29ⴓ❓。𑄨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000aca29ⴓ❓。𑄨', strict=True)
+
+ def test_uts46_3594(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rnd896i0j14q.xn--k80d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rnd896i0j14q.xn--k80d', strict=True)
+
+ def test_uts46_3595(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌Ⴇ。ßႣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌Ⴇ。ßႣ', strict=True)
+
+ def test_uts46_3596(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌Ⴇ。ßႣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌Ⴇ。ßႣ', strict=True)
+
+ def test_uts46_3597(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤮ⴇ。ßⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤮ⴇ。ßⴃ', strict=True)
+
+ def test_uts46_3598(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌Ⴇ。SSႣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌Ⴇ。SSႣ', strict=True)
+
+ def test_uts46_3599(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤮ⴇ。ssⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤮ⴇ。ssⴃ', strict=True)
+
+ def test_uts46_3600(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌ⴇ。Ssⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌ⴇ。Ssⴃ', strict=True)
+
+ def test_uts46_3601(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ykj9323eegwf.xn--ss-151a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ykj9323eegwf.xn--ss-151a', strict=True)
+
+ def test_uts46_3602(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug332c3q0pr56g.xn--ss-151a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug332c3q0pr56g.xn--ss-151a', strict=True)
+
+ def test_uts46_3603(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug332c3q0pr56g.xn--zca417t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug332c3q0pr56g.xn--zca417t', strict=True)
+
+ def test_uts46_3604(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤮ⴇ。ßⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤮ⴇ。ßⴃ', strict=True)
+
+ def test_uts46_3605(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌Ⴇ。SSႣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌Ⴇ。SSႣ', strict=True)
+
+ def test_uts46_3606(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤮ⴇ。ssⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤮ⴇ。ssⴃ', strict=True)
+
+ def test_uts46_3607(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌ⴇ。Ssⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌ⴇ。Ssⴃ', strict=True)
+
+ def test_uts46_3608(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fnd1201kegrf.xn--ss-fek', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fnd1201kegrf.xn--ss-fek', strict=True)
+
+ def test_uts46_3609(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fnd599eyj4pr50g.xn--ss-fek', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fnd599eyj4pr50g.xn--ss-fek', strict=True)
+
+ def test_uts46_3610(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fnd599eyj4pr50g.xn--zca681f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fnd599eyj4pr50g.xn--zca681f', strict=True)
+
+ def test_uts46_3611(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌ⴇ。ßⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌ⴇ。ßⴃ', strict=True)
+
+ def test_uts46_3612(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌ⴇ。ssⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌ⴇ。ssⴃ', strict=True)
+
+ def test_uts46_3613(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌Ⴇ。Ssⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌Ⴇ。Ssⴃ', strict=True)
+
+ def test_uts46_3614(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fnd1201kegrf.xn--ss-151a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fnd1201kegrf.xn--ss-151a', strict=True)
+
+ def test_uts46_3615(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fnd599eyj4pr50g.xn--ss-151a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fnd599eyj4pr50g.xn--ss-151a', strict=True)
+
+ def test_uts46_3616(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌ⴇ。ßⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌ⴇ。ßⴃ', strict=True)
+
+ def test_uts46_3617(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌ⴇ。ssⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌ⴇ。ssⴃ', strict=True)
+
+ def test_uts46_3618(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐹡𞤌Ⴇ。Ssⴃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐹡𞤌Ⴇ。Ssⴃ', strict=True)
+
+ def test_uts46_3619(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u17ff。\U0001eb33', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u17ff。\U0001eb33', strict=True)
+
+ def test_uts46_3620(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u17ff。\U0001eb33', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u17ff。\U0001eb33', strict=True)
+
+ def test_uts46_3621(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--45e.xn--et6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--45e.xn--et6h', strict=True)
+
+ def test_uts46_3622(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ْ\u200d。್𑚳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ْ\u200d。್𑚳', strict=True)
+
+ def test_uts46_3623(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ْ\u200d。್𑚳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ْ\u200d。್𑚳', strict=True)
+
+ def test_uts46_3624(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uhb.xn--8tc4527k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uhb.xn--8tc4527k', strict=True)
+
+ def test_uts46_3625(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uhb882k.xn--8tc4527k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uhb882k.xn--8tc4527k', strict=True)
+
+ def test_uts46_3626(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠ᠻ.ݭ𞥃≮\U000dfdfa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠ᠻ.ݭ𞥃≮\U000dfdfa', strict=True)
+
+ def test_uts46_3627(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠ᠻ.ݭ𞥃≮\U000dfdfa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠ᠻ.ݭ𞥃≮\U000dfdfa', strict=True)
+
+ def test_uts46_3628(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠ᠻ.ݭ𞥃≮\U000dfdfa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠ᠻ.ݭ𞥃≮\U000dfdfa', strict=True)
+
+ def test_uts46_3629(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠ᠻ.ݭ𞥃≮\U000dfdfa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠ᠻ.ݭ𞥃≮\U000dfdfa', strict=True)
+
+ def test_uts46_3630(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠ᠻ.ݭ𞤡≮\U000dfdfa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠ᠻ.ݭ𞤡≮\U000dfdfa', strict=True)
+
+ def test_uts46_3631(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠ᠻ.ݭ𞤡≮\U000dfdfa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠ᠻ.ݭ𞤡≮\U000dfdfa', strict=True)
+
+ def test_uts46_3632(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----g6j886c.xn--xpb049kk353abj99f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----g6j886c.xn--xpb049kk353abj99f', strict=True)
+
+ def test_uts46_3633(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠ᠻ.ݭ𞤡≮\U000dfdfa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠ᠻ.ݭ𞤡≮\U000dfdfa', strict=True)
+
+ def test_uts46_3634(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠ᠻ.ݭ𞤡≮\U000dfdfa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠ᠻ.ݭ𞤡≮\U000dfdfa', strict=True)
+
+ def test_uts46_3635(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0c06≯\u07b5\U00010eea.\U0008a955≮𑁆ࡌ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0c06≯\u07b5\U00010eea.\U0008a955≮𑁆ࡌ', strict=True)
+
+ def test_uts46_3636(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0c06≯\u07b5\U00010eea.\U0008a955≮𑁆ࡌ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0c06≯\u07b5\U00010eea.\U0008a955≮𑁆ࡌ', strict=True)
+
+ def test_uts46_3637(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0c06≯\u07b5\U00010eea.\U0008a955≮𑁆ࡌ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0c06≯\u07b5\U00010eea.\U0008a955≮𑁆ࡌ', strict=True)
+
+ def test_uts46_3638(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0c06≯\u07b5\U00010eea.\U0008a955≮𑁆ࡌ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0c06≯\u07b5\U00010eea.\U0008a955≮𑁆ࡌ', strict=True)
+
+ def test_uts46_3639(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zrb797kdm1oes34i.xn--bwb394k8k2o25n6d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zrb797kdm1oes34i.xn--bwb394k8k2o25n6d', strict=True)
+
+ def test_uts46_3640(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠\U000e62c2.\u0600்-ڹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠\U000e62c2.\u0600்-ڹ', strict=True)
+
+ def test_uts46_3641(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠\U000e62c2.\u0600்-ڹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠\U000e62c2.\u0600்-ڹ', strict=True)
+
+ def test_uts46_3642(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch22084l.xn----qkc07co6n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch22084l.xn----qkc07co6n', strict=True)
+
+ def test_uts46_3643(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '៝\U000e0063≠。𐹼𐋤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '៝\U000e0063≠。𐹼𐋤', strict=True)
+
+ def test_uts46_3644(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '៝\U000e0063≠。𐹼𐋤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '៝\U000e0063≠。𐹼𐋤', strict=True)
+
+ def test_uts46_3645(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '៝\U000e0063≠。𐹼𐋤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '៝\U000e0063≠。𐹼𐋤', strict=True)
+
+ def test_uts46_3646(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '៝\U000e0063≠。𐹼𐋤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '៝\U000e0063≠。𐹼𐋤', strict=True)
+
+ def test_uts46_3647(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--54e694cn389z.xn--787ct8r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--54e694cn389z.xn--787ct8r', strict=True)
+
+ def test_uts46_3648(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß𰀻\U00046b17。𝩨🕮ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß𰀻\U00046b17。𝩨🕮ß', strict=True)
+
+ def test_uts46_3649(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß𰀻\U00046b17。𝩨🕮ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß𰀻\U00046b17。𝩨🕮ß', strict=True)
+
+ def test_uts46_3650(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS𰀻\U00046b17。𝩨🕮SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS𰀻\U00046b17。𝩨🕮SS', strict=True)
+
+ def test_uts46_3651(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss𰀻\U00046b17。𝩨🕮ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss𰀻\U00046b17。𝩨🕮ss', strict=True)
+
+ def test_uts46_3652(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss𰀻\U00046b17。𝩨🕮Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss𰀻\U00046b17。𝩨🕮Ss', strict=True)
+
+ def test_uts46_3653(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-jl59biy67d.xn--ss-4d11aw87d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-jl59biy67d.xn--ss-4d11aw87d', strict=True)
+
+ def test_uts46_3654(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca20040bgrkh.xn--zca3653v86qa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca20040bgrkh.xn--zca3653v86qa', strict=True)
+
+ def test_uts46_3655(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS𰀻\U00046b17。𝩨🕮SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS𰀻\U00046b17。𝩨🕮SS', strict=True)
+
+ def test_uts46_3656(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss𰀻\U00046b17。𝩨🕮ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss𰀻\U00046b17。𝩨🕮ss', strict=True)
+
+ def test_uts46_3657(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss𰀻\U00046b17。𝩨🕮Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss𰀻\U00046b17。𝩨🕮Ss', strict=True)
+
+ def test_uts46_3658(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。\u200c', strict=True)
+
+ def test_uts46_3659(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--0ug', strict=True)
+
+ def test_uts46_3660(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '҃𐭞\u200d.ឹ\U0001ebcc\U0009fa5a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '҃𐭞\u200d.ឹ\U0001ebcc\U0009fa5a', strict=True)
+
+ def test_uts46_3661(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--m3a6965k.xn--43e8670vmd79b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--m3a6965k.xn--43e8670vmd79b', strict=True)
+
+ def test_uts46_3662(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--m3a412lrr0o.xn--43e8670vmd79b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--m3a412lrr0o.xn--43e8670vmd79b', strict=True)
+
+ def test_uts46_3663(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐠨\u200c临。ꡢ\U00084ddeⶏ𐹣', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐠨\u200c临。ꡢ\U00084ddeⶏ𐹣', strict=True)
+
+ def test_uts46_3664(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--miq9646b.xn--uojv340bk71c99u9f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--miq9646b.xn--uojv340bk71c99u9f', strict=True)
+
+ def test_uts46_3665(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0uga2656aop9k.xn--uojv340bk71c99u9f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0uga2656aop9k.xn--uojv340bk71c99u9f', strict=True)
+
+ def test_uts46_3666(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0458.󠄮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0458.󠄮', strict=True)
+
+ def test_uts46_3667(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0458.󠄮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0458.󠄮', strict=True)
+
+ def test_uts46_3668(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--s136e.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--s136e.', strict=True)
+
+ def test_uts46_3669(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫄്.꫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫄്.꫶', strict=True)
+
+ def test_uts46_3670(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫄്.꫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫄്.꫶', strict=True)
+
+ def test_uts46_3671(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wxc7880k.xn--2v9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wxc7880k.xn--2v9a', strict=True)
+
+ def test_uts46_3672(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꦷ\U000ddd59멹。⒛\U000e0a07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꦷ\U000ddd59멹。⒛\U000e0a07', strict=True)
+
+ def test_uts46_3673(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꦷ\U000ddd59멹。⒛\U000e0a07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꦷ\U000ddd59멹。⒛\U000e0a07', strict=True)
+
+ def test_uts46_3674(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꦷ\U000ddd59멹。20.\U000e0a07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꦷ\U000ddd59멹。20.\U000e0a07', strict=True)
+
+ def test_uts46_3675(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꦷ\U000ddd59멹。20.\U000e0a07', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꦷ\U000ddd59멹。20.\U000e0a07', strict=True)
+
+ def test_uts46_3676(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ym9av13acp85w.20.xn--d846e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ym9av13acp85w.20.xn--d846e', strict=True)
+
+ def test_uts46_3677(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ym9av13acp85w.xn--dth22121k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ym9av13acp85w.xn--dth22121k', strict=True)
+
+ def test_uts46_3678(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳⒊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳⒊', strict=True)
+
+ def test_uts46_3679(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳⒊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳⒊', strict=True)
+
+ def test_uts46_3680(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳3.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳3.', strict=True)
+
+ def test_uts46_3681(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳3.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳3.', strict=True)
+
+ def test_uts46_3682(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳3.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳3.', strict=True)
+
+ def test_uts46_3683(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳3.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳3.', strict=True)
+
+ def test_uts46_3684(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wkj8016bne45io02g.xn--3-55c6803r.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wkj8016bne45io02g.xn--3-55c6803r.', strict=True)
+
+ def test_uts46_3685(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳⒊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳⒊', strict=True)
+
+ def test_uts46_3686(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳⒊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴅ\U000f2b39릖\U000e0d9a.ݷ𐹳⒊', strict=True)
+
+ def test_uts46_3687(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wkj8016bne45io02g.xn--7pb000mwm4n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wkj8016bne45io02g.xn--7pb000mwm4n', strict=True)
+
+ def test_uts46_3688(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dnd2167fnet0io02g.xn--3-55c6803r.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dnd2167fnet0io02g.xn--3-55c6803r.', strict=True)
+
+ def test_uts46_3689(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dnd2167fnet0io02g.xn--7pb000mwm4n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dnd2167fnet0io02g.xn--7pb000mwm4n', strict=True)
+
+ def test_uts46_3690(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。︒', strict=True)
+
+ def test_uts46_3691(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c。。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c。。', strict=True)
+
+ def test_uts46_3692(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..', strict=True)
+
+ def test_uts46_3693(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug..', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug..', strict=True)
+
+ def test_uts46_3694(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--y86c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--y86c', strict=True)
+
+ def test_uts46_3695(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--y86c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--y86c', strict=True)
+
+ def test_uts46_3696(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ݭ.₄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ݭ.₄', strict=True)
+
+ def test_uts46_3697(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ݭ.₄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ݭ.₄', strict=True)
+
+ def test_uts46_3698(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ݭ.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ݭ.e', strict=True)
+
+ def test_uts46_3699(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ݭ.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ݭ.e', strict=True)
+
+ def test_uts46_3700(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ݭ.E', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ݭ.E', strict=True)
+
+ def test_uts46_3701(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯ݭ.E', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯ݭ.E', strict=True)
+
+ def test_uts46_3702(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xpb149k.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xpb149k.e', strict=True)
+
+ def test_uts46_3703(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡲ-𝟹.ß-\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡲ-𝟹.ß-\u200c-', strict=True)
+
+ def test_uts46_3704(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡲ-3.ß-\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡲ-3.ß-\u200c-', strict=True)
+
+ def test_uts46_3705(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡲ-3.SS-\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡲ-3.SS-\u200c-', strict=True)
+
+ def test_uts46_3706(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡲ-3.ss-\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡲ-3.ss-\u200c-', strict=True)
+
+ def test_uts46_3707(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡲ-3.Ss-\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡲ-3.Ss-\u200c-', strict=True)
+
+ def test_uts46_3708(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---3-p9o.ss--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---3-p9o.ss--', strict=True)
+
+ def test_uts46_3709(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---3-p9o.xn--ss---276a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---3-p9o.xn--ss---276a', strict=True)
+
+ def test_uts46_3710(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---3-p9o.xn-----fia9303a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---3-p9o.xn-----fia9303a', strict=True)
+
+ def test_uts46_3711(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡲ-𝟹.SS-\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡲ-𝟹.SS-\u200c-', strict=True)
+
+ def test_uts46_3712(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡲ-𝟹.ss-\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡲ-𝟹.ss-\u200c-', strict=True)
+
+ def test_uts46_3713(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡲ-𝟹.Ss-\u200c-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡲ-𝟹.Ss-\u200c-', strict=True)
+
+ def test_uts46_3714(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﴈ𝟦ه\U000ce2af。Ӏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﴈ𝟦ه\U000ce2af。Ӏ', strict=True)
+
+ def test_uts46_3715(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ضي4ه\U000ce2af。Ӏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ضي4ه\U000ce2af。Ӏ', strict=True)
+
+ def test_uts46_3716(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ضي4ه\U000ce2af。ӏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ضي4ه\U000ce2af。ӏ', strict=True)
+
+ def test_uts46_3717(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-tnc6ck183523b.xn--s5a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-tnc6ck183523b.xn--s5a', strict=True)
+
+ def test_uts46_3718(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﴈ𝟦ه\U000ce2af。ӏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﴈ𝟦ه\U000ce2af。ӏ', strict=True)
+
+ def test_uts46_3719(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-tnc6ck183523b.xn--d5a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-tnc6ck183523b.xn--d5a', strict=True)
+
+ def test_uts46_3720(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.\u0602آ𑆾🐹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.\u0602آ𑆾🐹', strict=True)
+
+ def test_uts46_3721(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.\u0602آ𑆾🐹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.\u0602آ𑆾🐹', strict=True)
+
+ def test_uts46_3722(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--kfb8dy983hgl7g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--kfb8dy983hgl7g', strict=True)
+
+ def test_uts46_3723(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d9d9cᢘ。᩿⺢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d9d9cᢘ。᩿⺢', strict=True)
+
+ def test_uts46_3724(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ibf35138o.xn--fpfz94g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ibf35138o.xn--fpfz94g', strict=True)
+
+ def test_uts46_3725(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ႷᠤႫ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ႷᠤႫ。?͌س觴', strict=True)
+
+ def test_uts46_3726(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ႷᠤႫ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ႷᠤႫ。?͌س觴', strict=True)
+
+ def test_uts46_3727(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ႷᠤႫ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ႷᠤႫ。?͌س觴', strict=True)
+
+ def test_uts46_3728(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ႷᠤႫ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ႷᠤႫ。?͌س觴', strict=True)
+
+ def test_uts46_3729(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ⴗᠤⴋ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ⴗᠤⴋ。?͌س觴', strict=True)
+
+ def test_uts46_3730(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ⴗᠤⴋ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ⴗᠤⴋ。?͌س觴', strict=True)
+
+ def test_uts46_3731(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠Ⴗᠤⴋ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠Ⴗᠤⴋ。?͌س觴', strict=True)
+
+ def test_uts46_3732(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠Ⴗᠤⴋ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠Ⴗᠤⴋ。?͌س觴', strict=True)
+
+ def test_uts46_3733(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--66e353ce0ilb.xn--?-7fb34t0u7s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--66e353ce0ilb.xn--?-7fb34t0u7s', strict=True)
+
+ def test_uts46_3734(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ⴗᠤⴋ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ⴗᠤⴋ。?͌س觴', strict=True)
+
+ def test_uts46_3735(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠ⴗᠤⴋ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠ⴗᠤⴋ。?͌س觴', strict=True)
+
+ def test_uts46_3736(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠Ⴗᠤⴋ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠Ⴗᠤⴋ。?͌س觴', strict=True)
+
+ def test_uts46_3737(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠Ⴗᠤⴋ。?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠Ⴗᠤⴋ。?͌س觴', strict=True)
+
+ def test_uts46_3738(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vnd619as6ig6k.xn--?-7fb34t0u7s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vnd619as6ig6k.xn--?-7fb34t0u7s', strict=True)
+
+ def test_uts46_3739(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jndx718cnnl.xn--?-7fb34t0u7s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jndx718cnnl.xn--?-7fb34t0u7s', strict=True)
+
+ def test_uts46_3740(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vnd619as6ig6k.?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vnd619as6ig6k.?͌س觴', strict=True)
+
+ def test_uts46_3741(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--VND619AS6IG6K.?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--VND619AS6IG6K.?͌س觴', strict=True)
+
+ def test_uts46_3742(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--Vnd619as6ig6k.?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--Vnd619as6ig6k.?͌س觴', strict=True)
+
+ def test_uts46_3743(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--66e353ce0ilb.?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--66e353ce0ilb.?͌س觴', strict=True)
+
+ def test_uts46_3744(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--66E353CE0ILB.?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--66E353CE0ILB.?͌س觴', strict=True)
+
+ def test_uts46_3745(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--66e353ce0ilb.?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--66e353ce0ilb.?͌س觴', strict=True)
+
+ def test_uts46_3746(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jndx718cnnl.?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jndx718cnnl.?͌س觴', strict=True)
+
+ def test_uts46_3747(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--JNDX718CNNL.?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--JNDX718CNNL.?͌س觴', strict=True)
+
+ def test_uts46_3748(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--Jndx718cnnl.?͌س觴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--Jndx718cnnl.?͌س觴', strict=True)
+
+ def test_uts46_3749(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٧.\U00010968', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٧.\U00010968', strict=True)
+
+ def test_uts46_3750(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gib.xn--vm9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gib.xn--vm9c', strict=True)
+
+ def test_uts46_3751(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꧀𝟯。\u200d\U0007c465𐹪᯳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꧀𝟯。\u200d\U0007c465𐹪᯳', strict=True)
+
+ def test_uts46_3752(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꧀3。\u200d\U0007c465𐹪᯳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꧀3。\u200d\U0007c465𐹪᯳', strict=True)
+
+ def test_uts46_3753(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-5z4e.xn--1zfz754hncv8b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-5z4e.xn--1zfz754hncv8b', strict=True)
+
+ def test_uts46_3754(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-5z4e.xn--1zf96ony8ygd68c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-5z4e.xn--1zf96ony8ygd68c', strict=True)
+
+ def test_uts46_3755(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a35444\U000605bd.≯٤𑀾\U000e0e0c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a35444\U000605bd.≯٤𑀾\U000e0e0c', strict=True)
+
+ def test_uts46_3756(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a35444\U000605bd.≯٤𑀾\U000e0e0c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a35444\U000605bd.≯٤𑀾\U000e0e0c', strict=True)
+
+ def test_uts46_3757(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-fg85dl688i.xn--dib174li86ntdy0i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-fg85dl688i.xn--dib174li86ntdy0i', strict=True)
+
+ def test_uts46_3758(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000971a7𝟯。⒈᩶𝟚\U000a060c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000971a7𝟯。⒈᩶𝟚\U000a060c', strict=True)
+
+ def test_uts46_3759(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000971a73。1.᩶2\U000a060c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000971a73。1.᩶2\U000a060c', strict=True)
+
+ def test_uts46_3760(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-rj42h.1.xn--2-13k96240l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-rj42h.1.xn--2-13k96240l', strict=True)
+
+ def test_uts46_3761(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-rj42h.xn--2-13k746cq465x', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-rj42h.xn--2-13k746cq465x', strict=True)
+
+ def test_uts46_3762(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d₅⒈。≯𝟴\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d₅⒈。≯𝟴\u200d', strict=True)
+
+ def test_uts46_3763(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d₅⒈。≯𝟴\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d₅⒈。≯𝟴\u200d', strict=True)
+
+ def test_uts46_3764(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d51.。≯8\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d51.。≯8\u200d', strict=True)
+
+ def test_uts46_3765(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d51.。≯8\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d51.。≯8\u200d', strict=True)
+
+ def test_uts46_3766(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '51..xn--8-ogo', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '51..xn--8-ogo', strict=True)
+
+ def test_uts46_3767(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--51-l1t..xn--8-ugn00i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--51-l1t..xn--8-ugn00i', strict=True)
+
+ def test_uts46_3768(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5-ecp.xn--8-ogo', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5-ecp.xn--8-ogo', strict=True)
+
+ def test_uts46_3769(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5-tgnz5r.xn--8-ugn00i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5-tgnz5r.xn--8-ugn00i', strict=True)
+
+ def test_uts46_3770(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡰڗႆ.\U000aa619ܯ≠\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡰڗႆ.\U000aa619ܯ≠\u200c', strict=True)
+
+ def test_uts46_3771(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡰڗႆ.\U000aa619ܯ≠\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡰڗႆ.\U000aa619ܯ≠\u200c', strict=True)
+
+ def test_uts46_3772(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡰڗႆ.\U000aa619ܯ≠\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡰڗႆ.\U000aa619ܯ≠\u200c', strict=True)
+
+ def test_uts46_3773(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡰڗႆ.\U000aa619ܯ≠\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡰڗႆ.\U000aa619ܯ≠\u200c', strict=True)
+
+ def test_uts46_3774(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tjb002cn51k.xn--5nb630lbj91q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tjb002cn51k.xn--5nb630lbj91q', strict=True)
+
+ def test_uts46_3775(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tjb002cn51k.xn--5nb448jcubcz547b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tjb002cn51k.xn--5nb448jcubcz547b', strict=True)
+
+ def test_uts46_3776(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑄱。\U000aa33f𐹵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑄱。\U000aa33f𐹵', strict=True)
+
+ def test_uts46_3777(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑄱。\U000aa33f𐹵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑄱。\U000aa33f𐹵', strict=True)
+
+ def test_uts46_3778(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t80d.xn--to0d14792b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t80d.xn--to0d14792b', strict=True)
+
+ def test_uts46_3779(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟥\u0600。ܽ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟥\u0600。ܽ', strict=True)
+
+ def test_uts46_3780(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3\u0600。ܽ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3\u0600。ܽ', strict=True)
+
+ def test_uts46_3781(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-rkc.xn--kob', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-rkc.xn--kob', strict=True)
+
+ def test_uts46_3782(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ط𐹣٦.ݭ긷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ط𐹣٦.ݭ긷', strict=True)
+
+ def test_uts46_3783(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ط𐹣٦.ݭ긷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ط𐹣٦.ݭ긷', strict=True)
+
+ def test_uts46_3784(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2gb8gu829f.xn--xpb0156f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2gb8gu829f.xn--xpb0156f', strict=True)
+
+ def test_uts46_3785(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒Ↄⷧ\U000be003.Ⴗ\U000108de', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒Ↄⷧ\U000be003.Ⴗ\U000108de', strict=True)
+
+ def test_uts46_3786(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。Ↄⷧ\U000be003.Ⴗ\U000108de', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。Ↄⷧ\U000be003.Ⴗ\U000108de', strict=True)
+
+ def test_uts46_3787(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。ↄⷧ\U000be003.ⴗ\U000108de', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。ↄⷧ\U000be003.ⴗ\U000108de', strict=True)
+
+ def test_uts46_3788(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--r5gy00cll06u.xn--flj4541e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--r5gy00cll06u.xn--flj4541e', strict=True)
+
+ def test_uts46_3789(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒ↄⷧ\U000be003.ⴗ\U000108de', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒ↄⷧ\U000be003.ⴗ\U000108de', strict=True)
+
+ def test_uts46_3790(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--r5gy00c056n0226g.xn--flj4541e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--r5gy00c056n0226g.xn--flj4541e', strict=True)
+
+ def test_uts46_3791(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--q5g000cll06u.xn--vnd8618j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--q5g000cll06u.xn--vnd8618j', strict=True)
+
+ def test_uts46_3792(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--q5g000c056n0226g.xn--vnd8618j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--q5g000c056n0226g.xn--vnd8618j', strict=True)
+
+ def test_uts46_3793(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0600.ֱ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0600.ֱ', strict=True)
+
+ def test_uts46_3794(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ifb.xn--8cb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ifb.xn--8cb', strict=True)
+
+ def test_uts46_3795(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς≯。𐹽', strict=True)
+
+ def test_uts46_3796(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς≯。𐹽', strict=True)
+
+ def test_uts46_3797(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς≯。𐹽', strict=True)
+
+ def test_uts46_3798(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς≯。𐹽', strict=True)
+
+ def test_uts46_3799(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ≯。𐹽', strict=True)
+
+ def test_uts46_3800(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ≯。𐹽', strict=True)
+
+ def test_uts46_3801(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ≯。𐹽', strict=True)
+
+ def test_uts46_3802(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ≯。𐹽', strict=True)
+
+ def test_uts46_3803(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa818m.xn--1o0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa818m.xn--1o0d', strict=True)
+
+ def test_uts46_3804(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa028m.xn--1o0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa028m.xn--1o0d', strict=True)
+
+ def test_uts46_3805(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ≯。𐹽', strict=True)
+
+ def test_uts46_3806(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ≯。𐹽', strict=True)
+
+ def test_uts46_3807(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ≯。𐹽', strict=True)
+
+ def test_uts46_3808(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ≯。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ≯。𐹽', strict=True)
+
+ def test_uts46_3809(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '្\u200dݟ。𐹶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '្\u200dݟ。𐹶', strict=True)
+
+ def test_uts46_3810(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jpb535f.xn--uo0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jpb535f.xn--uo0d', strict=True)
+
+ def test_uts46_3811(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jpb535fv9f.xn--uo0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jpb535fv9f.xn--uo0d', strict=True)
+
+ def test_uts46_3812(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003edc2ੂႪ\U0004209f.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003edc2ੂႪ\U0004209f.≮', strict=True)
+
+ def test_uts46_3813(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003edc2ੂႪ\U0004209f.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003edc2ੂႪ\U0004209f.≮', strict=True)
+
+ def test_uts46_3814(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003edc2ੂⴊ\U0004209f.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003edc2ੂⴊ\U0004209f.≮', strict=True)
+
+ def test_uts46_3815(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003edc2ੂⴊ\U0004209f.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003edc2ੂⴊ\U0004209f.≮', strict=True)
+
+ def test_uts46_3816(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nbc229o4y27dgskb.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nbc229o4y27dgskb.xn--gdh', strict=True)
+
+ def test_uts46_3817(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nbc493aro75ggskb.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nbc493aro75ggskb.xn--gdh', strict=True)
+
+ def test_uts46_3818(self):
+ self.assertEqual(idna.decode('ꡠ.۲', uts46=True, strict=True), 'ꡠ.۲')
+ self.assertEqual(idna.encode('ꡠ.۲', uts46=True, strict=True), b'xn--5c9a.xn--fmb')
+
+ def test_uts46_3819(self):
+ self.assertEqual(idna.decode('ꡠ.۲', uts46=True, strict=True), 'ꡠ.۲')
+ self.assertEqual(idna.encode('ꡠ.۲', uts46=True, strict=True), b'xn--5c9a.xn--fmb')
+
+ def test_uts46_3820(self):
+ self.assertEqual(idna.decode('xn--5c9a.xn--fmb', uts46=True, strict=True), 'ꡠ.۲')
+ self.assertEqual(idna.encode('xn--5c9a.xn--fmb', uts46=True, strict=True), b'xn--5c9a.xn--fmb')
+
+ def test_uts46_3821(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣\U00044dc4。ꡬ🄄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣\U00044dc4。ꡬ🄄', strict=True)
+
+ def test_uts46_3822(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣\U00044dc4。ꡬ3,', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣\U00044dc4。ꡬ3,', strict=True)
+
+ def test_uts46_3823(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bo0d0203l.xn--3,-yj9h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bo0d0203l.xn--3,-yj9h', strict=True)
+
+ def test_uts46_3824(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bo0d0203l.xn--id9a4443d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bo0d0203l.xn--id9a4443d', strict=True)
+
+ def test_uts46_3825(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-్\U0001ef80𑲓。\u200d്', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-్\U0001ef80𑲓。\u200d്', strict=True)
+
+ def test_uts46_3826(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-్\U0001ef80𑲓。\u200d്', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-్\U0001ef80𑲓。\u200d്', strict=True)
+
+ def test_uts46_3827(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----x6e0220sclug.xn--wxc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----x6e0220sclug.xn--wxc', strict=True)
+
+ def test_uts46_3828(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----x6e0220sclug.xn--wxc317g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----x6e0220sclug.xn--wxc317g', strict=True)
+
+ def test_uts46_3829(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꙽\u200c霣🄆。\u200c𑁂ᬁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꙽\u200c霣🄆。\u200c𑁂ᬁ', strict=True)
+
+ def test_uts46_3830(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꙽\u200c霣🄆。\u200c𑁂ᬁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꙽\u200c霣🄆。\u200c𑁂ᬁ', strict=True)
+
+ def test_uts46_3831(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꙽\u200c霣5,。\u200c𑁂ᬁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꙽\u200c霣5,。\u200c𑁂ᬁ', strict=True)
+
+ def test_uts46_3832(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5,-op8g373c.xn--4sf0725i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5,-op8g373c.xn--4sf0725i', strict=True)
+
+ def test_uts46_3833(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5,-i1tz135dnbqa.xn--4sf36u6u4w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5,-i1tz135dnbqa.xn--4sf36u6u4w', strict=True)
+
+ def test_uts46_3834(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2q5a751a653w.xn--4sf0725i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2q5a751a653w.xn--4sf0725i', strict=True)
+
+ def test_uts46_3835(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug4208b2vjuk63a.xn--4sf36u6u4w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug4208b2vjuk63a.xn--4sf36u6u4w', strict=True)
+
+ def test_uts46_3836(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '兎。ᠼ\U000e0d1c𑚶𑰿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '兎。ᠼ\U000e0d1c𑚶𑰿', strict=True)
+
+ def test_uts46_3837(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '兎。ᠼ\U000e0d1c𑚶𑰿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '兎。ᠼ\U000e0d1c𑚶𑰿', strict=True)
+
+ def test_uts46_3838(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b5q.xn--v7e6041kqqd4m251b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b5q.xn--v7e6041kqqd4m251b', strict=True)
+
+ def test_uts46_3839(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟙。\u200d𝟸\u200d⁷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟙。\u200d𝟸\u200d⁷', strict=True)
+
+ def test_uts46_3840(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1。\u200d2\u200d7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1。\u200d2\u200d7', strict=True)
+
+ def test_uts46_3841(self):
+ self.assertEqual(idna.decode('1.2h', uts46=True, strict=True), '1.2h')
+ self.assertEqual(idna.encode('1.2h', uts46=True, strict=True), b'1.2h')
+
+ def test_uts46_3842(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--27-l1tb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--27-l1tb', strict=True)
+
+ def test_uts46_3843(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡨ-。\U000e0ecb𝟷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡨ-。\U000e0ecb𝟷', strict=True)
+
+ def test_uts46_3844(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡨ-。\U000e0ecb1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡨ-。\U000e0ecb1', strict=True)
+
+ def test_uts46_3845(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----z8j.xn--1-5671m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----z8j.xn--1-5671m', strict=True)
+
+ def test_uts46_3846(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰻\U00075010𐫚.٨⁹', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰻\U00075010𐫚.٨⁹', strict=True)
+
+ def test_uts46_3847(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰻\U00075010𐫚.٨9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰻\U00075010𐫚.٨9', strict=True)
+
+ def test_uts46_3848(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gx9cr01aul57i.xn--9-oqc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gx9cr01aul57i.xn--9-oqc', strict=True)
+
+ def test_uts46_3849(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴜ\U00088dedྀ⾇。Ⴏ♀\u200c\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴜ\U00088dedྀ⾇。Ⴏ♀\u200c\u200c', strict=True)
+
+ def test_uts46_3850(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴜ\U00088dedྀ舛。Ⴏ♀\u200c\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴜ\U00088dedྀ舛。Ⴏ♀\u200c\u200c', strict=True)
+
+ def test_uts46_3851(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴜ\U00088dedྀ舛。ⴏ♀\u200c\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴜ\U00088dedྀ舛。ⴏ♀\u200c\u200c', strict=True)
+
+ def test_uts46_3852(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zed372mdj2do3v4h.xn--e5h11w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zed372mdj2do3v4h.xn--e5h11w', strict=True)
+
+ def test_uts46_3853(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zed372mdj2do3v4h.xn--0uga678bgyh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zed372mdj2do3v4h.xn--0uga678bgyh', strict=True)
+
+ def test_uts46_3854(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴜ\U00088dedྀ⾇。ⴏ♀\u200c\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴜ\U00088dedྀ⾇。ⴏ♀\u200c\u200c', strict=True)
+
+ def test_uts46_3855(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zed54dz10wo343g.xn--nnd651i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zed54dz10wo343g.xn--nnd651i', strict=True)
+
+ def test_uts46_3856(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zed54dz10wo343g.xn--nnd089ea464d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zed54dz10wo343g.xn--nnd089ea464d', strict=True)
+
+ def test_uts46_3857(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑁆𝟰.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑁆𝟰.\u200d', strict=True)
+
+ def test_uts46_3858(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑁆4.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑁆4.\u200d', strict=True)
+
+ def test_uts46_3859(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-xu7i.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-xu7i.', strict=True)
+
+ def test_uts46_3860(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-xu7i.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-xu7i.xn--1ug', strict=True)
+
+ def test_uts46_3861(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006ed18Ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006ed18Ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+
+ def test_uts46_3862(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006ed18Ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006ed18Ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+
+ def test_uts46_3863(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006ed18Ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006ed18Ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+
+ def test_uts46_3864(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006ed18Ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006ed18Ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+
+ def test_uts46_3865(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006ed18ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006ed18ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+
+ def test_uts46_3866(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006ed18ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006ed18ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+
+ def test_uts46_3867(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mlju35u7qx2f.xn--et3bn23n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mlju35u7qx2f.xn--et3bn23n', strict=True)
+
+ def test_uts46_3868(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mlju35u7qx2f.xn--0ugb6122js83c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mlju35u7qx2f.xn--0ugb6122js83c', strict=True)
+
+ def test_uts46_3869(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006ed18ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006ed18ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+
+ def test_uts46_3870(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006ed18ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006ed18ⴞ癀。𑘿\u200d\u200c붼', strict=True)
+
+ def test_uts46_3871(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd6803c7q37d.xn--et3bn23n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd6803c7q37d.xn--et3bn23n', strict=True)
+
+ def test_uts46_3872(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd6803c7q37d.xn--0ugb6122js83c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd6803c7q37d.xn--0ugb6122js83c', strict=True)
+
+ def test_uts46_3873(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000da005-்。ڹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000da005-்。ڹ', strict=True)
+
+ def test_uts46_3874(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----mze84808x.xn--skb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----mze84808x.xn--skb', strict=True)
+
+ def test_uts46_3875(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡃ𝟧≯ᠣ.氁\U000683f1ꁫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡃ𝟧≯ᠣ.氁\U000683f1ꁫ', strict=True)
+
+ def test_uts46_3876(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡃ𝟧≯ᠣ.氁\U000683f1ꁫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡃ𝟧≯ᠣ.氁\U000683f1ꁫ', strict=True)
+
+ def test_uts46_3877(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡃ5≯ᠣ.氁\U000683f1ꁫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡃ5≯ᠣ.氁\U000683f1ꁫ', strict=True)
+
+ def test_uts46_3878(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡃ5≯ᠣ.氁\U000683f1ꁫ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡃ5≯ᠣ.氁\U000683f1ꁫ', strict=True)
+
+ def test_uts46_3879(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5-24jyf768b.xn--lqw213ime95g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5-24jyf768b.xn--lqw213ime95g', strict=True)
+
+ def test_uts46_3880(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹬𝩇.ྲྀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹬𝩇.ྲྀ', strict=True)
+
+ def test_uts46_3881(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹬𝩇.ྲྀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹬𝩇.ྲྀ', strict=True)
+
+ def test_uts46_3882(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹬𝩇.ྲྀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹬𝩇.ྲྀ', strict=True)
+
+ def test_uts46_3883(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ko0d8295a.xn--zed3h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ko0d8295a.xn--zed3h', strict=True)
+
+ def test_uts46_3884(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𑈶⒏.⒎𰛢\U000e03ad', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𑈶⒏.⒎𰛢\U000e03ad', strict=True)
+
+ def test_uts46_3885(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𑈶8..7.𰛢\U000e03ad', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𑈶8..7.𰛢\U000e03ad', strict=True)
+
+ def test_uts46_3886(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---8-bv5o..7.xn--c35nf1622b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---8-bv5o..7.xn--c35nf1622b', strict=True)
+
+ def test_uts46_3887(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----scp6252h.xn--zshy411yzpx2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----scp6252h.xn--zshy411yzpx2d', strict=True)
+
+ def test_uts46_3888(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႡ畝\u200d.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႡ畝\u200d.≮', strict=True)
+
+ def test_uts46_3889(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႡ畝\u200d.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႡ畝\u200d.≮', strict=True)
+
+ def test_uts46_3890(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႡ畝\u200d.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႡ畝\u200d.≮', strict=True)
+
+ def test_uts46_3891(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cႡ畝\u200d.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cႡ畝\u200d.≮', strict=True)
+
+ def test_uts46_3892(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴁ畝\u200d.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴁ畝\u200d.≮', strict=True)
+
+ def test_uts46_3893(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴁ畝\u200d.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴁ畝\u200d.≮', strict=True)
+
+ def test_uts46_3894(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--skjy82u.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--skjy82u.xn--gdh', strict=True)
+
+ def test_uts46_3895(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴁ畝.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴁ畝.≮', strict=True)
+
+ def test_uts46_3896(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴁ畝.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴁ畝.≮', strict=True)
+
+ def test_uts46_3897(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴁ畝.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴁ畝.≮', strict=True)
+
+ def test_uts46_3898(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴁ畝.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴁ畝.≮', strict=True)
+
+ def test_uts46_3899(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugc160hb36e.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugc160hb36e.xn--gdh', strict=True)
+
+ def test_uts46_3900(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴁ畝\u200d.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴁ畝\u200d.≮', strict=True)
+
+ def test_uts46_3901(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cⴁ畝\u200d.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cⴁ畝\u200d.≮', strict=True)
+
+ def test_uts46_3902(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8md0962c.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8md0962c.xn--gdh', strict=True)
+
+ def test_uts46_3903(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8md700fea3748f.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8md700fea3748f.xn--gdh', strict=True)
+
+ def test_uts46_3904(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '歷。𐹻≯\U000f36fd\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '歷。𐹻≯\U000f36fd\u200d', strict=True)
+
+ def test_uts46_3905(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '歷。𐹻≯\U000f36fd\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '歷。𐹻≯\U000f36fd\u200d', strict=True)
+
+ def test_uts46_3906(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '歷。𐹻≯\U000f36fd\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '歷。𐹻≯\U000f36fd\u200d', strict=True)
+
+ def test_uts46_3907(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '歷。𐹻≯\U000f36fd\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '歷。𐹻≯\U000f36fd\u200d', strict=True)
+
+ def test_uts46_3908(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nmw.xn--hdh7804gdms2h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nmw.xn--hdh7804gdms2h', strict=True)
+
+ def test_uts46_3909(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nmw.xn--1ugx6gs128a1134j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nmw.xn--1ugx6gs128a1134j', strict=True)
+
+ def test_uts46_3910(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '໋\u200d.鎁\U000e0c11', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '໋\u200d.鎁\U000e0c11', strict=True)
+
+ def test_uts46_3911(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '໋\u200d.鎁\U000e0c11', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '໋\u200d.鎁\U000e0c11', strict=True)
+
+ def test_uts46_3912(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t8c.xn--iz4a43209d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t8c.xn--iz4a43209d', strict=True)
+
+ def test_uts46_3913(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t8c059f.xn--iz4a43209d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t8c059f.xn--iz4a43209d', strict=True)
+
+ def test_uts46_3914(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c𞤀。𱘅\U00010d83', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c𞤀。𱘅\U00010d83', strict=True)
+
+ def test_uts46_3915(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c𞤀。𱘅\U00010d83', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c𞤀。𱘅\U00010d83', strict=True)
+
+ def test_uts46_3916(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c𞤢。𱘅\U00010d83', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c𞤢。𱘅\U00010d83', strict=True)
+
+ def test_uts46_3917(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c𞤀。𱘅\U00010d63', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c𞤀。𱘅\U00010d63', strict=True)
+
+ def test_uts46_3918(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9d6h.xn--wh0dj799f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9d6h.xn--wh0dj799f', strict=True)
+
+ def test_uts46_3919(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugb45126a.xn--wh0dj799f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugb45126a.xn--wh0dj799f', strict=True)
+
+ def test_uts46_3920(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c𞤢。𱘅\U00010d83', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c𞤢。𱘅\U00010d83', strict=True)
+
+ def test_uts46_3921(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c𞤀。𱘅\U00010d63', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c𞤀。𱘅\U00010d63', strict=True)
+
+ def test_uts46_3922(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠𝟫-.ς⒍𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠𝟫-.ς⒍𐹦≠', strict=True)
+
+ def test_uts46_3923(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠𝟫-.ς⒍𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠𝟫-.ς⒍𐹦≠', strict=True)
+
+ def test_uts46_3924(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠9-.ς6.𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠9-.ς6.𐹦≠', strict=True)
+
+ def test_uts46_3925(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠9-.ς6.𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠9-.ς6.𐹦≠', strict=True)
+
+ def test_uts46_3926(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠9-.Σ6.𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠9-.Σ6.𐹦≠', strict=True)
+
+ def test_uts46_3927(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠9-.Σ6.𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠9-.Σ6.𐹦≠', strict=True)
+
+ def test_uts46_3928(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠9-.σ6.𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠9-.σ6.𐹦≠', strict=True)
+
+ def test_uts46_3929(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠9-.σ6.𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠9-.σ6.𐹦≠', strict=True)
+
+ def test_uts46_3930(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9--etd0100a.xn--6-zmb.xn--1ch8704g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9--etd0100a.xn--6-zmb.xn--1ch8704g', strict=True)
+
+ def test_uts46_3931(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9--etd0100a.xn--6-xmb.xn--1ch8704g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9--etd0100a.xn--6-xmb.xn--1ch8704g', strict=True)
+
+ def test_uts46_3932(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠𝟫-.Σ⒍𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠𝟫-.Σ⒍𐹦≠', strict=True)
+
+ def test_uts46_3933(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠𝟫-.Σ⒍𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠𝟫-.Σ⒍𐹦≠', strict=True)
+
+ def test_uts46_3934(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠𝟫-.σ⒍𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠𝟫-.σ⒍𐹦≠', strict=True)
+
+ def test_uts46_3935(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ب≠𝟫-.σ⒍𐹦≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ب≠𝟫-.σ⒍𐹦≠', strict=True)
+
+ def test_uts46_3936(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9--etd0100a.xn--4xa887mzpbzz04b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9--etd0100a.xn--4xa887mzpbzz04b', strict=True)
+
+ def test_uts46_3937(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9--etd0100a.xn--3xa097mzpbzz04b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9--etd0100a.xn--3xa097mzpbzz04b', strict=True)
+
+ def test_uts46_3938(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000896f4.-ᡢ֒𝨠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000896f4.-ᡢ֒𝨠', strict=True)
+
+ def test_uts46_3939(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ep37b.xn----hec165lho83b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ep37b.xn----hec165lho83b', strict=True)
+
+ def test_uts46_3940(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۋ⒈ß󠄽。\U000772cd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۋ⒈ß󠄽。\U000772cd-', strict=True)
+
+ def test_uts46_3941(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۋ1.ß󠄽。\U000772cd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۋ1.ß󠄽。\U000772cd-', strict=True)
+
+ def test_uts46_3942(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۋ1.SS󠄽。\U000772cd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۋ1.SS󠄽。\U000772cd-', strict=True)
+
+ def test_uts46_3943(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۋ1.ss󠄽。\U000772cd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۋ1.ss󠄽。\U000772cd-', strict=True)
+
+ def test_uts46_3944(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۋ1.Ss󠄽。\U000772cd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۋ1.Ss󠄽。\U000772cd-', strict=True)
+
+ def test_uts46_3945(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-cwc.ss.xn----q001f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-cwc.ss.xn----q001f', strict=True)
+
+ def test_uts46_3946(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-cwc.xn--zca.xn----q001f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-cwc.xn--zca.xn----q001f', strict=True)
+
+ def test_uts46_3947(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۋ⒈SS󠄽。\U000772cd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۋ⒈SS󠄽。\U000772cd-', strict=True)
+
+ def test_uts46_3948(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۋ⒈ss󠄽。\U000772cd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۋ⒈ss󠄽。\U000772cd-', strict=True)
+
+ def test_uts46_3949(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۋ⒈Ss󠄽。\U000772cd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۋ⒈Ss󠄽。\U000772cd-', strict=True)
+
+ def test_uts46_3950(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-d7d6651a.xn----q001f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-d7d6651a.xn----q001f', strict=True)
+
+ def test_uts46_3951(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca541ato3a.xn----q001f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca541ato3a.xn----q001f', strict=True)
+
+ def test_uts46_3952(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪ςႦ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪ςႦ\u200d', strict=True)
+
+ def test_uts46_3953(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪ςႦ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪ςႦ\u200d', strict=True)
+
+ def test_uts46_3954(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪ςⴆ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪ςⴆ\u200d', strict=True)
+
+ def test_uts46_3955(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪ΣႦ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪ΣႦ\u200d', strict=True)
+
+ def test_uts46_3956(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪σⴆ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪σⴆ\u200d', strict=True)
+
+ def test_uts46_3957(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪Σⴆ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪Σⴆ\u200d', strict=True)
+
+ def test_uts46_3958(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nu4s.xn--4xa153j7im', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nu4s.xn--4xa153j7im', strict=True)
+
+ def test_uts46_3959(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nu4s.xn--4xa153jk8cs1q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nu4s.xn--4xa153jk8cs1q', strict=True)
+
+ def test_uts46_3960(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nu4s.xn--3xa353jk8cs1q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nu4s.xn--3xa353jk8cs1q', strict=True)
+
+ def test_uts46_3961(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪ςⴆ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪ςⴆ\u200d', strict=True)
+
+ def test_uts46_3962(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪ΣႦ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪ΣႦ\u200d', strict=True)
+
+ def test_uts46_3963(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪σⴆ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪σⴆ\u200d', strict=True)
+
+ def test_uts46_3964(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003f02b.᮪Σⴆ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003f02b.᮪Σⴆ\u200d', strict=True)
+
+ def test_uts46_3965(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nu4s.xn--4xa217dxri', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nu4s.xn--4xa217dxri', strict=True)
+
+ def test_uts46_3966(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nu4s.xn--4xa217dxriome', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nu4s.xn--4xa217dxriome', strict=True)
+
+ def test_uts46_3967(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nu4s.xn--3xa417dxriome', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nu4s.xn--3xa417dxriome', strict=True)
+
+ def test_uts46_3968(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾆\u08e2.𝈴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾆\u08e2.𝈴', strict=True)
+
+ def test_uts46_3969(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舌\u08e2.𝈴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舌\u08e2.𝈴', strict=True)
+
+ def test_uts46_3970(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l0b9413d.xn--kl1h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l0b9413d.xn--kl1h', strict=True)
+
+ def test_uts46_3971(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⫞𐹶𖫴。⭠⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⫞𐹶𖫴。⭠⒈', strict=True)
+
+ def test_uts46_3972(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⫞𐹶𖫴。⭠1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⫞𐹶𖫴。⭠1.', strict=True)
+
+ def test_uts46_3973(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--53ix188et88b.xn--1-h6r.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--53ix188et88b.xn--1-h6r.', strict=True)
+
+ def test_uts46_3974(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--53ix188et88b.xn--tsh52w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--53ix188et88b.xn--tsh52w', strict=True)
+
+ def test_uts46_3975(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈\u200cꫬ︒.્', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈\u200cꫬ︒.્', strict=True)
+
+ def test_uts46_3976(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.\u200cꫬ。.્', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.\u200cꫬ。.્', strict=True)
+
+ def test_uts46_3977(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--sv9a..xn--mfc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--sv9a..xn--mfc', strict=True)
+
+ def test_uts46_3978(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--0ug7185c..xn--mfc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--0ug7185c..xn--mfc', strict=True)
+
+ def test_uts46_3979(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh0720cse8b.xn--mfc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh0720cse8b.xn--mfc', strict=True)
+
+ def test_uts46_3980(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug78o720myr1c.xn--mfc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug78o720myr1c.xn--mfc', strict=True)
+
+ def test_uts46_3981(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ె。䰀٨\U0001eb45󠅼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ె。䰀٨\U0001eb45󠅼', strict=True)
+
+ def test_uts46_3982(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--eqc.xn--hib5476aim6t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--eqc.xn--hib5476aim6t', strict=True)
+
+ def test_uts46_3983(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\u200d.᯲\U00044fbc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\u200d.᯲\U00044fbc', strict=True)
+
+ def test_uts46_3984(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS\u200d.᯲\U00044fbc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS\u200d.᯲\U00044fbc', strict=True)
+
+ def test_uts46_3985(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss\u200d.᯲\U00044fbc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss\u200d.᯲\U00044fbc', strict=True)
+
+ def test_uts46_3986(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss\u200d.᯲\U00044fbc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss\u200d.᯲\U00044fbc', strict=True)
+
+ def test_uts46_3987(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss.xn--0zf22107b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss.xn--0zf22107b', strict=True)
+
+ def test_uts46_3988(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-n1t.xn--0zf22107b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-n1t.xn--0zf22107b', strict=True)
+
+ def test_uts46_3989(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca870n.xn--0zf22107b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca870n.xn--0zf22107b', strict=True)
+
+ def test_uts46_3990(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑓂\u200c≮.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑓂\u200c≮.≮', strict=True)
+
+ def test_uts46_3991(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑓂\u200c≮.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑓂\u200c≮.≮', strict=True)
+
+ def test_uts46_3992(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdhz656g.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdhz656g.xn--gdh', strict=True)
+
+ def test_uts46_3993(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugy6glz29a.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugy6glz29a.xn--gdh', strict=True)
+
+ def test_uts46_3994(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🕼.ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🕼.ᅠ', strict=True)
+
+ def test_uts46_3995(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🕼.ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🕼.ᅠ', strict=True)
+
+ def test_uts46_3996(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--my8h.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--my8h.', strict=True)
+
+ def test_uts46_3997(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🕼.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🕼.', strict=True)
+
+ def test_uts46_3998(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--my8h.xn--psd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--my8h.xn--psd', strict=True)
+
+ def test_uts46_3999(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--my8h.xn--cl7c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--my8h.xn--cl7c', strict=True)
+
+ def test_uts46_4000(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡔﶂ。\U0007760e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡔﶂ。\U0007760e', strict=True)
+
+ def test_uts46_4001(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡔلحى。\U0007760e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡔلحى。\U0007760e', strict=True)
+
+ def test_uts46_4002(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--sgb9bq785p.xn--bc31b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--sgb9bq785p.xn--bc31b', strict=True)
+
+ def test_uts46_4003(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '爕\U000b3651.𝟰気', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '爕\U000b3651.𝟰気', strict=True)
+
+ def test_uts46_4004(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '爕\U000b3651.4気', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '爕\U000b3651.4気', strict=True)
+
+ def test_uts46_4005(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1zxq3199c.xn--4-678b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1zxq3199c.xn--4-678b', strict=True)
+
+ def test_uts46_4006(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒋𑍍Ⴝ-.\U0001eb2a්ֵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒋𑍍Ⴝ-.\U0001eb2a්ֵ', strict=True)
+
+ def test_uts46_4007(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4.𑍍Ⴝ-.\U0001eb2a්ֵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4.𑍍Ⴝ-.\U0001eb2a්ֵ', strict=True)
+
+ def test_uts46_4008(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4.𑍍ⴝ-.\U0001eb2a්ֵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4.𑍍ⴝ-.\U0001eb2a්ֵ', strict=True)
+
+ def test_uts46_4009(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4.xn----wwsx259f.xn--ddb152b7y23b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4.xn----wwsx259f.xn--ddb152b7y23b', strict=True)
+
+ def test_uts46_4010(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒋𑍍ⴝ-.\U0001eb2a්ֵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒋𑍍ⴝ-.\U0001eb2a්ֵ', strict=True)
+
+ def test_uts46_4011(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----jcp487avl3w.xn--ddb152b7y23b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----jcp487avl3w.xn--ddb152b7y23b', strict=True)
+
+ def test_uts46_4012(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4.xn----t1g9869q.xn--ddb152b7y23b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4.xn----t1g9869q.xn--ddb152b7y23b', strict=True)
+
+ def test_uts46_4013(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----t1g323mnk9t.xn--ddb152b7y23b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----t1g323mnk9t.xn--ddb152b7y23b', strict=True)
+
+ def test_uts46_4014(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000de743。\U00091183\U00049897--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000de743。\U00091183\U00049897--', strict=True)
+
+ def test_uts46_4015(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2y75e.xn-----1l15eer88n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2y75e.xn-----1l15eer88n', strict=True)
+
+ def test_uts46_4016(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dߟ。\u200c꯭', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dߟ。\u200c꯭', strict=True)
+
+ def test_uts46_4017(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dߟ。\u200c꯭', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dߟ。\u200c꯭', strict=True)
+
+ def test_uts46_4018(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6sb.xn--429a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6sb.xn--429a', strict=True)
+
+ def test_uts46_4019(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6sb394j.xn--0ug1126c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6sb394j.xn--0ug1126c', strict=True)
+
+ def test_uts46_4020(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ebbd߿ࡎ。ᢍ\U0009de41𐫘', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ebbd߿ࡎ。ᢍ\U0009de41𐫘', strict=True)
+
+ def test_uts46_4021(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ebbd߿ࡎ。ᢍ\U0009de41𐫘', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ebbd߿ࡎ。ᢍ\U0009de41𐫘', strict=True)
+
+ def test_uts46_4022(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3tb2nz468k.xn--69e8615j5rn5d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3tb2nz468k.xn--69e8615j5rn5d', strict=True)
+
+ def test_uts46_4023(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۭ𞺌𑄚᜔.ꡞࢷ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۭ𞺌𑄚᜔.ꡞࢷ', strict=True)
+
+ def test_uts46_4024(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۭم𑄚᜔.ꡞࢷ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۭم𑄚᜔.ꡞࢷ', strict=True)
+
+ def test_uts46_4025(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hhb94ag41b739u.xn--dzb5582f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hhb94ag41b739u.xn--dzb5582f', strict=True)
+
+ def test_uts46_4026(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。ςؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。ςؼς', strict=True)
+
+ def test_uts46_4027(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。ςؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。ςؼς', strict=True)
+
+ def test_uts46_4028(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。ςؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。ςؼς', strict=True)
+
+ def test_uts46_4029(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。ςؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。ςؼς', strict=True)
+
+ def test_uts46_4030(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。ΣؼΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。ΣؼΣ', strict=True)
+
+ def test_uts46_4031(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。ΣؼΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。ΣؼΣ', strict=True)
+
+ def test_uts46_4032(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。σؼσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。σؼσ', strict=True)
+
+ def test_uts46_4033(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。σؼσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。σؼσ', strict=True)
+
+ def test_uts46_4034(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。Σؼσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。Σؼσ', strict=True)
+
+ def test_uts46_4035(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。Σؼσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。Σؼσ', strict=True)
+
+ def test_uts46_4036(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3sb7483hoyvbbe76g.xn--4xaa21q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3sb7483hoyvbbe76g.xn--4xaa21q', strict=True)
+
+ def test_uts46_4037(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。Σؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。Σؼς', strict=True)
+
+ def test_uts46_4038(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。Σؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。Σؼς', strict=True)
+
+ def test_uts46_4039(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。σؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。σؼς', strict=True)
+
+ def test_uts46_4040(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。σؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。σؼς', strict=True)
+
+ def test_uts46_4041(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3sb7483hoyvbbe76g.xn--3xab31q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3sb7483hoyvbbe76g.xn--3xab31q', strict=True)
+
+ def test_uts46_4042(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3sb7483hoyvbbe76g.xn--3xaa51q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3sb7483hoyvbbe76g.xn--3xaa51q', strict=True)
+
+ def test_uts46_4043(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。ΣؼΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。ΣؼΣ', strict=True)
+
+ def test_uts46_4044(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。ΣؼΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。ΣؼΣ', strict=True)
+
+ def test_uts46_4045(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。σؼσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。σؼσ', strict=True)
+
+ def test_uts46_4046(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。σؼσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。σؼσ', strict=True)
+
+ def test_uts46_4047(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。Σؼσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。Σؼσ', strict=True)
+
+ def test_uts46_4048(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。Σؼσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。Σؼσ', strict=True)
+
+ def test_uts46_4049(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。Σؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。Σؼς', strict=True)
+
+ def test_uts46_4050(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。Σؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。Σؼς', strict=True)
+
+ def test_uts46_4051(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。σؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。σؼς', strict=True)
+
+ def test_uts46_4052(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007b0b5킃𑘶ߜ。σؼς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007b0b5킃𑘶ߜ。σؼς', strict=True)
+
+ def test_uts46_4053(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '蔰。\U000e0079ࣝ-𑈵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '蔰。\U000e0079ࣝ-𑈵', strict=True)
+
+ def test_uts46_4054(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--sz1a.xn----mrd9984r3dl0i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--sz1a.xn----mrd9984r3dl0i', strict=True)
+
+ def test_uts46_4055(self):
+ self.assertEqual(idna.decode('ςჅ。ݚ', uts46=True, strict=True), 'ςⴥ.ݚ')
+ self.assertEqual(idna.encode('ςჅ。ݚ', uts46=True, strict=True), b'xn--3xa403s.xn--epb')
+
+ def test_uts46_4056(self):
+ self.assertEqual(idna.decode('ςⴥ。ݚ', uts46=True, strict=True), 'ςⴥ.ݚ')
+ self.assertEqual(idna.encode('ςⴥ。ݚ', uts46=True, strict=True), b'xn--3xa403s.xn--epb')
+
+ def test_uts46_4057(self):
+ self.assertEqual(idna.decode('ΣჅ。ݚ', uts46=True, strict=True), 'σⴥ.ݚ')
+ self.assertEqual(idna.encode('ΣჅ。ݚ', uts46=True, strict=True), b'xn--4xa203s.xn--epb')
+
+ def test_uts46_4058(self):
+ self.assertEqual(idna.decode('σⴥ。ݚ', uts46=True, strict=True), 'σⴥ.ݚ')
+ self.assertEqual(idna.encode('σⴥ。ݚ', uts46=True, strict=True), b'xn--4xa203s.xn--epb')
+
+ def test_uts46_4059(self):
+ self.assertEqual(idna.decode('Σⴥ。ݚ', uts46=True, strict=True), 'σⴥ.ݚ')
+ self.assertEqual(idna.encode('Σⴥ。ݚ', uts46=True, strict=True), b'xn--4xa203s.xn--epb')
+
+ def test_uts46_4060(self):
+ self.assertEqual(idna.decode('xn--4xa203s.xn--epb', uts46=True, strict=True), 'σⴥ.ݚ')
+ self.assertEqual(idna.encode('xn--4xa203s.xn--epb', uts46=True, strict=True), b'xn--4xa203s.xn--epb')
+
+ def test_uts46_4061(self):
+ self.assertEqual(idna.decode('σⴥ.ݚ', uts46=True, strict=True), 'σⴥ.ݚ')
+ self.assertEqual(idna.encode('σⴥ.ݚ', uts46=True, strict=True), b'xn--4xa203s.xn--epb')
+
+ def test_uts46_4062(self):
+ self.assertEqual(idna.decode('ΣჅ.ݚ', uts46=True, strict=True), 'σⴥ.ݚ')
+ self.assertEqual(idna.encode('ΣჅ.ݚ', uts46=True, strict=True), b'xn--4xa203s.xn--epb')
+
+ def test_uts46_4063(self):
+ self.assertEqual(idna.decode('Σⴥ.ݚ', uts46=True, strict=True), 'σⴥ.ݚ')
+ self.assertEqual(idna.encode('Σⴥ.ݚ', uts46=True, strict=True), b'xn--4xa203s.xn--epb')
+
+ def test_uts46_4064(self):
+ self.assertEqual(idna.decode('xn--3xa403s.xn--epb', uts46=True, strict=True), 'ςⴥ.ݚ')
+ self.assertEqual(idna.encode('xn--3xa403s.xn--epb', uts46=True, strict=True), b'xn--3xa403s.xn--epb')
+
+ def test_uts46_4065(self):
+ self.assertEqual(idna.decode('ςⴥ.ݚ', uts46=True, strict=True), 'ςⴥ.ݚ')
+ self.assertEqual(idna.encode('ςⴥ.ݚ', uts46=True, strict=True), b'xn--3xa403s.xn--epb')
+
+ def test_uts46_4066(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa477d.xn--epb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa477d.xn--epb', strict=True)
+
+ def test_uts46_4067(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa677d.xn--epb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa677d.xn--epb', strict=True)
+
+ def test_uts46_4068(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '్Ⴉ\U0001ec13.᭲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '్Ⴉ\U0001ec13.᭲', strict=True)
+
+ def test_uts46_4069(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '్Ⴉ\U0001ec13.᭲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '్Ⴉ\U0001ec13.᭲', strict=True)
+
+ def test_uts46_4070(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '్ⴉ\U0001ec13.᭲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '్ⴉ\U0001ec13.᭲', strict=True)
+
+ def test_uts46_4071(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lqc478nlr02a.xn--dwf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lqc478nlr02a.xn--dwf', strict=True)
+
+ def test_uts46_4072(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '్ⴉ\U0001ec13.᭲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '్ⴉ\U0001ec13.᭲', strict=True)
+
+ def test_uts46_4073(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lqc64t7t26c.xn--dwf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lqc64t7t26c.xn--dwf', strict=True)
+
+ def test_uts46_4074(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⮷≮\U0004e234󠄟。𐠄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⮷≮\U0004e234󠄟。𐠄', strict=True)
+
+ def test_uts46_4075(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⮷≮\U0004e234󠄟。𐠄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⮷≮\U0004e234󠄟。𐠄', strict=True)
+
+ def test_uts46_4076(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh877a3513h.xn--pc9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh877a3513h.xn--pc9c', strict=True)
+
+ def test_uts46_4077(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڼ。\u200dẏ\u200cᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڼ。\u200dẏ\u200cᡤ', strict=True)
+
+ def test_uts46_4078(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڼ。\u200dẏ\u200cᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڼ。\u200dẏ\u200cᡤ', strict=True)
+
+ def test_uts46_4079(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڼ。\u200dẏ\u200cᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڼ。\u200dẏ\u200cᡤ', strict=True)
+
+ def test_uts46_4080(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڼ。\u200dẏ\u200cᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڼ。\u200dẏ\u200cᡤ', strict=True)
+
+ def test_uts46_4081(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڼ。\u200dẎ\u200cᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڼ。\u200dẎ\u200cᡤ', strict=True)
+
+ def test_uts46_4082(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڼ。\u200dẎ\u200cᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڼ。\u200dẎ\u200cᡤ', strict=True)
+
+ def test_uts46_4083(self):
+ self.assertEqual(idna.decode('xn--vkb.xn--08e172a', uts46=True, strict=True), 'ڼ.ẏᡤ')
+ self.assertEqual(idna.encode('xn--vkb.xn--08e172a', uts46=True, strict=True), b'xn--vkb.xn--08e172a')
+
+ def test_uts46_4084(self):
+ self.assertEqual(idna.decode('ڼ.ẏᡤ', uts46=True, strict=True), 'ڼ.ẏᡤ')
+ self.assertEqual(idna.encode('ڼ.ẏᡤ', uts46=True, strict=True), b'xn--vkb.xn--08e172a')
+
+ def test_uts46_4085(self):
+ self.assertEqual(idna.decode('ڼ.ẏᡤ', uts46=True, strict=True), 'ڼ.ẏᡤ')
+ self.assertEqual(idna.encode('ڼ.ẏᡤ', uts46=True, strict=True), b'xn--vkb.xn--08e172a')
+
+ def test_uts46_4086(self):
+ self.assertEqual(idna.decode('ڼ.Ẏᡤ', uts46=True, strict=True), 'ڼ.ẏᡤ')
+ self.assertEqual(idna.encode('ڼ.Ẏᡤ', uts46=True, strict=True), b'xn--vkb.xn--08e172a')
+
+ def test_uts46_4087(self):
+ self.assertEqual(idna.decode('ڼ.Ẏᡤ', uts46=True, strict=True), 'ڼ.ẏᡤ')
+ self.assertEqual(idna.encode('ڼ.Ẏᡤ', uts46=True, strict=True), b'xn--vkb.xn--08e172a')
+
+ def test_uts46_4088(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vkb.xn--08e172ax6aca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vkb.xn--08e172ax6aca', strict=True)
+
+ def test_uts46_4089(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڼ。\u200dẎ\u200cᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڼ。\u200dẎ\u200cᡤ', strict=True)
+
+ def test_uts46_4090(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڼ。\u200dẎ\u200cᡤ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڼ。\u200dẎ\u200cᡤ', strict=True)
+
+ def test_uts46_4091(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹹𑲛。\U00051090්', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹹𑲛。\U00051090්', strict=True)
+
+ def test_uts46_4092(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xo0dg5v.xn--h1c39876d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xo0dg5v.xn--h1c39876d', strict=True)
+
+ def test_uts46_4093(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠𑈵。嵕ﻱ۴꥓', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠𑈵。嵕ﻱ۴꥓', strict=True)
+
+ def test_uts46_4094(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠𑈵。嵕ﻱ۴꥓', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠𑈵。嵕ﻱ۴꥓', strict=True)
+
+ def test_uts46_4095(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠𑈵。嵕ي۴꥓', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠𑈵。嵕ي۴꥓', strict=True)
+
+ def test_uts46_4096(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≠𑈵。嵕ي۴꥓', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≠𑈵。嵕ي۴꥓', strict=True)
+
+ def test_uts46_4097(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ufo4749h.xn--mhb45a235sns3c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ufo4749h.xn--mhb45a235sns3c', strict=True)
+
+ def test_uts46_4098(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U0004de30𐹶ݮ.ہ\u200d≯\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U0004de30𐹶ݮ.ہ\u200d≯\u200d', strict=True)
+
+ def test_uts46_4099(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U0004de30𐹶ݮ.ہ\u200d≯\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U0004de30𐹶ݮ.ہ\u200d≯\u200d', strict=True)
+
+ def test_uts46_4100(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U0004de30𐹶ݮ.ہ\u200d≯\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U0004de30𐹶ݮ.ہ\u200d≯\u200d', strict=True)
+
+ def test_uts46_4101(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U0004de30𐹶ݮ.ہ\u200d≯\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U0004de30𐹶ݮ.ہ\u200d≯\u200d', strict=True)
+
+ def test_uts46_4102(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ypb5875khz9y.xn--0kb682l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ypb5875khz9y.xn--0kb682l', strict=True)
+
+ def test_uts46_4103(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ypb717jrx2o7v94a.xn--0kb660ka35v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ypb717jrx2o7v94a.xn--0kb660ka35v', strict=True)
+
+ def test_uts46_4104(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.឵ࡕ𐫔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.឵ࡕ𐫔', strict=True)
+
+ def test_uts46_4105(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.឵ࡕ𐫔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.឵ࡕ𐫔', strict=True)
+
+ def test_uts46_4106(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.឵ࡕ𐫔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.឵ࡕ𐫔', strict=True)
+
+ def test_uts46_4107(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮.឵ࡕ𐫔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮.឵ࡕ𐫔', strict=True)
+
+ def test_uts46_4108(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh.xn--kwb4643k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh.xn--kwb4643k', strict=True)
+
+ def test_uts46_4109(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh.xn--kwb589e217p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh.xn--kwb589e217p', strict=True)
+
+ def test_uts46_4110(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩗\u200d。ႩႵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩗\u200d。ႩႵ', strict=True)
+
+ def test_uts46_4111(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩗\u200d。ႩႵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩗\u200d。ႩႵ', strict=True)
+
+ def test_uts46_4112(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩗\u200d。ⴉⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩗\u200d。ⴉⴕ', strict=True)
+
+ def test_uts46_4113(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩗\u200d。Ⴉⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩗\u200d。Ⴉⴕ', strict=True)
+
+ def test_uts46_4114(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pt9c.xn--0kjya', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pt9c.xn--0kjya', strict=True)
+
+ def test_uts46_4115(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩗.ⴉⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩗.ⴉⴕ', strict=True)
+
+ def test_uts46_4116(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩗.ႩႵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩗.ႩႵ', strict=True)
+
+ def test_uts46_4117(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩗.Ⴉⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩗.Ⴉⴕ', strict=True)
+
+ def test_uts46_4118(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug4933g.xn--0kjya', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug4933g.xn--0kjya', strict=True)
+
+ def test_uts46_4119(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩗\u200d。ⴉⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩗\u200d。ⴉⴕ', strict=True)
+
+ def test_uts46_4120(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩗\u200d。Ⴉⴕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩗\u200d。Ⴉⴕ', strict=True)
+
+ def test_uts46_4121(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pt9c.xn--hnd666l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pt9c.xn--hnd666l', strict=True)
+
+ def test_uts46_4122(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug4933g.xn--hnd666l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug4933g.xn--hnd666l', strict=True)
+
+ def test_uts46_4123(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pt9c.xn--hndy', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pt9c.xn--hndy', strict=True)
+
+ def test_uts46_4124(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug4933g.xn--hndy', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug4933g.xn--hndy', strict=True)
+
+ def test_uts46_4125(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200cㄤ.̮\U000d5a11ূ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200cㄤ.̮\U000d5a11ূ', strict=True)
+
+ def test_uts46_4126(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200cㄤ.̮\U000d5a11ূ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200cㄤ.̮\U000d5a11ূ', strict=True)
+
+ def test_uts46_4127(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1fk.xn--vta284a9o563a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1fk.xn--vta284a9o563a', strict=True)
+
+ def test_uts46_4128(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0uga242k.xn--vta284a9o563a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0uga242k.xn--vta284a9o563a', strict=True)
+
+ def test_uts46_4129(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋻。-\u200c𐫄Ⴗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋻。-\u200c𐫄Ⴗ', strict=True)
+
+ def test_uts46_4130(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋻。-\u200c𐫄Ⴗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋻。-\u200c𐫄Ⴗ', strict=True)
+
+ def test_uts46_4131(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋻。-\u200c𐫄ⴗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋻。-\u200c𐫄ⴗ', strict=True)
+
+ def test_uts46_4132(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--v97c.xn----lws0526f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--v97c.xn----lws0526f', strict=True)
+
+ def test_uts46_4133(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--v97c.xn----sgnv20du99s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--v97c.xn----sgnv20du99s', strict=True)
+
+ def test_uts46_4134(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋻。-\u200c𐫄ⴗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋻。-\u200c𐫄ⴗ', strict=True)
+
+ def test_uts46_4135(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--v97c.xn----i1g2513q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--v97c.xn----i1g2513q', strict=True)
+
+ def test_uts46_4136(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--v97c.xn----i1g888ih12u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--v97c.xn----i1g888ih12u', strict=True)
+
+ def test_uts46_4137(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🙑\U00010dfa.≠\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🙑\U00010dfa.≠\u200c', strict=True)
+
+ def test_uts46_4138(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🙑\U00010dfa.≠\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🙑\U00010dfa.≠\u200c', strict=True)
+
+ def test_uts46_4139(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🙑\U00010dfa.≠\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🙑\U00010dfa.≠\u200c', strict=True)
+
+ def test_uts46_4140(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🙑\U00010dfa.≠\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🙑\U00010dfa.≠\u200c', strict=True)
+
+ def test_uts46_4141(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bl0dh970b.xn--1ch', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bl0dh970b.xn--1ch', strict=True)
+
+ def test_uts46_4142(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bl0dh970b.xn--0ug83g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bl0dh970b.xn--0ug83g', strict=True)
+
+ def test_uts46_4143(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٌ᳒。\U0001eb9e⵿⧎', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٌ᳒。\U0001eb9e⵿⧎', strict=True)
+
+ def test_uts46_4144(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٌ᳒。\U0001eb9e⵿⧎', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٌ᳒。\U0001eb9e⵿⧎', strict=True)
+
+ def test_uts46_4145(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ohb646i.xn--ewi38jf765c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ohb646i.xn--ewi38jf765c', strict=True)
+
+ def test_uts46_4146(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴔ𝨨₃\U000e0066.𝟳𑂹ஂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴔ𝨨₃\U000e0066.𝟳𑂹ஂ', strict=True)
+
+ def test_uts46_4147(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴔ𝨨3\U000e0066.7𑂹ஂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴔ𝨨3\U000e0066.7𑂹ஂ', strict=True)
+
+ def test_uts46_4148(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴔ𝨨3\U000e0066.7𑂹ஂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴔ𝨨3\U000e0066.7𑂹ஂ', strict=True)
+
+ def test_uts46_4149(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-ews6985n35s3g.xn--7-cve6271r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-ews6985n35s3g.xn--7-cve6271r', strict=True)
+
+ def test_uts46_4150(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴔ𝨨₃\U000e0066.𝟳𑂹ஂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴔ𝨨₃\U000e0066.𝟳𑂹ஂ', strict=True)
+
+ def test_uts46_4151(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-b1g83426a35t0g.xn--7-cve6271r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-b1g83426a35t0g.xn--7-cve6271r', strict=True)
+
+ def test_uts46_4152(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䏈\u200c。\u200c⒈\U00071895', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䏈\u200c。\u200c⒈\U00071895', strict=True)
+
+ def test_uts46_4153(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䏈\u200c。\u200c1.\U00071895', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䏈\u200c。\u200c1.\U00071895', strict=True)
+
+ def test_uts46_4154(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--eco.1.xn--ms39a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--eco.1.xn--ms39a', strict=True)
+
+ def test_uts46_4155(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug491l.xn--1-rgn.xn--ms39a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug491l.xn--1-rgn.xn--ms39a', strict=True)
+
+ def test_uts46_4156(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--eco.xn--tsh21126d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--eco.xn--tsh21126d', strict=True)
+
+ def test_uts46_4157(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug491l.xn--0ug88oot66q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug491l.xn--0ug88oot66q', strict=True)
+
+ def test_uts46_4158(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1꫶ß𑲥。ᷘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1꫶ß𑲥。ᷘ', strict=True)
+
+ def test_uts46_4159(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1꫶ß𑲥。ᷘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1꫶ß𑲥。ᷘ', strict=True)
+
+ def test_uts46_4160(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1꫶SS𑲥。ᷘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1꫶SS𑲥。ᷘ', strict=True)
+
+ def test_uts46_4161(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1꫶ss𑲥。ᷘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1꫶ss𑲥。ᷘ', strict=True)
+
+ def test_uts46_4162(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ss-ir6ln166b.xn--weg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ss-ir6ln166b.xn--weg', strict=True)
+
+ def test_uts46_4163(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-qfa2471kdb0d.xn--weg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-qfa2471kdb0d.xn--weg', strict=True)
+
+ def test_uts46_4164(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1꫶SS𑲥。ᷘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1꫶SS𑲥。ᷘ', strict=True)
+
+ def test_uts46_4165(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1꫶ss𑲥。ᷘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1꫶ss𑲥。ᷘ', strict=True)
+
+ def test_uts46_4166(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1꫶Ss𑲥。ᷘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1꫶Ss𑲥。ᷘ', strict=True)
+
+ def test_uts46_4167(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1꫶Ss𑲥。ᷘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1꫶Ss𑲥。ᷘ', strict=True)
+
+ def test_uts46_4168(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U0006bda9\U0001eaaf್。ݼ⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U0006bda9\U0001eaaf್。ݼ⒈', strict=True)
+
+ def test_uts46_4169(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U0006bda9\U0001eaaf್。ݼ1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U0006bda9\U0001eaaf್。ݼ1.', strict=True)
+
+ def test_uts46_4170(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8tc9875v5is1a.xn--1-g6c.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8tc9875v5is1a.xn--1-g6c.', strict=True)
+
+ def test_uts46_4171(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8tc969gzn94a4lm8a.xn--1-g6c.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8tc969gzn94a4lm8a.xn--1-g6c.', strict=True)
+
+ def test_uts46_4172(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8tc9875v5is1a.xn--dqb689l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8tc9875v5is1a.xn--dqb689l', strict=True)
+
+ def test_uts46_4173(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8tc969gzn94a4lm8a.xn--dqb689l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8tc969gzn94a4lm8a.xn--dqb689l', strict=True)
+
+ def test_uts46_4174(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪶.𞤳\U00093896\U000bb252ߗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪶.𞤳\U00093896\U000bb252ߗ', strict=True)
+
+ def test_uts46_4175(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪶.𞤳\U00093896\U000bb252ߗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪶.𞤳\U00093896\U000bb252ߗ', strict=True)
+
+ def test_uts46_4176(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪶.𞤑\U00093896\U000bb252ߗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪶.𞤑\U00093896\U000bb252ߗ', strict=True)
+
+ def test_uts46_4177(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zqf.xn--ysb9657vuiz5bj0ep', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zqf.xn--ysb9657vuiz5bj0ep', strict=True)
+
+ def test_uts46_4178(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪶.𞤑\U00093896\U000bb252ߗ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪶.𞤑\U00093896\U000bb252ߗ', strict=True)
+
+ def test_uts46_4179(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡂ\U0001ea5a⒈.\U000e0b0c8\U0008fccfݰ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡂ\U0001ea5a⒈.\U000e0b0c8\U0008fccfݰ', strict=True)
+
+ def test_uts46_4180(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡂ\U0001ea5a1..\U000e0b0c8\U0008fccfݰ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡂ\U0001ea5a1..\U000e0b0c8\U0008fccfݰ', strict=True)
+
+ def test_uts46_4181(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-rid26318a..xn--8-s5c22427ox454a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-rid26318a..xn--8-s5c22427ox454a', strict=True)
+
+ def test_uts46_4182(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0vb095ldg52a.xn--8-s5c22427ox454a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0vb095ldg52a.xn--8-s5c22427ox454a', strict=True)
+
+ def test_uts46_4183(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '͡𐫫ͩᡷ。-\U000e0c1b鞰', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '͡𐫫ͩᡷ。-\U000e0c1b鞰', strict=True)
+
+ def test_uts46_4184(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cvaq482npv5t.xn----yg7dt1332g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cvaq482npv5t.xn----yg7dt1332g', strict=True)
+
+ def test_uts46_4185(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.્剘ß𐫃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.્剘ß𐫃', strict=True)
+
+ def test_uts46_4186(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.્剘SS𐫃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.્剘SS𐫃', strict=True)
+
+ def test_uts46_4187(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.્剘ss𐫃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.્剘ss𐫃', strict=True)
+
+ def test_uts46_4188(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.્剘Ss𐫃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.્剘Ss𐫃', strict=True)
+
+ def test_uts46_4189(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--ss-bqg4734erywk', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--ss-bqg4734erywk', strict=True)
+
+ def test_uts46_4190(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--zca791c493duf8i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--zca791c493duf8i', strict=True)
+
+ def test_uts46_4191(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣻ\U0001ed78。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣻ\U0001ed78。-', strict=True)
+
+ def test_uts46_4192(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࣻ\U0001ed78。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࣻ\U0001ed78。-', strict=True)
+
+ def test_uts46_4193(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b1b2719v.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b1b2719v.-', strict=True)
+
+ def test_uts46_4194(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈\U000e023b𐹲。≠\u0603𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈\U000e023b𐹲。≠\u0603𐹽', strict=True)
+
+ def test_uts46_4195(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈\U000e023b𐹲。≠\u0603𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈\U000e023b𐹲。≠\u0603𐹽', strict=True)
+
+ def test_uts46_4196(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.\U000e023b𐹲。≠\u0603𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.\U000e023b𐹲。≠\u0603𐹽', strict=True)
+
+ def test_uts46_4197(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.\U000e023b𐹲。≠\u0603𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.\U000e023b𐹲。≠\u0603𐹽', strict=True)
+
+ def test_uts46_4198(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--qo0dl3077c.xn--lfb536lb35n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--qo0dl3077c.xn--lfb536lb35n', strict=True)
+
+ def test_uts46_4199(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tshw766f1153g.xn--lfb536lb35n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tshw766f1153g.xn--lfb536lb35n', strict=True)
+
+ def test_uts46_4200(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹢\U000e021aႮ\u200c.㖾𐹡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹢\U000e021aႮ\u200c.㖾𐹡', strict=True)
+
+ def test_uts46_4201(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹢\U000e021aⴎ\u200c.㖾𐹡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹢\U000e021aⴎ\u200c.㖾𐹡', strict=True)
+
+ def test_uts46_4202(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5kjx323em053g.xn--pelu572d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5kjx323em053g.xn--pelu572d', strict=True)
+
+ def test_uts46_4203(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug342clq0pqxv4i.xn--pelu572d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug342clq0pqxv4i.xn--pelu572d', strict=True)
+
+ def test_uts46_4204(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mnd9001km0o0g.xn--pelu572d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mnd9001km0o0g.xn--pelu572d', strict=True)
+
+ def test_uts46_4205(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mnd289ezj4pqxp0i.xn--pelu572d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mnd289ezj4pqxp0i.xn--pelu572d', strict=True)
+
+ def test_uts46_4206(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a9f17.߇ᡖႳႧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a9f17.߇ᡖႳႧ', strict=True)
+
+ def test_uts46_4207(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a9f17.߇ᡖႳႧ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a9f17.߇ᡖႳႧ', strict=True)
+
+ def test_uts46_4208(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a9f17.߇ᡖⴓⴇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a9f17.߇ᡖⴓⴇ', strict=True)
+
+ def test_uts46_4209(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--te28c.xn--isb295fbtpmb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--te28c.xn--isb295fbtpmb', strict=True)
+
+ def test_uts46_4210(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a9f17.߇ᡖⴓⴇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a9f17.߇ᡖⴓⴇ', strict=True)
+
+ def test_uts46_4211(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--te28c.xn--isb856b9a631d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--te28c.xn--isb856b9a631d', strict=True)
+
+ def test_uts46_4212(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a9f17.߇ᡖႳⴇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a9f17.߇ᡖႳⴇ', strict=True)
+
+ def test_uts46_4213(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--te28c.xn--isb286btrgo7w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--te28c.xn--isb286btrgo7w', strict=True)
+
+ def test_uts46_4214(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a9f17.߇ᡖႳⴇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a9f17.߇ᡖႳⴇ', strict=True)
+
+ def test_uts46_4215(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\U00105349.ڳݵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\U00105349.ڳݵ', strict=True)
+
+ def test_uts46_4216(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3j78f.xn--mkb20b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3j78f.xn--mkb20b', strict=True)
+
+ def test_uts46_4217(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug39444n.xn--mkb20b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug39444n.xn--mkb20b', strict=True)
+
+ def test_uts46_4218(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00032931⒛⾳.ꡦ⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00032931⒛⾳.ꡦ⒈', strict=True)
+
+ def test_uts46_4219(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003293120.音.ꡦ1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003293120.音.ꡦ1.', strict=True)
+
+ def test_uts46_4220(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--20-9802c.xn--0w5a.xn--1-eg4e.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--20-9802c.xn--0w5a.xn--1-eg4e.', strict=True)
+
+ def test_uts46_4221(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dth6033bzbvx.xn--tsh9439b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dth6033bzbvx.xn--tsh9439b', strict=True)
+
+ def test_uts46_4222(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߜ8\U00073993-。\U0009ec99𑁿𐩥্', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߜ8\U00073993-。\U0009ec99𑁿𐩥্', strict=True)
+
+ def test_uts46_4223(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߜ8\U00073993-。\U0009ec99𑁿𐩥্', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߜ8\U00073993-。\U0009ec99𑁿𐩥্', strict=True)
+
+ def test_uts46_4224(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8--rve13079p.xn--b7b9842k42df776x', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8--rve13079p.xn--b7b9842k42df776x', strict=True)
+
+ def test_uts46_4225(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ。۰≮ß݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ。۰≮ß݅', strict=True)
+
+ def test_uts46_4226(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ。۰≮ß݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ。۰≮ß݅', strict=True)
+
+ def test_uts46_4227(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴕ。۰≮ß݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴕ。۰≮ß݅', strict=True)
+
+ def test_uts46_4228(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴕ。۰≮ß݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴕ。۰≮ß݅', strict=True)
+
+ def test_uts46_4229(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ。۰≮SS݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ。۰≮SS݅', strict=True)
+
+ def test_uts46_4230(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ。۰≮SS݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ。۰≮SS݅', strict=True)
+
+ def test_uts46_4231(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴕ。۰≮ss݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴕ。۰≮ss݅', strict=True)
+
+ def test_uts46_4232(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴕ。۰≮ss݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴕ。۰≮ss݅', strict=True)
+
+ def test_uts46_4233(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ。۰≮Ss݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ。۰≮Ss݅', strict=True)
+
+ def test_uts46_4234(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ。۰≮Ss݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ。۰≮Ss݅', strict=True)
+
+ def test_uts46_4235(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dlj.xn--ss-jbe65aw27i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dlj.xn--ss-jbe65aw27i', strict=True)
+
+ def test_uts46_4236(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴕ.۰≮ss݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴕ.۰≮ss݅', strict=True)
+
+ def test_uts46_4237(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴕ.۰≮ss݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴕ.۰≮ss݅', strict=True)
+
+ def test_uts46_4238(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ.۰≮SS݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ.۰≮SS݅', strict=True)
+
+ def test_uts46_4239(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ.۰≮SS݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ.۰≮SS݅', strict=True)
+
+ def test_uts46_4240(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ.۰≮Ss݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ.۰≮Ss݅', strict=True)
+
+ def test_uts46_4241(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴕ.۰≮Ss݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴕ.۰≮Ss݅', strict=True)
+
+ def test_uts46_4242(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dlj.xn--zca912alh227g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dlj.xn--zca912alh227g', strict=True)
+
+ def test_uts46_4243(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴕ.۰≮ß݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴕ.۰≮ß݅', strict=True)
+
+ def test_uts46_4244(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴕ.۰≮ß݅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴕ.۰≮ß݅', strict=True)
+
+ def test_uts46_4245(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tnd.xn--ss-jbe65aw27i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tnd.xn--ss-jbe65aw27i', strict=True)
+
+ def test_uts46_4246(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tnd.xn--zca912alh227g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tnd.xn--zca912alh227g', strict=True)
+
+ def test_uts46_4247(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߩ-.𝨗꒱᭲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߩ-.𝨗꒱᭲', strict=True)
+
+ def test_uts46_4248(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----odd.xn--dwf8994dc8wj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----odd.xn--dwf8994dc8wj', strict=True)
+
+ def test_uts46_4249(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ef38\u200c.≯䕵⫧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ef38\u200c.≯䕵⫧', strict=True)
+
+ def test_uts46_4250(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ef38\u200c.≯䕵⫧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ef38\u200c.≯䕵⫧', strict=True)
+
+ def test_uts46_4251(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--sn7h.xn--hdh754ax6w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--sn7h.xn--hdh754ax6w', strict=True)
+
+ def test_uts46_4252(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugx453p.xn--hdh754ax6w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugx453p.xn--hdh754ax6w', strict=True)
+
+ def test_uts46_4253(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨅ßﱗ.ڬ۳︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨅ßﱗ.ڬ۳︒', strict=True)
+
+ def test_uts46_4254(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨅ßيخ.ڬ۳。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨅ßيخ.ڬ۳。', strict=True)
+
+ def test_uts46_4255(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨅SSيخ.ڬ۳。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨅SSيخ.ڬ۳。', strict=True)
+
+ def test_uts46_4256(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨅ssيخ.ڬ۳。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨅ssيخ.ڬ۳。', strict=True)
+
+ def test_uts46_4257(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨅Ssيخ.ڬ۳。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨅Ssيخ.ڬ۳。', strict=True)
+
+ def test_uts46_4258(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-ytd5i7765l.xn--fkb6l.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-ytd5i7765l.xn--fkb6l.', strict=True)
+
+ def test_uts46_4259(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca23yncs877j.xn--fkb6l.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca23yncs877j.xn--fkb6l.', strict=True)
+
+ def test_uts46_4260(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨅SSﱗ.ڬ۳︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨅SSﱗ.ڬ۳︒', strict=True)
+
+ def test_uts46_4261(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨅ssﱗ.ڬ۳︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨅ssﱗ.ڬ۳︒', strict=True)
+
+ def test_uts46_4262(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐨅Ssﱗ.ڬ۳︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐨅Ssﱗ.ڬ۳︒', strict=True)
+
+ def test_uts46_4263(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-ytd5i7765l.xn--fkb6lp314e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-ytd5i7765l.xn--fkb6lp314e', strict=True)
+
+ def test_uts46_4264(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca23yncs877j.xn--fkb6lp314e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca23yncs877j.xn--fkb6lp314e', strict=True)
+
+ def test_uts46_4265(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≮🡒᳭.\U0004fffeႡܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≮🡒᳭.\U0004fffeႡܔ', strict=True)
+
+ def test_uts46_4266(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≮🡒᳭.\U0004fffeႡܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≮🡒᳭.\U0004fffeႡܔ', strict=True)
+
+ def test_uts46_4267(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≮🡒᳭.\U0004fffeⴁܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≮🡒᳭.\U0004fffeⴁܔ', strict=True)
+
+ def test_uts46_4268(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-≮🡒᳭.\U0004fffeⴁܔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-≮🡒᳭.\U0004fffeⴁܔ', strict=True)
+
+ def test_uts46_4269(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----44l04zxt68c.xn--enb135qf106f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----44l04zxt68c.xn--enb135qf106f', strict=True)
+
+ def test_uts46_4270(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----44l04zxt68c.xn--enb300c1597h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----44l04zxt68c.xn--enb300c1597h', strict=True)
+
+ def test_uts46_4271(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤨。ꡏ\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤨。ꡏ\u200d\u200c', strict=True)
+
+ def test_uts46_4272(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤨。ꡏ\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤨。ꡏ\u200d\u200c', strict=True)
+
+ def test_uts46_4273(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤆。ꡏ\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤆。ꡏ\u200d\u200c', strict=True)
+
+ def test_uts46_4274(self):
+ self.assertEqual(idna.decode('xn--ge6h.xn--oc9a', uts46=True, strict=True), '𞤨.ꡏ')
+ self.assertEqual(idna.encode('xn--ge6h.xn--oc9a', uts46=True, strict=True), b'xn--ge6h.xn--oc9a')
+
+ def test_uts46_4275(self):
+ self.assertEqual(idna.decode('𞤨.ꡏ', uts46=True, strict=True), '𞤨.ꡏ')
+ self.assertEqual(idna.encode('𞤨.ꡏ', uts46=True, strict=True), b'xn--ge6h.xn--oc9a')
+
+ def test_uts46_4276(self):
+ self.assertEqual(idna.decode('𞤆.ꡏ', uts46=True, strict=True), '𞤨.ꡏ')
+ self.assertEqual(idna.encode('𞤆.ꡏ', uts46=True, strict=True), b'xn--ge6h.xn--oc9a')
+
+ def test_uts46_4277(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ge6h.xn--0ugb9575h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ge6h.xn--0ugb9575h', strict=True)
+
+ def test_uts46_4278(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤆。ꡏ\u200d\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤆。ꡏ\u200d\u200c', strict=True)
+
+ def test_uts46_4279(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅹𑂶.ᢌ𑂹٩', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅹𑂶.ᢌ𑂹٩', strict=True)
+
+ def test_uts46_4280(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅹𑂶.ᢌ𑂹٩', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅹𑂶.ᢌ𑂹٩', strict=True)
+
+ def test_uts46_4281(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b50d.xn--iib993gyp5p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b50d.xn--iib993gyp5p', strict=True)
+
+ def test_uts46_4282(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ󠅺\U0005dd52。≯⾑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ󠅺\U0005dd52。≯⾑', strict=True)
+
+ def test_uts46_4283(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ󠅺\U0005dd52。≯⾑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ󠅺\U0005dd52。≯⾑', strict=True)
+
+ def test_uts46_4284(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ󠅺\U0005dd52。≯襾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ󠅺\U0005dd52。≯襾', strict=True)
+
+ def test_uts46_4285(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⅎ󠅺\U0005dd52。≯襾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⅎ󠅺\U0005dd52。≯襾', strict=True)
+
+ def test_uts46_4286(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ󠅺\U0005dd52。≯襾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ󠅺\U0005dd52。≯襾', strict=True)
+
+ def test_uts46_4287(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ󠅺\U0005dd52。≯襾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ󠅺\U0005dd52。≯襾', strict=True)
+
+ def test_uts46_4288(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--73g39298c.xn--hdhz171b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--73g39298c.xn--hdhz171b', strict=True)
+
+ def test_uts46_4289(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ󠅺\U0005dd52。≯⾑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ󠅺\U0005dd52。≯⾑', strict=True)
+
+ def test_uts46_4290(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⅎ󠅺\U0005dd52。≯⾑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⅎ󠅺\U0005dd52。≯⾑', strict=True)
+
+ def test_uts46_4291(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--f3g73398c.xn--hdhz171b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--f3g73398c.xn--hdhz171b', strict=True)
+
+ def test_uts46_4292(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς\u200dු٠。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς\u200dු٠。-', strict=True)
+
+ def test_uts46_4293(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς\u200dු٠。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς\u200dු٠。-', strict=True)
+
+ def test_uts46_4294(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ\u200dු٠。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ\u200dු٠。-', strict=True)
+
+ def test_uts46_4295(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ\u200dු٠。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ\u200dු٠。-', strict=True)
+
+ def test_uts46_4296(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa25ks2j.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa25ks2j.-', strict=True)
+
+ def test_uts46_4297(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa25ks2jenu.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa25ks2jenu.-', strict=True)
+
+ def test_uts46_4298(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa45ks2jenu.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa45ks2jenu.-', strict=True)
+
+ def test_uts46_4299(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ\u200dු٠。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ\u200dු٠。-', strict=True)
+
+ def test_uts46_4300(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ\u200dු٠。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ\u200dු٠。-', strict=True)
+
+ def test_uts46_4301(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.ßႩ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.ßႩ-', strict=True)
+
+ def test_uts46_4302(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.ßⴉ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.ßⴉ-', strict=True)
+
+ def test_uts46_4303(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.SSႩ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.SSႩ-', strict=True)
+
+ def test_uts46_4304(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.ssⴉ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.ssⴉ-', strict=True)
+
+ def test_uts46_4305(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.Ssⴉ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.Ssⴉ-', strict=True)
+
+ def test_uts46_4306(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--ss--bi1b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--ss--bi1b', strict=True)
+
+ def test_uts46_4307(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--ss--bi1b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--ss--bi1b', strict=True)
+
+ def test_uts46_4308(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn----pfa2305a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn----pfa2305a', strict=True)
+
+ def test_uts46_4309(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--ss--4rn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--ss--4rn', strict=True)
+
+ def test_uts46_4310(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--ss--4rn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--ss--4rn', strict=True)
+
+ def test_uts46_4311(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn----pfa042j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn----pfa042j', strict=True)
+
+ def test_uts46_4312(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cdb72𐫍㓱。⾑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cdb72𐫍㓱。⾑', strict=True)
+
+ def test_uts46_4313(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000cdb72𐫍㓱。襾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000cdb72𐫍㓱。襾', strict=True)
+
+ def test_uts46_4314(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--u7kt691dlj09f.xn--9v2a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--u7kt691dlj09f.xn--9v2a', strict=True)
+
+ def test_uts46_4315(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڠ𐮋𐹰≮。≯\U000e0997\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڠ𐮋𐹰≮。≯\U000e0997\u200d', strict=True)
+
+ def test_uts46_4316(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڠ𐮋𐹰≮。≯\U000e0997\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڠ𐮋𐹰≮。≯\U000e0997\u200d', strict=True)
+
+ def test_uts46_4317(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2jb053lf13nyoc.xn--hdh08821l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2jb053lf13nyoc.xn--hdh08821l', strict=True)
+
+ def test_uts46_4318(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2jb053lf13nyoc.xn--1ugx6gc8096c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2jb053lf13nyoc.xn--1ugx6gc8096c', strict=True)
+
+ def test_uts46_4319(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟞。\U00043c36ݷࢰ⩋', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟞。\U00043c36ݷࢰ⩋', strict=True)
+
+ def test_uts46_4320(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6。\U00043c36ݷࢰ⩋', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6。\U00043c36ݷࢰ⩋', strict=True)
+
+ def test_uts46_4321(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6.xn--7pb04do15eq748f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6.xn--7pb04do15eq748f', strict=True)
+
+ def test_uts46_4322(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ﳽ。𑇀𑍴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ﳽ。𑇀𑍴', strict=True)
+
+ def test_uts46_4323(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ﳽ。𑇀𑍴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ﳽ。𑇀𑍴', strict=True)
+
+ def test_uts46_4324(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-شى。𑇀𑍴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-شى。𑇀𑍴', strict=True)
+
+ def test_uts46_4325(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qnc7d.xn--wd1d62a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qnc7d.xn--wd1d62a', strict=True)
+
+ def test_uts46_4326(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e02b6𝟏.ൃ\U000aa950𐹬\U000ca4f6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e02b6𝟏.ൃ\U000aa950𐹬\U000ca4f6', strict=True)
+
+ def test_uts46_4327(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e02b61.ൃ\U000aa950𐹬\U000ca4f6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e02b61.ൃ\U000aa950𐹬\U000ca4f6', strict=True)
+
+ def test_uts46_4328(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-f521m.xn--mxc0872kcu37dnmem', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-f521m.xn--mxc0872kcu37dnmem', strict=True)
+
+ def test_uts46_4329(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-rgnu0071n.xn--mxc0872kcu37dnmem', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-rgnu0071n.xn--mxc0872kcu37dnmem', strict=True)
+
+ def test_uts46_4330(self):
+ self.assertEqual(idna.decode('齙--𝟰.ß', uts46=True, strict=True), '齙--4.ß')
+ self.assertEqual(idna.encode('齙--𝟰.ß', uts46=True, strict=True), b'xn----4-p16k.xn--zca')
+
+ def test_uts46_4331(self):
+ self.assertEqual(idna.decode('齙--4.ß', uts46=True, strict=True), '齙--4.ß')
+ self.assertEqual(idna.encode('齙--4.ß', uts46=True, strict=True), b'xn----4-p16k.xn--zca')
+
+ def test_uts46_4332(self):
+ self.assertEqual(idna.decode('齙--4.SS', uts46=True, strict=True), '齙--4.ss')
+ self.assertEqual(idna.encode('齙--4.SS', uts46=True, strict=True), b'xn----4-p16k.ss')
+
+ def test_uts46_4333(self):
+ self.assertEqual(idna.decode('齙--4.ss', uts46=True, strict=True), '齙--4.ss')
+ self.assertEqual(idna.encode('齙--4.ss', uts46=True, strict=True), b'xn----4-p16k.ss')
+
+ def test_uts46_4334(self):
+ self.assertEqual(idna.decode('齙--4.Ss', uts46=True, strict=True), '齙--4.ss')
+ self.assertEqual(idna.encode('齙--4.Ss', uts46=True, strict=True), b'xn----4-p16k.ss')
+
+ def test_uts46_4335(self):
+ self.assertEqual(idna.decode('xn----4-p16k.ss', uts46=True, strict=True), '齙--4.ss')
+ self.assertEqual(idna.encode('xn----4-p16k.ss', uts46=True, strict=True), b'xn----4-p16k.ss')
+
+ def test_uts46_4336(self):
+ self.assertEqual(idna.decode('xn----4-p16k.xn--zca', uts46=True, strict=True), '齙--4.ß')
+ self.assertEqual(idna.encode('xn----4-p16k.xn--zca', uts46=True, strict=True), b'xn----4-p16k.xn--zca')
+
+ def test_uts46_4337(self):
+ self.assertEqual(idna.decode('齙--𝟰.SS', uts46=True, strict=True), '齙--4.ss')
+ self.assertEqual(idna.encode('齙--𝟰.SS', uts46=True, strict=True), b'xn----4-p16k.ss')
+
+ def test_uts46_4338(self):
+ self.assertEqual(idna.decode('齙--𝟰.ss', uts46=True, strict=True), '齙--4.ss')
+ self.assertEqual(idna.encode('齙--𝟰.ss', uts46=True, strict=True), b'xn----4-p16k.ss')
+
+ def test_uts46_4339(self):
+ self.assertEqual(idna.decode('齙--𝟰.Ss', uts46=True, strict=True), '齙--4.ss')
+ self.assertEqual(idna.encode('齙--𝟰.Ss', uts46=True, strict=True), b'xn----4-p16k.ss')
+
+ def test_uts46_4340(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯲.𐹢𞀖\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯲.𐹢𞀖\u200c', strict=True)
+
+ def test_uts46_4341(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0zf.xn--9n0d2296a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0zf.xn--9n0d2296a', strict=True)
+
+ def test_uts46_4342(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0zf.xn--0ug9894grqqf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0zf.xn--0ug9894grqqf', strict=True)
+
+ def test_uts46_4343(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c3c99\U000e02d8。?-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c3c99\U000e02d8。?-\u200d', strict=True)
+
+ def test_uts46_4344(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c3c99\U000e02d8。?-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c3c99\U000e02d8。?-\u200d', strict=True)
+
+ def test_uts46_4345(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ct86d8w51a.?-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ct86d8w51a.?-', strict=True)
+
+ def test_uts46_4346(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ct86d8w51a.xn--?--n1t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ct86d8w51a.xn--?--n1t', strict=True)
+
+ def test_uts46_4347(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ct86d8w51a.?-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ct86d8w51a.?-\u200d', strict=True)
+
+ def test_uts46_4348(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--CT86D8W51A.?-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--CT86D8W51A.?-\u200d', strict=True)
+
+ def test_uts46_4349(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--Ct86d8w51a.?-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--Ct86d8w51a.?-\u200d', strict=True)
+
+ def test_uts46_4350(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᩠.\U0001ed77-𝪩悎', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᩠.\U0001ed77-𝪩悎', strict=True)
+
+ def test_uts46_4351(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᩠.\U0001ed77-𝪩悎', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᩠.\U0001ed77-𝪩悎', strict=True)
+
+ def test_uts46_4352(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jof.xn----gf4bq282iezpa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jof.xn----gf4bq282iezpa', strict=True)
+
+ def test_uts46_4353(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001b72f\U000e029b.𞤳\U0004f97e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001b72f\U000e029b.𞤳\U0004f97e', strict=True)
+
+ def test_uts46_4354(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001b72f\U000e029b.𞤳\U0004f97e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001b72f\U000e029b.𞤳\U0004f97e', strict=True)
+
+ def test_uts46_4355(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001b72f\U000e029b.𞤑\U0004f97e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001b72f\U000e029b.𞤑\U0004f97e', strict=True)
+
+ def test_uts46_4356(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xx5gy2741c.xn--re6hw266j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xx5gy2741c.xn--re6hw266j', strict=True)
+
+ def test_uts46_4357(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001b72f\U000e029b.𞤑\U0004f97e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001b72f\U000e029b.𞤑\U0004f97e', strict=True)
+
+ def test_uts46_4358(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܜ𐫒خ.𐋲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܜ𐫒خ.𐋲', strict=True)
+
+ def test_uts46_4359(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tgb98b8643d.xn--m97c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tgb98b8643d.xn--m97c', strict=True)
+
+ def test_uts46_4360(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐼑𞤓ط\u08e2.?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐼑𞤓ط\u08e2.?', strict=True)
+
+ def test_uts46_4361(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐼑𞤵ط\u08e2.?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐼑𞤵ط\u08e2.?', strict=True)
+
+ def test_uts46_4362(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2gb08k9w69agm0g.?', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2gb08k9w69agm0g.?', strict=True)
+
+ def test_uts46_4363(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ↄ。᳔੍\U0001ede3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ↄ。᳔੍\U0001ede3', strict=True)
+
+ def test_uts46_4364(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ↄ。᳔੍\U0001ede3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ↄ。᳔੍\U0001ede3', strict=True)
+
+ def test_uts46_4365(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ↄ。᳔੍\U0001ede3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ↄ。᳔੍\U0001ede3', strict=True)
+
+ def test_uts46_4366(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--r5g.xn--ybc995g0835a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--r5g.xn--ybc995g0835a', strict=True)
+
+ def test_uts46_4367(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ↄ。᳔੍\U0001ede3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ↄ。᳔੍\U0001ede3', strict=True)
+
+ def test_uts46_4368(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--q5g.xn--ybc995g0835a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--q5g.xn--ybc995g0835a', strict=True)
+
+ def test_uts46_4369(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0aa2-。\U0009b08f≮𑜫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0aa2-。\U0009b08f≮𑜫', strict=True)
+
+ def test_uts46_4370(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0aa2-。\U0009b08f≮𑜫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0aa2-。\U0009b08f≮𑜫', strict=True)
+
+ def test_uts46_4371(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----bh61m.xn--gdhz157g0em1d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----bh61m.xn--gdhz157g0em1d', strict=True)
+
+ def test_uts46_4372(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e0279\u200d。\U0008cfe7≮Ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e0279\u200d。\U0008cfe7≮Ⴉ', strict=True)
+
+ def test_uts46_4373(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e0279\u200d。\U0008cfe7≮Ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e0279\u200d。\U0008cfe7≮Ⴉ', strict=True)
+
+ def test_uts46_4374(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e0279\u200d。\U0008cfe7≮ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e0279\u200d。\U0008cfe7≮ⴉ', strict=True)
+
+ def test_uts46_4375(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e0279\u200d。\U0008cfe7≮ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e0279\u200d。\U0008cfe7≮ⴉ', strict=True)
+
+ def test_uts46_4376(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3n36e.xn--gdh992byu01p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3n36e.xn--gdh992byu01p', strict=True)
+
+ def test_uts46_4377(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugc90904y.xn--gdh992byu01p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugc90904y.xn--gdh992byu01p', strict=True)
+
+ def test_uts46_4378(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3n36e.xn--hnd112gpz83n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3n36e.xn--hnd112gpz83n', strict=True)
+
+ def test_uts46_4379(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugc90904y.xn--hnd112gpz83n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugc90904y.xn--hnd112gpz83n', strict=True)
+
+ def test_uts46_4380(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹯-𑄴ࢼ。︒䖐⾆', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹯-𑄴ࢼ。︒䖐⾆', strict=True)
+
+ def test_uts46_4381(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹯-𑄴ࢼ。。䖐舌', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹯-𑄴ࢼ。。䖐舌', strict=True)
+
+ def test_uts46_4382(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rpd7902rclc..xn--fpo216m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rpd7902rclc..xn--fpo216m', strict=True)
+
+ def test_uts46_4383(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rpd7902rclc.xn--fpo216mn07e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rpd7902rclc.xn--fpo216mn07e', strict=True)
+
+ def test_uts46_4384(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪞Ⴐ。쪡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪞Ⴐ。쪡', strict=True)
+
+ def test_uts46_4385(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪞Ⴐ。쪡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪞Ⴐ。쪡', strict=True)
+
+ def test_uts46_4386(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪞Ⴐ。쪡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪞Ⴐ。쪡', strict=True)
+
+ def test_uts46_4387(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪞Ⴐ。쪡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪞Ⴐ。쪡', strict=True)
+
+ def test_uts46_4388(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪞ⴐ。쪡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪞ⴐ。쪡', strict=True)
+
+ def test_uts46_4389(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪞ⴐ。쪡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪞ⴐ。쪡', strict=True)
+
+ def test_uts46_4390(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7kj1858k.xn--pi6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7kj1858k.xn--pi6b', strict=True)
+
+ def test_uts46_4391(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪞ⴐ。쪡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪞ⴐ。쪡', strict=True)
+
+ def test_uts46_4392(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝪞ⴐ。쪡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝪞ⴐ。쪡', strict=True)
+
+ def test_uts46_4393(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ond3755u.xn--pi6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ond3755u.xn--pi6b', strict=True)
+
+ def test_uts46_4394(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ฺ쩁𐹬.\U0010b273', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ฺ쩁𐹬.\U0010b273', strict=True)
+
+ def test_uts46_4395(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ฺ쩁𐹬.\U0010b273', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ฺ쩁𐹬.\U0010b273', strict=True)
+
+ def test_uts46_4396(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--o4c4837g2zvb.xn--5f70g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--o4c4837g2zvb.xn--5f70g', strict=True)
+
+ def test_uts46_4397(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡅ0\u200c。⎢\U000e4a04', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡅ0\u200c。⎢\U000e4a04', strict=True)
+
+ def test_uts46_4398(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡅ0\u200c。⎢\U000e4a04', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡅ0\u200c。⎢\U000e4a04', strict=True)
+
+ def test_uts46_4399(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0-z6j.xn--8lh28773l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0-z6j.xn--8lh28773l', strict=True)
+
+ def test_uts46_4400(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0-z6jy93b.xn--8lh28773l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0-z6jy93b.xn--8lh28773l', strict=True)
+
+ def test_uts46_4401(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00032b9a9ꍩ៓.\u200dß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00032b9a9ꍩ៓.\u200dß', strict=True)
+
+ def test_uts46_4402(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00032b9a9ꍩ៓.\u200dß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00032b9a9ꍩ៓.\u200dß', strict=True)
+
+ def test_uts46_4403(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00032b9a9ꍩ៓.\u200dSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00032b9a9ꍩ៓.\u200dSS', strict=True)
+
+ def test_uts46_4404(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00032b9a9ꍩ៓.\u200dss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00032b9a9ꍩ៓.\u200dss', strict=True)
+
+ def test_uts46_4405(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-i0j5967eg3qz.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-i0j5967eg3qz.ss', strict=True)
+
+ def test_uts46_4406(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-i0j5967eg3qz.xn--ss-l1t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-i0j5967eg3qz.xn--ss-l1t', strict=True)
+
+ def test_uts46_4407(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-i0j5967eg3qz.xn--zca770n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-i0j5967eg3qz.xn--zca770n', strict=True)
+
+ def test_uts46_4408(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00032b9a9ꍩ៓.\u200dSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00032b9a9ꍩ៓.\u200dSS', strict=True)
+
+ def test_uts46_4409(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00032b9a9ꍩ៓.\u200dss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00032b9a9ꍩ៓.\u200dss', strict=True)
+
+ def test_uts46_4410(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00032b9a9ꍩ៓.\u200dSs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00032b9a9ꍩ៓.\u200dSs', strict=True)
+
+ def test_uts46_4411(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00032b9a9ꍩ៓.\u200dSs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00032b9a9ꍩ៓.\u200dSs', strict=True)
+
+ def test_uts46_4412(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꗷ𑆀.ݝ𐩒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꗷ𑆀.ݝ𐩒', strict=True)
+
+ def test_uts46_4413(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ju8a625r.xn--hpb0073k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ju8a625r.xn--hpb0073k', strict=True)
+
+ def test_uts46_4414(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒐≯-。︒\U000a9463-\U0005e6e0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒐≯-。︒\U000a9463-\U0005e6e0', strict=True)
+
+ def test_uts46_4415(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒐≯-。︒\U000a9463-\U0005e6e0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒐≯-。︒\U000a9463-\U0005e6e0', strict=True)
+
+ def test_uts46_4416(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.≯-。。\U000a9463-\U0005e6e0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.≯-。。\U000a9463-\U0005e6e0', strict=True)
+
+ def test_uts46_4417(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.≯-。。\U000a9463-\U0005e6e0', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.≯-。。\U000a9463-\U0005e6e0', strict=True)
+
+ def test_uts46_4418(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.xn----ogo..xn----xj54d1s69k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.xn----ogo..xn----xj54d1s69k', strict=True)
+
+ def test_uts46_4419(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ogot9g.xn----n89hl0522az9u2a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ogot9g.xn----n89hl0522az9u2a', strict=True)
+
+ def test_uts46_4420(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00088a9aೣჁ\U000e088f.؝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00088a9aೣჁ\U000e088f.؝', strict=True)
+
+ def test_uts46_4421(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00088a9aೣჁ\U000e088f.؝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00088a9aೣჁ\U000e088f.؝', strict=True)
+
+ def test_uts46_4422(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00088a9aೣⴡ\U000e088f.؝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00088a9aೣⴡ\U000e088f.؝', strict=True)
+
+ def test_uts46_4423(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vuc226n8n28lmju7a.xn--cgb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vuc226n8n28lmju7a.xn--cgb', strict=True)
+
+ def test_uts46_4424(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00088a9aೣⴡ\U000e088f.؝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00088a9aೣⴡ\U000e088f.؝', strict=True)
+
+ def test_uts46_4425(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vuc49qvu85xmju7a.xn--cgb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vuc49qvu85xmju7a.xn--cgb', strict=True)
+
+ def test_uts46_4426(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᷫ。𐋩ظ-𐫮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᷫ。𐋩ظ-𐫮', strict=True)
+
+ def test_uts46_4427(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gfg.xn----xnc0815qyyg', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gfg.xn----xnc0815qyyg', strict=True)
+
+ def test_uts46_4428(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。⾇𐳋Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。⾇𐳋Ⴝ', strict=True)
+
+ def test_uts46_4429(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。⾇𐳋Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。⾇𐳋Ⴝ', strict=True)
+
+ def test_uts46_4430(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。舛𐳋Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。舛𐳋Ⴝ', strict=True)
+
+ def test_uts46_4431(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。舛𐳋Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。舛𐳋Ⴝ', strict=True)
+
+ def test_uts46_4432(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。舛𐳋ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。舛𐳋ⴝ', strict=True)
+
+ def test_uts46_4433(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。舛𐳋ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。舛𐳋ⴝ', strict=True)
+
+ def test_uts46_4434(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。舛𐲋Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。舛𐲋Ⴝ', strict=True)
+
+ def test_uts46_4435(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。舛𐲋Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。舛𐲋Ⴝ', strict=True)
+
+ def test_uts46_4436(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。舛𐲋ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。舛𐲋ⴝ', strict=True)
+
+ def test_uts46_4437(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。舛𐲋ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。舛𐲋ⴝ', strict=True)
+
+ def test_uts46_4438(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9u4b.xn--llj123yh74e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9u4b.xn--llj123yh74e', strict=True)
+
+ def test_uts46_4439(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。⾇𐳋ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。⾇𐳋ⴝ', strict=True)
+
+ def test_uts46_4440(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。⾇𐳋ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。⾇𐳋ⴝ', strict=True)
+
+ def test_uts46_4441(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。⾇𐲋Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。⾇𐲋Ⴝ', strict=True)
+
+ def test_uts46_4442(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。⾇𐲋Ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。⾇𐲋Ⴝ', strict=True)
+
+ def test_uts46_4443(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。⾇𐲋ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。⾇𐲋ⴝ', strict=True)
+
+ def test_uts46_4444(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '싇。⾇𐲋ⴝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '싇。⾇𐲋ⴝ', strict=True)
+
+ def test_uts46_4445(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9u4b.xn--1nd7519ch79d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9u4b.xn--1nd7519ch79d', strict=True)
+
+ def test_uts46_4446(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹠ς。\u200cڿჀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹠ς。\u200cڿჀ', strict=True)
+
+ def test_uts46_4447(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹠ς。\u200cڿⴠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹠ς。\u200cڿⴠ', strict=True)
+
+ def test_uts46_4448(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹠Σ。\u200cڿჀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹠Σ。\u200cڿჀ', strict=True)
+
+ def test_uts46_4449(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹠σ。\u200cڿⴠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹠σ。\u200cڿⴠ', strict=True)
+
+ def test_uts46_4450(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹠Σ。\u200cڿⴠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹠Σ。\u200cڿⴠ', strict=True)
+
+ def test_uts46_4451(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa9167k.xn--ykb467q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa9167k.xn--ykb467q', strict=True)
+
+ def test_uts46_4452(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa9167k.xn--ykb760k9hj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa9167k.xn--ykb760k9hj', strict=True)
+
+ def test_uts46_4453(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa1267k.xn--ykb760k9hj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa1267k.xn--ykb760k9hj', strict=True)
+
+ def test_uts46_4454(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa9167k.xn--ykb632c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa9167k.xn--ykb632c', strict=True)
+
+ def test_uts46_4455(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa9167k.xn--ykb632cvxm', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa9167k.xn--ykb632cvxm', strict=True)
+
+ def test_uts46_4456(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa1267k.xn--ykb632cvxm', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa1267k.xn--ykb632cvxm', strict=True)
+
+ def test_uts46_4457(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00087490\u200c\u0604.ښ-ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00087490\u200c\u0604.ښ-ß', strict=True)
+
+ def test_uts46_4458(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00087490\u200c\u0604.ښ-SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00087490\u200c\u0604.ښ-SS', strict=True)
+
+ def test_uts46_4459(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00087490\u200c\u0604.ښ-ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00087490\u200c\u0604.ښ-ss', strict=True)
+
+ def test_uts46_4460(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00087490\u200c\u0604.ښ-Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00087490\u200c\u0604.ښ-Ss', strict=True)
+
+ def test_uts46_4461(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mfb98261i.xn---ss-sdf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mfb98261i.xn---ss-sdf', strict=True)
+
+ def test_uts46_4462(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mfb144kqo32m.xn---ss-sdf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mfb144kqo32m.xn---ss-sdf', strict=True)
+
+ def test_uts46_4463(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mfb144kqo32m.xn----qfa315b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mfb144kqo32m.xn----qfa315b', strict=True)
+
+ def test_uts46_4464(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200d឵ٺ.-ﮰ\U000c511e\U00010e1a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200d឵ٺ.-ﮰ\U000c511e\U00010e1a', strict=True)
+
+ def test_uts46_4465(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200d឵ٺ.-ۓ\U000c511e\U00010e1a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200d឵ٺ.-ۓ\U000c511e\U00010e1a', strict=True)
+
+ def test_uts46_4466(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200d឵ٺ.-ۓ\U000c511e\U00010e1a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200d឵ٺ.-ۓ\U000c511e\U00010e1a', strict=True)
+
+ def test_uts46_4467(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zib.xn----twc1133r17r6g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zib.xn----twc1133r17r6g', strict=True)
+
+ def test_uts46_4468(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zib502kda.xn----twc1133r17r6g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zib502kda.xn----twc1133r17r6g', strict=True)
+
+ def test_uts46_4469(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zib539f.xn----twc1133r17r6g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zib539f.xn----twc1133r17r6g', strict=True)
+
+ def test_uts46_4470(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zib539f8igea.xn----twc1133r17r6g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zib539f8igea.xn----twc1133r17r6g', strict=True)
+
+ def test_uts46_4471(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a1db1。𐮬≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a1db1。𐮬≠', strict=True)
+
+ def test_uts46_4472(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a1db1。𐮬≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a1db1。𐮬≠', strict=True)
+
+ def test_uts46_4473(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a1db1。𐮬≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a1db1。𐮬≠', strict=True)
+
+ def test_uts46_4474(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a1db1。𐮬≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a1db1。𐮬≠', strict=True)
+
+ def test_uts46_4475(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dd55c.xn--1ch3003g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dd55c.xn--1ch3003g', strict=True)
+
+ def test_uts46_4476(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྲ\U0001ed85。𐹮𐹷덝۵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྲ\U0001ed85。𐹮𐹷덝۵', strict=True)
+
+ def test_uts46_4477(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྲ\U0001ed85。𐹮𐹷덝۵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྲ\U0001ed85。𐹮𐹷덝۵', strict=True)
+
+ def test_uts46_4478(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྲ\U0001ed85。𐹮𐹷덝۵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྲ\U0001ed85。𐹮𐹷덝۵', strict=True)
+
+ def test_uts46_4479(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྲ\U0001ed85。𐹮𐹷덝۵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྲ\U0001ed85。𐹮𐹷덝۵', strict=True)
+
+ def test_uts46_4480(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fgd0675v.xn--imb5839fidpcbba', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fgd0675v.xn--imb5839fidpcbba', strict=True)
+
+ def test_uts46_4481(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴏ󠅋-.\u200dႩ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴏ󠅋-.\u200dႩ', strict=True)
+
+ def test_uts46_4482(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴏ󠅋-.\u200dႩ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴏ󠅋-.\u200dႩ', strict=True)
+
+ def test_uts46_4483(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴏ󠅋-.\u200dⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴏ󠅋-.\u200dⴉ', strict=True)
+
+ def test_uts46_4484(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----3vs.xn--0kj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----3vs.xn--0kj', strict=True)
+
+ def test_uts46_4485(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----3vs.xn--1ug532c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----3vs.xn--1ug532c', strict=True)
+
+ def test_uts46_4486(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴏ󠅋-.\u200dⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴏ󠅋-.\u200dⴉ', strict=True)
+
+ def test_uts46_4487(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----00g.xn--hnd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----00g.xn--hnd', strict=True)
+
+ def test_uts46_4488(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----00g.xn--hnd399e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----00g.xn--hnd399e', strict=True)
+
+ def test_uts46_4489(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⇧𐨏\U000e0f88\U000efd85。\u0600\U000e0235󠆉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⇧𐨏\U000e0f88\U000efd85。\u0600\U000e0235󠆉', strict=True)
+
+ def test_uts46_4490(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l8g5552g64t4g46xf.xn--ifb08144p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l8g5552g64t4g46xf.xn--ifb08144p', strict=True)
+
+ def test_uts46_4491(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠𐮂.↑🄇⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠𐮂.↑🄇⒈', strict=True)
+
+ def test_uts46_4492(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠𐮂.↑🄇⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠𐮂.↑🄇⒈', strict=True)
+
+ def test_uts46_4493(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠𐮂.↑6,1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠𐮂.↑6,1.', strict=True)
+
+ def test_uts46_4494(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠𐮂.↑6,1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠𐮂.↑6,1.', strict=True)
+
+ def test_uts46_4495(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1chy492g.xn--6,1-pw1a.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1chy492g.xn--6,1-pw1a.', strict=True)
+
+ def test_uts46_4496(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1chy492g.xn--6,-uzus5m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1chy492g.xn--6,-uzus5m', strict=True)
+
+ def test_uts46_4497(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1chy492g.xn--45gx9iuy44d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1chy492g.xn--45gx9iuy44d', strict=True)
+
+ def test_uts46_4498(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝩏\U000e0c89ß.ᢤ\U0008498c\u200c𐹫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝩏\U000e0c89ß.ᢤ\U0008498c\u200c𐹫', strict=True)
+
+ def test_uts46_4499(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝩏\U000e0c89SS.ᢤ\U0008498c\u200c𐹫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝩏\U000e0c89SS.ᢤ\U0008498c\u200c𐹫', strict=True)
+
+ def test_uts46_4500(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝩏\U000e0c89ss.ᢤ\U0008498c\u200c𐹫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝩏\U000e0c89ss.ᢤ\U0008498c\u200c𐹫', strict=True)
+
+ def test_uts46_4501(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝩏\U000e0c89Ss.ᢤ\U0008498c\u200c𐹫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝩏\U000e0c89Ss.ᢤ\U0008498c\u200c𐹫', strict=True)
+
+ def test_uts46_4502(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-zb11ap1427e.xn--ubf2596jbt61c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-zb11ap1427e.xn--ubf2596jbt61c', strict=True)
+
+ def test_uts46_4503(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-zb11ap1427e.xn--ubf609atw1tynn3d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-zb11ap1427e.xn--ubf609atw1tynn3d', strict=True)
+
+ def test_uts46_4504(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca3153vupz3e.xn--ubf609atw1tynn3d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca3153vupz3e.xn--ubf609atw1tynn3d', strict=True)
+
+ def test_uts46_4505(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4506(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4507(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\U00010d73\U00057601ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\U00010d73\U00057601ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4508(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS\U00010d53\U00057601Ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS\U00010d53\U00057601Ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4509(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss\U00010d73\U00057601ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss\U00010d73\U00057601ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4510(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4511(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-e61ar955h4hs7b.xn--9x8a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-e61ar955h4hs7b.xn--9x8a', strict=True)
+
+ def test_uts46_4512(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca227tpy4lkns1b.xn--9x8a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca227tpy4lkns1b.xn--9x8a', strict=True)
+
+ def test_uts46_4513(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\U00010d73\U00057601ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\U00010d73\U00057601ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4514(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS\U00010d53\U00057601Ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS\U00010d53\U00057601Ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4515(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss\U00010d73\U00057601ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss\U00010d73\U00057601ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4516(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4517(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4518(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-rek7420r4hs7b.xn--9x8a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-rek7420r4hs7b.xn--9x8a', strict=True)
+
+ def test_uts46_4519(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca491fci5qkn79a.xn--9x8a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca491fci5qkn79a.xn--9x8a', strict=True)
+
+ def test_uts46_4520(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS\U00010d73\U00057601Ⴇ。ꙺ', strict=True)
+
+ def test_uts46_4521(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᜔。󠆣-𑋪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᜔。󠆣-𑋪', strict=True)
+
+ def test_uts46_4522(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fze.xn----ly8i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fze.xn----ly8i', strict=True)
+
+ def test_uts46_4523(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꯨ-.\U000a83dcֽß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꯨ-.\U000a83dcֽß', strict=True)
+
+ def test_uts46_4524(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꯨ-.\U000a83dcֽß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꯨ-.\U000a83dcֽß', strict=True)
+
+ def test_uts46_4525(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꯨ-.\U000a83dcֽSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꯨ-.\U000a83dcֽSS', strict=True)
+
+ def test_uts46_4526(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꯨ-.\U000a83dcֽss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꯨ-.\U000a83dcֽss', strict=True)
+
+ def test_uts46_4527(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꯨ-.\U000a83dcֽSs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꯨ-.\U000a83dcֽSs', strict=True)
+
+ def test_uts46_4528(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----pw5e.xn--ss-7jd10716y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----pw5e.xn--ss-7jd10716y', strict=True)
+
+ def test_uts46_4529(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----pw5e.xn--zca50wfv060a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----pw5e.xn--zca50wfv060a', strict=True)
+
+ def test_uts46_4530(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꯨ-.\U000a83dcֽSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꯨ-.\U000a83dcֽSS', strict=True)
+
+ def test_uts46_4531(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꯨ-.\U000a83dcֽss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꯨ-.\U000a83dcֽss', strict=True)
+
+ def test_uts46_4532(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꯨ-.\U000a83dcֽSs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꯨ-.\U000a83dcֽSs', strict=True)
+
+ def test_uts46_4533(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡓ-≮。٫󠅱ᡄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡓ-≮。٫󠅱ᡄ', strict=True)
+
+ def test_uts46_4534(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡓ-≮。٫󠅱ᡄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡓ-≮。٫󠅱ᡄ', strict=True)
+
+ def test_uts46_4535(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----s7j866c.xn--kib252g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----s7j866c.xn--kib252g', strict=True)
+
+ def test_uts46_4536(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟥♮𑜫࣭.្𑜫8󠆏', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟥♮𑜫࣭.្𑜫8󠆏', strict=True)
+
+ def test_uts46_4537(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3♮𑜫࣭.្𑜫8󠆏', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3♮𑜫࣭.្𑜫8󠆏', strict=True)
+
+ def test_uts46_4538(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-ksd277tlo7s.xn--8-f0jx021l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-ksd277tlo7s.xn--8-f0jx021l', strict=True)
+
+ def test_uts46_4539(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。\U00095300\u200d❡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。\U00095300\u200d❡', strict=True)
+
+ def test_uts46_4540(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。\U00095300\u200d❡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。\U00095300\u200d❡', strict=True)
+
+ def test_uts46_4541(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--nei54421f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--nei54421f', strict=True)
+
+ def test_uts46_4542(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--1ug800aq795s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--1ug800aq795s', strict=True)
+
+ def test_uts46_4543(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟓☱𝟐\U000a5c35。𝪮\U00050873', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟓☱𝟐\U000a5c35。𝪮\U00050873', strict=True)
+
+ def test_uts46_4544(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '5☱2\U000a5c35。𝪮\U00050873', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '5☱2\U000a5c35。𝪮\U00050873', strict=True)
+
+ def test_uts46_4545(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--52-dwx47758j.xn--kd3hk431k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--52-dwx47758j.xn--kd3hk431k', strict=True)
+
+ def test_uts46_4546(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.-├\U000969a3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.-├\U000969a3', strict=True)
+
+ def test_uts46_4547(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn----ukp70432h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn----ukp70432h', strict=True)
+
+ def test_uts46_4548(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֥ݭ。\u200d\U000e0018', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֥ݭ。\u200d\U000e0018', strict=True)
+
+ def test_uts46_4549(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '֥ݭ。\u200d\U000e0018', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '֥ݭ。\u200d\U000e0018', strict=True)
+
+ def test_uts46_4550(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wcb62g.xn--p526e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wcb62g.xn--p526e', strict=True)
+
+ def test_uts46_4551(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wcb62g.xn--1ugy8001l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wcb62g.xn--1ugy8001l', strict=True)
+
+ def test_uts46_4552(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '쥥\U000d43c9Ⴎ.\u200c⒈⒈𐫒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '쥥\U000d43c9Ⴎ.\u200c⒈⒈𐫒', strict=True)
+
+ def test_uts46_4553(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '쥥\U000d43c9Ⴎ.\u200c⒈⒈𐫒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '쥥\U000d43c9Ⴎ.\u200c⒈⒈𐫒', strict=True)
+
+ def test_uts46_4554(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '쥥\U000d43c9Ⴎ.\u200c1.1.𐫒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '쥥\U000d43c9Ⴎ.\u200c1.1.𐫒', strict=True)
+
+ def test_uts46_4555(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '쥥\U000d43c9Ⴎ.\u200c1.1.𐫒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '쥥\U000d43c9Ⴎ.\u200c1.1.𐫒', strict=True)
+
+ def test_uts46_4556(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '쥥\U000d43c9ⴎ.\u200c1.1.𐫒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '쥥\U000d43c9ⴎ.\u200c1.1.𐫒', strict=True)
+
+ def test_uts46_4557(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '쥥\U000d43c9ⴎ.\u200c1.1.𐫒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '쥥\U000d43c9ⴎ.\u200c1.1.𐫒', strict=True)
+
+ def test_uts46_4558(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5kj3511ccyw3h.1.1.xn--7w9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5kj3511ccyw3h.1.1.xn--7w9c', strict=True)
+
+ def test_uts46_4559(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5kj3511ccyw3h.xn--1-rgn.1.xn--7w9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5kj3511ccyw3h.xn--1-rgn.1.xn--7w9c', strict=True)
+
+ def test_uts46_4560(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '쥥\U000d43c9ⴎ.\u200c⒈⒈𐫒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '쥥\U000d43c9ⴎ.\u200c⒈⒈𐫒', strict=True)
+
+ def test_uts46_4561(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '쥥\U000d43c9ⴎ.\u200c⒈⒈𐫒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '쥥\U000d43c9ⴎ.\u200c⒈⒈𐫒', strict=True)
+
+ def test_uts46_4562(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5kj3511ccyw3h.xn--tsha6797o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5kj3511ccyw3h.xn--tsha6797o', strict=True)
+
+ def test_uts46_4563(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5kj3511ccyw3h.xn--0ug88oa0396u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5kj3511ccyw3h.xn--0ug88oa0396u', strict=True)
+
+ def test_uts46_4564(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mnd7865gcy28g.1.1.xn--7w9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mnd7865gcy28g.1.1.xn--7w9c', strict=True)
+
+ def test_uts46_4565(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mnd7865gcy28g.xn--1-rgn.1.xn--7w9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mnd7865gcy28g.xn--1-rgn.1.xn--7w9c', strict=True)
+
+ def test_uts46_4566(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mnd7865gcy28g.xn--tsha6797o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mnd7865gcy28g.xn--tsha6797o', strict=True)
+
+ def test_uts46_4567(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mnd7865gcy28g.xn--0ug88oa0396u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mnd7865gcy28g.xn--0ug88oa0396u', strict=True)
+
+ def test_uts46_4568(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࠧ𝟶ڠ-。𑄳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࠧ𝟶ڠ-。𑄳', strict=True)
+
+ def test_uts46_4569(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࠧ0ڠ-。𑄳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࠧ0ڠ-。𑄳', strict=True)
+
+ def test_uts46_4570(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0--p3d67m.xn--v80d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0--p3d67m.xn--v80d', strict=True)
+
+ def test_uts46_4571(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς.ﷁ🞛⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς.ﷁ🞛⒈', strict=True)
+
+ def test_uts46_4572(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς.فمي🞛1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς.فمي🞛1.', strict=True)
+
+ def test_uts46_4573(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ.فمي🞛1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ.فمي🞛1.', strict=True)
+
+ def test_uts46_4574(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ.فمي🞛1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ.فمي🞛1.', strict=True)
+
+ def test_uts46_4575(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa.xn--1-gocmu97674d.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa.xn--1-gocmu97674d.', strict=True)
+
+ def test_uts46_4576(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa.xn--1-gocmu97674d.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa.xn--1-gocmu97674d.', strict=True)
+
+ def test_uts46_4577(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ.ﷁ🞛⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ.ﷁ🞛⒈', strict=True)
+
+ def test_uts46_4578(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ.ﷁ🞛⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ.ﷁ🞛⒈', strict=True)
+
+ def test_uts46_4579(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa.xn--dhbip2802atb20c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa.xn--dhbip2802atb20c', strict=True)
+
+ def test_uts46_4580(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa.xn--dhbip2802atb20c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa.xn--dhbip2802atb20c', strict=True)
+
+ def test_uts46_4581(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🗩-。𐹻\U000d0786\U0006526e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🗩-。𐹻\U000d0786\U0006526e', strict=True)
+
+ def test_uts46_4582(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🗩-。𐹻\U000d0786\U0006526e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🗩-。𐹻\U000d0786\U0006526e', strict=True)
+
+ def test_uts46_4583(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----6t3s.xn--zo0d4811u6ru6a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----6t3s.xn--zo0d4811u6ru6a', strict=True)
+
+ def test_uts46_4584(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐡜-🔪。𝟻\u200c𐿀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐡜-🔪。𝟻\u200c𐿀', strict=True)
+
+ def test_uts46_4585(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐡜-🔪。5\u200c𐿀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐡜-🔪。5\u200c𐿀', strict=True)
+
+ def test_uts46_4586(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----5j4iv089c.xn--5-bn7i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----5j4iv089c.xn--5-bn7i', strict=True)
+
+ def test_uts46_4587(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----5j4iv089c.xn--5-sgn7149h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----5j4iv089c.xn--5-sgn7149h', strict=True)
+
+ def test_uts46_4588(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dß.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dß.ߏ0ּ', strict=True)
+
+ def test_uts46_4589(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dß.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dß.ߏ0ּ', strict=True)
+
+ def test_uts46_4590(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dß.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dß.ߏ0ּ', strict=True)
+
+ def test_uts46_4591(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dß.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dß.ߏ0ּ', strict=True)
+
+ def test_uts46_4592(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dSS.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dSS.ߏ0ּ', strict=True)
+
+ def test_uts46_4593(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dSS.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dSS.ߏ0ּ', strict=True)
+
+ def test_uts46_4594(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dss.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dss.ߏ0ּ', strict=True)
+
+ def test_uts46_4595(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dss.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dss.ߏ0ּ', strict=True)
+
+ def test_uts46_4596(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-i05i7041a.xn--0-vgc50n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-i05i7041a.xn--0-vgc50n', strict=True)
+
+ def test_uts46_4597(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-l1tu910fo0xd.xn--0-vgc50n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-l1tu910fo0xd.xn--0-vgc50n', strict=True)
+
+ def test_uts46_4598(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dSs.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dSs.ߏ0ּ', strict=True)
+
+ def test_uts46_4599(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dSs.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dSs.ߏ0ּ', strict=True)
+
+ def test_uts46_4600(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca770n5s4hev6c.xn--0-vgc50n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca770n5s4hev6c.xn--0-vgc50n', strict=True)
+
+ def test_uts46_4601(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dSS.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dSS.ߏ0ּ', strict=True)
+
+ def test_uts46_4602(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dSS.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dSS.ߏ0ּ', strict=True)
+
+ def test_uts46_4603(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dss.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dss.ߏ0ּ', strict=True)
+
+ def test_uts46_4604(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dss.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dss.ߏ0ּ', strict=True)
+
+ def test_uts46_4605(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dSs.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dSs.ߏ0ּ', strict=True)
+
+ def test_uts46_4606(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹣늿\u200dSs.ߏ0ּ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹣늿\u200dSs.ߏ0ּ', strict=True)
+
+ def test_uts46_4607(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9󠇥.\U000ead34ᢓ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9󠇥.\U000ead34ᢓ', strict=True)
+
+ def test_uts46_4608(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9󠇥.\U000ead34ᢓ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9󠇥.\U000ead34ᢓ', strict=True)
+
+ def test_uts46_4609(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '9.xn--dbf91222q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '9.xn--dbf91222q', strict=True)
+
+ def test_uts46_4610(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᅠ.𐫭🠗ß⽟', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᅠ.𐫭🠗ß⽟', strict=True)
+
+ def test_uts46_4611(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᅠ.𐫭🠗ß玉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᅠ.𐫭🠗ß玉', strict=True)
+
+ def test_uts46_4612(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᅠ.𐫭🠗SS玉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᅠ.𐫭🠗SS玉', strict=True)
+
+ def test_uts46_4613(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᅠ.𐫭🠗ss玉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᅠ.𐫭🠗ss玉', strict=True)
+
+ def test_uts46_4614(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᅠ.𐫭🠗Ss玉', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᅠ.𐫭🠗Ss玉', strict=True)
+
+ def test_uts46_4615(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--ss-je6eq954cp25j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--ss-je6eq954cp25j', strict=True)
+
+ def test_uts46_4616(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--ss-je6eq954cp25j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--ss-je6eq954cp25j', strict=True)
+
+ def test_uts46_4617(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--zca2289c550e0iwi', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--zca2289c550e0iwi', strict=True)
+
+ def test_uts46_4618(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᅠ.𐫭🠗SS⽟', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᅠ.𐫭🠗SS⽟', strict=True)
+
+ def test_uts46_4619(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᅠ.𐫭🠗ss⽟', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᅠ.𐫭🠗ss⽟', strict=True)
+
+ def test_uts46_4620(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cᅠ.𐫭🠗Ss⽟', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cᅠ.𐫭🠗Ss⽟', strict=True)
+
+ def test_uts46_4621(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--psd.xn--ss-je6eq954cp25j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--psd.xn--ss-je6eq954cp25j', strict=True)
+
+ def test_uts46_4622(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--psd526e.xn--ss-je6eq954cp25j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--psd526e.xn--ss-je6eq954cp25j', strict=True)
+
+ def test_uts46_4623(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--psd526e.xn--zca2289c550e0iwi', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--psd526e.xn--zca2289c550e0iwi', strict=True)
+
+ def test_uts46_4624(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cl7c.xn--ss-je6eq954cp25j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cl7c.xn--ss-je6eq954cp25j', strict=True)
+
+ def test_uts46_4625(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug7719f.xn--ss-je6eq954cp25j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug7719f.xn--ss-je6eq954cp25j', strict=True)
+
+ def test_uts46_4626(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug7719f.xn--zca2289c550e0iwi', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug7719f.xn--zca2289c550e0iwi', strict=True)
+
+ def test_uts46_4627(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒Ⴖͦ.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒Ⴖͦ.\u200c', strict=True)
+
+ def test_uts46_4628(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。Ⴖͦ.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。Ⴖͦ.\u200c', strict=True)
+
+ def test_uts46_4629(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。ⴖͦ.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。ⴖͦ.\u200c', strict=True)
+
+ def test_uts46_4630(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--hva754s.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--hva754s.', strict=True)
+
+ def test_uts46_4631(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--hva754s.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--hva754s.xn--0ug', strict=True)
+
+ def test_uts46_4632(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒ⴖͦ.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒ⴖͦ.\u200c', strict=True)
+
+ def test_uts46_4633(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hva754sy94k.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hva754sy94k.', strict=True)
+
+ def test_uts46_4634(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hva754sy94k.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hva754sy94k.xn--0ug', strict=True)
+
+ def test_uts46_4635(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--hva929d.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--hva929d.', strict=True)
+
+ def test_uts46_4636(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--hva929d.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--hva929d.xn--0ug', strict=True)
+
+ def test_uts46_4637(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hva929dl29p.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hva929dl29p.', strict=True)
+
+ def test_uts46_4638(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hva929dl29p.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hva929dl29p.xn--0ug', strict=True)
+
+ def test_uts46_4641(self):
+ self.assertEqual(idna.decode('Ⴖͦ.', uts46=True, strict=True), 'ⴖͦ.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴖͦ.', strict=True)
+
+ def test_uts46_4642(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hva929d.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hva929d.', strict=True)
+
+ def test_uts46_4643(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࢻ.\u200cႣ𞀒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࢻ.\u200cႣ𞀒', strict=True)
+
+ def test_uts46_4644(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࢻ.\u200cႣ𞀒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࢻ.\u200cႣ𞀒', strict=True)
+
+ def test_uts46_4645(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࢻ.\u200cⴃ𞀒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࢻ.\u200cⴃ𞀒', strict=True)
+
+ def test_uts46_4646(self):
+ self.assertEqual(idna.decode('xn--hzb.xn--ukj4430l', uts46=True, strict=True), 'ࢻ.ⴃ𞀒')
+ self.assertEqual(idna.encode('xn--hzb.xn--ukj4430l', uts46=True, strict=True), b'xn--hzb.xn--ukj4430l')
+
+ def test_uts46_4647(self):
+ self.assertEqual(idna.decode('ࢻ.ⴃ𞀒', uts46=True, strict=True), 'ࢻ.ⴃ𞀒')
+ self.assertEqual(idna.encode('ࢻ.ⴃ𞀒', uts46=True, strict=True), b'xn--hzb.xn--ukj4430l')
+
+ def test_uts46_4648(self):
+ self.assertEqual(idna.decode('ࢻ.Ⴃ𞀒', uts46=True, strict=True), 'ࢻ.ⴃ𞀒')
+ self.assertEqual(idna.encode('ࢻ.Ⴃ𞀒', uts46=True, strict=True), b'xn--hzb.xn--ukj4430l')
+
+ def test_uts46_4649(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hzb.xn--0ug822cp045a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hzb.xn--0ug822cp045a', strict=True)
+
+ def test_uts46_4650(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࢻ.\u200cⴃ𞀒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࢻ.\u200cⴃ𞀒', strict=True)
+
+ def test_uts46_4651(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hzb.xn--bnd2938u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hzb.xn--bnd2938u', strict=True)
+
+ def test_uts46_4652(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hzb.xn--bnd300f7225a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hzb.xn--bnd300f7225a', strict=True)
+
+ def test_uts46_4653(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c。2䫷\U000e09f7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c。2䫷\U000e09f7', strict=True)
+
+ def test_uts46_4654(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c。2䫷\U000e09f7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c。2䫷\U000e09f7', strict=True)
+
+ def test_uts46_4655(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--2-me5ay1273i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--2-me5ay1273i', strict=True)
+
+ def test_uts46_4656(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugb.xn--2-me5ay1273i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugb.xn--2-me5ay1273i', strict=True)
+
+ def test_uts46_4657(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𞀤\U000dc810。\U00088b16', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𞀤\U000dc810。\U00088b16', strict=True)
+
+ def test_uts46_4658(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rq4re4997d.xn--l707b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rq4re4997d.xn--l707b', strict=True)
+
+ def test_uts46_4659(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f36c2︒\u200c㟀.ؤ⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f36c2︒\u200c㟀.ؤ⒈', strict=True)
+
+ def test_uts46_4660(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f36c2︒\u200c㟀.ؤ⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f36c2︒\u200c㟀.ؤ⒈', strict=True)
+
+ def test_uts46_4661(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f36c2。\u200c㟀.ؤ1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f36c2。\u200c㟀.ؤ1.', strict=True)
+
+ def test_uts46_4662(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000f36c2。\u200c㟀.ؤ1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000f36c2。\u200c㟀.ؤ1.', strict=True)
+
+ def test_uts46_4663(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--z272f.xn--etl.xn--1-smc.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--z272f.xn--etl.xn--1-smc.', strict=True)
+
+ def test_uts46_4664(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--z272f.xn--0ug754g.xn--1-smc.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--z272f.xn--0ug754g.xn--1-smc.', strict=True)
+
+ def test_uts46_4665(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--etlt457ccrq7h.xn--jgb476m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--etlt457ccrq7h.xn--jgb476m', strict=True)
+
+ def test_uts46_4666(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug754gxl4ldlt0k.xn--jgb476m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug754gxl4ldlt0k.xn--jgb476m', strict=True)
+
+ def test_uts46_4667(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑲜ߊ𝅼。-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑲜ߊ𝅼。-\u200d', strict=True)
+
+ def test_uts46_4668(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lsb5482l7nre.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lsb5482l7nre.-', strict=True)
+
+ def test_uts46_4669(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lsb5482l7nre.xn----ugn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lsb5482l7nre.xn----ugn', strict=True)
+
+ def test_uts46_4670(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.Ⴉ≠𐫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.Ⴉ≠𐫶', strict=True)
+
+ def test_uts46_4671(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.Ⴉ≠𐫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.Ⴉ≠𐫶', strict=True)
+
+ def test_uts46_4672(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.Ⴉ≠𐫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.Ⴉ≠𐫶', strict=True)
+
+ def test_uts46_4673(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.Ⴉ≠𐫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.Ⴉ≠𐫶', strict=True)
+
+ def test_uts46_4674(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.ⴉ≠𐫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.ⴉ≠𐫶', strict=True)
+
+ def test_uts46_4675(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.ⴉ≠𐫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.ⴉ≠𐫶', strict=True)
+
+ def test_uts46_4676(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--1chx23bzj4p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--1chx23bzj4p', strict=True)
+
+ def test_uts46_4677(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--1chx23bzj4p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--1chx23bzj4p', strict=True)
+
+ def test_uts46_4678(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.ⴉ≠𐫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.ⴉ≠𐫶', strict=True)
+
+ def test_uts46_4679(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.ⴉ≠𐫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.ⴉ≠𐫶', strict=True)
+
+ def test_uts46_4680(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--hnd481gv73o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--hnd481gv73o', strict=True)
+
+ def test_uts46_4681(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--hnd481gv73o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--hnd481gv73o', strict=True)
+
+ def test_uts46_4682(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݐ。≯ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݐ。≯ς', strict=True)
+
+ def test_uts46_4683(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݐ。≯ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݐ。≯ς', strict=True)
+
+ def test_uts46_4684(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݐ。≯Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݐ。≯Σ', strict=True)
+
+ def test_uts46_4685(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݐ。≯Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݐ。≯Σ', strict=True)
+
+ def test_uts46_4686(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݐ。≯σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݐ。≯σ', strict=True)
+
+ def test_uts46_4687(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݐ。≯σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݐ。≯σ', strict=True)
+
+ def test_uts46_4688(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3ob.xn--4xa718m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3ob.xn--4xa718m', strict=True)
+
+ def test_uts46_4689(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3ob.xn--3xa918m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3ob.xn--3xa918m', strict=True)
+
+ def test_uts46_4690(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u07fc\U00010e06.\U0001358f︒\U0004aa29Ⴐ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u07fc\U00010e06.\U0001358f︒\U0004aa29Ⴐ', strict=True)
+
+ def test_uts46_4691(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u07fc\U00010e06.\U0001358f。\U0004aa29Ⴐ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u07fc\U00010e06.\U0001358f。\U0004aa29Ⴐ', strict=True)
+
+ def test_uts46_4692(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u07fc\U00010e06.\U0001358f。\U0004aa29ⴐ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u07fc\U00010e06.\U0001358f。\U0004aa29ⴐ', strict=True)
+
+ def test_uts46_4693(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0tb8725k.xn--tu8d.xn--7kj73887a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0tb8725k.xn--tu8d.xn--7kj73887a', strict=True)
+
+ def test_uts46_4694(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u07fc\U00010e06.\U0001358f︒\U0004aa29ⴐ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u07fc\U00010e06.\U0001358f︒\U0004aa29ⴐ', strict=True)
+
+ def test_uts46_4695(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0tb8725k.xn--7kj9008dt18a7py9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0tb8725k.xn--7kj9008dt18a7py9c', strict=True)
+
+ def test_uts46_4696(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0tb8725k.xn--tu8d.xn--ond97931d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0tb8725k.xn--tu8d.xn--ond97931d', strict=True)
+
+ def test_uts46_4697(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0tb8725k.xn--ond3562jt18a7py9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0tb8725k.xn--ond3562jt18a7py9c', strict=True)
+
+ def test_uts46_4698(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴥ⚭\U000e05ab⋃。𑌼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴥ⚭\U000e05ab⋃。𑌼', strict=True)
+
+ def test_uts46_4699(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴥ⚭\U000e05ab⋃。𑌼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴥ⚭\U000e05ab⋃。𑌼', strict=True)
+
+ def test_uts46_4700(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴥ⚭\U000e05ab⋃。𑌼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴥ⚭\U000e05ab⋃。𑌼', strict=True)
+
+ def test_uts46_4701(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vfh16m67gx1162b.xn--ro1d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vfh16m67gx1162b.xn--ro1d', strict=True)
+
+ def test_uts46_4702(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴥ⚭\U000e05ab⋃。𑌼', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴥ⚭\U000e05ab⋃。𑌼', strict=True)
+
+ def test_uts46_4703(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9nd623g4zc5z060c.xn--ro1d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9nd623g4zc5z060c.xn--ro1d', strict=True)
+
+ def test_uts46_4704(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄈。\U000e0df3ࡄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄈。\U000e0df3ࡄ', strict=True)
+
+ def test_uts46_4705(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '7,。\U000e0df3ࡄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '7,。\U000e0df3ࡄ', strict=True)
+
+ def test_uts46_4706(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '7,.xn--2vb13094p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '7,.xn--2vb13094p', strict=True)
+
+ def test_uts46_4707(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--107h.xn--2vb13094p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--107h.xn--2vb13094p', strict=True)
+
+ def test_uts46_4708(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ࡆ。섖쮖ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ࡆ。섖쮖ß', strict=True)
+
+ def test_uts46_4709(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ࡆ。섖쮖ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ࡆ。섖쮖ß', strict=True)
+
+ def test_uts46_4710(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ࡆ。섖쮖SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ࡆ。섖쮖SS', strict=True)
+
+ def test_uts46_4711(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ࡆ。섖쮖SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ࡆ。섖쮖SS', strict=True)
+
+ def test_uts46_4712(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ࡆ。섖쮖ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ࡆ。섖쮖ss', strict=True)
+
+ def test_uts46_4713(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ࡆ。섖쮖ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ࡆ。섖쮖ss', strict=True)
+
+ def test_uts46_4714(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4vb505k.xn--ss-5z4j006a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4vb505k.xn--ss-5z4j006a', strict=True)
+
+ def test_uts46_4715(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ࡆ。섖쮖Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ࡆ。섖쮖Ss', strict=True)
+
+ def test_uts46_4716(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮ࡆ。섖쮖Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮ࡆ。섖쮖Ss', strict=True)
+
+ def test_uts46_4717(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4vb505k.xn--zca7259goug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4vb505k.xn--zca7259goug', strict=True)
+
+ def test_uts46_4718(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆓⛏-。ꡒ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆓⛏-。ꡒ', strict=True)
+
+ def test_uts46_4719(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----o9p.xn--rc9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----o9p.xn--rc9a', strict=True)
+
+ def test_uts46_4720(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u07bb𐹳ئ𑁆。ࢧڰ\u200cᢒ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u07bb𐹳ئ𑁆。ࢧڰ\u200cᢒ', strict=True)
+
+ def test_uts46_4721(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u07bb𐹳ئ𑁆。ࢧڰ\u200cᢒ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u07bb𐹳ئ𑁆。ࢧڰ\u200cᢒ', strict=True)
+
+ def test_uts46_4722(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lgb32f2753cosb.xn--jkb91hlz1a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lgb32f2753cosb.xn--jkb91hlz1a', strict=True)
+
+ def test_uts46_4723(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lgb32f2753cosb.xn--jkb91hlz1azih', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lgb32f2753cosb.xn--jkb91hlz1azih', strict=True)
+
+ def test_uts46_4724(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࠖ.𐨕\U0001a695', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࠖ.𐨕\U0001a695', strict=True)
+
+ def test_uts46_4725(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rub.xn--tr9c248x', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rub.xn--tr9c248x', strict=True)
+
+ def test_uts46_4726(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '--。\U0003d286ݧ𐽋𞠬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '--。\U0003d286ݧ𐽋𞠬', strict=True)
+
+ def test_uts46_4727(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '--.xn--rpb6226k77pfh58p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '--.xn--rpb6226k77pfh58p', strict=True)
+
+ def test_uts46_4728(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0009bb66𐋥\U00039e10.≯ࢰࢦ\U000d46e3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0009bb66𐋥\U00039e10.≯ࢰࢦ\U000d46e3', strict=True)
+
+ def test_uts46_4729(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0009bb66𐋥\U00039e10.≯ࢰࢦ\U000d46e3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0009bb66𐋥\U00039e10.≯ࢰࢦ\U000d46e3', strict=True)
+
+ def test_uts46_4730(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--887c2298i5mv6a.xn--vybt688qm8981a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--887c2298i5mv6a.xn--vybt688qm8981a', strict=True)
+
+ def test_uts46_4731(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䔛󠇒\U000a4e1e𐹧.-䤷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䔛󠇒\U000a4e1e𐹧.-䤷', strict=True)
+
+ def test_uts46_4732(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䔛󠇒\U000a4e1e𐹧.-䤷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䔛󠇒\U000a4e1e𐹧.-䤷', strict=True)
+
+ def test_uts46_4733(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2loy662coo60e.xn----0n4a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2loy662coo60e.xn----0n4a', strict=True)
+
+ def test_uts46_4734(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹩.\u200d-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹩.\u200d-', strict=True)
+
+ def test_uts46_4735(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹩.\u200d-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹩.\u200d-', strict=True)
+
+ def test_uts46_4736(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ho0d.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ho0d.-', strict=True)
+
+ def test_uts46_4737(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ho0d.xn----tgn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ho0d.xn----tgn', strict=True)
+
+ def test_uts46_4738(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00042226帷。≯萺᷈-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00042226帷。≯萺᷈-', strict=True)
+
+ def test_uts46_4739(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00042226帷。≯萺᷈-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00042226帷。≯萺᷈-', strict=True)
+
+ def test_uts46_4740(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00042226帷。≯萺᷈-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00042226帷。≯萺᷈-', strict=True)
+
+ def test_uts46_4741(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00042226帷。≯萺᷈-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00042226帷。≯萺᷈-', strict=True)
+
+ def test_uts46_4742(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qutw175s.xn----mimu6tf67j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qutw175s.xn----mimu6tf67j', strict=True)
+
+ def test_uts46_4743(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d攌꯭。ᢖ-Ⴘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d攌꯭。ᢖ-Ⴘ', strict=True)
+
+ def test_uts46_4744(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d攌꯭。ᢖ-ⴘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d攌꯭。ᢖ-ⴘ', strict=True)
+
+ def test_uts46_4745(self):
+ self.assertEqual(idna.decode('xn--p9ut19m.xn----mck373i', uts46=True, strict=True), '攌꯭.ᢖ-ⴘ')
+ self.assertEqual(idna.encode('xn--p9ut19m.xn----mck373i', uts46=True, strict=True), b'xn--p9ut19m.xn----mck373i')
+
+ def test_uts46_4746(self):
+ self.assertEqual(idna.decode('攌꯭.ᢖ-ⴘ', uts46=True, strict=True), '攌꯭.ᢖ-ⴘ')
+ self.assertEqual(idna.encode('攌꯭.ᢖ-ⴘ', uts46=True, strict=True), b'xn--p9ut19m.xn----mck373i')
+
+ def test_uts46_4747(self):
+ self.assertEqual(idna.decode('攌꯭.ᢖ-Ⴘ', uts46=True, strict=True), '攌꯭.ᢖ-ⴘ')
+ self.assertEqual(idna.encode('攌꯭.ᢖ-Ⴘ', uts46=True, strict=True), b'xn--p9ut19m.xn----mck373i')
+
+ def test_uts46_4748(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug592ykp6b.xn----mck373i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug592ykp6b.xn----mck373i', strict=True)
+
+ def test_uts46_4749(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--p9ut19m.xn----k1g451d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--p9ut19m.xn----k1g451d', strict=True)
+
+ def test_uts46_4750(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug592ykp6b.xn----k1g451d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug592ykp6b.xn----k1g451d', strict=True)
+
+ def test_uts46_4751(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cꖨ.⒗3툒۳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cꖨ.⒗3툒۳', strict=True)
+
+ def test_uts46_4752(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cꖨ.⒗3툒۳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cꖨ.⒗3툒۳', strict=True)
+
+ def test_uts46_4753(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cꖨ.16.3툒۳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cꖨ.16.3툒۳', strict=True)
+
+ def test_uts46_4754(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cꖨ.16.3툒۳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cꖨ.16.3툒۳', strict=True)
+
+ def test_uts46_4755(self):
+ self.assertEqual(idna.decode('xn--9r8a.16.xn--3-nyc0117m', uts46=True, strict=True), 'ꖨ.16.3툒۳')
+ self.assertEqual(idna.encode('xn--9r8a.16.xn--3-nyc0117m', uts46=True, strict=True), b'xn--9r8a.16.xn--3-nyc0117m')
+
+ def test_uts46_4756(self):
+ self.assertEqual(idna.decode('ꖨ.16.3툒۳', uts46=True, strict=True), 'ꖨ.16.3툒۳')
+ self.assertEqual(idna.encode('ꖨ.16.3툒۳', uts46=True, strict=True), b'xn--9r8a.16.xn--3-nyc0117m')
+
+ def test_uts46_4757(self):
+ self.assertEqual(idna.decode('ꖨ.16.3툒۳', uts46=True, strict=True), 'ꖨ.16.3툒۳')
+ self.assertEqual(idna.encode('ꖨ.16.3툒۳', uts46=True, strict=True), b'xn--9r8a.16.xn--3-nyc0117m')
+
+ def test_uts46_4758(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug2473c.16.xn--3-nyc0117m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug2473c.16.xn--3-nyc0117m', strict=True)
+
+ def test_uts46_4759(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9r8a.xn--3-nyc678tu07m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9r8a.xn--3-nyc678tu07m', strict=True)
+
+ def test_uts46_4760(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug2473c.xn--3-nyc678tu07m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug2473c.xn--3-nyc678tu07m', strict=True)
+
+ def test_uts46_4761(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈걾6.𐱁ې', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈걾6.𐱁ې', strict=True)
+
+ def test_uts46_4762(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈걾6.𐱁ې', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈걾6.𐱁ې', strict=True)
+
+ def test_uts46_4766(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-dcps419c.xn--glb1794k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-dcps419c.xn--glb1794k', strict=True)
+
+ def test_uts46_4767(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐲞𝟶≮≮.\U000e0027ع', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐲞𝟶≮≮.\U000e0027ع', strict=True)
+
+ def test_uts46_4768(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐲞𝟶≮≮.\U000e0027ع', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐲞𝟶≮≮.\U000e0027ع', strict=True)
+
+ def test_uts46_4769(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐲞0≮≮.\U000e0027ع', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐲞0≮≮.\U000e0027ع', strict=True)
+
+ def test_uts46_4770(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐲞0≮≮.\U000e0027ع', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐲞0≮≮.\U000e0027ع', strict=True)
+
+ def test_uts46_4771(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐳞0≮≮.\U000e0027ع', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐳞0≮≮.\U000e0027ع', strict=True)
+
+ def test_uts46_4772(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐳞0≮≮.\U000e0027ع', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐳞0≮≮.\U000e0027ع', strict=True)
+
+ def test_uts46_4773(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0-ngoa5711v.xn--4gb31034p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0-ngoa5711v.xn--4gb31034p', strict=True)
+
+ def test_uts46_4774(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐳞𝟶≮≮.\U000e0027ع', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐳞𝟶≮≮.\U000e0027ع', strict=True)
+
+ def test_uts46_4775(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐳞𝟶≮≮.\U000e0027ع', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐳞𝟶≮≮.\U000e0027ع', strict=True)
+
+ def test_uts46_4776(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ૣ.𐹺ᅟ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ૣ.𐹺ᅟ', strict=True)
+
+ def test_uts46_4777(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8fc.xn--yo0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8fc.xn--yo0d', strict=True)
+
+ def test_uts46_4778(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8fc.xn--osd3070k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8fc.xn--osd3070k', strict=True)
+
+ def test_uts46_4779(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟏𝨙⸖.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟏𝨙⸖.\u200d', strict=True)
+
+ def test_uts46_4780(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1𝨙⸖.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1𝨙⸖.\u200d', strict=True)
+
+ def test_uts46_4781(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-5bt6845n.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-5bt6845n.', strict=True)
+
+ def test_uts46_4782(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1𝨙⸖.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1𝨙⸖.', strict=True)
+
+ def test_uts46_4783(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-5bt6845n.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-5bt6845n.xn--1ug', strict=True)
+
+ def test_uts46_4784(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤐≠ܦ᩠。-\u200cߕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤐≠ܦ᩠。-\u200cߕ', strict=True)
+
+ def test_uts46_4785(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤐≠ܦ᩠。-\u200cߕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤐≠ܦ᩠。-\u200cߕ', strict=True)
+
+ def test_uts46_4786(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤐≠ܦ᩠。-\u200cߕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤐≠ܦ᩠。-\u200cߕ', strict=True)
+
+ def test_uts46_4787(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤐≠ܦ᩠。-\u200cߕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤐≠ܦ᩠。-\u200cߕ', strict=True)
+
+ def test_uts46_4788(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤲≠ܦ᩠。-\u200cߕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤲≠ܦ᩠。-\u200cߕ', strict=True)
+
+ def test_uts46_4789(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤲≠ܦ᩠。-\u200cߕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤲≠ܦ᩠。-\u200cߕ', strict=True)
+
+ def test_uts46_4790(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wnb859grzfzw60c.xn----kcd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wnb859grzfzw60c.xn----kcd', strict=True)
+
+ def test_uts46_4791(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wnb859grzfzw60c.xn----kcd017p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wnb859grzfzw60c.xn----kcd017p', strict=True)
+
+ def test_uts46_4792(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤲≠ܦ᩠。-\u200cߕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤲≠ܦ᩠。-\u200cߕ', strict=True)
+
+ def test_uts46_4793(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤲≠ܦ᩠。-\u200cߕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤲≠ܦ᩠。-\u200cߕ', strict=True)
+
+ def test_uts46_4794(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹰ͨ-ꡧ。ٵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹰ͨ-ꡧ。ٵ', strict=True)
+
+ def test_uts46_4795(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹰ͨ-ꡧ。اٴ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹰ͨ-ꡧ。اٴ', strict=True)
+
+ def test_uts46_4796(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----shb2387jgkqd.xn--mgb8m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----shb2387jgkqd.xn--mgb8m', strict=True)
+
+ def test_uts46_4797(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'F󠅟。\U0008f5c5♚', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'F󠅟。\U0008f5c5♚', strict=True)
+
+ def test_uts46_4798(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'F󠅟。\U0008f5c5♚', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'F󠅟。\U0008f5c5♚', strict=True)
+
+ def test_uts46_4799(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'f󠅟。\U0008f5c5♚', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'f󠅟。\U0008f5c5♚', strict=True)
+
+ def test_uts46_4800(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'f.xn--45hz6953f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'f.xn--45hz6953f', strict=True)
+
+ def test_uts46_4801(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'f󠅟。\U0008f5c5♚', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'f󠅟。\U0008f5c5♚', strict=True)
+
+ def test_uts46_4802(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '୍𑄴ᷩ。𝟮Ⴘ𞀨\U00043947', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '୍𑄴ᷩ。𝟮Ⴘ𞀨\U00043947', strict=True)
+
+ def test_uts46_4803(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '୍𑄴ᷩ。2Ⴘ𞀨\U00043947', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '୍𑄴ᷩ。2Ⴘ𞀨\U00043947', strict=True)
+
+ def test_uts46_4804(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '୍𑄴ᷩ。2ⴘ𞀨\U00043947', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '୍𑄴ᷩ。2ⴘ𞀨\U00043947', strict=True)
+
+ def test_uts46_4805(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ic246gs21p.xn--2-nws2918ndrjr', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ic246gs21p.xn--2-nws2918ndrjr', strict=True)
+
+ def test_uts46_4806(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '୍𑄴ᷩ。𝟮ⴘ𞀨\U00043947', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '୍𑄴ᷩ。𝟮ⴘ𞀨\U00043947', strict=True)
+
+ def test_uts46_4807(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ic246gs21p.xn--2-k1g43076adrwq', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ic246gs21p.xn--2-k1g43076adrwq', strict=True)
+
+ def test_uts46_4808(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0009382d\u200c\u200c⒈。勉𑁅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0009382d\u200c\u200c⒈。勉𑁅', strict=True)
+
+ def test_uts46_4809(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0009382d\u200c\u200c1.。勉𑁅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0009382d\u200c\u200c1.。勉𑁅', strict=True)
+
+ def test_uts46_4810(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-yi00h..xn--4grs325b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-yi00h..xn--4grs325b', strict=True)
+
+ def test_uts46_4811(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-rgna61159u..xn--4grs325b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-rgna61159u..xn--4grs325b', strict=True)
+
+ def test_uts46_4812(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh11906f.xn--4grs325b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh11906f.xn--4grs325b', strict=True)
+
+ def test_uts46_4813(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0uga855aez302a.xn--4grs325b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0uga855aez302a.xn--4grs325b', strict=True)
+
+ def test_uts46_4814(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡃ.玿\U0006b21c\U000d5790', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡃ.玿\U0006b21c\U000d5790', strict=True)
+
+ def test_uts46_4815(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--27e.xn--7cy81125a0yq4a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--27e.xn--7cy81125a0yq4a', strict=True)
+
+ def test_uts46_4816(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200c。⒈≯𝟵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200c。⒈≯𝟵', strict=True)
+
+ def test_uts46_4817(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200c。⒈≯𝟵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200c。⒈≯𝟵', strict=True)
+
+ def test_uts46_4818(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200c。1.≯9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200c。1.≯9', strict=True)
+
+ def test_uts46_4819(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\u200c。1.≯9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\u200c。1.≯9', strict=True)
+
+ def test_uts46_4820(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.1.xn--9-ogo', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.1.xn--9-ogo', strict=True)
+
+ def test_uts46_4821(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0uga.1.xn--9-ogo', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0uga.1.xn--9-ogo', strict=True)
+
+ def test_uts46_4822(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--9-ogo37g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--9-ogo37g', strict=True)
+
+ def test_uts46_4823(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0uga.xn--9-ogo37g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0uga.xn--9-ogo37g', strict=True)
+
+ def test_uts46_4824(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟᷠ\U00090001.\U0003aec6≯𐮁', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟᷠ\U00090001.\U0003aec6≯𐮁', strict=True)
+
+ def test_uts46_4825(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟᷠ\U00090001.\U0003aec6≯𐮁', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟᷠ\U00090001.\U0003aec6≯𐮁', strict=True)
+
+ def test_uts46_4826(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4eg41418g.xn--hdh5192gkm6r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4eg41418g.xn--hdh5192gkm6r', strict=True)
+
+ def test_uts46_4827(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--osd615d5659o.xn--hdh5192gkm6r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--osd615d5659o.xn--hdh5192gkm6r', strict=True)
+
+ def test_uts46_4828(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄫𝩤\u200dؾ.𝩩-ࠞ\U000d1f29', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄫𝩤\u200dؾ.𝩩-ࠞ\U000d1f29', strict=True)
+
+ def test_uts46_4829(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9gb5080v.xn----qgd52296avol4f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9gb5080v.xn----qgd52296avol4f', strict=True)
+
+ def test_uts46_4830(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9gb723kg862a.xn----qgd52296avol4f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9gb723kg862a.xn----qgd52296avol4f', strict=True)
+
+ def test_uts46_4831(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃚.𑘿-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃚.𑘿-', strict=True)
+
+ def test_uts46_4832(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃚.𑘿-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃚.𑘿-', strict=True)
+
+ def test_uts46_4833(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--w0g.xn----bd0j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--w0g.xn----bd0j', strict=True)
+
+ def test_uts46_4834(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䮸ß.\U000e0d5f\U000e0b4e紙ࢨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䮸ß.\U000e0d5f\U000e0b4e紙ࢨ', strict=True)
+
+ def test_uts46_4835(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䮸SS.\U000e0d5f\U000e0b4e紙ࢨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䮸SS.\U000e0d5f\U000e0b4e紙ࢨ', strict=True)
+
+ def test_uts46_4836(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䮸ss.\U000e0d5f\U000e0b4e紙ࢨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䮸ss.\U000e0d5f\U000e0b4e紙ࢨ', strict=True)
+
+ def test_uts46_4837(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䮸Ss.\U000e0d5f\U000e0b4e紙ࢨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䮸Ss.\U000e0d5f\U000e0b4e紙ࢨ', strict=True)
+
+ def test_uts46_4838(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-sf1c.xn--xyb1370div70kpzba', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-sf1c.xn--xyb1370div70kpzba', strict=True)
+
+ def test_uts46_4839(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca5349a.xn--xyb1370div70kpzba', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca5349a.xn--xyb1370div70kpzba', strict=True)
+
+ def test_uts46_4840(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-Ⴞ.-𝩨⅔𐦕', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-Ⴞ.-𝩨⅔𐦕', strict=True)
+
+ def test_uts46_4841(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-Ⴞ.-𝩨2⁄3𐦕', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-Ⴞ.-𝩨2⁄3𐦕', strict=True)
+
+ def test_uts46_4842(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ⴞ.-𝩨2⁄3𐦕', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ⴞ.-𝩨2⁄3𐦕', strict=True)
+
+ def test_uts46_4843(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----zws.xn---23-pt0a0433lk3jj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----zws.xn---23-pt0a0433lk3jj', strict=True)
+
+ def test_uts46_4844(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ⴞ.-𝩨⅔𐦕', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ⴞ.-𝩨⅔𐦕', strict=True)
+
+ def test_uts46_4845(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----w1g.xn---23-pt0a0433lk3jj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----w1g.xn---23-pt0a0433lk3jj', strict=True)
+
+ def test_uts46_4846(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e722f𐹯ૂ。\U000968a8𐮁\U00047f16ᡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e722f𐹯ૂ。\U000968a8𐮁\U00047f16ᡂ', strict=True)
+
+ def test_uts46_4847(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e722f𐹯ૂ。\U000968a8𐮁\U00047f16ᡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e722f𐹯ૂ。\U000968a8𐮁\U00047f16ᡂ', strict=True)
+
+ def test_uts46_4848(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bfc7604kv8m3g.xn--17e5565jl7zw4h16a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bfc7604kv8m3g.xn--17e5565jl7zw4h16a', strict=True)
+
+ def test_uts46_4849(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ႂ-\u200d꣪.ꡊ\u200d\U0007ce33', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ႂ-\u200d꣪.ꡊ\u200d\U0007ce33', strict=True)
+
+ def test_uts46_4850(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ႂ-\u200d꣪.ꡊ\u200d\U0007ce33', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ႂ-\u200d꣪.ꡊ\u200d\U0007ce33', strict=True)
+
+ def test_uts46_4851(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gyg3618i.xn--jc9ao4185a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gyg3618i.xn--jc9ao4185a', strict=True)
+
+ def test_uts46_4852(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----gyg250jio7k.xn--1ug8774cri56d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----gyg250jio7k.xn--1ug8774cri56d', strict=True)
+
+ def test_uts46_4853(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '۱。≠٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '۱。≠٨', strict=True)
+
+ def test_uts46_4854(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '۱。≠٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '۱。≠٨', strict=True)
+
+ def test_uts46_4855(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--emb.xn--hib334l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--emb.xn--hib334l', strict=True)
+
+ def test_uts46_4856(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑈵廊.𐠍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑈵廊.𐠍', strict=True)
+
+ def test_uts46_4857(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xytw701b.xn--yc9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xytw701b.xn--yc9c', strict=True)
+
+ def test_uts46_4858(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d͖-.-Ⴐ١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d͖-.-Ⴐ١', strict=True)
+
+ def test_uts46_4859(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d͖-.-Ⴐ١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d͖-.-Ⴐ١', strict=True)
+
+ def test_uts46_4860(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d͖-.-ⴐ١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d͖-.-ⴐ١', strict=True)
+
+ def test_uts46_4861(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rgb.xn----bqc2280a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rgb.xn----bqc2280a', strict=True)
+
+ def test_uts46_4862(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rgb661t.xn----bqc2280a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rgb661t.xn----bqc2280a', strict=True)
+
+ def test_uts46_4863(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d͖-.-ⴐ١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d͖-.-ⴐ١', strict=True)
+
+ def test_uts46_4864(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rgb.xn----bqc030f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rgb.xn----bqc030f', strict=True)
+
+ def test_uts46_4865(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----rgb661t.xn----bqc030f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----rgb661t.xn----bqc030f', strict=True)
+
+ def test_uts46_4866(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'غ١挏\U000febd0.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'غ١挏\U000febd0.-', strict=True)
+
+ def test_uts46_4867(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5gb2f4205aqi47p.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5gb2f4205aqi47p.-', strict=True)
+
+ def test_uts46_4868(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۯ。𐹧𞤽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۯ。𐹧𞤽', strict=True)
+
+ def test_uts46_4869(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۯ。𐹧𞤽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۯ。𐹧𞤽', strict=True)
+
+ def test_uts46_4870(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۯ。𐹧𞤛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۯ。𐹧𞤛', strict=True)
+
+ def test_uts46_4871(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--cmb.xn--fo0dy848a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--cmb.xn--fo0dy848a', strict=True)
+
+ def test_uts46_4872(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ۯ。𐹧𞤛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ۯ。𐹧𞤛', strict=True)
+
+ def test_uts46_4873(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+
+ def test_uts46_4874(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+
+ def test_uts46_4875(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+
+ def test_uts46_4876(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+
+ def test_uts46_4877(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+
+ def test_uts46_4878(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+
+ def test_uts46_4879(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mlj0486jgl2j.xn--hbf6853f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mlj0486jgl2j.xn--hbf6853f', strict=True)
+
+ def test_uts46_4880(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+
+ def test_uts46_4881(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴞ\U000366c0\U0001b5fb.ᢗ릫', strict=True)
+
+ def test_uts46_4882(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2nd8876sgl2j.xn--hbf6853f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2nd8876sgl2j.xn--hbf6853f', strict=True)
+
+ def test_uts46_4883(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0383\U000d7b5eڷ𐹷。≯\u200c᷾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0383\U000d7b5eڷ𐹷。≯\u200c᷾', strict=True)
+
+ def test_uts46_4884(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0383\U000d7b5eڷ𐹷。≯\u200c᷾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0383\U000d7b5eڷ𐹷。≯\u200c᷾', strict=True)
+
+ def test_uts46_4885(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0383\U000d7b5eڷ𐹷。≯\u200c᷾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0383\U000d7b5eڷ𐹷。≯\u200c᷾', strict=True)
+
+ def test_uts46_4886(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0383\U000d7b5eڷ𐹷。≯\u200c᷾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0383\U000d7b5eڷ𐹷。≯\u200c᷾', strict=True)
+
+ def test_uts46_4887(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qkb4516kbi06fg2id.xn--zfg31q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qkb4516kbi06fg2id.xn--zfg31q', strict=True)
+
+ def test_uts46_4888(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qkb4516kbi06fg2id.xn--zfg59fm0c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qkb4516kbi06fg2id.xn--zfg59fm0c', strict=True)
+
+ def test_uts46_4889(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᛎ󠅍\U000e0415\u200d。𐹾𐹪\U00010edd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᛎ󠅍\U000e0415\u200d。𐹾𐹪\U00010edd-', strict=True)
+
+ def test_uts46_4890(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᛎ󠅍\U000e0415\u200d。𐹾𐹪\U00010edd-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᛎ󠅍\U000e0415\u200d。𐹾𐹪\U00010edd-', strict=True)
+
+ def test_uts46_4891(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fxe63563p.xn----q26i2bvu', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fxe63563p.xn----q26i2bvu', strict=True)
+
+ def test_uts46_4892(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fxe848bq3411a.xn----q26i2bvu', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fxe848bq3411a.xn----q26i2bvu', strict=True)
+
+ def test_uts46_4893(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹶.𐫂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹶.𐫂', strict=True)
+
+ def test_uts46_4894(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uo0d.xn--rw9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uo0d.xn--rw9c', strict=True)
+
+ def test_uts46_4895(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\u200d်。⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\u200d်。⒈', strict=True)
+
+ def test_uts46_4896(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß\u200d်。1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß\u200d်。1.', strict=True)
+
+ def test_uts46_4897(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS\u200d်。1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS\u200d်。1.', strict=True)
+
+ def test_uts46_4898(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss\u200d်。1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss\u200d်。1.', strict=True)
+
+ def test_uts46_4899(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss\u200d်。1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss\u200d်。1.', strict=True)
+
+ def test_uts46_4902(self):
+ self.assertEqual(idna.decode('SS်.B.', uts46=True, strict=True), 'ss်.b.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS်.B.', strict=True)
+
+ def test_uts46_4903(self):
+ self.assertEqual(idna.decode('Ss်.b.', uts46=True, strict=True), 'ss်.b.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss်.b.', strict=True)
+
+ def test_uts46_4904(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-f4j585j.b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-f4j585j.b.', strict=True)
+
+ def test_uts46_4905(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca679eh2l.b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca679eh2l.b.', strict=True)
+
+ def test_uts46_4906(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS\u200d်。⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS\u200d်。⒈', strict=True)
+
+ def test_uts46_4907(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss\u200d်。⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss\u200d်。⒈', strict=True)
+
+ def test_uts46_4908(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss\u200d်。⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss\u200d်。⒈', strict=True)
+
+ def test_uts46_4909(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-f4j.xn--tsh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-f4j.xn--tsh', strict=True)
+
+ def test_uts46_4910(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-f4j585j.xn--tsh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-f4j585j.xn--tsh', strict=True)
+
+ def test_uts46_4911(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca679eh2l.xn--tsh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca679eh2l.xn--tsh', strict=True)
+
+ def test_uts46_4912(self):
+ self.assertEqual(idna.decode('SS်.b.', uts46=True, strict=True), 'ss်.b.')
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS်.b.', strict=True)
+
+ def test_uts46_4913(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '୍\u200c\U00019db5\U0001eed8。\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '୍\u200c\U00019db5\U0001eed8。\u200d', strict=True)
+
+ def test_uts46_4914(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ic6417rn4xb.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ic6417rn4xb.', strict=True)
+
+ def test_uts46_4915(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9ic637hz82z32jc.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9ic637hz82z32jc.xn--1ug', strict=True)
+
+ def test_uts46_4916(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐮅。ڼ🁕', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐮅。ڼ🁕', strict=True)
+
+ def test_uts46_4917(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐮅。ڼ🁕', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐮅。ڼ🁕', strict=True)
+
+ def test_uts46_4918(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--c29c.xn--vkb8871w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--c29c.xn--vkb8871w', strict=True)
+
+ def test_uts46_4919(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ؠ្。𐫔\U000e0027\u200c𑈵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ؠ្。𐫔\U000e0027\u200c𑈵', strict=True)
+
+ def test_uts46_4920(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fgb471g.xn--9w9c29jw3931a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fgb471g.xn--9w9c29jw3931a', strict=True)
+
+ def test_uts46_4921(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fgb471g.xn--0ug9853g7verp838a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fgb471g.xn--0ug9853g7verp838a', strict=True)
+
+ def test_uts46_4922(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004b255.𞣕𞤊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004b255.𞣕𞤊', strict=True)
+
+ def test_uts46_4923(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0004b255.𞣕𞤬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0004b255.𞣕𞤬', strict=True)
+
+ def test_uts46_4924(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tf5w.xn--2b6hof', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tf5w.xn--2b6hof', strict=True)
+
+ def test_uts46_4925(self):
+ self.assertEqual(idna.decode('ی𐨿.ß྄𑍬', uts46=True, strict=True), 'ی𐨿.ß྄𑍬')
+ self.assertEqual(idna.encode('ی𐨿.ß྄𑍬', uts46=True, strict=True), b'xn--clb2593k.xn--zca216edt0r')
+
+ def test_uts46_4926(self):
+ self.assertEqual(idna.decode('ی𐨿.ß྄𑍬', uts46=True, strict=True), 'ی𐨿.ß྄𑍬')
+ self.assertEqual(idna.encode('ی𐨿.ß྄𑍬', uts46=True, strict=True), b'xn--clb2593k.xn--zca216edt0r')
+
+ def test_uts46_4927(self):
+ self.assertEqual(idna.decode('ی𐨿.SS྄𑍬', uts46=True, strict=True), 'ی𐨿.ss྄𑍬')
+ self.assertEqual(idna.encode('ی𐨿.SS྄𑍬', uts46=True, strict=True), b'xn--clb2593k.xn--ss-toj6092t')
+
+ def test_uts46_4928(self):
+ self.assertEqual(idna.decode('ی𐨿.ss྄𑍬', uts46=True, strict=True), 'ی𐨿.ss྄𑍬')
+ self.assertEqual(idna.encode('ی𐨿.ss྄𑍬', uts46=True, strict=True), b'xn--clb2593k.xn--ss-toj6092t')
+
+ def test_uts46_4929(self):
+ self.assertEqual(idna.decode('xn--clb2593k.xn--ss-toj6092t', uts46=True, strict=True), 'ی𐨿.ss྄𑍬')
+ self.assertEqual(idna.encode('xn--clb2593k.xn--ss-toj6092t', uts46=True, strict=True), b'xn--clb2593k.xn--ss-toj6092t')
+
+ def test_uts46_4930(self):
+ self.assertEqual(idna.decode('xn--clb2593k.xn--zca216edt0r', uts46=True, strict=True), 'ی𐨿.ß྄𑍬')
+ self.assertEqual(idna.encode('xn--clb2593k.xn--zca216edt0r', uts46=True, strict=True), b'xn--clb2593k.xn--zca216edt0r')
+
+ def test_uts46_4931(self):
+ self.assertEqual(idna.decode('ی𐨿.SS྄𑍬', uts46=True, strict=True), 'ی𐨿.ss྄𑍬')
+ self.assertEqual(idna.encode('ی𐨿.SS྄𑍬', uts46=True, strict=True), b'xn--clb2593k.xn--ss-toj6092t')
+
+ def test_uts46_4932(self):
+ self.assertEqual(idna.decode('ی𐨿.ss྄𑍬', uts46=True, strict=True), 'ی𐨿.ss྄𑍬')
+ self.assertEqual(idna.encode('ی𐨿.ss྄𑍬', uts46=True, strict=True), b'xn--clb2593k.xn--ss-toj6092t')
+
+ def test_uts46_4933(self):
+ self.assertEqual(idna.decode('ی𐨿.Ss྄𑍬', uts46=True, strict=True), 'ی𐨿.ss྄𑍬')
+ self.assertEqual(idna.encode('ی𐨿.Ss྄𑍬', uts46=True, strict=True), b'xn--clb2593k.xn--ss-toj6092t')
+
+ def test_uts46_4934(self):
+ self.assertEqual(idna.decode('ی𐨿.Ss྄𑍬', uts46=True, strict=True), 'ی𐨿.ss྄𑍬')
+ self.assertEqual(idna.encode('ی𐨿.Ss྄𑍬', uts46=True, strict=True), b'xn--clb2593k.xn--ss-toj6092t')
+
+ def test_uts46_4935(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟠≮\u200c。󠅱឴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟠≮\u200c。󠅱឴', strict=True)
+
+ def test_uts46_4936(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟠≮\u200c。󠅱឴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟠≮\u200c。󠅱឴', strict=True)
+
+ def test_uts46_4937(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8≮\u200c。󠅱឴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8≮\u200c。󠅱឴', strict=True)
+
+ def test_uts46_4938(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8≮\u200c。󠅱឴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8≮\u200c。󠅱឴', strict=True)
+
+ def test_uts46_4939(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-ngo.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-ngo.', strict=True)
+
+ def test_uts46_4940(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8≮.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8≮.', strict=True)
+
+ def test_uts46_4941(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8≮.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8≮.', strict=True)
+
+ def test_uts46_4942(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-sgn10i.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-sgn10i.', strict=True)
+
+ def test_uts46_4943(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-ngo.xn--z3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-ngo.xn--z3e', strict=True)
+
+ def test_uts46_4944(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-sgn10i.xn--z3e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-sgn10i.xn--z3e', strict=True)
+
+ def test_uts46_4945(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢕ≯︒\U000440af.Ⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢕ≯︒\U000440af.Ⴀ', strict=True)
+
+ def test_uts46_4946(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢕ≯︒\U000440af.Ⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢕ≯︒\U000440af.Ⴀ', strict=True)
+
+ def test_uts46_4947(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢕ≯。\U000440af.Ⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢕ≯。\U000440af.Ⴀ', strict=True)
+
+ def test_uts46_4948(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢕ≯。\U000440af.Ⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢕ≯。\U000440af.Ⴀ', strict=True)
+
+ def test_uts46_4949(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢕ≯。\U000440af.ⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢕ≯。\U000440af.ⴀ', strict=True)
+
+ def test_uts46_4950(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢕ≯。\U000440af.ⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢕ≯。\U000440af.ⴀ', strict=True)
+
+ def test_uts46_4951(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fbf851c.xn--ko1u.xn--rkj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fbf851c.xn--ko1u.xn--rkj', strict=True)
+
+ def test_uts46_4952(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢕ≯︒\U000440af.ⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢕ≯︒\U000440af.ⴀ', strict=True)
+
+ def test_uts46_4953(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢕ≯︒\U000440af.ⴀ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢕ≯︒\U000440af.ⴀ', strict=True)
+
+ def test_uts46_4954(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fbf851cq98poxw1a.xn--rkj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fbf851cq98poxw1a.xn--rkj', strict=True)
+
+ def test_uts46_4955(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fbf851c.xn--ko1u.xn--7md', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fbf851c.xn--ko1u.xn--7md', strict=True)
+
+ def test_uts46_4956(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fbf851cq98poxw1a.xn--7md', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fbf851cq98poxw1a.xn--7md', strict=True)
+
+ def test_uts46_4957(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྟ.-ࠪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྟ.-ࠪ', strict=True)
+
+ def test_uts46_4958(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྟ.-ࠪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྟ.-ࠪ', strict=True)
+
+ def test_uts46_4959(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vfd.xn----fhd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vfd.xn----fhd', strict=True)
+
+ def test_uts46_4960(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᵬ󠆠.핒⒒⒈\U00108126', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᵬ󠆠.핒⒒⒈\U00108126', strict=True)
+
+ def test_uts46_4961(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᵬ󠆠.핒⒒⒈\U00108126', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᵬ󠆠.핒⒒⒈\U00108126', strict=True)
+
+ def test_uts46_4962(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᵬ󠆠.핒11.1.\U00108126', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᵬ󠆠.핒11.1.\U00108126', strict=True)
+
+ def test_uts46_4963(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᵬ󠆠.핒11.1.\U00108126', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᵬ󠆠.핒11.1.\U00108126', strict=True)
+
+ def test_uts46_4964(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tbg.xn--11-5o7k.1.xn--k469f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tbg.xn--11-5o7k.1.xn--k469f', strict=True)
+
+ def test_uts46_4965(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tbg.xn--tsht7586kyts9l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tbg.xn--tsht7586kyts9l', strict=True)
+
+ def test_uts46_4966(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς𑓂𐋢.٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς𑓂𐋢.٨', strict=True)
+
+ def test_uts46_4967(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς𑓂𐋢.٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς𑓂𐋢.٨', strict=True)
+
+ def test_uts46_4968(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ𑓂𐋢.٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ𑓂𐋢.٨', strict=True)
+
+ def test_uts46_4969(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ𑓂𐋢.٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ𑓂𐋢.٨', strict=True)
+
+ def test_uts46_4970(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa6371khhl.xn--hib', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa6371khhl.xn--hib', strict=True)
+
+ def test_uts46_4971(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa8371khhl.xn--hib', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa8371khhl.xn--hib', strict=True)
+
+ def test_uts46_4972(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ𑓂𐋢.٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ𑓂𐋢.٨', strict=True)
+
+ def test_uts46_4973(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ𑓂𐋢.٨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ𑓂𐋢.٨', strict=True)
+
+ def test_uts46_4974(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꥓\u200c𐋻\u200d.ⷸ\U0001efc4𐹲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꥓\u200c𐋻\u200d.ⷸ\U0001efc4𐹲', strict=True)
+
+ def test_uts46_4975(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3j9a531o.xn--urju692efj0f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3j9a531o.xn--urju692efj0f', strict=True)
+
+ def test_uts46_4976(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugc8356he76c.xn--urju692efj0f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugc8356he76c.xn--urju692efj0f', strict=True)
+
+ def test_uts46_4977(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⊼。\U0006a9d6ڕ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⊼。\U0006a9d6ڕ', strict=True)
+
+ def test_uts46_4978(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ofh.xn--rjb13118f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ofh.xn--rjb13118f', strict=True)
+
+ def test_uts46_4979(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010bec\U000562d4。\U000dcce5', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010bec\U000562d4。\U000dcce5', strict=True)
+
+ def test_uts46_4980(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--949co370q.xn--7g25e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--949co370q.xn--7g25e', strict=True)
+
+ def test_uts46_4981(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0601𑍧ߝ。ς\U000ac358🀞឵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0601𑍧ߝ。ς\U000ac358🀞឵', strict=True)
+
+ def test_uts46_4982(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0601𑍧ߝ。Σ\U000ac358🀞឵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0601𑍧ߝ。Σ\U000ac358🀞឵', strict=True)
+
+ def test_uts46_4983(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0601𑍧ߝ。σ\U000ac358🀞឵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0601𑍧ߝ。σ\U000ac358🀞឵', strict=True)
+
+ def test_uts46_4984(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jfb66gt010c.xn--4xa0023w4nq4c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jfb66gt010c.xn--4xa0023w4nq4c', strict=True)
+
+ def test_uts46_4985(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jfb66gt010c.xn--3xa2023w4nq4c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jfb66gt010c.xn--3xa2023w4nq4c', strict=True)
+
+ def test_uts46_4986(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jfb66gt010c.xn--4xa623h9p95ars26d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jfb66gt010c.xn--4xa623h9p95ars26d', strict=True)
+
+ def test_uts46_4987(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jfb66gt010c.xn--3xa823h9p95ars26d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jfb66gt010c.xn--3xa823h9p95ars26d', strict=True)
+
+ def test_uts46_4988(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𐳲ن\U000e0e90。꯭𝟥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𐳲ن\U000e0e90。꯭𝟥', strict=True)
+
+ def test_uts46_4989(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𐳲ن\U000e0e90。꯭3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𐳲ن\U000e0e90。꯭3', strict=True)
+
+ def test_uts46_4990(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𐲲ن\U000e0e90。꯭3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𐲲ن\U000e0e90。꯭3', strict=True)
+
+ def test_uts46_4991(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----roc5482rek10i.xn--3-zw5e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----roc5482rek10i.xn--3-zw5e', strict=True)
+
+ def test_uts46_4992(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-𐲲ن\U000e0e90。꯭𝟥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-𐲲ن\U000e0e90。꯭𝟥', strict=True)
+
+ def test_uts46_4993(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e0d26。\U00072a15≮𐦜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e0d26。\U00072a15≮𐦜', strict=True)
+
+ def test_uts46_4994(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e0d26。\U00072a15≮𐦜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e0d26。\U00072a15≮𐦜', strict=True)
+
+ def test_uts46_4995(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e0d26。\U00072a15≮𐦜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e0d26。\U00072a15≮𐦜', strict=True)
+
+ def test_uts46_4996(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U000e0d26。\U00072a15≮𐦜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U000e0d26。\U00072a15≮𐦜', strict=True)
+
+ def test_uts46_4997(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6v56e.xn--gdhz712gzlr6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6v56e.xn--gdhz712gzlr6b', strict=True)
+
+ def test_uts46_4998(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug22251l.xn--gdhz712gzlr6b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug22251l.xn--gdhz712gzlr6b', strict=True)
+
+ def test_uts46_4999(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈✌\U0009fb1f.𝟡\U00060c63', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈✌\U0009fb1f.𝟡\U00060c63', strict=True)
+
+ def test_uts46_5000(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.✌\U0009fb1f.9\U00060c63', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.✌\U0009fb1f.9\U00060c63', strict=True)
+
+ def test_uts46_5001(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--7bi44996f.xn--9-o706d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--7bi44996f.xn--9-o706d', strict=True)
+
+ def test_uts46_5002(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh24g49550b.xn--9-o706d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh24g49550b.xn--9-o706d', strict=True)
+
+ def test_uts46_5003(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑆾𞤬𐮆.٦ᷔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑆾𞤬𐮆.٦ᷔ', strict=True)
+
+ def test_uts46_5004(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑆾𞤊𐮆.٦ᷔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑆾𞤊𐮆.٦ᷔ', strict=True)
+
+ def test_uts46_5005(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--d29c79hf98r.xn--fib011j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--d29c79hf98r.xn--fib011j', strict=True)
+
+ def test_uts46_5006(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς.꧀꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς.꧀꣄', strict=True)
+
+ def test_uts46_5007(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς.꧀꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς.꧀꣄', strict=True)
+
+ def test_uts46_5008(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ.꧀꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ.꧀꣄', strict=True)
+
+ def test_uts46_5009(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ.꧀꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ.꧀꣄', strict=True)
+
+ def test_uts46_5010(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa.xn--0f9ars', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa.xn--0f9ars', strict=True)
+
+ def test_uts46_5011(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa.xn--0f9ars', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa.xn--0f9ars', strict=True)
+
+ def test_uts46_5012(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ.꧀꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ.꧀꣄', strict=True)
+
+ def test_uts46_5013(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ.꧀꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ.꧀꣄', strict=True)
+
+ def test_uts46_5014(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰶\u200c≯𐳐.࡛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰶\u200c≯𐳐.࡛', strict=True)
+
+ def test_uts46_5015(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰶\u200c≯𐳐.࡛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰶\u200c≯𐳐.࡛', strict=True)
+
+ def test_uts46_5016(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰶\u200c≯𐳐.࡛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰶\u200c≯𐳐.࡛', strict=True)
+
+ def test_uts46_5017(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰶\u200c≯𐳐.࡛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰶\u200c≯𐳐.࡛', strict=True)
+
+ def test_uts46_5018(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰶\u200c≯𐲐.࡛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰶\u200c≯𐲐.࡛', strict=True)
+
+ def test_uts46_5019(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰶\u200c≯𐲐.࡛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰶\u200c≯𐲐.࡛', strict=True)
+
+ def test_uts46_5020(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdhz343g3wj.xn--qwb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdhz343g3wj.xn--qwb', strict=True)
+
+ def test_uts46_5021(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug06g7697ap4ma.xn--qwb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug06g7697ap4ma.xn--qwb', strict=True)
+
+ def test_uts46_5022(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰶\u200c≯𐲐.࡛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰶\u200c≯𐲐.࡛', strict=True)
+
+ def test_uts46_5023(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰶\u200c≯𐲐.࡛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰶\u200c≯𐲐.࡛', strict=True)
+
+ def test_uts46_5024(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '羚。≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '羚。≯', strict=True)
+
+ def test_uts46_5025(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '羚。≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '羚。≯', strict=True)
+
+ def test_uts46_5026(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '羚。≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '羚。≯', strict=True)
+
+ def test_uts46_5027(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '羚。≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '羚。≯', strict=True)
+
+ def test_uts46_5028(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xt0a.xn--hdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xt0a.xn--hdh', strict=True)
+
+ def test_uts46_5029(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '羚.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '羚.≯', strict=True)
+
+ def test_uts46_5030(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '羚.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '羚.≯', strict=True)
+
+ def test_uts46_5031(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑓂\u1759.ࢨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑓂\u1759.ࢨ', strict=True)
+
+ def test_uts46_5032(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑓂\u1759.ࢨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑓂\u1759.ࢨ', strict=True)
+
+ def test_uts46_5033(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--e1e9580k.xn--xyb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--e1e9580k.xn--xyb', strict=True)
+
+ def test_uts46_5034(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e88ff󠇀\u200d。٣ҠჀ𝟑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e88ff󠇀\u200d。٣ҠჀ𝟑', strict=True)
+
+ def test_uts46_5035(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e88ff󠇀\u200d。٣ҠჀ3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e88ff󠇀\u200d。٣ҠჀ3', strict=True)
+
+ def test_uts46_5036(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e88ff󠇀\u200d。٣ҡⴠ3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e88ff󠇀\u200d。٣ҡⴠ3', strict=True)
+
+ def test_uts46_5037(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1r19e.xn--3-ozb36ko13f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1r19e.xn--3-ozb36ko13f', strict=True)
+
+ def test_uts46_5038(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug89936l.xn--3-ozb36ko13f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug89936l.xn--3-ozb36ko13f', strict=True)
+
+ def test_uts46_5039(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e88ff󠇀\u200d。٣ҡⴠ𝟑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e88ff󠇀\u200d。٣ҡⴠ𝟑', strict=True)
+
+ def test_uts46_5040(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1r19e.xn--3-ozb36kixu', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1r19e.xn--3-ozb36kixu', strict=True)
+
+ def test_uts46_5041(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug89936l.xn--3-ozb36kixu', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug89936l.xn--3-ozb36kixu', strict=True)
+
+ def test_uts46_5042(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e88ff󠇀\u200d。٣Ҡⴠ3', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e88ff󠇀\u200d。٣Ҡⴠ3', strict=True)
+
+ def test_uts46_5043(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e88ff󠇀\u200d。٣Ҡⴠ𝟑', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e88ff󠇀\u200d。٣Ҡⴠ𝟑', strict=True)
+
+ def test_uts46_5044(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡷ。𐹢࣠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡷ。𐹢࣠', strict=True)
+
+ def test_uts46_5045(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--k9e.xn--j0b5005k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--k9e.xn--j0b5005k', strict=True)
+
+ def test_uts46_5046(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00095b87᯳。٦\U0005773c្ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00095b87᯳。٦\U0005773c្ß', strict=True)
+
+ def test_uts46_5047(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00095b87᯳。٦\U0005773c្ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00095b87᯳。٦\U0005773c្ß', strict=True)
+
+ def test_uts46_5048(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00095b87᯳。٦\U0005773c្SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00095b87᯳。٦\U0005773c្SS', strict=True)
+
+ def test_uts46_5049(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00095b87᯳。٦\U0005773c្ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00095b87᯳。٦\U0005773c្ss', strict=True)
+
+ def test_uts46_5050(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00095b87᯳。٦\U0005773c្Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00095b87᯳。٦\U0005773c្Ss', strict=True)
+
+ def test_uts46_5051(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1zf58212h.xn--ss-pyd459o3258m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1zf58212h.xn--ss-pyd459o3258m', strict=True)
+
+ def test_uts46_5052(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1zf58212h.xn--zca34zk4qx711k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1zf58212h.xn--zca34zk4qx711k', strict=True)
+
+ def test_uts46_5053(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00095b87᯳。٦\U0005773c្SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00095b87᯳。٦\U0005773c្SS', strict=True)
+
+ def test_uts46_5054(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00095b87᯳。٦\U0005773c្ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00095b87᯳。٦\U0005773c្ss', strict=True)
+
+ def test_uts46_5055(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00095b87᯳。٦\U0005773c្Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00095b87᯳。٦\U0005773c្Ss', strict=True)
+
+ def test_uts46_5056(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٤\U000a4f4e𑲛.\U000e0522︒≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٤\U000a4f4e𑲛.\U000e0522︒≠', strict=True)
+
+ def test_uts46_5057(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٤\U000a4f4e𑲛.\U000e0522︒≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٤\U000a4f4e𑲛.\U000e0522︒≠', strict=True)
+
+ def test_uts46_5058(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٤\U000a4f4e𑲛.\U000e0522。≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٤\U000a4f4e𑲛.\U000e0522。≠', strict=True)
+
+ def test_uts46_5059(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٤\U000a4f4e𑲛.\U000e0522。≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٤\U000a4f4e𑲛.\U000e0522。≠', strict=True)
+
+ def test_uts46_5060(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dib0653l2i02d.xn--k736e.xn--1ch', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dib0653l2i02d.xn--k736e.xn--1ch', strict=True)
+
+ def test_uts46_5061(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dib0653l2i02d.xn--1ch7467f14u4g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dib0653l2i02d.xn--1ch7467f14u4g', strict=True)
+
+ def test_uts46_5062(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '➆\U000779d5ỗ⒈.\U00091b12\U0006162e࡛𝟫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '➆\U000779d5ỗ⒈.\U00091b12\U0006162e࡛𝟫', strict=True)
+
+ def test_uts46_5063(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '➆\U000779d5ỗ⒈.\U00091b12\U0006162e࡛𝟫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '➆\U000779d5ỗ⒈.\U00091b12\U0006162e࡛𝟫', strict=True)
+
+ def test_uts46_5064(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '➆\U000779d5ỗ1..\U00091b12\U0006162e࡛9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '➆\U000779d5ỗ1..\U00091b12\U0006162e࡛9', strict=True)
+
+ def test_uts46_5065(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '➆\U000779d5ỗ1..\U00091b12\U0006162e࡛9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '➆\U000779d5ỗ1..\U00091b12\U0006162e࡛9', strict=True)
+
+ def test_uts46_5066(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '➆\U000779d5Ỗ1..\U00091b12\U0006162e࡛9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '➆\U000779d5Ỗ1..\U00091b12\U0006162e࡛9', strict=True)
+
+ def test_uts46_5067(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '➆\U000779d5Ỗ1..\U00091b12\U0006162e࡛9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '➆\U000779d5Ỗ1..\U00091b12\U0006162e࡛9', strict=True)
+
+ def test_uts46_5068(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-3xm292b6044r..xn--9-6jd87310jtcqs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-3xm292b6044r..xn--9-6jd87310jtcqs', strict=True)
+
+ def test_uts46_5069(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '➆\U000779d5Ỗ⒈.\U00091b12\U0006162e࡛𝟫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '➆\U000779d5Ỗ⒈.\U00091b12\U0006162e࡛𝟫', strict=True)
+
+ def test_uts46_5070(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '➆\U000779d5Ỗ⒈.\U00091b12\U0006162e࡛𝟫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '➆\U000779d5Ỗ⒈.\U00091b12\U0006162e࡛𝟫', strict=True)
+
+ def test_uts46_5071(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6lg26tvvc6v99z.xn--9-6jd87310jtcqs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6lg26tvvc6v99z.xn--9-6jd87310jtcqs', strict=True)
+
+ def test_uts46_5072(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。𞤘', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。𞤘', strict=True)
+
+ def test_uts46_5073(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。𞤘', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。𞤘', strict=True)
+
+ def test_uts46_5074(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。𞤺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。𞤺', strict=True)
+
+ def test_uts46_5075(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--ye6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--ye6h', strict=True)
+
+ def test_uts46_5076(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--ye6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--ye6h', strict=True)
+
+ def test_uts46_5077(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d。𞤺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d。𞤺', strict=True)
+
+ def test_uts46_5078(self):
+ self.assertEqual(idna.decode('xn--ye6h', uts46=True, strict=True), '𞤺')
+ self.assertEqual(idna.encode('xn--ye6h', uts46=True, strict=True), b'xn--ye6h')
+
+ def test_uts46_5079(self):
+ self.assertEqual(idna.decode('𞤺', uts46=True, strict=True), '𞤺')
+ self.assertEqual(idna.encode('𞤺', uts46=True, strict=True), b'xn--ye6h')
+
+ def test_uts46_5080(self):
+ self.assertEqual(idna.decode('𞤘', uts46=True, strict=True), '𞤺')
+ self.assertEqual(idna.encode('𞤘', uts46=True, strict=True), b'xn--ye6h')
+
+ def test_uts46_5081(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࠩܤ.ᢣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࠩܤ.ᢣ', strict=True)
+
+ def test_uts46_5082(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--unb53c.xn--tbf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--unb53c.xn--tbf', strict=True)
+
+ def test_uts46_5083(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܼ\u200c-。\U0001343eß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܼ\u200c-。\U0001343eß', strict=True)
+
+ def test_uts46_5084(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܼ\u200c-。\U0001343eSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܼ\u200c-。\U0001343eSS', strict=True)
+
+ def test_uts46_5085(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܼ\u200c-。\U0001343ess', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܼ\u200c-。\U0001343ess', strict=True)
+
+ def test_uts46_5086(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܼ\u200c-。\U0001343eSs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܼ\u200c-。\U0001343eSs', strict=True)
+
+ def test_uts46_5087(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----s2c.xn--ss-066q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----s2c.xn--ss-066q', strict=True)
+
+ def test_uts46_5088(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----s2c071q.xn--ss-066q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----s2c071q.xn--ss-066q', strict=True)
+
+ def test_uts46_5089(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----s2c071q.xn--zca7848m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----s2c071q.xn--zca7848m', strict=True)
+
+ def test_uts46_5090(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cς🃡⒗.ೆ仧ݖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cς🃡⒗.ೆ仧ݖ', strict=True)
+
+ def test_uts46_5091(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cς🃡16..ೆ仧ݖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cς🃡16..ೆ仧ݖ', strict=True)
+
+ def test_uts46_5092(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cΣ🃡16..ೆ仧ݖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cΣ🃡16..ೆ仧ݖ', strict=True)
+
+ def test_uts46_5093(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cσ🃡16..ೆ仧ݖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cσ🃡16..ೆ仧ݖ', strict=True)
+
+ def test_uts46_5094(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--16-ubc66061c..xn--9ob79ycx2e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--16-ubc66061c..xn--9ob79ycx2e', strict=True)
+
+ def test_uts46_5095(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--16-ubc7700avy99b..xn--9ob79ycx2e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--16-ubc7700avy99b..xn--9ob79ycx2e', strict=True)
+
+ def test_uts46_5096(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--16-rbc1800avy99b..xn--9ob79ycx2e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--16-rbc1800avy99b..xn--9ob79ycx2e', strict=True)
+
+ def test_uts46_5097(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cΣ🃡⒗.ೆ仧ݖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cΣ🃡⒗.ೆ仧ݖ', strict=True)
+
+ def test_uts46_5098(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cσ🃡⒗.ೆ仧ݖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cσ🃡⒗.ೆ仧ݖ', strict=True)
+
+ def test_uts46_5099(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa229nbu92a.xn--9ob79ycx2e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa229nbu92a.xn--9ob79ycx2e', strict=True)
+
+ def test_uts46_5100(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa595lz9czy52d.xn--9ob79ycx2e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa595lz9czy52d.xn--9ob79ycx2e', strict=True)
+
+ def test_uts46_5101(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa795lz9czy52d.xn--9ob79ycx2e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa795lz9czy52d.xn--9ob79ycx2e', strict=True)
+
+ def test_uts46_5102(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.𞸚', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.𞸚', strict=True)
+
+ def test_uts46_5103(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.ظ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.ظ', strict=True)
+
+ def test_uts46_5104(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--3gb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--3gb', strict=True)
+
+ def test_uts46_5105(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008f6d3ڃ.ཾش', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008f6d3ڃ.ཾش', strict=True)
+
+ def test_uts46_5106(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8ib92728i.xn--zgb968b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8ib92728i.xn--zgb968b', strict=True)
+
+ def test_uts46_5107(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0fe6ࡃ\U0007ddac.𐮏', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0fe6ࡃ\U0007ddac.𐮏', strict=True)
+
+ def test_uts46_5108(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1vb320b5m04p.xn--m29c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1vb320b5m04p.xn--m29c', strict=True)
+
+ def test_uts46_5109(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2\U0004ea20ߋß。ᠽ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2\U0004ea20ߋß。ᠽ', strict=True)
+
+ def test_uts46_5110(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2\U0004ea20ߋSS。ᠽ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2\U0004ea20ߋSS。ᠽ', strict=True)
+
+ def test_uts46_5111(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2\U0004ea20ߋss。ᠽ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2\U0004ea20ߋss。ᠽ', strict=True)
+
+ def test_uts46_5112(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2ss-odg83511n.xn--w7e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2ss-odg83511n.xn--w7e', strict=True)
+
+ def test_uts46_5113(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2-qfa924cez02l.xn--w7e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2-qfa924cez02l.xn--w7e', strict=True)
+
+ def test_uts46_5114(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2\U0004ea20ߋSs。ᠽ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2\U0004ea20ߋSs。ᠽ', strict=True)
+
+ def test_uts46_5115(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێß-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێß-\u200d', strict=True)
+
+ def test_uts46_5116(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێß-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێß-\u200d', strict=True)
+
+ def test_uts46_5117(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێß-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێß-\u200d', strict=True)
+
+ def test_uts46_5118(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێß-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێß-\u200d', strict=True)
+
+ def test_uts46_5119(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێSS-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێSS-\u200d', strict=True)
+
+ def test_uts46_5120(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێSS-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێSS-\u200d', strict=True)
+
+ def test_uts46_5121(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێss-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێss-\u200d', strict=True)
+
+ def test_uts46_5122(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێss-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێss-\u200d', strict=True)
+
+ def test_uts46_5123(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lsb457kkut.xn--ss--qjf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lsb457kkut.xn--ss--qjf', strict=True)
+
+ def test_uts46_5124(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lsb457kkut.xn--ss--qjf2343a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lsb457kkut.xn--ss--qjf2343a', strict=True)
+
+ def test_uts46_5125(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lsb457kkut.xn----pfa076bys4a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lsb457kkut.xn----pfa076bys4a', strict=True)
+
+ def test_uts46_5126(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێSS-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێSS-\u200d', strict=True)
+
+ def test_uts46_5127(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێSS-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێSS-\u200d', strict=True)
+
+ def test_uts46_5128(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێss-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێss-\u200d', strict=True)
+
+ def test_uts46_5129(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێss-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێss-\u200d', strict=True)
+
+ def test_uts46_5130(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێSs-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێSs-\u200d', strict=True)
+
+ def test_uts46_5131(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێSs-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێSs-\u200d', strict=True)
+
+ def test_uts46_5132(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێSs-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێSs-\u200d', strict=True)
+
+ def test_uts46_5133(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㸳ߊ≮.ێSs-\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㸳ߊ≮.ێSs-\u200d', strict=True)
+
+ def test_uts46_5134(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000b776c፞𑜧.ᷫ-︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000b776c፞𑜧.ᷫ-︒', strict=True)
+
+ def test_uts46_5135(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000b776c፞𑜧.ᷫ-。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000b776c፞𑜧.ᷫ-。', strict=True)
+
+ def test_uts46_5136(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----b5h1837n2ok9f.xn----mkm.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----b5h1837n2ok9f.xn----mkm.', strict=True)
+
+ def test_uts46_5137(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----b5h1837n2ok9f.xn----mkmw278h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----b5h1837n2ok9f.xn----mkmw278h', strict=True)
+
+ def test_uts46_5138(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒.\U0009a821ᩙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒.\U0009a821ᩙ', strict=True)
+
+ def test_uts46_5139(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。.\U0009a821ᩙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。.\U0009a821ᩙ', strict=True)
+
+ def test_uts46_5140(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..xn--cof61594i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..xn--cof61594i', strict=True)
+
+ def test_uts46_5141(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86c.xn--cof61594i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86c.xn--cof61594i', strict=True)
+
+ def test_uts46_5142(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '̣ⷡ。\u200c⓾\u200cڹ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '̣ⷡ。\u200c⓾\u200cڹ', strict=True)
+
+ def test_uts46_5143(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kta899s.xn--skb116m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kta899s.xn--skb116m', strict=True)
+
+ def test_uts46_5144(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kta899s.xn--skb970ka771c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kta899s.xn--skb970ka771c', strict=True)
+
+ def test_uts46_5145(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠶ᠴ\u06dd。ၴ𞤵󠅦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠶ᠴ\u06dd。ၴ𞤵󠅦', strict=True)
+
+ def test_uts46_5146(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠶ᠴ\u06dd。ၴ𞤵󠅦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠶ᠴ\u06dd。ၴ𞤵󠅦', strict=True)
+
+ def test_uts46_5147(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠶ᠴ\u06dd。ၴ𞤓󠅦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠶ᠴ\u06dd。ၴ𞤓󠅦', strict=True)
+
+ def test_uts46_5148(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tlb199fwl35a.xn--yld4613v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tlb199fwl35a.xn--yld4613v', strict=True)
+
+ def test_uts46_5149(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠶ᠴ\u06dd。ၴ𞤓󠅦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠶ᠴ\u06dd。ၴ𞤓󠅦', strict=True)
+
+ def test_uts46_5150(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰺.-\U000917cf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰺.-\U000917cf', strict=True)
+
+ def test_uts46_5151(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jk3d.xn----iz68g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jk3d.xn----iz68g', strict=True)
+
+ def test_uts46_5152(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0ee9.赏', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0ee9.赏', strict=True)
+
+ def test_uts46_5153(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0ee9.赏', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0ee9.赏', strict=True)
+
+ def test_uts46_5154(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2856e.xn--6o3a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2856e.xn--6o3a', strict=True)
+
+ def test_uts46_5155(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڰᠡ。Ⴁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڰᠡ。Ⴁ', strict=True)
+
+ def test_uts46_5156(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڰᠡ。Ⴁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڰᠡ。Ⴁ', strict=True)
+
+ def test_uts46_5157(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڰᠡ。ⴁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڰᠡ。ⴁ', strict=True)
+
+ def test_uts46_5158(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jkb440g.xn--skj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jkb440g.xn--skj', strict=True)
+
+ def test_uts46_5159(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڰᠡ。ⴁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڰᠡ。ⴁ', strict=True)
+
+ def test_uts46_5160(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jkb440g.xn--8md', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jkb440g.xn--8md', strict=True)
+
+ def test_uts46_5161(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞Ⴊڻς。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞Ⴊڻς。-', strict=True)
+
+ def test_uts46_5162(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞Ⴊڻς。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞Ⴊڻς。-', strict=True)
+
+ def test_uts46_5163(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞ⴊڻς。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞ⴊڻς。-', strict=True)
+
+ def test_uts46_5164(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞ႪڻΣ。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞ႪڻΣ。-', strict=True)
+
+ def test_uts46_5165(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞ⴊڻσ。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞ⴊڻσ。-', strict=True)
+
+ def test_uts46_5166(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞Ⴊڻσ。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞Ⴊڻσ。-', strict=True)
+
+ def test_uts46_5167(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa33mr38aeel.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa33mr38aeel.-', strict=True)
+
+ def test_uts46_5168(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa53mr38aeel.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa53mr38aeel.-', strict=True)
+
+ def test_uts46_5169(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞ⴊڻς。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞ⴊڻς。-', strict=True)
+
+ def test_uts46_5170(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞ႪڻΣ。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞ႪڻΣ。-', strict=True)
+
+ def test_uts46_5171(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞ⴊڻσ。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞ⴊڻσ。-', strict=True)
+
+ def test_uts46_5172(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⃞Ⴊڻσ。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⃞Ⴊڻσ。-', strict=True)
+
+ def test_uts46_5173(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa33m7zmb0q.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa33m7zmb0q.-', strict=True)
+
+ def test_uts46_5174(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa53m7zmb0q.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa53m7zmb0q.-', strict=True)
+
+ def test_uts46_5175(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴍ.\U0004d1e6\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴍ.\U0004d1e6\u200c', strict=True)
+
+ def test_uts46_5176(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴍ.\U0004d1e6\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴍ.\U0004d1e6\u200c', strict=True)
+
+ def test_uts46_5177(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴍ.\U0004d1e6\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴍ.\U0004d1e6\u200c', strict=True)
+
+ def test_uts46_5178(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4kj.xn--p01x', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4kj.xn--p01x', strict=True)
+
+ def test_uts46_5179(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4kj.xn--0ug56448b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4kj.xn--0ug56448b', strict=True)
+
+ def test_uts46_5180(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴍ.\U0004d1e6\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴍ.\U0004d1e6\u200c', strict=True)
+
+ def test_uts46_5181(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lnd.xn--p01x', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lnd.xn--p01x', strict=True)
+
+ def test_uts46_5182(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lnd.xn--0ug56448b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lnd.xn--0ug56448b', strict=True)
+
+ def test_uts46_5183(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000897c2\U000e0d63.𐫫᩠\U000f4e96᭄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000897c2\U000e0d63.𐫫᩠\U000f4e96᭄', strict=True)
+
+ def test_uts46_5184(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9u37blu98h.xn--jof13bt568cork1j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9u37blu98h.xn--jof13bt568cork1j', strict=True)
+
+ def test_uts46_5185(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯❊ᠯ。𐹱⺨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯❊ᠯ。𐹱⺨', strict=True)
+
+ def test_uts46_5186(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯❊ᠯ。𐹱⺨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯❊ᠯ。𐹱⺨', strict=True)
+
+ def test_uts46_5187(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯❊ᠯ。𐹱⺨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯❊ᠯ。𐹱⺨', strict=True)
+
+ def test_uts46_5188(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯❊ᠯ。𐹱⺨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯❊ᠯ。𐹱⺨', strict=True)
+
+ def test_uts46_5189(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--i7e163ct2d.xn--vwj7372e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--i7e163ct2d.xn--vwj7372e', strict=True)
+
+ def test_uts46_5190(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0010155c𐹧\U0001eb41𐹩。Ⴈ𐫮Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0010155c𐹧\U0001eb41𐹩。Ⴈ𐫮Ⴏ', strict=True)
+
+ def test_uts46_5191(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0010155c𐹧\U0001eb41𐹩。ⴈ𐫮ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0010155c𐹧\U0001eb41𐹩。ⴈ𐫮ⴏ', strict=True)
+
+ def test_uts46_5192(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fo0de1270ope54j.xn--zkjo0151o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fo0de1270ope54j.xn--zkjo0151o', strict=True)
+
+ def test_uts46_5193(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fo0de1270ope54j.xn--gndo2033q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fo0de1270ope54j.xn--gndo2033q', strict=True)
+
+ def test_uts46_5194(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞠂。ꤦ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞠂。ꤦ', strict=True)
+
+ def test_uts46_5195(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--145h.xn--ti9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--145h.xn--ti9a', strict=True)
+
+ def test_uts46_5196(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟔𐹫.့ܳ9ꡇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟔𐹫.့ܳ9ꡇ', strict=True)
+
+ def test_uts46_5197(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟔𐹫.့ܳ9ꡇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟔𐹫.့ܳ9ꡇ', strict=True)
+
+ def test_uts46_5198(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6𐹫.့ܳ9ꡇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6𐹫.့ܳ9ꡇ', strict=True)
+
+ def test_uts46_5199(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-t26i.xn--9-91c730e8u8n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-t26i.xn--9-91c730e8u8n', strict=True)
+
+ def test_uts46_5200(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܤ\u0603\U0001ecb6.ۘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܤ\u0603\U0001ecb6.ۘ', strict=True)
+
+ def test_uts46_5201(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܤ\u0603\U0001ecb6.ۘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܤ\u0603\U0001ecb6.ۘ', strict=True)
+
+ def test_uts46_5202(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lfb19ct414i.xn--olb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lfb19ct414i.xn--olb', strict=True)
+
+ def test_uts46_5203(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '✆\U00071529ꡋ.ز\u200d\U0001e8f4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '✆\U00071529ꡋ.ز\u200d\U0001e8f4', strict=True)
+
+ def test_uts46_5204(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '✆\U00071529ꡋ.ز\u200d\U0001e8f4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '✆\U00071529ꡋ.ز\u200d\U0001e8f4', strict=True)
+
+ def test_uts46_5205(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1biv525bcix0d.xn--xgb6828v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1biv525bcix0d.xn--xgb6828v', strict=True)
+
+ def test_uts46_5206(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1biv525bcix0d.xn--xgb253k0m73a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1biv525bcix0d.xn--xgb253k0m73a', strict=True)
+
+ def test_uts46_5207(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡅ\U00043fb0𞸍-.≠\U0008305f𑋪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡅ\U00043fb0𞸍-.≠\U0008305f𑋪', strict=True)
+
+ def test_uts46_5208(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡅ\U00043fb0𞸍-.≠\U0008305f𑋪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡅ\U00043fb0𞸍-.≠\U0008305f𑋪', strict=True)
+
+ def test_uts46_5209(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡅ\U00043fb0ن-.≠\U0008305f𑋪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡅ\U00043fb0ن-.≠\U0008305f𑋪', strict=True)
+
+ def test_uts46_5210(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡅ\U00043fb0ن-.≠\U0008305f𑋪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡅ\U00043fb0ن-.≠\U0008305f𑋪', strict=True)
+
+ def test_uts46_5211(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qoc64my971s.xn--1ch7585g76o3c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qoc64my971s.xn--1ch7585g76o3c', strict=True)
+
+ def test_uts46_5212(self):
+ self.assertEqual(idna.decode('𝟛.笠', uts46=True, strict=True), '3.笠')
+ self.assertEqual(idna.encode('𝟛.笠', uts46=True, strict=True), b'3.xn--6vz')
+
+ def test_uts46_5213(self):
+ self.assertEqual(idna.decode('𝟛.笠', uts46=True, strict=True), '3.笠')
+ self.assertEqual(idna.encode('𝟛.笠', uts46=True, strict=True), b'3.xn--6vz')
+
+ def test_uts46_5214(self):
+ self.assertEqual(idna.decode('3.笠', uts46=True, strict=True), '3.笠')
+ self.assertEqual(idna.encode('3.笠', uts46=True, strict=True), b'3.xn--6vz')
+
+ def test_uts46_5215(self):
+ self.assertEqual(idna.decode('3.xn--6vz', uts46=True, strict=True), '3.笠')
+ self.assertEqual(idna.encode('3.xn--6vz', uts46=True, strict=True), b'3.xn--6vz')
+
+ def test_uts46_5216(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200d.Ⴞ𐋷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200d.Ⴞ𐋷', strict=True)
+
+ def test_uts46_5217(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200d.ⴞ𐋷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200d.ⴞ𐋷', strict=True)
+
+ def test_uts46_5218(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--mlj8559d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--mlj8559d', strict=True)
+
+ def test_uts46_5219(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ugn.xn--mlj8559d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ugn.xn--mlj8559d', strict=True)
+
+ def test_uts46_5220(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--2nd2315j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--2nd2315j', strict=True)
+
+ def test_uts46_5221(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ugn.xn--2nd2315j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ugn.xn--2nd2315j', strict=True)
+
+ def test_uts46_5222(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dςßܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dςßܱ.்', strict=True)
+
+ def test_uts46_5223(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dςßܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dςßܱ.்', strict=True)
+
+ def test_uts46_5224(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dΣSSܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dΣSSܱ.்', strict=True)
+
+ def test_uts46_5225(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dσssܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dσssܱ.்', strict=True)
+
+ def test_uts46_5226(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dΣssܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dΣssܱ.்', strict=True)
+
+ def test_uts46_5227(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-ubc826a.xn--xmc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-ubc826a.xn--xmc', strict=True)
+
+ def test_uts46_5228(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-ubc826ab34b.xn--xmc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-ubc826ab34b.xn--xmc', strict=True)
+
+ def test_uts46_5229(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dΣßܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dΣßܱ.்', strict=True)
+
+ def test_uts46_5230(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dσßܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dσßܱ.்', strict=True)
+
+ def test_uts46_5231(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca39lk1di19a.xn--xmc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca39lk1di19a.xn--xmc', strict=True)
+
+ def test_uts46_5232(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca19ln1di19a.xn--xmc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca19ln1di19a.xn--xmc', strict=True)
+
+ def test_uts46_5233(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dΣSSܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dΣSSܱ.்', strict=True)
+
+ def test_uts46_5234(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dσssܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dσssܱ.்', strict=True)
+
+ def test_uts46_5235(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dΣssܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dΣssܱ.்', strict=True)
+
+ def test_uts46_5236(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dΣßܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dΣßܱ.்', strict=True)
+
+ def test_uts46_5237(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dσßܱ.்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dσßܱ.்', strict=True)
+
+ def test_uts46_5238(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.\u200d', strict=True)
+
+ def test_uts46_5239(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.\u200d', strict=True)
+
+ def test_uts46_5240(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.\u200d', strict=True)
+
+ def test_uts46_5241(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.\u200d', strict=True)
+
+ def test_uts46_5242(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch.', strict=True)
+
+ def test_uts46_5243(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.', strict=True)
+
+ def test_uts46_5244(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠.', strict=True)
+
+ def test_uts46_5245(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch.xn--1ug', strict=True)
+
+ def test_uts46_5246(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﰁ。ಁᠼ▗\U0009204b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﰁ。ಁᠼ▗\U0009204b', strict=True)
+
+ def test_uts46_5247(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ئح。ಁᠼ▗\U0009204b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ئح。ಁᠼ▗\U0009204b', strict=True)
+
+ def test_uts46_5248(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ئح。ಁᠼ▗\U0009204b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ئح。ಁᠼ▗\U0009204b', strict=True)
+
+ def test_uts46_5249(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lgbo.xn--2rc021dcxkrx55t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lgbo.xn--2rc021dcxkrx55t', strict=True)
+
+ def test_uts46_5250(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্ς.ς𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্ς.ς𐨿', strict=True)
+
+ def test_uts46_5251(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্ς.ς𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্ς.ς𐨿', strict=True)
+
+ def test_uts46_5252(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্Σ.Σ𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্Σ.Σ𐨿', strict=True)
+
+ def test_uts46_5253(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্σ.ς𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্σ.ς𐨿', strict=True)
+
+ def test_uts46_5254(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্σ.σ𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্σ.σ𐨿', strict=True)
+
+ def test_uts46_5255(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্Σ.σ𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্Σ.σ𐨿', strict=True)
+
+ def test_uts46_5256(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa502av8297a.xn--4xa6055k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa502av8297a.xn--4xa6055k', strict=True)
+
+ def test_uts46_5257(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্Σ.ς𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্Σ.ς𐨿', strict=True)
+
+ def test_uts46_5258(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa502av8297a.xn--3xa8055k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa502av8297a.xn--3xa8055k', strict=True)
+
+ def test_uts46_5259(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa702av8297a.xn--3xa8055k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa702av8297a.xn--3xa8055k', strict=True)
+
+ def test_uts46_5260(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্Σ.Σ𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্Σ.Σ𐨿', strict=True)
+
+ def test_uts46_5261(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্σ.ς𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্σ.ς𐨿', strict=True)
+
+ def test_uts46_5262(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্σ.σ𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্σ.σ𐨿', strict=True)
+
+ def test_uts46_5263(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্Σ.σ𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্Σ.σ𐨿', strict=True)
+
+ def test_uts46_5264(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e72f5্Σ.ς𐨿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e72f5্Σ.ς𐨿', strict=True)
+
+ def test_uts46_5265(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫓ߘ牅ࣸ。\U0001e9a4ᨗ\U000b1370Ⴙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫓ߘ牅ࣸ。\U0001e9a4ᨗ\U000b1370Ⴙ', strict=True)
+
+ def test_uts46_5266(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫓ߘ牅ࣸ。\U0001e9a4ᨗ\U000b1370Ⴙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫓ߘ牅ࣸ。\U0001e9a4ᨗ\U000b1370Ⴙ', strict=True)
+
+ def test_uts46_5267(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫓ߘ牅ࣸ。\U0001e9a4ᨗ\U000b1370ⴙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫓ߘ牅ࣸ。\U0001e9a4ᨗ\U000b1370ⴙ', strict=True)
+
+ def test_uts46_5268(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zsb09cu46vjs6f.xn--gmf469fr883am5r1e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zsb09cu46vjs6f.xn--gmf469fr883am5r1e', strict=True)
+
+ def test_uts46_5269(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫓ߘ牅ࣸ。\U0001e9a4ᨗ\U000b1370ⴙ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫓ߘ牅ࣸ。\U0001e9a4ᨗ\U000b1370ⴙ', strict=True)
+
+ def test_uts46_5270(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zsb09cu46vjs6f.xn--xnd909bv540bm5k9d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zsb09cu46vjs6f.xn--xnd909bv540bm5k9d', strict=True)
+
+ def test_uts46_5271(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00063912。륧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00063912。륧', strict=True)
+
+ def test_uts46_5272(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00063912。륧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00063912。륧', strict=True)
+
+ def test_uts46_5273(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00063912。륧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00063912。륧', strict=True)
+
+ def test_uts46_5274(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00063912。륧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00063912。륧', strict=True)
+
+ def test_uts46_5275(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--s264a.xn--pw2b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--s264a.xn--pw2b', strict=True)
+
+ def test_uts46_5276(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹷\u200d。\U000c9d62', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹷\u200d。\U000c9d62', strict=True)
+
+ def test_uts46_5277(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vo0d.xn--8088d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vo0d.xn--8088d', strict=True)
+
+ def test_uts46_5278(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugx205g.xn--8088d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugx205g.xn--8088d', strict=True)
+
+ def test_uts46_5279(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴘۂ𑲭。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴘۂ𑲭。-', strict=True)
+
+ def test_uts46_5280(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴘۂ𑲭。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴘۂ𑲭。-', strict=True)
+
+ def test_uts46_5281(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴘۂ𑲭。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴘۂ𑲭。-', strict=True)
+
+ def test_uts46_5282(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴘۂ𑲭。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴘۂ𑲭。-', strict=True)
+
+ def test_uts46_5283(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴘۂ𑲭。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴘۂ𑲭。-', strict=True)
+
+ def test_uts46_5284(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴘۂ𑲭。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴘۂ𑲭。-', strict=True)
+
+ def test_uts46_5285(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1kb147qfk3n.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1kb147qfk3n.-', strict=True)
+
+ def test_uts46_5286(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴘۂ𑲭。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴘۂ𑲭。-', strict=True)
+
+ def test_uts46_5287(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴘۂ𑲭。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴘۂ𑲭。-', strict=True)
+
+ def test_uts46_5288(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1kb312c139t.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1kb312c139t.-', strict=True)
+
+ def test_uts46_5289(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꠆ٻ₆ᡐ。🛇ﳝ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꠆ٻ₆ᡐ。🛇ﳝ', strict=True)
+
+ def test_uts46_5290(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꠆ٻ6ᡐ。🛇يم', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꠆ٻ6ᡐ。🛇يم', strict=True)
+
+ def test_uts46_5291(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-rrc018krt9k.xn--hhbj61429a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-rrc018krt9k.xn--hhbj61429a', strict=True)
+
+ def test_uts46_5292(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000b8342.㇄ᡟ𐫂آ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000b8342.㇄ᡟ𐫂آ', strict=True)
+
+ def test_uts46_5293(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000b8342.㇄ᡟ𐫂آ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000b8342.㇄ᡟ𐫂آ', strict=True)
+
+ def test_uts46_5294(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--p292d.xn--hgb154ghrsvm2r', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--p292d.xn--hgb154ghrsvm2r', strict=True)
+
+ def test_uts46_5295(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߟ\U000b568c。-ߩ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߟ\U000b568c。-ߩ', strict=True)
+
+ def test_uts46_5296(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6sb88139l.xn----pdd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6sb88139l.xn----pdd', strict=True)
+
+ def test_uts46_5297(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ςك⾑.\u200cᢟ\u200c⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ςك⾑.\u200cᢟ\u200c⒈', strict=True)
+
+ def test_uts46_5298(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ςك襾.\u200cᢟ\u200c1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ςك襾.\u200cᢟ\u200c1.', strict=True)
+
+ def test_uts46_5299(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σك襾.\u200cᢟ\u200c1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σك襾.\u200cᢟ\u200c1.', strict=True)
+
+ def test_uts46_5300(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σك襾.\u200cᢟ\u200c1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σك襾.\u200cᢟ\u200c1.', strict=True)
+
+ def test_uts46_5301(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa49jux8r.xn--1-4ck.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa49jux8r.xn--1-4ck.', strict=True)
+
+ def test_uts46_5302(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa49jux8r.xn--1-4ck691bba.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa49jux8r.xn--1-4ck691bba.', strict=True)
+
+ def test_uts46_5303(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa69jux8r.xn--1-4ck691bba.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa69jux8r.xn--1-4ck691bba.', strict=True)
+
+ def test_uts46_5304(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σك⾑.\u200cᢟ\u200c⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σك⾑.\u200cᢟ\u200c⒈', strict=True)
+
+ def test_uts46_5305(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σك⾑.\u200cᢟ\u200c⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σك⾑.\u200cᢟ\u200c⒈', strict=True)
+
+ def test_uts46_5306(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa49jux8r.xn--pbf212d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa49jux8r.xn--pbf212d', strict=True)
+
+ def test_uts46_5307(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa49jux8r.xn--pbf519aba607b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa49jux8r.xn--pbf519aba607b', strict=True)
+
+ def test_uts46_5308(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa69jux8r.xn--pbf519aba607b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa69jux8r.xn--pbf519aba607b', strict=True)
+
+ def test_uts46_5309(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡆ\U000114dd.\U0001ed46', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡆ\U000114dd.\U0001ed46', strict=True)
+
+ def test_uts46_5310(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡆ\U000114dd.\U0001ed46', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡆ\U000114dd.\U0001ed46', strict=True)
+
+ def test_uts46_5311(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--57e0440k.xn--k86h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--57e0440k.xn--k86h', strict=True)
+
+ def test_uts46_5312(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '੍𦍓ᷮ。\u200cࢽ\U0005de72', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '੍𦍓ᷮ。\u200cࢽ\U0005de72', strict=True)
+
+ def test_uts46_5313(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '੍𦍓ᷮ。\u200cࢽ\U0005de72', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '੍𦍓ᷮ。\u200cࢽ\U0005de72', strict=True)
+
+ def test_uts46_5314(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ybc461hph93b.xn--jzb29857e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ybc461hph93b.xn--jzb29857e', strict=True)
+
+ def test_uts46_5315(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ybc461hph93b.xn--jzb740j1y45h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ybc461hph93b.xn--jzb740j1y45h', strict=True)
+
+ def test_uts46_5316(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'خ݈\U00045aaa-.\u200c먿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'خ݈\U00045aaa-.\u200c먿', strict=True)
+
+ def test_uts46_5317(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'خ݈\U00045aaa-.\u200c먿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'خ݈\U00045aaa-.\u200c먿', strict=True)
+
+ def test_uts46_5318(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'خ݈\U00045aaa-.\u200c먿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'خ݈\U00045aaa-.\u200c먿', strict=True)
+
+ def test_uts46_5319(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'خ݈\U00045aaa-.\u200c먿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'خ݈\U00045aaa-.\u200c먿', strict=True)
+
+ def test_uts46_5320(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----dnc06f42153a.xn--v22b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----dnc06f42153a.xn--v22b', strict=True)
+
+ def test_uts46_5321(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----dnc06f42153a.xn--0ug1581d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----dnc06f42153a.xn--0ug1581d', strict=True)
+
+ def test_uts46_5322(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0010bfe6。ᠽ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0010bfe6。ᠽ', strict=True)
+
+ def test_uts46_5323(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0010bfe6。ᠽ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0010bfe6。ᠽ', strict=True)
+
+ def test_uts46_5324(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--j890g.xn--w7e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--j890g.xn--w7e', strict=True)
+
+ def test_uts46_5325(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '嬃𝍌.\u200dୄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '嬃𝍌.\u200dୄ', strict=True)
+
+ def test_uts46_5326(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '嬃𝍌.\u200dୄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '嬃𝍌.\u200dୄ', strict=True)
+
+ def test_uts46_5327(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b6s0078f.xn--0ic', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b6s0078f.xn--0ic', strict=True)
+
+ def test_uts46_5328(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b6s0078f.xn--0ic557h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b6s0078f.xn--0ic557h', strict=True)
+
+ def test_uts46_5329(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0602𝌪≯.\U0001a2f2\U000b5068', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0602𝌪≯.\U0001a2f2\U000b5068', strict=True)
+
+ def test_uts46_5330(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0602𝌪≯.\U0001a2f2\U000b5068', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0602𝌪≯.\U0001a2f2\U000b5068', strict=True)
+
+ def test_uts46_5331(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0602𝌪≯.\U0001a2f2\U000b5068', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0602𝌪≯.\U0001a2f2\U000b5068', strict=True)
+
+ def test_uts46_5332(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0602𝌪≯.\U0001a2f2\U000b5068', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0602𝌪≯.\U0001a2f2\U000b5068', strict=True)
+
+ def test_uts46_5333(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kfb866llx01a.xn--wp1gm3570b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kfb866llx01a.xn--wp1gm3570b', strict=True)
+
+ def test_uts46_5334(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000abfa5ࢷ៌꧀.\U0001ef20', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000abfa5ࢷ៌꧀.\U0001ef20', strict=True)
+
+ def test_uts46_5335(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dzb638ewm4i1iy1h.xn--3m7h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dzb638ewm4i1iy1h.xn--3m7h', strict=True)
+
+ def test_uts46_5336(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.\U0005f6e4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.\U0005f6e4', strict=True)
+
+ def test_uts46_5337(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--q823a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--q823a', strict=True)
+
+ def test_uts46_5338(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--q823a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--q823a', strict=True)
+
+ def test_uts46_5339(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ba6d5Ⴃ䠅.\U00010e11', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ba6d5Ⴃ䠅.\U00010e11', strict=True)
+
+ def test_uts46_5340(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ba6d5Ⴃ䠅.\U00010e11', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ba6d5Ⴃ䠅.\U00010e11', strict=True)
+
+ def test_uts46_5341(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ba6d5ⴃ䠅.\U00010e11', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ba6d5ⴃ䠅.\U00010e11', strict=True)
+
+ def test_uts46_5342(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ukju77frl47r.xn--yl0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ukju77frl47r.xn--yl0d', strict=True)
+
+ def test_uts46_5343(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ba6d5ⴃ䠅.\U00010e11', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ba6d5ⴃ䠅.\U00010e11', strict=True)
+
+ def test_uts46_5344(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bnd074zr557n.xn--yl0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bnd074zr557n.xn--yl0d', strict=True)
+
+ def test_uts46_5345(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᯱ𐹳𐹵𞤚。𝟨Ⴅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᯱ𐹳𐹵𞤚。𝟨Ⴅ', strict=True)
+
+ def test_uts46_5346(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᯱ𐹳𐹵𞤚。6Ⴅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᯱ𐹳𐹵𞤚。6Ⴅ', strict=True)
+
+ def test_uts46_5347(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᯱ𐹳𐹵𞤼。6ⴅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᯱ𐹳𐹵𞤼。6ⴅ', strict=True)
+
+ def test_uts46_5348(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᯱ𐹳𐹵𞤚。6ⴅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᯱ𐹳𐹵𞤚。6ⴅ', strict=True)
+
+ def test_uts46_5349(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zzfy954hga2415t.xn--6-kvs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zzfy954hga2415t.xn--6-kvs', strict=True)
+
+ def test_uts46_5350(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᯱ𐹳𐹵𞤼。𝟨ⴅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᯱ𐹳𐹵𞤼。𝟨ⴅ', strict=True)
+
+ def test_uts46_5351(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᯱ𐹳𐹵𞤚。𝟨ⴅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᯱ𐹳𐹵𞤚。𝟨ⴅ', strict=True)
+
+ def test_uts46_5352(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zzfy954hga2415t.xn--6-h0g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zzfy954hga2415t.xn--6-h0g', strict=True)
+
+ def test_uts46_5353(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。︒', strict=True)
+
+ def test_uts46_5354(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。。', strict=True)
+
+ def test_uts46_5355(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-..', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-..', strict=True)
+
+ def test_uts46_5356(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--y86c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--y86c', strict=True)
+
+ def test_uts46_5357(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߛჀ。-⁵--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߛჀ。-⁵--', strict=True)
+
+ def test_uts46_5358(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߛჀ。-5--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߛჀ。-5--', strict=True)
+
+ def test_uts46_5359(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߛⴠ。-5--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߛⴠ。-5--', strict=True)
+
+ def test_uts46_5360(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2sb691q.-5--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2sb691q.-5--', strict=True)
+
+ def test_uts46_5361(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߛⴠ。-⁵--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߛⴠ。-⁵--', strict=True)
+
+ def test_uts46_5362(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2sb866b.-5--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2sb866b.-5--', strict=True)
+
+ def test_uts46_5363(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455。𐹷𐹻≯\U00010dd2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455。𐹷𐹻≯\U00010dd2', strict=True)
+
+ def test_uts46_5364(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455。𐹷𐹻≯\U00010dd2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455。𐹷𐹻≯\U00010dd2', strict=True)
+
+ def test_uts46_5365(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455。𐹷𐹻≯\U00010dd2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455。𐹷𐹻≯\U00010dd2', strict=True)
+
+ def test_uts46_5366(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455。𐹷𐹻≯\U00010dd2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455。𐹷𐹻≯\U00010dd2', strict=True)
+
+ def test_uts46_5367(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--?-ogo25661n.xn--hdh8283gdoaqa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--?-ogo25661n.xn--hdh8283gdoaqa', strict=True)
+
+ def test_uts46_5368(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455.xn--hdh8283gdoaqa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455.xn--hdh8283gdoaqa', strict=True)
+
+ def test_uts46_5369(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455.xn--hdh8283gdoaqa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455.xn--hdh8283gdoaqa', strict=True)
+
+ def test_uts46_5370(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455.XN--HDH8283GDOAQA', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455.XN--HDH8283GDOAQA', strict=True)
+
+ def test_uts46_5371(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455.XN--HDH8283GDOAQA', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455.XN--HDH8283GDOAQA', strict=True)
+
+ def test_uts46_5372(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455.Xn--Hdh8283gdoaqa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455.Xn--Hdh8283gdoaqa', strict=True)
+
+ def test_uts46_5373(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯?\U000e0455.Xn--Hdh8283gdoaqa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯?\U000e0455.Xn--Hdh8283gdoaqa', strict=True)
+
+ def test_uts46_5374(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㍔ࣦݼ\u200d。͆\U00081cca\U0001d176\u0604', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㍔ࣦݼ\u200d。͆\U00081cca\U0001d176\u0604', strict=True)
+
+ def test_uts46_5375(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ルーブルࣦݼ\u200d。͆\U00081cca\U0001d176\u0604', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ルーブルࣦݼ\u200d。͆\U00081cca\U0001d176\u0604', strict=True)
+
+ def test_uts46_5376(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ルーブルࣦݼ\u200d。͆\U00081cca\U0001d176\u0604', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ルーブルࣦݼ\u200d。͆\U00081cca\U0001d176\u0604', strict=True)
+
+ def test_uts46_5377(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dqb73el09fncab4h.xn--kua81lx7141a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dqb73el09fncab4h.xn--kua81lx7141a', strict=True)
+
+ def test_uts46_5378(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dqb73ec22c9kp8cb1j.xn--kua81lx7141a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dqb73ec22c9kp8cb1j.xn--kua81lx7141a', strict=True)
+
+ def test_uts46_5379(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dqb73el09fncab4h.xn--kua81ls548d3608b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dqb73el09fncab4h.xn--kua81ls548d3608b', strict=True)
+
+ def test_uts46_5380(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dqb73ec22c9kp8cb1j.xn--kua81ls548d3608b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dqb73ec22c9kp8cb1j.xn--kua81ls548d3608b', strict=True)
+
+ def test_uts46_5381(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d.F', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d.F', strict=True)
+
+ def test_uts46_5382(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d.f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d.f', strict=True)
+
+ def test_uts46_5383(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.f', strict=True)
+
+ def test_uts46_5384(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.f', strict=True)
+
+ def test_uts46_5385(self):
+ self.assertEqual(idna.decode('f', uts46=True, strict=True), 'f')
+ self.assertEqual(idna.encode('f', uts46=True, strict=True), b'f')
+
+ def test_uts46_5386(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d㨲。ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d㨲。ß', strict=True)
+
+ def test_uts46_5387(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d㨲。ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d㨲。ß', strict=True)
+
+ def test_uts46_5388(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d㨲。SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d㨲。SS', strict=True)
+
+ def test_uts46_5389(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d㨲。ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d㨲。ss', strict=True)
+
+ def test_uts46_5390(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d㨲。Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d㨲。Ss', strict=True)
+
+ def test_uts46_5391(self):
+ self.assertEqual(idna.decode('xn--9bm.ss', uts46=True, strict=True), '㨲.ss')
+ self.assertEqual(idna.encode('xn--9bm.ss', uts46=True, strict=True), b'xn--9bm.ss')
+
+ def test_uts46_5392(self):
+ self.assertEqual(idna.decode('㨲.ss', uts46=True, strict=True), '㨲.ss')
+ self.assertEqual(idna.encode('㨲.ss', uts46=True, strict=True), b'xn--9bm.ss')
+
+ def test_uts46_5393(self):
+ self.assertEqual(idna.decode('㨲.SS', uts46=True, strict=True), '㨲.ss')
+ self.assertEqual(idna.encode('㨲.SS', uts46=True, strict=True), b'xn--9bm.ss')
+
+ def test_uts46_5394(self):
+ self.assertEqual(idna.decode('㨲.Ss', uts46=True, strict=True), '㨲.ss')
+ self.assertEqual(idna.encode('㨲.Ss', uts46=True, strict=True), b'xn--9bm.ss')
+
+ def test_uts46_5395(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug914h.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug914h.ss', strict=True)
+
+ def test_uts46_5396(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug914h.xn--zca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug914h.xn--zca', strict=True)
+
+ def test_uts46_5397(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d㨲。SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d㨲。SS', strict=True)
+
+ def test_uts46_5398(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d㨲。ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d㨲。ss', strict=True)
+
+ def test_uts46_5399(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d㨲。Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d㨲。Ss', strict=True)
+
+ def test_uts46_5400(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0605پ。ࢨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0605پ。ࢨ', strict=True)
+
+ def test_uts46_5401(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0605پ。ࢨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0605پ。ࢨ', strict=True)
+
+ def test_uts46_5402(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nfb6v.xn--xyb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nfb6v.xn--xyb', strict=True)
+
+ def test_uts46_5403(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾑ݓ𞤁。𐹵ڂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾑ݓ𞤁。𐹵ڂ', strict=True)
+
+ def test_uts46_5404(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '襾ݓ𞤁。𐹵ڂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '襾ݓ𞤁。𐹵ڂ', strict=True)
+
+ def test_uts46_5405(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '襾ݓ𞤣。𐹵ڂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '襾ݓ𞤣。𐹵ڂ', strict=True)
+
+ def test_uts46_5406(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6ob9577deqwl.xn--7ib5526k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6ob9577deqwl.xn--7ib5526k', strict=True)
+
+ def test_uts46_5407(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾑ݓ𞤣。𐹵ڂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾑ݓ𞤣。𐹵ڂ', strict=True)
+
+ def test_uts46_5408(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00066d3bς-⃫。ݔ-ꡛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00066d3bς-⃫。ݔ-ꡛ', strict=True)
+
+ def test_uts46_5409(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00066d3bς-⃫。ݔ-ꡛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00066d3bς-⃫。ݔ-ꡛ', strict=True)
+
+ def test_uts46_5410(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00066d3bΣ-⃫。ݔ-ꡛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00066d3bΣ-⃫。ݔ-ꡛ', strict=True)
+
+ def test_uts46_5411(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00066d3bσ-⃫。ݔ-ꡛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00066d3bσ-⃫。ݔ-ꡛ', strict=True)
+
+ def test_uts46_5412(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----zmb705tuo34l.xn----53c4874j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----zmb705tuo34l.xn----53c4874j', strict=True)
+
+ def test_uts46_5413(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----xmb015tuo34l.xn----53c4874j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----xmb015tuo34l.xn----53c4874j', strict=True)
+
+ def test_uts46_5414(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00066d3bΣ-⃫。ݔ-ꡛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00066d3bΣ-⃫。ݔ-ꡛ', strict=True)
+
+ def test_uts46_5415(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00066d3bσ-⃫。ݔ-ꡛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00066d3bσ-⃫。ݔ-ꡛ', strict=True)
+
+ def test_uts46_5416(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d.\U00100e28', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d.\U00100e28', strict=True)
+
+ def test_uts46_5417(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d.\U00100e28', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d.\U00100e28', strict=True)
+
+ def test_uts46_5418(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--h327f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--h327f', strict=True)
+
+ def test_uts46_5419(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--h327f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--h327f', strict=True)
+
+ def test_uts46_5420(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00063b7b\U0004c941。≠𝟲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00063b7b\U0004c941。≠𝟲', strict=True)
+
+ def test_uts46_5421(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00063b7b\U0004c941。≠𝟲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00063b7b\U0004c941。≠𝟲', strict=True)
+
+ def test_uts46_5422(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00063b7b\U0004c941。≠6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00063b7b\U0004c941。≠6', strict=True)
+
+ def test_uts46_5423(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00063b7b\U0004c941。≠6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00063b7b\U0004c941。≠6', strict=True)
+
+ def test_uts46_5424(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--h79w4z99a.xn--6-tfo', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--h79w4z99a.xn--6-tfo', strict=True)
+
+ def test_uts46_5425(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅊ᡭ\u200d.\U00010961', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅊ᡭ\u200d.\U00010961', strict=True)
+
+ def test_uts46_5426(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--98e.xn--om9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--98e.xn--om9c', strict=True)
+
+ def test_uts46_5427(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--98e810b.xn--om9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--98e810b.xn--om9c', strict=True)
+
+ def test_uts46_5428(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ీࡕ\U0001095b𑄴.\U000edc35', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ీࡕ\U0001095b𑄴.\U000edc35', strict=True)
+
+ def test_uts46_5429(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ీࡕ\U0001095b𑄴.\U000edc35', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ీࡕ\U0001095b𑄴.\U000edc35', strict=True)
+
+ def test_uts46_5430(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--kwb91r5112avtg.xn--o580f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--kwb91r5112avtg.xn--o580f', strict=True)
+
+ def test_uts46_5431(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤮。𑇊\u200c≯᳦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤮。𑇊\u200c≯᳦', strict=True)
+
+ def test_uts46_5432(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤮。𑇊\u200c≯᳦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤮。𑇊\u200c≯᳦', strict=True)
+
+ def test_uts46_5433(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤌。𑇊\u200c≯᳦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤌。𑇊\u200c≯᳦', strict=True)
+
+ def test_uts46_5434(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤌。𑇊\u200c≯᳦', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤌。𑇊\u200c≯᳦', strict=True)
+
+ def test_uts46_5435(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--me6h.xn--z6fz8ueq2v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--me6h.xn--z6fz8ueq2v', strict=True)
+
+ def test_uts46_5436(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--me6h.xn--z6f16kn9b2642b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--me6h.xn--z6f16kn9b2642b', strict=True)
+
+ def test_uts46_5437(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄀𝟕.𞤌\U0005b5d3Ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄀𝟕.𞤌\U0005b5d3Ⴉ', strict=True)
+
+ def test_uts46_5438(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄀7.𞤌\U0005b5d3Ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄀7.𞤌\U0005b5d3Ⴉ', strict=True)
+
+ def test_uts46_5439(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄀7.𞤮\U0005b5d3ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄀7.𞤮\U0005b5d3ⴉ', strict=True)
+
+ def test_uts46_5440(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '7.xn--0kjz523lv1vv', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '7.xn--0kjz523lv1vv', strict=True)
+
+ def test_uts46_5441(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄀𝟕.𞤮\U0005b5d3ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄀𝟕.𞤮\U0005b5d3ⴉ', strict=True)
+
+ def test_uts46_5442(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '7.xn--hnd3403vv1vv', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '7.xn--hnd3403vv1vv', strict=True)
+
+ def test_uts46_5443(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄀7.𞤌\U0005b5d3ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄀7.𞤌\U0005b5d3ⴉ', strict=True)
+
+ def test_uts46_5444(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄀𝟕.𞤌\U0005b5d3ⴉ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄀𝟕.𞤌\U0005b5d3ⴉ', strict=True)
+
+ def test_uts46_5445(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '閃9𝩍。Ↄ٩ࢱ୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '閃9𝩍。Ↄ٩ࢱ୍', strict=True)
+
+ def test_uts46_5446(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '閃9𝩍。ↄ٩ࢱ୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '閃9𝩍。ↄ٩ࢱ୍', strict=True)
+
+ def test_uts46_5447(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-3j6dk517f.xn--iib28ij3c4t9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-3j6dk517f.xn--iib28ij3c4t9a', strict=True)
+
+ def test_uts46_5448(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-3j6dk517f.xn--iib28ij3c0t9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-3j6dk517f.xn--iib28ij3c0t9a', strict=True)
+
+ def test_uts46_5449(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꫶ᢏฺ2.𐋢݅ྟ︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꫶ᢏฺ2.𐋢݅ྟ︒', strict=True)
+
+ def test_uts46_5450(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꫶ᢏฺ2.𐋢݅ྟ。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꫶ᢏฺ2.𐋢݅ྟ。', strict=True)
+
+ def test_uts46_5451(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2-2zf840fk16m.xn--sob093b2m7s.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2-2zf840fk16m.xn--sob093b2m7s.', strict=True)
+
+ def test_uts46_5452(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2-2zf840fk16m.xn--sob093bj62sz9d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2-2zf840fk16m.xn--sob093bj62sz9d', strict=True)
+
+ def test_uts46_5453(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c5d27。≠-\U000e0644⾛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c5d27。≠-\U000e0644⾛', strict=True)
+
+ def test_uts46_5454(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c5d27。≠-\U000e0644⾛', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c5d27。≠-\U000e0644⾛', strict=True)
+
+ def test_uts46_5455(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c5d27。≠-\U000e0644走', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c5d27。≠-\U000e0644走', strict=True)
+
+ def test_uts46_5456(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c5d27。≠-\U000e0644走', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c5d27。≠-\U000e0644走', strict=True)
+
+ def test_uts46_5457(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gm57d.xn----tfo4949b3664m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gm57d.xn----tfo4949b3664m', strict=True)
+
+ def test_uts46_5458(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݮ\u0604Ⴊ。-≠ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݮ\u0604Ⴊ。-≠ᅠ', strict=True)
+
+ def test_uts46_5459(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݮ\u0604Ⴊ。-≠ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݮ\u0604Ⴊ。-≠ᅠ', strict=True)
+
+ def test_uts46_5460(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݮ\u0604ⴊ。-≠ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݮ\u0604ⴊ。-≠ᅠ', strict=True)
+
+ def test_uts46_5461(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݮ\u0604ⴊ。-≠ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݮ\u0604ⴊ。-≠ᅠ', strict=True)
+
+ def test_uts46_5462(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mfb73ek93f.xn----ufo', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mfb73ek93f.xn----ufo', strict=True)
+
+ def test_uts46_5463(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mfb73ek93f.xn----5bh589i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mfb73ek93f.xn----5bh589i', strict=True)
+
+ def test_uts46_5464(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mfb73ex6r.xn----5bh589i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mfb73ex6r.xn----5bh589i', strict=True)
+
+ def test_uts46_5465(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﭏ𐹧𝟒≯。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﭏ𐹧𝟒≯。\u200c', strict=True)
+
+ def test_uts46_5466(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﭏ𐹧𝟒≯。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﭏ𐹧𝟒≯。\u200c', strict=True)
+
+ def test_uts46_5467(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'אל𐹧4≯。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'אל𐹧4≯。\u200c', strict=True)
+
+ def test_uts46_5468(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'אל𐹧4≯。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'אל𐹧4≯。\u200c', strict=True)
+
+ def test_uts46_5469(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-zhc0by36txt0w.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-zhc0by36txt0w.', strict=True)
+
+ def test_uts46_5470(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-zhc0by36txt0w.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-zhc0by36txt0w.xn--0ug', strict=True)
+
+ def test_uts46_5471(self):
+ self.assertEqual(idna.decode('𝟎。甯', uts46=True, strict=True), '0.甯')
+ self.assertEqual(idna.encode('𝟎。甯', uts46=True, strict=True), b'0.xn--qny')
+
+ def test_uts46_5472(self):
+ self.assertEqual(idna.decode('0。甯', uts46=True, strict=True), '0.甯')
+ self.assertEqual(idna.encode('0。甯', uts46=True, strict=True), b'0.xn--qny')
+
+ def test_uts46_5473(self):
+ self.assertEqual(idna.decode('0.xn--qny', uts46=True, strict=True), '0.甯')
+ self.assertEqual(idna.encode('0.xn--qny', uts46=True, strict=True), b'0.xn--qny')
+
+ def test_uts46_5474(self):
+ self.assertEqual(idna.decode('0.甯', uts46=True, strict=True), '0.甯')
+ self.assertEqual(idna.encode('0.甯', uts46=True, strict=True), b'0.xn--qny')
+
+ def test_uts46_5475(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-⾆.꫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-⾆.꫶', strict=True)
+
+ def test_uts46_5476(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-舌.꫶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-舌.꫶', strict=True)
+
+ def test_uts46_5477(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ef8c.xn--2v9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ef8c.xn--2v9a', strict=True)
+
+ def test_uts46_5478(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。ᢘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。ᢘ', strict=True)
+
+ def test_uts46_5479(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。ᢘ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。ᢘ', strict=True)
+
+ def test_uts46_5480(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--ibf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--ibf', strict=True)
+
+ def test_uts46_5481(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🂴Ⴋ.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🂴Ⴋ.≮', strict=True)
+
+ def test_uts46_5482(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🂴Ⴋ.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🂴Ⴋ.≮', strict=True)
+
+ def test_uts46_5483(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🂴ⴋ.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🂴ⴋ.≮', strict=True)
+
+ def test_uts46_5484(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🂴ⴋ.≮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🂴ⴋ.≮', strict=True)
+
+ def test_uts46_5485(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2kj7565l.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2kj7565l.xn--gdh', strict=True)
+
+ def test_uts46_5486(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jnd1986v.xn--gdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jnd1986v.xn--gdh', strict=True)
+
+ def test_uts46_5487(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '璼𝨭。\u200c󠇟', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '璼𝨭。\u200c󠇟', strict=True)
+
+ def test_uts46_5488(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '璼𝨭。\u200c󠇟', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '璼𝨭。\u200c󠇟', strict=True)
+
+ def test_uts46_5491(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gky8837e.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gky8837e.xn--0ug', strict=True)
+
+ def test_uts46_5492(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٩8\U0004237d。-5🞥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٩8\U0004237d。-5🞥', strict=True)
+
+ def test_uts46_5493(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٩8\U0004237d。-5🞥', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٩8\U0004237d。-5🞥', strict=True)
+
+ def test_uts46_5494(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-qqc97891f.xn---5-rp92a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-qqc97891f.xn---5-rp92a', strict=True)
+
+ def test_uts46_5495(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.\u200c', strict=True)
+
+ def test_uts46_5496(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--0ug', strict=True)
+
+ def test_uts46_5497(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d튛.ܖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d튛.ܖ', strict=True)
+
+ def test_uts46_5498(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d튛.ܖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d튛.ܖ', strict=True)
+
+ def test_uts46_5499(self):
+ self.assertEqual(idna.decode('xn--157b.xn--gnb', uts46=True, strict=True), '튛.ܖ')
+ self.assertEqual(idna.encode('xn--157b.xn--gnb', uts46=True, strict=True), b'xn--157b.xn--gnb')
+
+ def test_uts46_5500(self):
+ self.assertEqual(idna.decode('튛.ܖ', uts46=True, strict=True), '튛.ܖ')
+ self.assertEqual(idna.encode('튛.ܖ', uts46=True, strict=True), b'xn--157b.xn--gnb')
+
+ def test_uts46_5501(self):
+ self.assertEqual(idna.decode('튛.ܖ', uts46=True, strict=True), '튛.ܖ')
+ self.assertEqual(idna.encode('튛.ܖ', uts46=True, strict=True), b'xn--157b.xn--gnb')
+
+ def test_uts46_5502(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug4441e.xn--gnb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug4441e.xn--gnb', strict=True)
+
+ def test_uts46_5503(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡋ𐹰\U0001ef73.ݹⴞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡋ𐹰\U0001ef73.ݹⴞ', strict=True)
+
+ def test_uts46_5504(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᡋ𐹰\U0001ef73.ݹႾ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᡋ𐹰\U0001ef73.ݹႾ', strict=True)
+
+ def test_uts46_5505(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b8e0417jocvf.xn--9pb883q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b8e0417jocvf.xn--9pb883q', strict=True)
+
+ def test_uts46_5506(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--b8e0417jocvf.xn--9pb068b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--b8e0417jocvf.xn--9pb068b', strict=True)
+
+ def test_uts46_5507(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010dc3٢𝅻𝟧.𐹮𐹬Ⴇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010dc3٢𝅻𝟧.𐹮𐹬Ⴇ', strict=True)
+
+ def test_uts46_5508(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010dc3٢𝅻5.𐹮𐹬Ⴇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010dc3٢𝅻5.𐹮𐹬Ⴇ', strict=True)
+
+ def test_uts46_5509(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010dc3٢𝅻5.𐹮𐹬ⴇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010dc3٢𝅻5.𐹮𐹬ⴇ', strict=True)
+
+ def test_uts46_5510(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5-cqc8833rhv7f.xn--ykjz523efa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5-cqc8833rhv7f.xn--ykjz523efa', strict=True)
+
+ def test_uts46_5511(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00010dc3٢𝅻𝟧.𐹮𐹬ⴇ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00010dc3٢𝅻𝟧.𐹮𐹬ⴇ', strict=True)
+
+ def test_uts46_5512(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5-cqc8833rhv7f.xn--fnd3401kfa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5-cqc8833rhv7f.xn--fnd3401kfa', strict=True)
+
+ def test_uts46_5513(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+
+ def test_uts46_5514(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+
+ def test_uts46_5515(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+
+ def test_uts46_5516(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+
+ def test_uts46_5517(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--flj.xn--qdb0605f14ycrms3c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--flj.xn--qdb0605f14ycrms3c', strict=True)
+
+ def test_uts46_5518(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+
+ def test_uts46_5519(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴗ.𑄴ׂꦷ\U000580e8', strict=True)
+
+ def test_uts46_5520(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vnd.xn--qdb0605f14ycrms3c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vnd.xn--qdb0605f14ycrms3c', strict=True)
+
+ def test_uts46_5521(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟾\U0003e918.\U0008755b٬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟾\U0003e918.\U0008755b٬', strict=True)
+
+ def test_uts46_5522(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8\U0003e918.\U0008755b٬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8\U0003e918.\U0008755b٬', strict=True)
+
+ def test_uts46_5523(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-kh23b.xn--lib78461i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-kh23b.xn--lib78461i', strict=True)
+
+ def test_uts46_5524(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈酫︒。ࣖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈酫︒。ࣖ', strict=True)
+
+ def test_uts46_5525(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.酫。。ࣖ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.酫。。ࣖ', strict=True)
+
+ def test_uts46_5526(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--8j4a..xn--8zb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--8j4a..xn--8zb', strict=True)
+
+ def test_uts46_5527(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh4490bfe8c.xn--8zb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh4490bfe8c.xn--8zb', strict=True)
+
+ def test_uts46_5528(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⷣ\u200c≮ᩫ.\u200cฺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⷣ\u200c≮ᩫ.\u200cฺ', strict=True)
+
+ def test_uts46_5529(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⷣ\u200c≮ᩫ.\u200cฺ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⷣ\u200c≮ᩫ.\u200cฺ', strict=True)
+
+ def test_uts46_5530(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uof548an0j.xn--o4c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uof548an0j.xn--o4c', strict=True)
+
+ def test_uts46_5531(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--uof63xk4bf3s.xn--o4c732g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--uof63xk4bf3s.xn--o4c732g', strict=True)
+
+ def test_uts46_5532(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea82。ႷႽ¹\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea82。ႷႽ¹\u200d', strict=True)
+
+ def test_uts46_5533(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea82。ႷႽ1\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea82。ႷႽ1\u200d', strict=True)
+
+ def test_uts46_5534(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea82。ⴗⴝ1\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea82。ⴗⴝ1\u200d', strict=True)
+
+ def test_uts46_5535(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea82。Ⴗⴝ1\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea82。Ⴗⴝ1\u200d', strict=True)
+
+ def test_uts46_5536(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--co6h.xn--1-kwssa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--co6h.xn--1-kwssa', strict=True)
+
+ def test_uts46_5537(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--co6h.xn--1-ugn710dya', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--co6h.xn--1-ugn710dya', strict=True)
+
+ def test_uts46_5538(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea82。ⴗⴝ¹\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea82。ⴗⴝ¹\u200d', strict=True)
+
+ def test_uts46_5539(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001ea82。Ⴗⴝ¹\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001ea82。Ⴗⴝ¹\u200d', strict=True)
+
+ def test_uts46_5540(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--co6h.xn--1-h1g429s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--co6h.xn--1-h1g429s', strict=True)
+
+ def test_uts46_5541(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--co6h.xn--1-h1g398iewm', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--co6h.xn--1-h1g398iewm', strict=True)
+
+ def test_uts46_5542(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--co6h.xn--1-h1gs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--co6h.xn--1-h1gs', strict=True)
+
+ def test_uts46_5543(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--co6h.xn--1-h1gs597m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--co6h.xn--1-h1gs597m', strict=True)
+
+ def test_uts46_5544(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑄴𑄳2.\U0001ecff\U000e0033-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑄴𑄳2.\U0001ecff\U000e0033-', strict=True)
+
+ def test_uts46_5545(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2-h87ic.xn----s39r33498d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2-h87ic.xn----s39r33498d', strict=True)
+
+ def test_uts46_5546(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0572\U000dfdb6٥。\U00040041𑄳𞤃ܐ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0572\U000dfdb6٥。\U00040041𑄳𞤃ܐ', strict=True)
+
+ def test_uts46_5547(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0572\U000dfdb6٥。\U00040041𑄳𞤃ܐ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0572\U000dfdb6٥。\U00040041𑄳𞤃ܐ', strict=True)
+
+ def test_uts46_5548(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0572\U000dfdb6٥。\U00040041𑄳𞤥ܐ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0572\U000dfdb6٥。\U00040041𑄳𞤥ܐ', strict=True)
+
+ def test_uts46_5549(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--eib57614py3ea.xn--9mb5737kqnpfzkwr', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--eib57614py3ea.xn--9mb5737kqnpfzkwr', strict=True)
+
+ def test_uts46_5550(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0572\U000dfdb6٥。\U00040041𑄳𞤥ܐ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0572\U000dfdb6٥。\U00040041𑄳𞤥ܐ', strict=True)
+
+ def test_uts46_5551(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܠ\U000b283d𐹢ុ。ςᢈ🝭\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܠ\U000b283d𐹢ុ。ςᢈ🝭\u200c', strict=True)
+
+ def test_uts46_5552(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܠ\U000b283d𐹢ុ。ςᢈ🝭\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܠ\U000b283d𐹢ុ。ςᢈ🝭\u200c', strict=True)
+
+ def test_uts46_5553(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܠ\U000b283d𐹢ុ。Σᢈ🝭\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܠ\U000b283d𐹢ុ。Σᢈ🝭\u200c', strict=True)
+
+ def test_uts46_5554(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܠ\U000b283d𐹢ុ。σᢈ🝭\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܠ\U000b283d𐹢ុ。σᢈ🝭\u200c', strict=True)
+
+ def test_uts46_5555(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qnb616fis0qzt36f.xn--4xa847hli46a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qnb616fis0qzt36f.xn--4xa847hli46a', strict=True)
+
+ def test_uts46_5556(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qnb616fis0qzt36f.xn--4xa847h6ofgl44c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qnb616fis0qzt36f.xn--4xa847h6ofgl44c', strict=True)
+
+ def test_uts46_5557(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qnb616fis0qzt36f.xn--3xa057h6ofgl44c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qnb616fis0qzt36f.xn--3xa057h6ofgl44c', strict=True)
+
+ def test_uts46_5558(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܠ\U000b283d𐹢ុ。Σᢈ🝭\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܠ\U000b283d𐹢ុ。Σᢈ🝭\u200c', strict=True)
+
+ def test_uts46_5559(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܠ\U000b283d𐹢ុ。σᢈ🝭\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܠ\U000b283d𐹢ុ。σᢈ🝭\u200c', strict=True)
+
+ def test_uts46_5560(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d--≮。𐹧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d--≮。𐹧', strict=True)
+
+ def test_uts46_5561(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d--≮。𐹧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d--≮。𐹧', strict=True)
+
+ def test_uts46_5562(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn-----ujv.xn--fo0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn-----ujv.xn--fo0d', strict=True)
+
+ def test_uts46_5563(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn-----l1tz1k.xn--fo0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn-----l1tz1k.xn--fo0d', strict=True)
+
+ def test_uts46_5564(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꠆。\U0003b68fྰ⒕', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꠆。\U0003b68fྰ⒕', strict=True)
+
+ def test_uts46_5565(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꠆。\U0003b68fྰ14.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꠆。\U0003b68fྰ14.', strict=True)
+
+ def test_uts46_5566(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l98a.xn--14-jsj57880f.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l98a.xn--14-jsj57880f.', strict=True)
+
+ def test_uts46_5567(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l98a.xn--dgd218hhp28d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l98a.xn--dgd218hhp28d', strict=True)
+
+ def test_uts46_5568(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ae242ڼ.𑆺٩', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ae242ڼ.𑆺٩', strict=True)
+
+ def test_uts46_5569(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ae242ڼ.𑆺٩', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ae242ڼ.𑆺٩', strict=True)
+
+ def test_uts46_5570(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vkb92243l.xn--iib9797k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vkb92243l.xn--iib9797k', strict=True)
+
+ def test_uts46_5571(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e004eې-。𞤴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e004eې-。𞤴', strict=True)
+
+ def test_uts46_5572(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e004eې-。𞤒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e004eې-。𞤒', strict=True)
+
+ def test_uts46_5573(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----mwc72685y.xn--se6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----mwc72685y.xn--se6h', strict=True)
+
+ def test_uts46_5574(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟠4󠇗𝈻.\u200d𐋵⛧\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟠4󠇗𝈻.\u200d𐋵⛧\u200d', strict=True)
+
+ def test_uts46_5575(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '84󠇗𝈻.\u200d𐋵⛧\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '84󠇗𝈻.\u200d𐋵⛧\u200d', strict=True)
+
+ def test_uts46_5576(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--84-s850a.xn--59h6326e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--84-s850a.xn--59h6326e', strict=True)
+
+ def test_uts46_5577(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '84𝈻.𐋵⛧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '84𝈻.𐋵⛧', strict=True)
+
+ def test_uts46_5578(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--84-s850a.xn--1uga573cfq1w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--84-s850a.xn--1uga573cfq1w', strict=True)
+
+ def test_uts46_5579(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u0601。ᡪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u0601。ᡪ', strict=True)
+
+ def test_uts46_5580(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u0601。ᡪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u0601。ᡪ', strict=True)
+
+ def test_uts46_5581(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----tkc.xn--68e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----tkc.xn--68e', strict=True)
+
+ def test_uts46_5582(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𝟕.謖ß≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𝟕.謖ß≯', strict=True)
+
+ def test_uts46_5583(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𝟕.謖ß≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𝟕.謖ß≯', strict=True)
+
+ def test_uts46_5584(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮7.謖ß≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮7.謖ß≯', strict=True)
+
+ def test_uts46_5585(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮7.謖ß≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮7.謖ß≯', strict=True)
+
+ def test_uts46_5586(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮7.謖SS≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮7.謖SS≯', strict=True)
+
+ def test_uts46_5587(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮7.謖SS≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮7.謖SS≯', strict=True)
+
+ def test_uts46_5588(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮7.謖ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮7.謖ss≯', strict=True)
+
+ def test_uts46_5589(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮7.謖ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮7.謖ss≯', strict=True)
+
+ def test_uts46_5590(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮7.謖Ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮7.謖Ss≯', strict=True)
+
+ def test_uts46_5591(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮7.謖Ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮7.謖Ss≯', strict=True)
+
+ def test_uts46_5592(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7-mgo.xn--ss-xjvv174c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7-mgo.xn--ss-xjvv174c', strict=True)
+
+ def test_uts46_5593(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7-mgo.xn--zca892oly5e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7-mgo.xn--zca892oly5e', strict=True)
+
+ def test_uts46_5594(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𝟕.謖SS≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𝟕.謖SS≯', strict=True)
+
+ def test_uts46_5595(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𝟕.謖SS≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𝟕.謖SS≯', strict=True)
+
+ def test_uts46_5596(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𝟕.謖ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𝟕.謖ss≯', strict=True)
+
+ def test_uts46_5597(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𝟕.謖ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𝟕.謖ss≯', strict=True)
+
+ def test_uts46_5598(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𝟕.謖Ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𝟕.謖Ss≯', strict=True)
+
+ def test_uts46_5599(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𝟕.謖Ss≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𝟕.謖Ss≯', strict=True)
+
+ def test_uts46_5600(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '朶Ⴉ\U0001eaa1.𝨽ࠥ📻-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '朶Ⴉ\U0001eaa1.𝨽ࠥ📻-', strict=True)
+
+ def test_uts46_5601(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '朶ⴉ\U0001eaa1.𝨽ࠥ📻-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '朶ⴉ\U0001eaa1.𝨽ࠥ📻-', strict=True)
+
+ def test_uts46_5602(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0kjz47pd57t.xn----3gd37096apmwa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0kjz47pd57t.xn----3gd37096apmwa', strict=True)
+
+ def test_uts46_5603(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hnd7245bd56p.xn----3gd37096apmwa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hnd7245bd56p.xn----3gd37096apmwa', strict=True)
+
+ def test_uts46_5604(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐤎。\U000d1ff0\u200c≮\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐤎。\U000d1ff0\u200c≮\u200d', strict=True)
+
+ def test_uts46_5605(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐤎。\U000d1ff0\u200c≮\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐤎。\U000d1ff0\u200c≮\u200d', strict=True)
+
+ def test_uts46_5606(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bk9c.xn--gdhx6802k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bk9c.xn--gdhx6802k', strict=True)
+
+ def test_uts46_5607(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--bk9c.xn--0ugc04p2u638c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--bk9c.xn--0ugc04p2u638c', strict=True)
+
+ def test_uts46_5608(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006d70e⒈。\u200c𝟤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006d70e⒈。\u200c𝟤', strict=True)
+
+ def test_uts46_5609(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006d70e1.。\u200c2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006d70e1.。\u200c2', strict=True)
+
+ def test_uts46_5610(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-ex54e..c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-ex54e..c', strict=True)
+
+ def test_uts46_5611(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-ex54e..xn--2-rgn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-ex54e..xn--2-rgn', strict=True)
+
+ def test_uts46_5612(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh94183d.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh94183d.c', strict=True)
+
+ def test_uts46_5613(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh94183d.xn--2-rgn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh94183d.xn--2-rgn', strict=True)
+
+ def test_uts46_5614(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e07ca𐹤\u200d.𐹳\U000d9135𐹶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e07ca𐹤\u200d.𐹳\U000d9135𐹶', strict=True)
+
+ def test_uts46_5615(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e07ca𐹤\u200d.𐹳\U000d9135𐹶', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e07ca𐹤\u200d.𐹳\U000d9135𐹶', strict=True)
+
+ def test_uts46_5616(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--co0d98977c.xn--ro0dga22807v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--co0d98977c.xn--ro0dga22807v', strict=True)
+
+ def test_uts46_5617(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugy994g7k93g.xn--ro0dga22807v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugy994g7k93g.xn--ro0dga22807v', strict=True)
+
+ def test_uts46_5618(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤴𐹻𑓂𐭝.्︇\U001096ef', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤴𐹻𑓂𐭝.्︇\U001096ef', strict=True)
+
+ def test_uts46_5619(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤴𐹻𑓂𐭝.्︇\U001096ef', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤴𐹻𑓂𐭝.्︇\U001096ef', strict=True)
+
+ def test_uts46_5620(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤒𐹻𑓂𐭝.्︇\U001096ef', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤒𐹻𑓂𐭝.्︇\U001096ef', strict=True)
+
+ def test_uts46_5621(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--609c96c09grp2w.xn--n3b28708s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--609c96c09grp2w.xn--n3b28708s', strict=True)
+
+ def test_uts46_5622(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤒𐹻𑓂𐭝.्︇\U001096ef', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤒𐹻𑓂𐭝.्︇\U001096ef', strict=True)
+
+ def test_uts46_5623(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٨。𐹠𐹽\U00057bb6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٨。𐹠𐹽\U00057bb6', strict=True)
+
+ def test_uts46_5624(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٨。𐹠𐹽\U00057bb6', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٨。𐹠𐹽\U00057bb6', strict=True)
+
+ def test_uts46_5625(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hib.xn--7n0d2bu9196b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hib.xn--7n0d2bu9196b', strict=True)
+
+ def test_uts46_5626(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅠ\U0004d01c.8\U000b6fb5ڜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅠ\U0004d01c.8\U000b6fb5ڜ', strict=True)
+
+ def test_uts46_5627(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mn1x.xn--8-otc61545t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mn1x.xn--8-otc61545t', strict=True)
+
+ def test_uts46_5628(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--psd85033d.xn--8-otc61545t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--psd85033d.xn--8-otc61545t', strict=True)
+
+ def test_uts46_5629(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c󠆪。ß𑓃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c󠆪。ß𑓃', strict=True)
+
+ def test_uts46_5630(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c󠆪。ß𑓃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c󠆪。ß𑓃', strict=True)
+
+ def test_uts46_5631(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c󠆪。SS𑓃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c󠆪。SS𑓃', strict=True)
+
+ def test_uts46_5632(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c󠆪。ss𑓃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c󠆪。ss𑓃', strict=True)
+
+ def test_uts46_5633(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c󠆪。Ss𑓃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c󠆪。Ss𑓃', strict=True)
+
+ def test_uts46_5634(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--ss-bh7o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--ss-bh7o', strict=True)
+
+ def test_uts46_5635(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugb.xn--ss-bh7o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugb.xn--ss-bh7o', strict=True)
+
+ def test_uts46_5636(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugb.xn--zca0732l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugb.xn--zca0732l', strict=True)
+
+ def test_uts46_5637(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c󠆪。SS𑓃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c󠆪。SS𑓃', strict=True)
+
+ def test_uts46_5638(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c󠆪。ss𑓃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c󠆪。ss𑓃', strict=True)
+
+ def test_uts46_5639(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200c󠆪。Ss𑓃', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200c󠆪。Ss𑓃', strict=True)
+
+ def test_uts46_5640(self):
+ self.assertEqual(idna.decode('xn--ss-bh7o', uts46=True, strict=True), 'ss𑓃')
+ self.assertEqual(idna.encode('xn--ss-bh7o', uts46=True, strict=True), b'xn--ss-bh7o')
+
+ def test_uts46_5641(self):
+ self.assertEqual(idna.decode('ss𑓃', uts46=True, strict=True), 'ss𑓃')
+ self.assertEqual(idna.encode('ss𑓃', uts46=True, strict=True), b'xn--ss-bh7o')
+
+ def test_uts46_5642(self):
+ self.assertEqual(idna.decode('SS𑓃', uts46=True, strict=True), 'ss𑓃')
+ self.assertEqual(idna.encode('SS𑓃', uts46=True, strict=True), b'xn--ss-bh7o')
+
+ def test_uts46_5643(self):
+ self.assertEqual(idna.decode('Ss𑓃', uts46=True, strict=True), 'ss𑓃')
+ self.assertEqual(idna.encode('Ss𑓃', uts46=True, strict=True), b'xn--ss-bh7o')
+
+ def test_uts46_5644(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒\u200cヶ䒩.ꡪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒\u200cヶ䒩.ꡪ', strict=True)
+
+ def test_uts46_5645(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。\u200cヶ䒩.ꡪ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。\u200cヶ䒩.ꡪ', strict=True)
+
+ def test_uts46_5646(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--qekw60d.xn--gd9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--qekw60d.xn--gd9a', strict=True)
+
+ def test_uts46_5647(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--0ug287dj0o.xn--gd9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--0ug287dj0o.xn--gd9a', strict=True)
+
+ def test_uts46_5648(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qekw60dns9k.xn--gd9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qekw60dns9k.xn--gd9a', strict=True)
+
+ def test_uts46_5649(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug287dj0or48o.xn--gd9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug287dj0or48o.xn--gd9a', strict=True)
+
+ def test_uts46_5650(self):
+ self.assertEqual(idna.decode('xn--qekw60d.xn--gd9a', uts46=True, strict=True), 'ヶ䒩.ꡪ')
+ self.assertEqual(idna.encode('xn--qekw60d.xn--gd9a', uts46=True, strict=True), b'xn--qekw60d.xn--gd9a')
+
+ def test_uts46_5651(self):
+ self.assertEqual(idna.decode('ヶ䒩.ꡪ', uts46=True, strict=True), 'ヶ䒩.ꡪ')
+ self.assertEqual(idna.encode('ヶ䒩.ꡪ', uts46=True, strict=True), b'xn--qekw60d.xn--gd9a')
+
+ def test_uts46_5652(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c⒈𤮍.\U000e24cb᩠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c⒈𤮍.\U000e24cb᩠', strict=True)
+
+ def test_uts46_5653(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c1.𤮍.\U000e24cb᩠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c1.𤮍.\U000e24cb᩠', strict=True)
+
+ def test_uts46_5654(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--4x6j.xn--jof45148n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--4x6j.xn--jof45148n', strict=True)
+
+ def test_uts46_5655(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-rgn.xn--4x6j.xn--jof45148n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-rgn.xn--4x6j.xn--jof45148n', strict=True)
+
+ def test_uts46_5656(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tshw462r.xn--jof45148n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tshw462r.xn--jof45148n', strict=True)
+
+ def test_uts46_5657(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug88o7471d.xn--jof45148n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug88o7471d.xn--jof45148n', strict=True)
+
+ def test_uts46_5658(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈\u200c𐫓\U000e003a。᩠\U00064c35\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈\u200c𐫓\U000e003a。᩠\U00064c35\u200d', strict=True)
+
+ def test_uts46_5659(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.\u200c𐫓\U000e003a。᩠\U00064c35\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.\u200c𐫓\U000e003a。᩠\U00064c35\u200d', strict=True)
+
+ def test_uts46_5660(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--8w9c40377c.xn--jofz5294e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--8w9c40377c.xn--jofz5294e', strict=True)
+
+ def test_uts46_5661(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--0ug8853gk263g.xn--jof95xex98m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--0ug8853gk263g.xn--jof95xex98m', strict=True)
+
+ def test_uts46_5662(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tsh4435fk263g.xn--jofz5294e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tsh4435fk263g.xn--jofz5294e', strict=True)
+
+ def test_uts46_5663(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug78ol75wzcx4i.xn--jof95xex98m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug78ol75wzcx4i.xn--jof95xex98m', strict=True)
+
+ def test_uts46_5664(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001d175。𝟫𞀈䬺⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001d175。𝟫𞀈䬺⒈', strict=True)
+
+ def test_uts46_5665(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001d175。9𞀈䬺1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001d175。9𞀈䬺1.', strict=True)
+
+ def test_uts46_5666(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--91-030c1650n.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--91-030c1650n.', strict=True)
+
+ def test_uts46_5667(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--9-ecp936non25a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--9-ecp936non25a', strict=True)
+
+ def test_uts46_5668(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3f1h.xn--91-030c1650n.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3f1h.xn--91-030c1650n.', strict=True)
+
+ def test_uts46_5669(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3f1h.xn--9-ecp936non25a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3f1h.xn--9-ecp936non25a', strict=True)
+
+ def test_uts46_5670(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a1f3a≯。盚ص', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a1f3a≯。盚ص', strict=True)
+
+ def test_uts46_5671(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000a1f3a≯。盚ص', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000a1f3a≯。盚ص', strict=True)
+
+ def test_uts46_5672(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hdh30181h.xn--0gb7878c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hdh30181h.xn--0gb7878c', strict=True)
+
+ def test_uts46_5673(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0007fc2dִ。-\U000e004a\U000108b8≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0007fc2dִ。-\U000e004a\U000108b8≯', strict=True)
+
+ def test_uts46_5674(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0007fc2dִ。-\U000e004a\U000108b8≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0007fc2dִ。-\U000e004a\U000108b8≯', strict=True)
+
+ def test_uts46_5675(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----fgc06667m.xn----pgoy615he5y4i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----fgc06667m.xn----pgoy615he5y4i', strict=True)
+
+ def test_uts46_5676(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ffb53᭄\u200c੍.𐭛\U000732d4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ffb53᭄\u200c੍.𐭛\U000732d4', strict=True)
+
+ def test_uts46_5677(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ffb53᭄\u200c੍.𐭛\U000732d4', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ffb53᭄\u200c੍.𐭛\U000732d4', strict=True)
+
+ def test_uts46_5678(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ybc997fb5881a.xn--409c6100y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ybc997fb5881a.xn--409c6100y', strict=True)
+
+ def test_uts46_5679(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ybc997f6rd2n772c.xn--409c6100y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ybc997f6rd2n772c.xn--409c6100y', strict=True)
+
+ def test_uts46_5680(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾇.ٽ𞤴ڻ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾇.ٽ𞤴ڻ\u200d', strict=True)
+
+ def test_uts46_5681(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舛.ٽ𞤴ڻ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舛.ٽ𞤴ڻ\u200d', strict=True)
+
+ def test_uts46_5682(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '舛.ٽ𞤒ڻ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '舛.ٽ𞤒ڻ\u200d', strict=True)
+
+ def test_uts46_5683(self):
+ self.assertEqual(idna.decode('xn--8c1a.xn--2ib8jn539l', uts46=True, strict=True), '舛.ٽ𞤴ڻ')
+ self.assertEqual(idna.encode('xn--8c1a.xn--2ib8jn539l', uts46=True, strict=True), b'xn--8c1a.xn--2ib8jn539l')
+
+ def test_uts46_5684(self):
+ self.assertEqual(idna.decode('舛.ٽ𞤴ڻ', uts46=True, strict=True), '舛.ٽ𞤴ڻ')
+ self.assertEqual(idna.encode('舛.ٽ𞤴ڻ', uts46=True, strict=True), b'xn--8c1a.xn--2ib8jn539l')
+
+ def test_uts46_5685(self):
+ self.assertEqual(idna.decode('舛.ٽ𞤒ڻ', uts46=True, strict=True), '舛.ٽ𞤴ڻ')
+ self.assertEqual(idna.encode('舛.ٽ𞤒ڻ', uts46=True, strict=True), b'xn--8c1a.xn--2ib8jn539l')
+
+ def test_uts46_5686(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8c1a.xn--2ib8jv19e6413b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8c1a.xn--2ib8jv19e6413b', strict=True)
+
+ def test_uts46_5687(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾇.ٽ𞤒ڻ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾇.ٽ𞤒ڻ\u200d', strict=True)
+
+ def test_uts46_5688(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4\U000ad1a5。ݧ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4\U000ad1a5。ݧ≯', strict=True)
+
+ def test_uts46_5689(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4\U000ad1a5。ݧ≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4\U000ad1a5。ݧ≯', strict=True)
+
+ def test_uts46_5690(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-xn17i.xn--rpb459k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-xn17i.xn--rpb459k', strict=True)
+
+ def test_uts46_5691(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003250f\U0001eae8\U0007afc2硲.ڭ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003250f\U0001eae8\U0007afc2硲.ڭ', strict=True)
+
+ def test_uts46_5692(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003250f\U0001eae8\U0007afc2硲.ڭ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003250f\U0001eae8\U0007afc2硲.ڭ', strict=True)
+
+ def test_uts46_5693(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lcz1610fn78gk609a.xn--gkb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lcz1610fn78gk609a.xn--gkb', strict=True)
+
+ def test_uts46_5694(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.︈٦Ⴆ℮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.︈٦Ⴆ℮', strict=True)
+
+ def test_uts46_5695(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c.︈٦ⴆ℮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c.︈٦ⴆ℮', strict=True)
+
+ def test_uts46_5696(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--fib628k4li', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--fib628k4li', strict=True)
+
+ def test_uts46_5697(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--fib628k4li', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--fib628k4li', strict=True)
+
+ def test_uts46_5698(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--fib263c0yn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--fib263c0yn', strict=True)
+
+ def test_uts46_5699(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--fib263c0yn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--fib263c0yn', strict=True)
+
+ def test_uts46_5700(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڣ.്\u200dϞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڣ.്\u200dϞ', strict=True)
+
+ def test_uts46_5701(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڣ.്\u200dϞ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڣ.്\u200dϞ', strict=True)
+
+ def test_uts46_5702(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڣ.്\u200dϟ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڣ.്\u200dϟ', strict=True)
+
+ def test_uts46_5703(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5jb.xn--xya149b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5jb.xn--xya149b', strict=True)
+
+ def test_uts46_5704(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--5jb.xn--xya149bpvp', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--5jb.xn--xya149bpvp', strict=True)
+
+ def test_uts46_5705(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڣ.്\u200dϟ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڣ.്\u200dϟ', strict=True)
+
+ def test_uts46_5706(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𞸇𑘿。أ𐮂-腍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𞸇𑘿。أ𐮂-腍', strict=True)
+
+ def test_uts46_5707(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𞸇𑘿。أ𐮂-腍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𞸇𑘿。أ𐮂-腍', strict=True)
+
+ def test_uts46_5708(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cح𑘿。أ𐮂-腍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cح𑘿。أ𐮂-腍', strict=True)
+
+ def test_uts46_5709(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200cح𑘿。أ𐮂-腍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200cح𑘿。أ𐮂-腍', strict=True)
+
+ def test_uts46_5710(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--sgb4140l.xn----qmc5075grs9e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--sgb4140l.xn----qmc5075grs9e', strict=True)
+
+ def test_uts46_5711(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--sgb953kmi8o.xn----qmc5075grs9e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--sgb953kmi8o.xn----qmc5075grs9e', strict=True)
+
+ def test_uts46_5712(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000addd9٫纛。𝟛\U0006d907🄅', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000addd9٫纛。𝟛\U0006d907🄅', strict=True)
+
+ def test_uts46_5713(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000addd9٫纛。3\U0006d9074,', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000addd9٫纛。3\U0006d9074,', strict=True)
+
+ def test_uts46_5714(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----vqc8143g0tt4i.xn--34,-8787l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----vqc8143g0tt4i.xn--34,-8787l', strict=True)
+
+ def test_uts46_5715(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----vqc8143g0tt4i.xn--3-os1sn476y', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----vqc8143g0tt4i.xn--3-os1sn476y', strict=True)
+
+ def test_uts46_5716(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🔔.Ⴂߌ்𐋮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🔔.Ⴂߌ்𐋮', strict=True)
+
+ def test_uts46_5717(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🔔.Ⴂߌ்𐋮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🔔.Ⴂߌ்𐋮', strict=True)
+
+ def test_uts46_5718(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🔔.ⴂߌ்𐋮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🔔.ⴂߌ்𐋮', strict=True)
+
+ def test_uts46_5719(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nv8h.xn--nsb46rvz1b222p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nv8h.xn--nsb46rvz1b222p', strict=True)
+
+ def test_uts46_5720(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🔔.ⴂߌ்𐋮', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🔔.ⴂߌ்𐋮', strict=True)
+
+ def test_uts46_5721(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nv8h.xn--nsb46r83e8112a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nv8h.xn--nsb46r83e8112a', strict=True)
+
+ def test_uts46_5722(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '軥ڳ.-𖬵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '軥ڳ.-𖬵', strict=True)
+
+ def test_uts46_5723(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mkb5480e.xn----6u5m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mkb5480e.xn----6u5m', strict=True)
+
+ def test_uts46_5724(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹤ߊڶ.𐨂-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹤ߊڶ.𐨂-', strict=True)
+
+ def test_uts46_5725(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pkb56cn614d.xn----974i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pkb56cn614d.xn----974i', strict=True)
+
+ def test_uts46_5726(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-󠅱0。៏᷽톇십', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-󠅱0。៏᷽톇십', strict=True)
+
+ def test_uts46_5727(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-󠅱0。៏᷽톇십', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-󠅱0。៏᷽톇십', strict=True)
+
+ def test_uts46_5728(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-󠅱0。៏᷽톇십', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-󠅱0。៏᷽톇십', strict=True)
+
+ def test_uts46_5729(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-󠅱0。៏᷽톇십', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-󠅱0。៏᷽톇십', strict=True)
+
+ def test_uts46_5730(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-0.xn--r4e872ah77nghm', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-0.xn--r4e872ah77nghm', strict=True)
+
+ def test_uts46_5731(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡰ︒--。៌靈𐹢\U00058cee', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡰ︒--。៌靈𐹢\U00058cee', strict=True)
+
+ def test_uts46_5732(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡰ。--。៌靈𐹢\U00058cee', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡰ。--。៌靈𐹢\U00058cee', strict=True)
+
+ def test_uts46_5733(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--md9a.--.xn--o4e6836dpxudz0v1c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--md9a.--.xn--o4e6836dpxudz0v1c', strict=True)
+
+ def test_uts46_5734(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn-----bk9hu24z.xn--o4e6836dpxudz0v1c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn-----bk9hu24z.xn--o4e6836dpxudz0v1c', strict=True)
+
+ def test_uts46_5735(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟႿႵრ。୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟႿႵრ。୍', strict=True)
+
+ def test_uts46_5736(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟႿႵრ。୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟႿႵრ。୍', strict=True)
+
+ def test_uts46_5737(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟⴟⴕრ。୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟⴟⴕრ。୍', strict=True)
+
+ def test_uts46_5738(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟႿႵᲠ。୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟႿႵᲠ。୍', strict=True)
+
+ def test_uts46_5739(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1od555l3a.xn--9ic', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1od555l3a.xn--9ic', strict=True)
+
+ def test_uts46_5740(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟⴟⴕრ。୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟⴟⴕრ。୍', strict=True)
+
+ def test_uts46_5741(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟႿႵᲠ。୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟႿႵᲠ。୍', strict=True)
+
+ def test_uts46_5742(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tndt4hvw.xn--9ic', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tndt4hvw.xn--9ic', strict=True)
+
+ def test_uts46_5743(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1od7wz74eeb.xn--9ic', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1od7wz74eeb.xn--9ic', strict=True)
+
+ def test_uts46_5744(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟႿⴕრ。୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟႿⴕრ。୍', strict=True)
+
+ def test_uts46_5745(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3nd0etsm92g.xn--9ic', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3nd0etsm92g.xn--9ic', strict=True)
+
+ def test_uts46_5746(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᅟႿⴕრ。୍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᅟႿⴕრ。୍', strict=True)
+
+ def test_uts46_5747(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄃𐹠.٤󠅇', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄃𐹠.٤󠅇', strict=True)
+
+ def test_uts46_5748(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '2,𐹠.٤󠅇', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '2,𐹠.٤󠅇', strict=True)
+
+ def test_uts46_5749(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2,-5g3o.xn--dib', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2,-5g3o.xn--dib', strict=True)
+
+ def test_uts46_5750(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7n0d1189a.xn--dib', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7n0d1189a.xn--dib', strict=True)
+
+ def test_uts46_5751(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000bbcbc\u200cﱛ.ߒࡈ᯳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000bbcbc\u200cﱛ.ߒࡈ᯳', strict=True)
+
+ def test_uts46_5752(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000bbcbc\u200cذٰ.ߒࡈ᯳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000bbcbc\u200cذٰ.ߒࡈ᯳', strict=True)
+
+ def test_uts46_5753(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vgb2kp1223g.xn--tsb0vz43c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vgb2kp1223g.xn--tsb0vz43c', strict=True)
+
+ def test_uts46_5754(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vgb2kq00fl213y.xn--tsb0vz43c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vgb2kq00fl213y.xn--tsb0vz43c', strict=True)
+
+ def test_uts46_5755(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200d\U0001ed6a\u200c。ᡘ𑲭឵', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200d\U0001ed6a\u200c。ᡘ𑲭឵', strict=True)
+
+ def test_uts46_5756(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l96h.xn--o8e4044k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l96h.xn--o8e4044k', strict=True)
+
+ def test_uts46_5757(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugba05538b.xn--o8e4044k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugba05538b.xn--o8e4044k', strict=True)
+
+ def test_uts46_5758(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--l96h.xn--03e93aq365d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--l96h.xn--03e93aq365d', strict=True)
+
+ def test_uts46_5759(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugba05538b.xn--03e93aq365d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugba05538b.xn--03e93aq365d', strict=True)
+
+ def test_uts46_5760(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001edfb。⚄\U00057447𑁿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001edfb。⚄\U00057447𑁿', strict=True)
+
+ def test_uts46_5761(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qe7h.xn--c7h2966f7so4a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qe7h.xn--c7h2966f7so4a', strict=True)
+
+ def test_uts46_5762(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꣄≠.𞠨٧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꣄≠.𞠨٧', strict=True)
+
+ def test_uts46_5763(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꣄≠.𞠨٧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꣄≠.𞠨٧', strict=True)
+
+ def test_uts46_5764(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꣄≠.𞠨٧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꣄≠.𞠨٧', strict=True)
+
+ def test_uts46_5765(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꣄≠.𞠨٧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꣄≠.𞠨٧', strict=True)
+
+ def test_uts46_5766(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1chy504c.xn--gib1777v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1chy504c.xn--gib1777v', strict=True)
+
+ def test_uts46_5767(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟛꣄𝆪。꣪-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟛꣄𝆪。꣪-', strict=True)
+
+ def test_uts46_5768(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟛꣄𝆪。꣪-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟛꣄𝆪。꣪-', strict=True)
+
+ def test_uts46_5769(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '3꣄𝆪。꣪-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '3꣄𝆪。꣪-', strict=True)
+
+ def test_uts46_5770(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3-sl4eu679e.xn----xn4e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3-sl4eu679e.xn----xn4e', strict=True)
+
+ def test_uts46_5771(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݟᮢ်Ⴇ.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݟᮢ်Ⴇ.e', strict=True)
+
+ def test_uts46_5772(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݟᮢ်ⴇ.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݟᮢ်ⴇ.e', strict=True)
+
+ def test_uts46_5773(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ݟᮢ်Ⴇ.E', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ݟᮢ်Ⴇ.E', strict=True)
+
+ def test_uts46_5774(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jpb846bjzj7pr.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jpb846bjzj7pr.e', strict=True)
+
+ def test_uts46_5775(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jpb846bmjw88a.e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jpb846bmjw88a.e', strict=True)
+
+ def test_uts46_5776(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᄹ。໊\U000a0be4󠄞', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᄹ。໊\U000a0be4󠄞', strict=True)
+
+ def test_uts46_5777(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᄹ。໊\U000a0be4󠄞', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᄹ。໊\U000a0be4󠄞', strict=True)
+
+ def test_uts46_5778(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lrd.xn--s8c05302k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lrd.xn--s8c05302k', strict=True)
+
+ def test_uts46_5779(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴆ\U000bb8a9.󠆡︉𞤍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴆ\U000bb8a9.󠆡︉𞤍', strict=True)
+
+ def test_uts46_5780(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴆ\U000bb8a9.󠆡︉𞤍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴆ\U000bb8a9.󠆡︉𞤍', strict=True)
+
+ def test_uts46_5781(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴆ\U000bb8a9.󠆡︉𞤯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴆ\U000bb8a9.󠆡︉𞤯', strict=True)
+
+ def test_uts46_5782(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xkjw3965g.xn--ne6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xkjw3965g.xn--ne6h', strict=True)
+
+ def test_uts46_5783(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴆ\U000bb8a9.󠆡︉𞤯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴆ\U000bb8a9.󠆡︉𞤯', strict=True)
+
+ def test_uts46_5784(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--end82983m.xn--ne6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--end82983m.xn--ne6h', strict=True)
+
+ def test_uts46_5785(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴆ\U000bb8a9.󠆡︉𞤍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴆ\U000bb8a9.󠆡︉𞤍', strict=True)
+
+ def test_uts46_5786(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴆ\U000bb8a9.󠆡︉𞤍', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴆ\U000bb8a9.󠆡︉𞤍', strict=True)
+
+ def test_uts46_5787(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ßࠋ︒ٻ.帼F∬\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ßࠋ︒ٻ.帼F∬\u200c', strict=True)
+
+ def test_uts46_5788(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ßࠋ。ٻ.帼F∫∫\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ßࠋ。ٻ.帼F∫∫\u200c', strict=True)
+
+ def test_uts46_5789(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ßࠋ。ٻ.帼f∫∫\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ßࠋ。ٻ.帼f∫∫\u200c', strict=True)
+
+ def test_uts46_5790(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SSࠋ。ٻ.帼F∫∫\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SSࠋ。ٻ.帼F∫∫\u200c', strict=True)
+
+ def test_uts46_5791(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ssࠋ。ٻ.帼f∫∫\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ssࠋ。ٻ.帼f∫∫\u200c', strict=True)
+
+ def test_uts46_5792(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ssࠋ。ٻ.帼F∫∫\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ssࠋ。ٻ.帼F∫∫\u200c', strict=True)
+
+ def test_uts46_5793(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-uze.xn--0ib.xn--f-tcoa9162d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-uze.xn--0ib.xn--f-tcoa9162d', strict=True)
+
+ def test_uts46_5794(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-uze.xn--0ib.xn--f-sgn48ga6997e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-uze.xn--0ib.xn--f-sgn48ga6997e', strict=True)
+
+ def test_uts46_5795(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca687a.xn--0ib.xn--f-sgn48ga6997e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca687a.xn--0ib.xn--f-sgn48ga6997e', strict=True)
+
+ def test_uts46_5796(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ßࠋ︒ٻ.帼f∬\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ßࠋ︒ٻ.帼f∬\u200c', strict=True)
+
+ def test_uts46_5797(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SSࠋ︒ٻ.帼F∬\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SSࠋ︒ٻ.帼F∬\u200c', strict=True)
+
+ def test_uts46_5798(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ssࠋ︒ٻ.帼f∬\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ssࠋ︒ٻ.帼f∬\u200c', strict=True)
+
+ def test_uts46_5799(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ssࠋ︒ٻ.帼F∬\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ssࠋ︒ٻ.帼F∬\u200c', strict=True)
+
+ def test_uts46_5800(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-k0d31nu121d.xn--f-tcoa9162d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-k0d31nu121d.xn--f-tcoa9162d', strict=True)
+
+ def test_uts46_5801(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-k0d31nu121d.xn--f-sgn48ga6997e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-k0d31nu121d.xn--f-sgn48ga6997e', strict=True)
+
+ def test_uts46_5802(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca68zj8ac956c.xn--f-sgn48ga6997e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca68zj8ac956c.xn--f-sgn48ga6997e', strict=True)
+
+ def test_uts46_5803(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d8a97。𐹴\U0001ea0c\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d8a97。𐹴\U0001ea0c\u200d', strict=True)
+
+ def test_uts46_5804(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000d8a97。𐹴\U0001ea0c\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000d8a97。𐹴\U0001ea0c\u200d', strict=True)
+
+ def test_uts46_5805(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8l83e.xn--so0dw168a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8l83e.xn--so0dw168a', strict=True)
+
+ def test_uts46_5806(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8l83e.xn--1ug4105gsxwf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8l83e.xn--1ug4105gsxwf', strict=True)
+
+ def test_uts46_5807(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000576e8.\U000857e2𝟨꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000576e8.\U000857e2𝟨꣄', strict=True)
+
+ def test_uts46_5808(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000576e8.\U000857e26꣄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000576e8.\U000857e26꣄', strict=True)
+
+ def test_uts46_5809(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mi60a.xn--6-sl4es8023c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mi60a.xn--6-sl4es8023c', strict=True)
+
+ def test_uts46_5810(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪲ﶎ。-۹ႱႨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪲ﶎ。-۹ႱႨ', strict=True)
+
+ def test_uts46_5811(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪲مخج。-۹ႱႨ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪲مخج。-۹ႱႨ', strict=True)
+
+ def test_uts46_5812(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪲مخج。-۹ⴑⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪲مخج。-۹ⴑⴈ', strict=True)
+
+ def test_uts46_5813(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rgbd2e831i.xn----zyc3430a9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rgbd2e831i.xn----zyc3430a9a', strict=True)
+
+ def test_uts46_5814(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪲ﶎ。-۹ⴑⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪲ﶎ。-۹ⴑⴈ', strict=True)
+
+ def test_uts46_5815(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rgbd2e831i.xn----zyc155e9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rgbd2e831i.xn----zyc155e9a', strict=True)
+
+ def test_uts46_5816(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪲مخج。-۹Ⴑⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪲مخج。-۹Ⴑⴈ', strict=True)
+
+ def test_uts46_5817(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rgbd2e831i.xn----zyc875efr3a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rgbd2e831i.xn----zyc875efr3a', strict=True)
+
+ def test_uts46_5818(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᪲ﶎ。-۹Ⴑⴈ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᪲ﶎ。-۹Ⴑⴈ', strict=True)
+
+ def test_uts46_5819(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤤.-ࢣ︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤤.-ࢣ︒', strict=True)
+
+ def test_uts46_5820(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤤.-ࢣ。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤤.-ࢣ。', strict=True)
+
+ def test_uts46_5821(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤂.-ࢣ。', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤂.-ࢣ。', strict=True)
+
+ def test_uts46_5822(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ce6h.xn----cod.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ce6h.xn----cod.', strict=True)
+
+ def test_uts46_5823(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤂.-ࢣ︒', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤂.-ࢣ︒', strict=True)
+
+ def test_uts46_5824(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ce6h.xn----cod7069p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ce6h.xn----cod7069p', strict=True)
+
+ def test_uts46_5825(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𐺨.࡙--', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𐺨.࡙--', strict=True)
+
+ def test_uts46_5826(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9p0d.xn-----h6e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9p0d.xn-----h6e', strict=True)
+
+ def test_uts46_5827(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug7905g.xn-----h6e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug7905g.xn-----h6e', strict=True)
+
+ def test_uts46_5828(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋸\U000ee60bჂ.Ⴁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋸\U000ee60bჂ.Ⴁ', strict=True)
+
+ def test_uts46_5829(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋸\U000ee60bⴢ.ⴁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋸\U000ee60bⴢ.ⴁ', strict=True)
+
+ def test_uts46_5830(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋸\U000ee60bჂ.ⴁ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋸\U000ee60bჂ.ⴁ', strict=True)
+
+ def test_uts46_5831(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qlj1559dr224h.xn--skj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qlj1559dr224h.xn--skj', strict=True)
+
+ def test_uts46_5832(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6nd5215jr2u0h.xn--skj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6nd5215jr2u0h.xn--skj', strict=True)
+
+ def test_uts46_5833(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6nd5215jr2u0h.xn--8md', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6nd5215jr2u0h.xn--8md', strict=True)
+
+ def test_uts46_5834(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0005747f꠆₄\U000a9786。\U00032a67\U000e04b9ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0005747f꠆₄\U000a9786。\U00032a67\U000e04b9ς', strict=True)
+
+ def test_uts46_5835(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0005747f꠆4\U000a9786。\U00032a67\U000e04b9ς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0005747f꠆4\U000a9786。\U00032a67\U000e04b9ς', strict=True)
+
+ def test_uts46_5836(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0005747f꠆4\U000a9786。\U00032a67\U000e04b9Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0005747f꠆4\U000a9786。\U00032a67\U000e04b9Σ', strict=True)
+
+ def test_uts46_5837(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0005747f꠆4\U000a9786。\U00032a67\U000e04b9σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0005747f꠆4\U000a9786。\U00032a67\U000e04b9σ', strict=True)
+
+ def test_uts46_5838(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-w93ej7463a9io5a.xn--4xa31142bk3f0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-w93ej7463a9io5a.xn--4xa31142bk3f0d', strict=True)
+
+ def test_uts46_5839(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-w93ej7463a9io5a.xn--3xa51142bk3f0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-w93ej7463a9io5a.xn--3xa51142bk3f0d', strict=True)
+
+ def test_uts46_5840(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0005747f꠆₄\U000a9786。\U00032a67\U000e04b9Σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0005747f꠆₄\U000a9786。\U00032a67\U000e04b9Σ', strict=True)
+
+ def test_uts46_5841(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0005747f꠆₄\U000a9786。\U00032a67\U000e04b9σ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0005747f꠆₄\U000a9786。\U00032a67\U000e04b9σ', strict=True)
+
+ def test_uts46_5842(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆀ܣ。ᷴݵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆀ܣ。ᷴݵ', strict=True)
+
+ def test_uts46_5843(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tnb.xn--5pb136i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tnb.xn--5pb136i', strict=True)
+
+ def test_uts46_5844(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹱ࡂ𝪨。𬼖Ⴑ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹱ࡂ𝪨。𬼖Ⴑ\u200d', strict=True)
+
+ def test_uts46_5845(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹱ࡂ𝪨。𬼖Ⴑ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹱ࡂ𝪨。𬼖Ⴑ\u200d', strict=True)
+
+ def test_uts46_5846(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹱ࡂ𝪨。𬼖ⴑ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹱ࡂ𝪨。𬼖ⴑ\u200d', strict=True)
+
+ def test_uts46_5847(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0vb1535kdb6e.xn--8kjz186s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0vb1535kdb6e.xn--8kjz186s', strict=True)
+
+ def test_uts46_5848(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0vb1535kdb6e.xn--1ug742c5714c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0vb1535kdb6e.xn--1ug742c5714c', strict=True)
+
+ def test_uts46_5849(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹱ࡂ𝪨。𬼖ⴑ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹱ࡂ𝪨。𬼖ⴑ\u200d', strict=True)
+
+ def test_uts46_5850(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0vb1535kdb6e.xn--pnd93707a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0vb1535kdb6e.xn--pnd93707a', strict=True)
+
+ def test_uts46_5851(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0vb1535kdb6e.xn--pnd879eqy33c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0vb1535kdb6e.xn--pnd879eqy33c', strict=True)
+
+ def test_uts46_5852(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᜔𐭪\U000e0658\u200d。-𐹴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᜔𐭪\U000e0658\u200d。-𐹴', strict=True)
+
+ def test_uts46_5853(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᜔𐭪\U000e0658\u200d。-𐹴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᜔𐭪\U000e0658\u200d。-𐹴', strict=True)
+
+ def test_uts46_5854(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fze4126jujt0g.xn----c36i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fze4126jujt0g.xn----c36i', strict=True)
+
+ def test_uts46_5855(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fze807bso0spy14i.xn----c36i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fze807bso0spy14i.xn----c36i', strict=True)
+
+ def test_uts46_5856(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003e8ac。ܩ︒쯙𝟧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003e8ac。ܩ︒쯙𝟧', strict=True)
+
+ def test_uts46_5857(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003e8ac。ܩ︒쯙𝟧', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003e8ac。ܩ︒쯙𝟧', strict=True)
+
+ def test_uts46_5858(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003e8ac。ܩ。쯙5', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003e8ac。ܩ。쯙5', strict=True)
+
+ def test_uts46_5859(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0003e8ac。ܩ。쯙5', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0003e8ac。ܩ。쯙5', strict=True)
+
+ def test_uts46_5860(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t92s.xn--znb.xn--5-y88f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t92s.xn--znb.xn--5-y88f', strict=True)
+
+ def test_uts46_5861(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--t92s.xn--5-p1c0712mm8rb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--t92s.xn--5-p1c0712mm8rb', strict=True)
+
+ def test_uts46_5862(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤟-。ݢ≮뻐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤟-。ݢ≮뻐', strict=True)
+
+ def test_uts46_5863(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞤟-。ݢ≮뻐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞤟-。ݢ≮뻐', strict=True)
+
+ def test_uts46_5864(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞥁-。ݢ≮뻐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞥁-。ݢ≮뻐', strict=True)
+
+ def test_uts46_5865(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞥁-。ݢ≮뻐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞥁-。ݢ≮뻐', strict=True)
+
+ def test_uts46_5866(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----1j8r.xn--mpb269krv4i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----1j8r.xn--mpb269krv4i', strict=True)
+
+ def test_uts46_5867(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001e969-\U0008aae0.ࢴ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001e969-\U0008aae0.ࢴ≠', strict=True)
+
+ def test_uts46_5868(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001e969-\U0008aae0.ࢴ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001e969-\U0008aae0.ࢴ≠', strict=True)
+
+ def test_uts46_5869(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001e969-\U0008aae0.ࢴ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001e969-\U0008aae0.ࢴ≠', strict=True)
+
+ def test_uts46_5870(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001e969-\U0008aae0.ࢴ≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001e969-\U0008aae0.ࢴ≠', strict=True)
+
+ def test_uts46_5871(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----cm8rp3609a.xn--9yb852k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----cm8rp3609a.xn--9yb852k', strict=True)
+
+ def test_uts46_5872(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fςႼ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fςႼ.١', strict=True)
+
+ def test_uts46_5873(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fςႼ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fςႼ.١', strict=True)
+
+ def test_uts46_5874(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fςⴜ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fςⴜ.١', strict=True)
+
+ def test_uts46_5875(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fΣႼ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fΣႼ.١', strict=True)
+
+ def test_uts46_5876(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fσⴜ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fσⴜ.١', strict=True)
+
+ def test_uts46_5877(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fΣⴜ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fΣⴜ.١', strict=True)
+
+ def test_uts46_5878(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----0mb9682aov12f.xn--9hb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----0mb9682aov12f.xn--9hb', strict=True)
+
+ def test_uts46_5879(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ymb2782aov12f.xn--9hb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ymb2782aov12f.xn--9hb', strict=True)
+
+ def test_uts46_5880(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fςⴜ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fςⴜ.١', strict=True)
+
+ def test_uts46_5881(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fΣႼ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fΣႼ.١', strict=True)
+
+ def test_uts46_5882(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fσⴜ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fσⴜ.١', strict=True)
+
+ def test_uts46_5883(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U0004508fΣⴜ.١', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U0004508fΣⴜ.١', strict=True)
+
+ def test_uts46_5884(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----0mb770hun11i.xn--9hb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----0mb770hun11i.xn--9hb', strict=True)
+
+ def test_uts46_5885(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ymb080hun11i.xn--9hb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ymb080hun11i.xn--9hb', strict=True)
+
+ def test_uts46_5886(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '៊.\u200d𝟮𑀿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '៊.\u200d𝟮𑀿', strict=True)
+
+ def test_uts46_5887(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '៊.\u200d2𑀿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '៊.\u200d2𑀿', strict=True)
+
+ def test_uts46_5888(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--m4e.xn--2-ku7i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--m4e.xn--2-ku7i', strict=True)
+
+ def test_uts46_5889(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--m4e.xn--2-tgnv469h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--m4e.xn--2-tgnv469h', strict=True)
+
+ def test_uts46_5890(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𝟖。᩠𐫓\U0009f1d1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𝟖。᩠𐫓\U0009f1d1', strict=True)
+
+ def test_uts46_5891(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯𝟖。᩠𐫓\U0009f1d1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯𝟖。᩠𐫓\U0009f1d1', strict=True)
+
+ def test_uts46_5892(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯8。᩠𐫓\U0009f1d1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯8。᩠𐫓\U0009f1d1', strict=True)
+
+ def test_uts46_5893(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≯8。᩠𐫓\U0009f1d1', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≯8。᩠𐫓\U0009f1d1', strict=True)
+
+ def test_uts46_5894(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-ogo.xn--jof5303iv1z5d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-ogo.xn--jof5303iv1z5d', strict=True)
+
+ def test_uts46_5895(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑲫Ↄ٤。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑲫Ↄ٤。\u200c', strict=True)
+
+ def test_uts46_5896(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑲫Ↄ٤。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑲫Ↄ٤。\u200c', strict=True)
+
+ def test_uts46_5897(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑲫ↄ٤。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑲫ↄ٤。\u200c', strict=True)
+
+ def test_uts46_5898(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dib100l8x1p.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dib100l8x1p.', strict=True)
+
+ def test_uts46_5899(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dib100l8x1p.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dib100l8x1p.xn--0ug', strict=True)
+
+ def test_uts46_5900(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑲫ↄ٤。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑲫ↄ٤。\u200c', strict=True)
+
+ def test_uts46_5901(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dib999kcy1p.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dib999kcy1p.', strict=True)
+
+ def test_uts46_5902(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--dib999kcy1p.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--dib999kcy1p.xn--0ug', strict=True)
+
+ def test_uts46_5903(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ఀ𝟵\u200dﲝ.\u200dݐ⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ఀ𝟵\u200dﲝ.\u200dݐ⒈', strict=True)
+
+ def test_uts46_5904(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ఀ9\u200dبح.\u200dݐ1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ఀ9\u200dبح.\u200dݐ1.', strict=True)
+
+ def test_uts46_5905(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-1mcp570d.xn--1-x3c.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-1mcp570d.xn--1-x3c.', strict=True)
+
+ def test_uts46_5906(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-1mcp570dl51a.xn--1-x3c211q.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-1mcp570dl51a.xn--1-x3c211q.', strict=True)
+
+ def test_uts46_5907(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-1mcp570d.xn--3ob470m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-1mcp570d.xn--3ob470m', strict=True)
+
+ def test_uts46_5908(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-1mcp570dl51a.xn--3ob977jmfd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-1mcp570dl51a.xn--3ob977jmfd', strict=True)
+
+ def test_uts46_5909(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꫶。嬶ß葽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꫶。嬶ß葽', strict=True)
+
+ def test_uts46_5910(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꫶。嬶SS葽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꫶。嬶SS葽', strict=True)
+
+ def test_uts46_5911(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꫶。嬶ss葽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꫶。嬶ss葽', strict=True)
+
+ def test_uts46_5912(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '꫶。嬶Ss葽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '꫶。嬶Ss葽', strict=True)
+
+ def test_uts46_5913(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2v9a.xn--ss-q40dp97m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2v9a.xn--ss-q40dp97m', strict=True)
+
+ def test_uts46_5914(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2v9a.xn--zca7637b14za', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2v9a.xn--zca7637b14za', strict=True)
+
+ def test_uts46_5915(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑚶⒈。\U0005eee1𐹺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑚶⒈。\U0005eee1𐹺', strict=True)
+
+ def test_uts46_5916(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑚶1.。\U0005eee1𐹺', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑚶1.。\U0005eee1𐹺', strict=True)
+
+ def test_uts46_5917(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-3j0j..xn--yo0d5914s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-3j0j..xn--yo0d5914s', strict=True)
+
+ def test_uts46_5918(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tshz969f.xn--yo0d5914s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tshz969f.xn--yo0d5914s', strict=True)
+
+ def test_uts46_5919(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑜤︒≮.\U0005a57dט\U0001efa9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑜤︒≮.\U0005a57dט\U0001efa9', strict=True)
+
+ def test_uts46_5920(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑜤︒≮.\U0005a57dט\U0001efa9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑜤︒≮.\U0005a57dט\U0001efa9', strict=True)
+
+ def test_uts46_5921(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑜤。≮.\U0005a57dט\U0001efa9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑜤。≮.\U0005a57dט\U0001efa9', strict=True)
+
+ def test_uts46_5922(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑜤。≮.\U0005a57dט\U0001efa9', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑜤。≮.\U0005a57dט\U0001efa9', strict=True)
+
+ def test_uts46_5923(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ci2d.xn--gdh.xn--deb0091w5q9u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ci2d.xn--gdh.xn--deb0091w5q9u', strict=True)
+
+ def test_uts46_5924(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh5267fdzpa.xn--deb0091w5q9u', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh5267fdzpa.xn--deb0091w5q9u', strict=True)
+
+ def test_uts46_5925(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆋\u0603\U0004f9a4.⇁ς\U0008f2c8\U000ba1e5', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆋\u0603\U0004f9a4.⇁ς\U0008f2c8\U000ba1e5', strict=True)
+
+ def test_uts46_5926(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆋\u0603\U0004f9a4.⇁Σ\U0008f2c8\U000ba1e5', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆋\u0603\U0004f9a4.⇁Σ\U0008f2c8\U000ba1e5', strict=True)
+
+ def test_uts46_5927(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠆋\u0603\U0004f9a4.⇁σ\U0008f2c8\U000ba1e5', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠆋\u0603\U0004f9a4.⇁σ\U0008f2c8\U000ba1e5', strict=True)
+
+ def test_uts46_5928(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lfb04106d.xn--4xa964mxv16m8moq', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lfb04106d.xn--4xa964mxv16m8moq', strict=True)
+
+ def test_uts46_5929(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--lfb04106d.xn--3xa174mxv16m8moq', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--lfb04106d.xn--3xa174mxv16m8moq', strict=True)
+
+ def test_uts46_5930(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+
+ def test_uts46_5931(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+
+ def test_uts46_5932(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+
+ def test_uts46_5933(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+
+ def test_uts46_5934(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa2260lk3b8z15g.xn--tw9ct349a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa2260lk3b8z15g.xn--tw9ct349a', strict=True)
+
+ def test_uts46_5935(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa2260lk3b8z15g.xn--0ug4653g2xzf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa2260lk3b8z15g.xn--0ug4653g2xzf', strict=True)
+
+ def test_uts46_5936(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa4260lk3b8z15g.xn--0ug4653g2xzf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa4260lk3b8z15g.xn--0ug4653g2xzf', strict=True)
+
+ def test_uts46_5937(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+
+ def test_uts46_5938(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ𑐽\U00035888𑜫。\U0001eb29\u200c𐫄', strict=True)
+
+ def test_uts46_5939(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000b53fd。-ﱌݛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000b53fd。-ﱌݛ', strict=True)
+
+ def test_uts46_5940(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U000b53fd。-نحݛ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U000b53fd。-نحݛ', strict=True)
+
+ def test_uts46_5941(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----o452j.xn----cnc8e38c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----o452j.xn----cnc8e38c', strict=True)
+
+ def test_uts46_5942(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⺢\U00087e85𝟤。\u200d🚷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⺢\U00087e85𝟤。\u200d🚷', strict=True)
+
+ def test_uts46_5943(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⺢\U00087e852。\u200d🚷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⺢\U00087e852。\u200d🚷', strict=True)
+
+ def test_uts46_5944(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2-4jtr4282f.xn--m78h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2-4jtr4282f.xn--m78h', strict=True)
+
+ def test_uts46_5945(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2-4jtr4282f.xn--1ugz946p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2-4jtr4282f.xn--1ugz946p', strict=True)
+
+ def test_uts46_5946(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0cf8\u200dⷾ𐹲。\U000a4436', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0cf8\u200dⷾ𐹲。\U000a4436', strict=True)
+
+ def test_uts46_5947(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u0cf8\u200dⷾ𐹲。\U000a4436', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u0cf8\u200dⷾ𐹲。\U000a4436', strict=True)
+
+ def test_uts46_5948(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hvc220of37m.xn--3e36c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hvc220of37m.xn--3e36c', strict=True)
+
+ def test_uts46_5949(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hvc488g69j402t.xn--3e36c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hvc488g69j402t.xn--3e36c', strict=True)
+
+ def test_uts46_5950(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹢.Ⴍ₉⁸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹢.Ⴍ₉⁸', strict=True)
+
+ def test_uts46_5951(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹢.Ⴍ98', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹢.Ⴍ98', strict=True)
+
+ def test_uts46_5952(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹢.ⴍ98', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹢.ⴍ98', strict=True)
+
+ def test_uts46_5953(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9n0d.xn--98-u61a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9n0d.xn--98-u61a', strict=True)
+
+ def test_uts46_5954(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹢.ⴍ₉⁸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹢.ⴍ₉⁸', strict=True)
+
+ def test_uts46_5955(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9n0d.xn--98-7ek', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9n0d.xn--98-7ek', strict=True)
+
+ def test_uts46_5956(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。ß\u08e2⒚≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。ß\u08e2⒚≯', strict=True)
+
+ def test_uts46_5957(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。ß\u08e2⒚≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。ß\u08e2⒚≯', strict=True)
+
+ def test_uts46_5958(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。ß\u08e219.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。ß\u08e219.≯', strict=True)
+
+ def test_uts46_5959(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。ß\u08e219.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。ß\u08e219.≯', strict=True)
+
+ def test_uts46_5960(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。SS\u08e219.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。SS\u08e219.≯', strict=True)
+
+ def test_uts46_5961(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。SS\u08e219.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。SS\u08e219.≯', strict=True)
+
+ def test_uts46_5962(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。ss\u08e219.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。ss\u08e219.≯', strict=True)
+
+ def test_uts46_5963(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。ss\u08e219.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。ss\u08e219.≯', strict=True)
+
+ def test_uts46_5964(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。Ss\u08e219.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。Ss\u08e219.≯', strict=True)
+
+ def test_uts46_5965(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。Ss\u08e219.≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。Ss\u08e219.≯', strict=True)
+
+ def test_uts46_5966(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--ss19-w0i.xn--hdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--ss19-w0i.xn--hdh', strict=True)
+
+ def test_uts46_5967(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--ss19-w0i.xn--hdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--ss19-w0i.xn--hdh', strict=True)
+
+ def test_uts46_5968(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--19-fia813f.xn--hdh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--19-fia813f.xn--hdh', strict=True)
+
+ def test_uts46_5969(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。SS\u08e2⒚≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。SS\u08e2⒚≯', strict=True)
+
+ def test_uts46_5970(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。SS\u08e2⒚≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。SS\u08e2⒚≯', strict=True)
+
+ def test_uts46_5971(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。ss\u08e2⒚≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。ss\u08e2⒚≯', strict=True)
+
+ def test_uts46_5972(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。ss\u08e2⒚≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。ss\u08e2⒚≯', strict=True)
+
+ def test_uts46_5973(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。Ss\u08e2⒚≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。Ss\u08e2⒚≯', strict=True)
+
+ def test_uts46_5974(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c͏。Ss\u08e2⒚≯', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c͏。Ss\u08e2⒚≯', strict=True)
+
+ def test_uts46_5975(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--ss-9if872xjjc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--ss-9if872xjjc', strict=True)
+
+ def test_uts46_5976(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--ss-9if872xjjc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--ss-9if872xjjc', strict=True)
+
+ def test_uts46_5977(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug.xn--zca612bx9vo5b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug.xn--zca612bx9vo5b', strict=True)
+
+ def test_uts46_5978(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U0001e94dᡌ.𣃔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U0001e94dᡌ.𣃔', strict=True)
+
+ def test_uts46_5979(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c\U0001e94dᡌ.𣃔', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c\U0001e94dᡌ.𣃔', strict=True)
+
+ def test_uts46_5980(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--c8e5919u.xn--od1j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--c8e5919u.xn--od1j', strict=True)
+
+ def test_uts46_5981(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--c8e180bqz13b.xn--od1j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--c8e180bqz13b.xn--od1j', strict=True)
+
+ def test_uts46_5982(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߐ\U0009cb1d-\U000618ac。ྠႻ\U0001edcf𝆬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߐ\U0009cb1d-\U000618ac。ྠႻ\U0001edcf𝆬', strict=True)
+
+ def test_uts46_5983(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ߐ\U0009cb1d-\U000618ac。ྠⴛ\U0001edcf𝆬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ߐ\U0009cb1d-\U000618ac。ྠⴛ\U0001edcf𝆬', strict=True)
+
+ def test_uts46_5984(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----8bd11730jefvw.xn--wfd802mpm20agsxa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----8bd11730jefvw.xn--wfd802mpm20agsxa', strict=True)
+
+ def test_uts46_5985(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----8bd11730jefvw.xn--wfd08cd265hgsxa', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----8bd11730jefvw.xn--wfd08cd265hgsxa', strict=True)
+
+ def test_uts46_5986(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝨥。⫟𑈾', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝨥。⫟𑈾', strict=True)
+
+ def test_uts46_5987(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--n82h.xn--63iw010f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--n82h.xn--63iw010f', strict=True)
+
+ def test_uts46_5988(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾛ݓ.Ⴕ𞠬\u0604\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾛ݓ.Ⴕ𞠬\u0604\u200d', strict=True)
+
+ def test_uts46_5989(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '走ݓ.Ⴕ𞠬\u0604\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '走ݓ.Ⴕ𞠬\u0604\u200d', strict=True)
+
+ def test_uts46_5990(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '走ݓ.ⴕ𞠬\u0604\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '走ݓ.ⴕ𞠬\u0604\u200d', strict=True)
+
+ def test_uts46_5991(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6ob9779d.xn--mfb511rxu80a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6ob9779d.xn--mfb511rxu80a', strict=True)
+
+ def test_uts46_5992(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6ob9779d.xn--mfb444k5gjt754b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6ob9779d.xn--mfb444k5gjt754b', strict=True)
+
+ def test_uts46_5993(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⾛ݓ.ⴕ𞠬\u0604\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⾛ݓ.ⴕ𞠬\u0604\u200d', strict=True)
+
+ def test_uts46_5994(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6ob9779d.xn--mfb785ck569a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6ob9779d.xn--mfb785ck569a', strict=True)
+
+ def test_uts46_5995(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6ob9779d.xn--mfb785czmm0y85b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6ob9779d.xn--mfb785czmm0y85b', strict=True)
+
+ def test_uts46_5996(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ᢗ\u200c🄄.𑜢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ᢗ\u200c🄄.𑜢', strict=True)
+
+ def test_uts46_5997(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ᢗ\u200c3,.𑜢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ᢗ\u200c3,.𑜢', strict=True)
+
+ def test_uts46_5998(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---3,-3eu.xn--9h2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---3,-3eu.xn--9h2d', strict=True)
+
+ def test_uts46_5999(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn---3,-3eu051c.xn--9h2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn---3,-3eu051c.xn--9h2d', strict=True)
+
+ def test_uts46_6000(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----pck1820x.xn--9h2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----pck1820x.xn--9h2d', strict=True)
+
+ def test_uts46_6001(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----pck312bx563c.xn--9h2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----pck312bx563c.xn--9h2d', strict=True)
+
+ def test_uts46_6002(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠\U00010e01\U000393c1\u200c.Ⴚ\U000b3120', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠\U00010e01\U000393c1\u200c.Ⴚ\U000b3120', strict=True)
+
+ def test_uts46_6003(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠\U00010e01\U000393c1\u200c.Ⴚ\U000b3120', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠\U00010e01\U000393c1\u200c.Ⴚ\U000b3120', strict=True)
+
+ def test_uts46_6004(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠\U00010e01\U000393c1\u200c.ⴚ\U000b3120', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠\U00010e01\U000393c1\u200c.ⴚ\U000b3120', strict=True)
+
+ def test_uts46_6005(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠\U00010e01\U000393c1\u200c.ⴚ\U000b3120', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠\U00010e01\U000393c1\u200c.ⴚ\U000b3120', strict=True)
+
+ def test_uts46_6006(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch2293gv3nr.xn--ilj23531g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch2293gv3nr.xn--ilj23531g', strict=True)
+
+ def test_uts46_6007(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug83gn618a21ov.xn--ilj23531g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug83gn618a21ov.xn--ilj23531g', strict=True)
+
+ def test_uts46_6008(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch2293gv3nr.xn--ynd49496l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch2293gv3nr.xn--ynd49496l', strict=True)
+
+ def test_uts46_6009(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ug83gn618a21ov.xn--ynd49496l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ug83gn618a21ov.xn--ynd49496l', strict=True)
+
+ def test_uts46_6010(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٩。󠇀𑇊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٩。󠇀𑇊', strict=True)
+
+ def test_uts46_6011(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٩。󠇀𑇊', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٩。󠇀𑇊', strict=True)
+
+ def test_uts46_6012(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iib.xn--6d1d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iib.xn--6d1d', strict=True)
+
+ def test_uts46_6013(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ႆ\U0001ed80≯⒍。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ႆ\U0001ed80≯⒍。-', strict=True)
+
+ def test_uts46_6014(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ႆ\U0001ed80≯⒍。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ႆ\U0001ed80≯⒍。-', strict=True)
+
+ def test_uts46_6015(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ႆ\U0001ed80≯6.。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ႆ\U0001ed80≯6.。-', strict=True)
+
+ def test_uts46_6016(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ႆ\U0001ed80≯6.。-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ႆ\U0001ed80≯6.。-', strict=True)
+
+ def test_uts46_6017(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-oyg968k7h74b..-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-oyg968k7h74b..-', strict=True)
+
+ def test_uts46_6018(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--hmd482gqqb8730g.-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--hmd482gqqb8730g.-', strict=True)
+
+ def test_uts46_6019(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '឴.쮇-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '឴.쮇-', strict=True)
+
+ def test_uts46_6020(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '឴.쮇-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '឴.쮇-', strict=True)
+
+ def test_uts46_6021(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn----938f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn----938f', strict=True)
+
+ def test_uts46_6022(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--z3e.xn----938f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--z3e.xn----938f', strict=True)
+
+ def test_uts46_6023(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𑓂。⒈-\U00100a9b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𑓂。⒈-\U00100a9b', strict=True)
+
+ def test_uts46_6024(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200c𑓂。1.-\U00100a9b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200c𑓂。1.-\U00100a9b', strict=True)
+
+ def test_uts46_6025(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wz1d.1.xn----rg03o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wz1d.1.xn----rg03o', strict=True)
+
+ def test_uts46_6026(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugy057g.1.xn----rg03o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugy057g.1.xn----rg03o', strict=True)
+
+ def test_uts46_6027(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wz1d.xn----dcp29674o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wz1d.xn----dcp29674o', strict=True)
+
+ def test_uts46_6028(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0ugy057g.xn----dcp29674o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0ugy057g.xn----dcp29674o', strict=True)
+
+ def test_uts46_6029(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒈ﺮ\u200c。⃩🖞\u200c𖬴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒈ﺮ\u200c。⃩🖞\u200c𖬴', strict=True)
+
+ def test_uts46_6030(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.ر\u200c。⃩🖞\u200c𖬴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.ر\u200c。⃩🖞\u200c𖬴', strict=True)
+
+ def test_uts46_6031(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--wgb.xn--c1g6021kg18c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--wgb.xn--c1g6021kg18c', strict=True)
+
+ def test_uts46_6032(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '1.xn--wgb253k.xn--0ugz6a8040fty5d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '1.xn--wgb253k.xn--0ugz6a8040fty5d', strict=True)
+
+ def test_uts46_6033(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wgb746m.xn--c1g6021kg18c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wgb746m.xn--c1g6021kg18c', strict=True)
+
+ def test_uts46_6034(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--wgb253kmfd.xn--0ugz6a8040fty5d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--wgb253kmfd.xn--0ugz6a8040fty5d', strict=True)
+
+ def test_uts46_6035(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ccb47。𝟐ᮨߔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ccb47。𝟐ᮨߔ', strict=True)
+
+ def test_uts46_6036(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000ccb47。2ᮨߔ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000ccb47。2ᮨߔ', strict=True)
+
+ def test_uts46_6037(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--xm89d.xn--2-icd143m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--xm89d.xn--2-icd143m', strict=True)
+
+ def test_uts46_6038(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﶏ\U000abcfa.ς\u200d𐹷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﶏ\U000abcfa.ς\u200d𐹷', strict=True)
+
+ def test_uts46_6039(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'مخم\U000abcfa.ς\u200d𐹷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'مخم\U000abcfa.ς\u200d𐹷', strict=True)
+
+ def test_uts46_6040(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'مخم\U000abcfa.Σ\u200d𐹷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'مخم\U000abcfa.Σ\u200d𐹷', strict=True)
+
+ def test_uts46_6041(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'مخم\U000abcfa.σ\u200d𐹷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'مخم\U000abcfa.σ\u200d𐹷', strict=True)
+
+ def test_uts46_6042(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tgb9bb64691z.xn--4xa6667k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tgb9bb64691z.xn--4xa6667k', strict=True)
+
+ def test_uts46_6043(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tgb9bb64691z.xn--4xa895lrp7n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tgb9bb64691z.xn--4xa895lrp7n', strict=True)
+
+ def test_uts46_6044(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--tgb9bb64691z.xn--3xa006lrp7n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--tgb9bb64691z.xn--3xa006lrp7n', strict=True)
+
+ def test_uts46_6045(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﶏ\U000abcfa.Σ\u200d𐹷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﶏ\U000abcfa.Σ\u200d𐹷', strict=True)
+
+ def test_uts46_6046(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﶏ\U000abcfa.σ\u200d𐹷', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﶏ\U000abcfa.σ\u200d𐹷', strict=True)
+
+ def test_uts46_6047(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⒎ہ\u0605。꫶۵𐇽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⒎ہ\u0605。꫶۵𐇽', strict=True)
+
+ def test_uts46_6048(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '7.ہ\u0605。꫶۵𐇽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '7.ہ\u0605。꫶۵𐇽', strict=True)
+
+ def test_uts46_6049(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '7.xn--nfb98a.xn--imb3805fxt8b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '7.xn--nfb98a.xn--imb3805fxt8b', strict=True)
+
+ def test_uts46_6050(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nfb98ai25e.xn--imb3805fxt8b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nfb98ai25e.xn--imb3805fxt8b', strict=True)
+
+ def test_uts46_6051(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-ᡥ᠆\U000cdcad。\u0605ᩝ𐹡', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-ᡥ᠆\U000cdcad。\u0605ᩝ𐹡', strict=True)
+
+ def test_uts46_6052(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----f3j6s87156i.xn--nfb035hoo2p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----f3j6s87156i.xn--nfb035hoo2p', strict=True)
+
+ def test_uts46_6053(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d.ڽ٣֖', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d.ڽ٣֖', strict=True)
+
+ def test_uts46_6054(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--hcb32bni', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--hcb32bni', strict=True)
+
+ def test_uts46_6055(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug.xn--hcb32bni', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug.xn--hcb32bni', strict=True)
+
+ def test_uts46_6056(self):
+ self.assertEqual(idna.decode('xn--hcb32bni', uts46=True, strict=True), 'ڽ٣֖')
+ self.assertEqual(idna.encode('xn--hcb32bni', uts46=True, strict=True), b'xn--hcb32bni')
+
+ def test_uts46_6057(self):
+ self.assertEqual(idna.decode('ڽ٣֖', uts46=True, strict=True), 'ڽ٣֖')
+ self.assertEqual(idna.encode('ڽ٣֖', uts46=True, strict=True), b'xn--hcb32bni')
+
+ def test_uts46_6058(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㒧۱.Ⴚٸ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㒧۱.Ⴚٸ\u200d', strict=True)
+
+ def test_uts46_6059(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㒧۱.Ⴚيٴ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㒧۱.Ⴚيٴ\u200d', strict=True)
+
+ def test_uts46_6060(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㒧۱.ⴚيٴ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㒧۱.ⴚيٴ\u200d', strict=True)
+
+ def test_uts46_6061(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--emb715u.xn--mhb8fy26k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--emb715u.xn--mhb8fy26k', strict=True)
+
+ def test_uts46_6062(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--emb715u.xn--mhb8f960g03l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--emb715u.xn--mhb8f960g03l', strict=True)
+
+ def test_uts46_6063(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '㒧۱.ⴚٸ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '㒧۱.ⴚٸ\u200d', strict=True)
+
+ def test_uts46_6064(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--emb715u.xn--mhb8f817a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--emb715u.xn--mhb8f817a', strict=True)
+
+ def test_uts46_6065(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--emb715u.xn--mhb8f817ao2p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--emb715u.xn--mhb8f817ao2p', strict=True)
+
+ def test_uts46_6066(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྔꡋ-.-𖬴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྔꡋ-.-𖬴', strict=True)
+
+ def test_uts46_6067(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ྔꡋ-.-𖬴', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ྔꡋ-.-𖬴', strict=True)
+
+ def test_uts46_6068(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ukg9938i.xn----4u5m', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ukg9938i.xn----4u5m', strict=True)
+
+ def test_uts46_6069(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007f4b3-⋢\u200c.标-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007f4b3-⋢\u200c.标-', strict=True)
+
+ def test_uts46_6070(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007f4b3-⋢\u200c.标-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007f4b3-⋢\u200c.标-', strict=True)
+
+ def test_uts46_6071(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007f4b3-⋢\u200c.标-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007f4b3-⋢\u200c.标-', strict=True)
+
+ def test_uts46_6072(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007f4b3-⋢\u200c.标-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007f4b3-⋢\u200c.标-', strict=True)
+
+ def test_uts46_6073(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----9mo67451g.xn----qj7b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----9mo67451g.xn----qj7b', strict=True)
+
+ def test_uts46_6074(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----sgn90kn5663a.xn----qj7b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----sgn90kn5663a.xn----qj7b', strict=True)
+
+ def test_uts46_6075(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٱ.ςߜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٱ.ςߜ', strict=True)
+
+ def test_uts46_6076(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٱ.ςߜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٱ.ςߜ', strict=True)
+
+ def test_uts46_6077(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٱ.Σߜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٱ.Σߜ', strict=True)
+
+ def test_uts46_6078(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٱ.σߜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٱ.σߜ', strict=True)
+
+ def test_uts46_6079(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qib.xn--4xa21s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qib.xn--4xa21s', strict=True)
+
+ def test_uts46_6080(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--qib.xn--3xa41s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--qib.xn--3xa41s', strict=True)
+
+ def test_uts46_6081(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٱ.Σߜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٱ.Σߜ', strict=True)
+
+ def test_uts46_6082(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٱ.σߜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٱ.σߜ', strict=True)
+
+ def test_uts46_6083(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007c236\u0605.ࣁ\u200d𑑂𱼱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007c236\u0605.ࣁ\u200d𑑂𱼱', strict=True)
+
+ def test_uts46_6084(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007c236\u0605.ࣁ\u200d𑑂𱼱', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007c236\u0605.ࣁ\u200d𑑂𱼱', strict=True)
+
+ def test_uts46_6085(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nfb17942h.xn--nzb6708kx3pn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nfb17942h.xn--nzb6708kx3pn', strict=True)
+
+ def test_uts46_6086(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nfb17942h.xn--nzb240jv06otevq', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nfb17942h.xn--nzb240jv06otevq', strict=True)
+
+ def test_uts46_6087(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹾𐋩\U0001ed5c。᯲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹾𐋩\U0001ed5c。᯲', strict=True)
+
+ def test_uts46_6088(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹾𐋩\U0001ed5c。᯲', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹾𐋩\U0001ed5c。᯲', strict=True)
+
+ def test_uts46_6089(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--d97cn8rn44p.xn--0zf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--d97cn8rn44p.xn--0zf', strict=True)
+
+ def test_uts46_6090(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6ᅠᰳ\U000e0e27.\U0009f70a锰ܬς', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6ᅠᰳ\U000e0e27.\U0009f70a锰ܬς', strict=True)
+
+ def test_uts46_6091(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6ᅠᰳ\U000e0e27.\U0009f70a锰ܬΣ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6ᅠᰳ\U000e0e27.\U0009f70a锰ܬΣ', strict=True)
+
+ def test_uts46_6092(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '6ᅠᰳ\U000e0e27.\U0009f70a锰ܬσ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '6ᅠᰳ\U000e0e27.\U0009f70a锰ܬσ', strict=True)
+
+ def test_uts46_6093(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-iuly4983p.xn--4xa95ohw6pk078g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-iuly4983p.xn--4xa95ohw6pk078g', strict=True)
+
+ def test_uts46_6094(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-iuly4983p.xn--3xa16ohw6pk078g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-iuly4983p.xn--3xa16ohw6pk078g', strict=True)
+
+ def test_uts46_6095(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-5bh476ewr517a.xn--4xa95ohw6pk078g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-5bh476ewr517a.xn--4xa95ohw6pk078g', strict=True)
+
+ def test_uts46_6096(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-5bh476ewr517a.xn--3xa16ohw6pk078g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-5bh476ewr517a.xn--3xa16ohw6pk078g', strict=True)
+
+ def test_uts46_6097(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڳ︄\U000453a6𝟽。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڳ︄\U000453a6𝟽。𐹽', strict=True)
+
+ def test_uts46_6098(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ڳ︄\U000453a67。𐹽', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ڳ︄\U000453a67。𐹽', strict=True)
+
+ def test_uts46_6099(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7-yuc34665f.xn--1o0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7-yuc34665f.xn--1o0d', strict=True)
+
+ def test_uts46_6100(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001eba7.\u200c⫞', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001eba7.\u200c⫞', strict=True)
+
+ def test_uts46_6101(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001eba7.\u200c⫞', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001eba7.\u200c⫞', strict=True)
+
+ def test_uts46_6102(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pw6h.xn--53i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pw6h.xn--53i', strict=True)
+
+ def test_uts46_6103(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pw6h.xn--0ug283b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pw6h.xn--0ug283b', strict=True)
+
+ def test_uts46_6104(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\U00055274.۠ᢚ-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\U00055274.۠ᢚ-', strict=True)
+
+ def test_uts46_6105(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----qi38c.xn----jxc827k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----qi38c.xn----jxc827k', strict=True)
+
+ def test_uts46_6106(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⌁\u200d𑄴.\u200c𝟩٬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⌁\u200d𑄴.\u200c𝟩٬', strict=True)
+
+ def test_uts46_6107(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '⌁\u200d𑄴.\u200c7٬', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '⌁\u200d𑄴.\u200c7٬', strict=True)
+
+ def test_uts46_6108(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nhh5394g.xn--7-xqc', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nhh5394g.xn--7-xqc', strict=True)
+
+ def test_uts46_6109(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug38i2093a.xn--7-xqc297q', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug38i2093a.xn--7-xqc297q', strict=True)
+
+ def test_uts46_6110(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '︒ﴅืﻼ。岓᯲\U000e0f83ᡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '︒ﴅืﻼ。岓᯲\U000e0f83ᡂ', strict=True)
+
+ def test_uts46_6111(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '。صىืلا。岓᯲\U000e0f83ᡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '。صىืلا。岓᯲\U000e0f83ᡂ', strict=True)
+
+ def test_uts46_6112(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '.xn--mgb1a7bt462h.xn--17e10qe61f9r71s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '.xn--mgb1a7bt462h.xn--17e10qe61f9r71s', strict=True)
+
+ def test_uts46_6113(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mgb1a7bt462hf267a.xn--17e10qe61f9r71s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mgb1a7bt462hf267a.xn--17e10qe61f9r71s', strict=True)
+
+ def test_uts46_6114(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹨。8𑁆', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹨。8𑁆', strict=True)
+
+ def test_uts46_6115(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--go0d.xn--8-yu7i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--go0d.xn--8-yu7i', strict=True)
+
+ def test_uts46_6116(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞀕ൃ.ꡚࣺ𐹰ൄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞀕ൃ.ꡚࣺ𐹰ൄ', strict=True)
+
+ def test_uts46_6117(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𞀕ൃ.ꡚࣺ𐹰ൄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𞀕ൃ.ꡚࣺ𐹰ൄ', strict=True)
+
+ def test_uts46_6118(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--mxc5210v.xn--90b01t8u2p1ltd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--mxc5210v.xn--90b01t8u2p1ltd', strict=True)
+
+ def test_uts46_6119(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c6a4f\U000109b9̃。\U000e0345', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c6a4f\U000109b9̃。\U000e0345', strict=True)
+
+ def test_uts46_6120(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c6a4f\U000109b9̃。\U000e0345', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c6a4f\U000109b9̃。\U000e0345', strict=True)
+
+ def test_uts46_6121(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--nsa1265kp9z9e.xn--xt36e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--nsa1265kp9z9e.xn--xt36e', strict=True)
+
+ def test_uts46_6122(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢌ.-࡚', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢌ.-࡚', strict=True)
+
+ def test_uts46_6123(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢌ.-࡚', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢌ.-࡚', strict=True)
+
+ def test_uts46_6124(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--59e.xn----5jd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--59e.xn----5jd', strict=True)
+
+ def test_uts46_6125(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𥛛𑘶。𐹬\U00010cb8்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𥛛𑘶。𐹬\U00010cb8்', strict=True)
+
+ def test_uts46_6126(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𥛛𑘶。𐹬\U00010cb8்', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𥛛𑘶。𐹬\U00010cb8்', strict=True)
+
+ def test_uts46_6127(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--jb2dj685c.xn--xmc5562kmcb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--jb2dj685c.xn--xmc5562kmcb', strict=True)
+
+ def test_uts46_6128(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴐݿ.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴐݿ.\u200c', strict=True)
+
+ def test_uts46_6129(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴐݿ.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴐݿ.\u200c', strict=True)
+
+ def test_uts46_6130(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴐݿ.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴐݿ.\u200c', strict=True)
+
+ def test_uts46_6131(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gqb743q.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gqb743q.', strict=True)
+
+ def test_uts46_6132(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gqb743q.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gqb743q.xn--0ug', strict=True)
+
+ def test_uts46_6133(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴐݿ.\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴐݿ.\u200c', strict=True)
+
+ def test_uts46_6134(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gqb918b.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gqb918b.', strict=True)
+
+ def test_uts46_6135(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gqb918b.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gqb918b.xn--0ug', strict=True)
+
+ def test_uts46_6136(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '🄅𑲞-⒈。\u200dᠩڥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '🄅𑲞-⒈。\u200dᠩڥ', strict=True)
+
+ def test_uts46_6137(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '4,𑲞-1.。\u200dᠩڥ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '4,𑲞-1.。\u200dᠩڥ', strict=True)
+
+ def test_uts46_6138(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4,-1-w401a..xn--7jb180g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4,-1-w401a..xn--7jb180g', strict=True)
+
+ def test_uts46_6139(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4,-1-w401a..xn--7jb180gexf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4,-1-w401a..xn--7jb180gexf', strict=True)
+
+ def test_uts46_6140(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4,--je4aw745l.xn--7jb180g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4,--je4aw745l.xn--7jb180g', strict=True)
+
+ def test_uts46_6141(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4,--je4aw745l.xn--7jb180gexf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4,--je4aw745l.xn--7jb180gexf', strict=True)
+
+ def test_uts46_6142(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ecp8796hjtvg.xn--7jb180g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ecp8796hjtvg.xn--7jb180g', strict=True)
+
+ def test_uts46_6143(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ecp8796hjtvg.xn--7jb180gexf', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ecp8796hjtvg.xn--7jb180gexf', strict=True)
+
+ def test_uts46_6144(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00057024。𞤪\U000aefcb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00057024。𞤪\U000aefcb', strict=True)
+
+ def test_uts46_6145(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00057024。𞤈\U000aefcb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00057024。𞤈\U000aefcb', strict=True)
+
+ def test_uts46_6146(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4240a.xn--ie6h83808a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4240a.xn--ie6h83808a', strict=True)
+
+ def test_uts46_6147(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ׁ۲。𐮊٬𝨊鄨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ׁ۲。𐮊٬𝨊鄨', strict=True)
+
+ def test_uts46_6148(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ׁ۲。𐮊٬𝨊鄨', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ׁ۲。𐮊٬𝨊鄨', strict=True)
+
+ def test_uts46_6149(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pdb42d.xn--lib6412enztdwv6h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pdb42d.xn--lib6412enztdwv6h', strict=True)
+
+ def test_uts46_6150(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0001eb73-ꡁ。ᩩ்-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0001eb73-ꡁ。ᩩ்-', strict=True)
+
+ def test_uts46_6151(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----be4e4276f.xn----lze333i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----be4e4276f.xn----lze333i', strict=True)
+
+ def test_uts46_6152(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '္-\U0001abad🞢.ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '္-\U0001abad🞢.ß', strict=True)
+
+ def test_uts46_6153(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '္-\U0001abad🞢.ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '္-\U0001abad🞢.ß', strict=True)
+
+ def test_uts46_6154(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '္-\U0001abad🞢.SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '္-\U0001abad🞢.SS', strict=True)
+
+ def test_uts46_6155(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '္-\U0001abad🞢.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '္-\U0001abad🞢.ss', strict=True)
+
+ def test_uts46_6156(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '္-\U0001abad🞢.Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '္-\U0001abad🞢.Ss', strict=True)
+
+ def test_uts46_6157(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----9tg11172akr8b.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----9tg11172akr8b.ss', strict=True)
+
+ def test_uts46_6158(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----9tg11172akr8b.xn--zca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----9tg11172akr8b.xn--zca', strict=True)
+
+ def test_uts46_6159(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '္-\U0001abad🞢.SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '္-\U0001abad🞢.SS', strict=True)
+
+ def test_uts46_6160(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '္-\U0001abad🞢.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '္-\U0001abad🞢.ss', strict=True)
+
+ def test_uts46_6161(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '္-\U0001abad🞢.Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '္-\U0001abad🞢.Ss', strict=True)
+
+ def test_uts46_6162(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﳲ-\u200c。Ⴟ\u200c␣', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﳲ-\u200c。Ⴟ\u200c␣', strict=True)
+
+ def test_uts46_6163(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ـَّ-\u200c。Ⴟ\u200c␣', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ـَّ-\u200c。Ⴟ\u200c␣', strict=True)
+
+ def test_uts46_6164(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ـَّ-\u200c。ⴟ\u200c␣', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ـَّ-\u200c。ⴟ\u200c␣', strict=True)
+
+ def test_uts46_6165(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----eoc6bm.xn--xph904a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----eoc6bm.xn--xph904a', strict=True)
+
+ def test_uts46_6166(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----eoc6bm0504a.xn--0ug13nd0j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----eoc6bm0504a.xn--0ug13nd0j', strict=True)
+
+ def test_uts46_6167(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ﳲ-\u200c。ⴟ\u200c␣', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ﳲ-\u200c。ⴟ\u200c␣', strict=True)
+
+ def test_uts46_6168(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----eoc6bm.xn--3nd240h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----eoc6bm.xn--3nd240h', strict=True)
+
+ def test_uts46_6169(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----eoc6bm0504a.xn--3nd849e05c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----eoc6bm0504a.xn--3nd849e05c', strict=True)
+
+ def test_uts46_6170(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '്-\u200d\u200c。\U000657a7₅≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '്-\u200d\u200c。\U000657a7₅≠', strict=True)
+
+ def test_uts46_6171(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '്-\u200d\u200c。\U000657a7₅≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '്-\u200d\u200c。\U000657a7₅≠', strict=True)
+
+ def test_uts46_6172(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '്-\u200d\u200c。\U000657a75≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '്-\u200d\u200c。\U000657a75≠', strict=True)
+
+ def test_uts46_6173(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '്-\u200d\u200c。\U000657a75≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '്-\u200d\u200c。\U000657a75≠', strict=True)
+
+ def test_uts46_6174(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----jmf.xn--5-ufo50192e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----jmf.xn--5-ufo50192e', strict=True)
+
+ def test_uts46_6175(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----jmf215lda.xn--5-ufo50192e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----jmf215lda.xn--5-ufo50192e', strict=True)
+
+ def test_uts46_6176(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '锣。੍\U000e063b\U000e0686', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '锣。੍\U000e063b\U000e0686', strict=True)
+
+ def test_uts46_6177(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gc5a.xn--ybc83044ppga', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gc5a.xn--ybc83044ppga', strict=True)
+
+ def test_uts46_6178(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ؽ𑈾.ى\u200d꤫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ؽ𑈾.ى\u200d꤫', strict=True)
+
+ def test_uts46_6179(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ؽ𑈾.ى\u200d꤫', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ؽ𑈾.ى\u200d꤫', strict=True)
+
+ def test_uts46_6180(self):
+ self.assertEqual(idna.decode('xn--8gb2338k.xn--lhb0154f', uts46=True, strict=True), 'ؽ𑈾.ى꤫')
+ self.assertEqual(idna.encode('xn--8gb2338k.xn--lhb0154f', uts46=True, strict=True), b'xn--8gb2338k.xn--lhb0154f')
+
+ def test_uts46_6181(self):
+ self.assertEqual(idna.decode('ؽ𑈾.ى꤫', uts46=True, strict=True), 'ؽ𑈾.ى꤫')
+ self.assertEqual(idna.encode('ؽ𑈾.ى꤫', uts46=True, strict=True), b'xn--8gb2338k.xn--lhb0154f')
+
+ def test_uts46_6182(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8gb2338k.xn--lhb603k060h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8gb2338k.xn--lhb603k060h', strict=True)
+
+ def test_uts46_6183(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٦⁴Ⴅ.ࢽ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٦⁴Ⴅ.ࢽ\u200c', strict=True)
+
+ def test_uts46_6184(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٦4Ⴅ.ࢽ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٦4Ⴅ.ࢽ\u200c', strict=True)
+
+ def test_uts46_6185(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٦4ⴅ.ࢽ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٦4ⴅ.ࢽ\u200c', strict=True)
+
+ def test_uts46_6186(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-kqc6770a.xn--jzb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-kqc6770a.xn--jzb', strict=True)
+
+ def test_uts46_6187(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-kqc6770a.xn--jzb840j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-kqc6770a.xn--jzb840j', strict=True)
+
+ def test_uts46_6188(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '٦⁴ⴅ.ࢽ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '٦⁴ⴅ.ࢽ\u200c', strict=True)
+
+ def test_uts46_6189(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-kqc489e.xn--jzb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-kqc489e.xn--jzb', strict=True)
+
+ def test_uts46_6190(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4-kqc489e.xn--jzb840j', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4-kqc489e.xn--jzb840j', strict=True)
+
+ def test_uts46_6191(self):
+ self.assertEqual(idna.decode('ჁႱ6̘。ßᬃ', uts46=True, strict=True), 'ⴡⴑ6̘.ßᬃ')
+ self.assertEqual(idna.encode('ჁႱ6̘。ßᬃ', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--zca894k')
+
+ def test_uts46_6192(self):
+ self.assertEqual(idna.decode('ⴡⴑ6̘。ßᬃ', uts46=True, strict=True), 'ⴡⴑ6̘.ßᬃ')
+ self.assertEqual(idna.encode('ⴡⴑ6̘。ßᬃ', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--zca894k')
+
+ def test_uts46_6193(self):
+ self.assertEqual(idna.decode('ჁႱ6̘。SSᬃ', uts46=True, strict=True), 'ⴡⴑ6̘.ssᬃ')
+ self.assertEqual(idna.encode('ჁႱ6̘。SSᬃ', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--ss-2vq')
+
+ def test_uts46_6194(self):
+ self.assertEqual(idna.decode('ⴡⴑ6̘。ssᬃ', uts46=True, strict=True), 'ⴡⴑ6̘.ssᬃ')
+ self.assertEqual(idna.encode('ⴡⴑ6̘。ssᬃ', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--ss-2vq')
+
+ def test_uts46_6195(self):
+ self.assertEqual(idna.decode('Ⴡⴑ6̘。Ssᬃ', uts46=True, strict=True), 'ⴡⴑ6̘.ssᬃ')
+ self.assertEqual(idna.encode('Ⴡⴑ6̘。Ssᬃ', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--ss-2vq')
+
+ def test_uts46_6196(self):
+ self.assertEqual(idna.decode('xn--6-8cb7433a2ba.xn--ss-2vq', uts46=True, strict=True), 'ⴡⴑ6̘.ssᬃ')
+ self.assertEqual(idna.encode('xn--6-8cb7433a2ba.xn--ss-2vq', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--ss-2vq')
+
+ def test_uts46_6197(self):
+ self.assertEqual(idna.decode('ⴡⴑ6̘.ssᬃ', uts46=True, strict=True), 'ⴡⴑ6̘.ssᬃ')
+ self.assertEqual(idna.encode('ⴡⴑ6̘.ssᬃ', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--ss-2vq')
+
+ def test_uts46_6198(self):
+ self.assertEqual(idna.decode('ჁႱ6̘.SSᬃ', uts46=True, strict=True), 'ⴡⴑ6̘.ssᬃ')
+ self.assertEqual(idna.encode('ჁႱ6̘.SSᬃ', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--ss-2vq')
+
+ def test_uts46_6199(self):
+ self.assertEqual(idna.decode('Ⴡⴑ6̘.Ssᬃ', uts46=True, strict=True), 'ⴡⴑ6̘.ssᬃ')
+ self.assertEqual(idna.encode('Ⴡⴑ6̘.Ssᬃ', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--ss-2vq')
+
+ def test_uts46_6200(self):
+ self.assertEqual(idna.decode('xn--6-8cb7433a2ba.xn--zca894k', uts46=True, strict=True), 'ⴡⴑ6̘.ßᬃ')
+ self.assertEqual(idna.encode('xn--6-8cb7433a2ba.xn--zca894k', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--zca894k')
+
+ def test_uts46_6201(self):
+ self.assertEqual(idna.decode('ⴡⴑ6̘.ßᬃ', uts46=True, strict=True), 'ⴡⴑ6̘.ßᬃ')
+ self.assertEqual(idna.encode('ⴡⴑ6̘.ßᬃ', uts46=True, strict=True), b'xn--6-8cb7433a2ba.xn--zca894k')
+
+ def test_uts46_6202(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-8cb306hms1a.xn--ss-2vq', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-8cb306hms1a.xn--ss-2vq', strict=True)
+
+ def test_uts46_6203(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-8cb555h2b.xn--ss-2vq', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-8cb555h2b.xn--ss-2vq', strict=True)
+
+ def test_uts46_6204(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--6-8cb555h2b.xn--zca894k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--6-8cb555h2b.xn--zca894k', strict=True)
+
+ def test_uts46_6205(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008b850。≯𑋪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008b850。≯𑋪', strict=True)
+
+ def test_uts46_6206(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008b850。≯𑋪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008b850。≯𑋪', strict=True)
+
+ def test_uts46_6207(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008b850。≯𑋪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008b850。≯𑋪', strict=True)
+
+ def test_uts46_6208(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0008b850。≯𑋪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0008b850。≯𑋪', strict=True)
+
+ def test_uts46_6209(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--eo08b.xn--hdh3385g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--eo08b.xn--hdh3385g', strict=True)
+
+ def test_uts46_6210(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ٚ۲。\u200c-᯳\u08e2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ٚ۲。\u200c-᯳\u08e2', strict=True)
+
+ def test_uts46_6211(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2hb81a.xn----xrd657l', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2hb81a.xn----xrd657l', strict=True)
+
+ def test_uts46_6212(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2hb81a.xn----xrd657l30d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2hb81a.xn----xrd657l30d', strict=True)
+
+ def test_uts46_6213(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄏𖬴\U000e0cbd。ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄏𖬴\U000e0cbd。ᅠ', strict=True)
+
+ def test_uts46_6214(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠄏𖬴\U000e0cbd。ᅠ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠄏𖬴\U000e0cbd。ᅠ', strict=True)
+
+ def test_uts46_6215(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--619ep9154c.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--619ep9154c.', strict=True)
+
+ def test_uts46_6216(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--619ep9154c.xn--psd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--619ep9154c.xn--psd', strict=True)
+
+ def test_uts46_6217(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--619ep9154c.xn--cl7c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--619ep9154c.xn--cl7c', strict=True)
+
+ def test_uts46_6218(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß⒈ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß⒈ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+
+ def test_uts46_6219(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ß1.ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ß1.ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+
+ def test_uts46_6220(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS1.ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS1.ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+
+ def test_uts46_6221(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss1.ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss1.ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+
+ def test_uts46_6222(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss1.ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss1.ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+
+ def test_uts46_6223(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss1.xn--kpb6677h.xn--nfb09923ifkyyb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss1.xn--kpb6677h.xn--nfb09923ifkyyb', strict=True)
+
+ def test_uts46_6224(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-pfa.xn--kpb6677h.xn--nfb09923ifkyyb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-pfa.xn--kpb6677h.xn--nfb09923ifkyyb', strict=True)
+
+ def test_uts46_6225(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'SS⒈ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'SS⒈ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+
+ def test_uts46_6226(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ss⒈ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ss⒈ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+
+ def test_uts46_6227(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ss⒈ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ss⒈ݠ\ud7ae.\U001095b2󠅄\u0605\U0008952f', strict=True)
+
+ def test_uts46_6228(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ss-6ke9690a0g1q.xn--nfb09923ifkyyb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ss-6ke9690a0g1q.xn--nfb09923ifkyyb', strict=True)
+
+ def test_uts46_6229(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--zca444a0s1ao12n.xn--nfb09923ifkyyb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--zca444a0s1ao12n.xn--nfb09923ifkyyb', strict=True)
+
+ def test_uts46_6230(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0b54.𐋱₂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0b54.𐋱₂', strict=True)
+
+ def test_uts46_6231(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0b54.𐋱2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0b54.𐋱2', strict=True)
+
+ def test_uts46_6232(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--vi56e.xn--2-w91i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--vi56e.xn--2-w91i', strict=True)
+
+ def test_uts46_6233(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܖे。-ßڥ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܖे。-ßڥ\u200c', strict=True)
+
+ def test_uts46_6234(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܖे。-SSڥ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܖे。-SSڥ\u200c', strict=True)
+
+ def test_uts46_6235(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܖे。-ssڥ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܖे。-ssڥ\u200c', strict=True)
+
+ def test_uts46_6236(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ܖे。-Ssڥ\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ܖे。-Ssڥ\u200c', strict=True)
+
+ def test_uts46_6237(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gnb63i.xn---ss-4ef', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gnb63i.xn---ss-4ef', strict=True)
+
+ def test_uts46_6238(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gnb63i.xn---ss-4ef9263a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gnb63i.xn---ss-4ef9263a', strict=True)
+
+ def test_uts46_6239(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gnb63i.xn----qfa845bhx4a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gnb63i.xn----qfa845bhx4a', strict=True)
+
+ def test_uts46_6240(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮩ\u200dت\U00061688.᳕䷉Ⴡ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮩ\u200dت\U00061688.᳕䷉Ⴡ', strict=True)
+
+ def test_uts46_6241(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮩ\u200dت\U00061688.᳕䷉Ⴡ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮩ\u200dت\U00061688.᳕䷉Ⴡ', strict=True)
+
+ def test_uts46_6242(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮩ\u200dت\U00061688.᳕䷉ⴡ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮩ\u200dت\U00061688.᳕䷉ⴡ', strict=True)
+
+ def test_uts46_6243(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pgb911izv33i.xn--i6f270etuy', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pgb911izv33i.xn--i6f270etuy', strict=True)
+
+ def test_uts46_6244(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pgb911imgdrw34r.xn--i6f270etuy', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pgb911imgdrw34r.xn--i6f270etuy', strict=True)
+
+ def test_uts46_6245(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᮩ\u200dت\U00061688.᳕䷉ⴡ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᮩ\u200dت\U00061688.᳕䷉ⴡ', strict=True)
+
+ def test_uts46_6246(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pgb911izv33i.xn--5nd792dgv3b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pgb911izv33i.xn--5nd792dgv3b', strict=True)
+
+ def test_uts46_6247(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--pgb911imgdrw34r.xn--5nd792dgv3b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--pgb911imgdrw34r.xn--5nd792dgv3b', strict=True)
+
+ def test_uts46_6248(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u2dbf.ß\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u2dbf.ß\u200d', strict=True)
+
+ def test_uts46_6249(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u2dbf.SS\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u2dbf.SS\u200d', strict=True)
+
+ def test_uts46_6250(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u2dbf.ss\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u2dbf.ss\u200d', strict=True)
+
+ def test_uts46_6251(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u2dbf.Ss\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u2dbf.Ss\u200d', strict=True)
+
+ def test_uts46_6252(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7pj.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7pj.ss', strict=True)
+
+ def test_uts46_6253(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7pj.xn--ss-n1t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7pj.xn--ss-n1t', strict=True)
+
+ def test_uts46_6254(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7pj.xn--zca870n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7pj.xn--zca870n', strict=True)
+
+ def test_uts46_6255(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳︒.ت≯ꡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳︒.ت≯ꡂ', strict=True)
+
+ def test_uts46_6256(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳︒.ت≯ꡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳︒.ت≯ꡂ', strict=True)
+
+ def test_uts46_6257(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳。.ت≯ꡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳。.ت≯ꡂ', strict=True)
+
+ def test_uts46_6258(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '᯳。.ت≯ꡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '᯳。.ت≯ꡂ', strict=True)
+
+ def test_uts46_6259(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1zf..xn--pgb885lry5g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1zf..xn--pgb885lry5g', strict=True)
+
+ def test_uts46_6260(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1zf8957g.xn--pgb885lry5g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1zf8957g.xn--pgb885lry5g', strict=True)
+
+ def test_uts46_6261(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮≠\U0004fec3。-𫠆ڷ𐹪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮≠\U0004fec3。-𫠆ڷ𐹪', strict=True)
+
+ def test_uts46_6262(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮≠\U0004fec3。-𫠆ڷ𐹪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮≠\U0004fec3。-𫠆ڷ𐹪', strict=True)
+
+ def test_uts46_6263(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮≠\U0004fec3。-𫠆ڷ𐹪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮≠\U0004fec3。-𫠆ڷ𐹪', strict=True)
+
+ def test_uts46_6264(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮≠\U0004fec3。-𫠆ڷ𐹪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮≠\U0004fec3。-𫠆ڷ𐹪', strict=True)
+
+ def test_uts46_6265(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ch1a29470f.xn----7uc5363rc1rn', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ch1a29470f.xn----7uc5363rc1rn', strict=True)
+
+ def test_uts46_6266(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹡ݷ。ꡂ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹡ݷ。ꡂ', strict=True)
+
+ def test_uts46_6267(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7pb5275k.xn--bc9a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7pb5275k.xn--bc9a', strict=True)
+
+ def test_uts46_6268(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴉ𝆅\U00054ec5ؙ.ß𐧦𐹳ݵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴉ𝆅\U00054ec5ؙ.ß𐧦𐹳ݵ', strict=True)
+
+ def test_uts46_6269(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴉ𝆅\U00054ec5ؙ.ß𐧦𐹳ݵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴉ𝆅\U00054ec5ؙ.ß𐧦𐹳ݵ', strict=True)
+
+ def test_uts46_6270(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴉ𝆅\U00054ec5ؙ.SS𐧦𐹳ݵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴉ𝆅\U00054ec5ؙ.SS𐧦𐹳ݵ', strict=True)
+
+ def test_uts46_6271(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ⴉ𝆅\U00054ec5ؙ.ss𐧦𐹳ݵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ⴉ𝆅\U00054ec5ؙ.ss𐧦𐹳ݵ', strict=True)
+
+ def test_uts46_6272(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Ⴉ𝆅\U00054ec5ؙ.Ss𐧦𐹳ݵ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Ⴉ𝆅\U00054ec5ؙ.Ss𐧦𐹳ݵ', strict=True)
+
+ def test_uts46_6273(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7fb940rwt3z7xvz.xn--ss-zme7575xp0e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7fb940rwt3z7xvz.xn--ss-zme7575xp0e', strict=True)
+
+ def test_uts46_6274(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7fb940rwt3z7xvz.xn--zca684a699vf2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7fb940rwt3z7xvz.xn--zca684a699vf2d', strict=True)
+
+ def test_uts46_6275(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7fb125cjv87a7xvz.xn--ss-zme7575xp0e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7fb125cjv87a7xvz.xn--ss-zme7575xp0e', strict=True)
+
+ def test_uts46_6276(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7fb125cjv87a7xvz.xn--zca684a699vf2d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7fb125cjv87a7xvz.xn--zca684a699vf2d', strict=True)
+
+ def test_uts46_6277(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200dك𐧾↙.\U0004af61', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200dك𐧾↙.\U0004af61', strict=True)
+
+ def test_uts46_6278(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fhb011lnp8n.xn--7s4w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fhb011lnp8n.xn--7s4w', strict=True)
+
+ def test_uts46_6279(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fhb713k87ag053c.xn--7s4w', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fhb713k87ag053c.xn--7s4w', strict=True)
+
+ def test_uts46_6280(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '梉。\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '梉。\u200c', strict=True)
+
+ def test_uts46_6283(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--7zv.xn--0ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--7zv.xn--0ug', strict=True)
+
+ def test_uts46_6284(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡣ-≠.\u200d𞤗𐅢Ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡣ-≠.\u200d𞤗𐅢Ↄ', strict=True)
+
+ def test_uts46_6285(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡣ-≠.\u200d𞤗𐅢Ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡣ-≠.\u200d𞤗𐅢Ↄ', strict=True)
+
+ def test_uts46_6286(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡣ-≠.\u200d𞤹𐅢ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡣ-≠.\u200d𞤹𐅢ↄ', strict=True)
+
+ def test_uts46_6287(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡣ-≠.\u200d𞤹𐅢ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡣ-≠.\u200d𞤹𐅢ↄ', strict=True)
+
+ def test_uts46_6288(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡣ-≠.\u200d𞤗𐅢ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡣ-≠.\u200d𞤗𐅢ↄ', strict=True)
+
+ def test_uts46_6289(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꡣ-≠.\u200d𞤗𐅢ↄ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꡣ-≠.\u200d𞤗𐅢ↄ', strict=True)
+
+ def test_uts46_6290(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ufo9661d.xn--r5gy929fhm4f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ufo9661d.xn--r5gy929fhm4f', strict=True)
+
+ def test_uts46_6291(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ufo9661d.xn--1ug99cj620c71sh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ufo9661d.xn--1ug99cj620c71sh', strict=True)
+
+ def test_uts46_6292(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ufo9661d.xn--q5g0929fhm4f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ufo9661d.xn--q5g0929fhm4f', strict=True)
+
+ def test_uts46_6293(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ufo9661d.xn--1ug79cm620c71sh', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ufo9661d.xn--1ug79cm620c71sh', strict=True)
+
+ def test_uts46_6294(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς⒐𝆫⸵。\U00010c62🄊𝟳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς⒐𝆫⸵。\U00010c62🄊𝟳', strict=True)
+
+ def test_uts46_6295(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς9.𝆫⸵。\U00010c629,7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς9.𝆫⸵。\U00010c629,7', strict=True)
+
+ def test_uts46_6296(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ9.𝆫⸵。\U00010c629,7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ9.𝆫⸵。\U00010c629,7', strict=True)
+
+ def test_uts46_6297(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ9.𝆫⸵。\U00010c629,7', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ9.𝆫⸵。\U00010c629,7', strict=True)
+
+ def test_uts46_6298(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-zmb.xn--ltj1535k.xn--9,7-r67t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-zmb.xn--ltj1535k.xn--9,7-r67t', strict=True)
+
+ def test_uts46_6299(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--9-xmb.xn--ltj1535k.xn--9,7-r67t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--9-xmb.xn--ltj1535k.xn--9,7-r67t', strict=True)
+
+ def test_uts46_6300(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ⒐𝆫⸵。\U00010c62🄊𝟳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ⒐𝆫⸵。\U00010c62🄊𝟳', strict=True)
+
+ def test_uts46_6301(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ⒐𝆫⸵。\U00010c62🄊𝟳', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ⒐𝆫⸵。\U00010c62🄊𝟳', strict=True)
+
+ def test_uts46_6302(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa809nwtghi25b.xn--9,7-r67t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa809nwtghi25b.xn--9,7-r67t', strict=True)
+
+ def test_uts46_6303(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa019nwtghi25b.xn--9,7-r67t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa019nwtghi25b.xn--9,7-r67t', strict=True)
+
+ def test_uts46_6304(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa809nwtghi25b.xn--7-075iy877c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa809nwtghi25b.xn--7-075iy877c', strict=True)
+
+ def test_uts46_6305(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa019nwtghi25b.xn--7-075iy877c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa019nwtghi25b.xn--7-075iy877c', strict=True)
+
+ def test_uts46_6306(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡓ.\u200cß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡓ.\u200cß', strict=True)
+
+ def test_uts46_6307(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡓ.\u200cß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡓ.\u200cß', strict=True)
+
+ def test_uts46_6308(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡓ.\u200cSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡓ.\u200cSS', strict=True)
+
+ def test_uts46_6309(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡓ.\u200css', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡓ.\u200css', strict=True)
+
+ def test_uts46_6310(self):
+ self.assertEqual(idna.decode('xn--iwb.ss', uts46=True, strict=True), 'ࡓ.ss')
+ self.assertEqual(idna.encode('xn--iwb.ss', uts46=True, strict=True), b'xn--iwb.ss')
+
+ def test_uts46_6311(self):
+ self.assertEqual(idna.decode('ࡓ.ss', uts46=True, strict=True), 'ࡓ.ss')
+ self.assertEqual(idna.encode('ࡓ.ss', uts46=True, strict=True), b'xn--iwb.ss')
+
+ def test_uts46_6312(self):
+ self.assertEqual(idna.decode('ࡓ.SS', uts46=True, strict=True), 'ࡓ.ss')
+ self.assertEqual(idna.encode('ࡓ.SS', uts46=True, strict=True), b'xn--iwb.ss')
+
+ def test_uts46_6313(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iwb.xn--ss-i1t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iwb.xn--ss-i1t', strict=True)
+
+ def test_uts46_6314(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--iwb.xn--zca570n', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--iwb.xn--zca570n', strict=True)
+
+ def test_uts46_6315(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡓ.\u200cSS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡓ.\u200cSS', strict=True)
+
+ def test_uts46_6316(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡓ.\u200css', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡓ.\u200css', strict=True)
+
+ def test_uts46_6317(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡓ.\u200cSs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡓ.\u200cSs', strict=True)
+
+ def test_uts46_6318(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ࡓ.\u200cSs', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ࡓ.\u200cSs', strict=True)
+
+ def test_uts46_6319(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0006fda3-.\u200dݎꥍ\U000e0ee8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0006fda3-.\u200dݎꥍ\U000e0ee8', strict=True)
+
+ def test_uts46_6320(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----s116e.xn--1ob6504fmf40i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----s116e.xn--1ob6504fmf40i', strict=True)
+
+ def test_uts46_6321(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----s116e.xn--1ob387jy90hq459k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----s116e.xn--1ob387jy90hq459k', strict=True)
+
+ def test_uts46_6322(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䃚蟥-。-\U0007d498⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䃚蟥-。-\U0007d498⒈', strict=True)
+
+ def test_uts46_6323(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '䃚蟥-。-\U0007d4981.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '䃚蟥-。-\U0007d4981.', strict=True)
+
+ def test_uts46_6324(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----n50a258u.xn---1-up07j.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----n50a258u.xn---1-up07j.', strict=True)
+
+ def test_uts46_6325(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----n50a258u.xn----ecp33805f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----n50a258u.xn----ecp33805f', strict=True)
+
+ def test_uts46_6326(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹸䚵-ꡡ。⺇', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹸䚵-ꡡ。⺇', strict=True)
+
+ def test_uts46_6327(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----bm3an932a1l5d.xn--xvj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----bm3an932a1l5d.xn--xvj', strict=True)
+
+ def test_uts46_6328(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑄳。\u1adc𐹻', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑄳。\u1adc𐹻', strict=True)
+
+ def test_uts46_6329(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--v80d.xn--2rf1154i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--v80d.xn--2rf1154i', strict=True)
+
+ def test_uts46_6330(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐹻.⒎𑂵ں\u0602', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐹻.⒎𑂵ں\u0602', strict=True)
+
+ def test_uts46_6331(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐹻.⒎𑂵ں\u0602', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐹻.⒎𑂵ں\u0602', strict=True)
+
+ def test_uts46_6332(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐹻.7.𑂵ں\u0602', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐹻.7.𑂵ں\u0602', strict=True)
+
+ def test_uts46_6333(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≮𐹻.7.𑂵ں\u0602', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≮𐹻.7.𑂵ں\u0602', strict=True)
+
+ def test_uts46_6334(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdhx904g.7.xn--kfb18an307d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdhx904g.7.xn--kfb18an307d', strict=True)
+
+ def test_uts46_6335(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdhx904g.xn--kfb18a325efm3s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdhx904g.xn--kfb18a325efm3s', strict=True)
+
+ def test_uts46_6336(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢔ≠\U0010b242.\u200d𐋢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢔ≠\U0010b242.\u200d𐋢', strict=True)
+
+ def test_uts46_6337(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ᢔ≠\U0010b242.\u200d𐋢', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ᢔ≠\U0010b242.\u200d𐋢', strict=True)
+
+ def test_uts46_6338(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ebf031cf7196a.xn--587c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ebf031cf7196a.xn--587c', strict=True)
+
+ def test_uts46_6339(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ebf031cf7196a.xn--1ug9540g', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ebf031cf7196a.xn--1ug9540g', strict=True)
+
+ def test_uts46_6340(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩁≮\U0006329b≯.٬\U0001ed55⳿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩁≮\U0006329b≯.٬\U0001ed55⳿', strict=True)
+
+ def test_uts46_6341(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩁≮\U0006329b≯.٬\U0001ed55⳿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩁≮\U0006329b≯.٬\U0001ed55⳿', strict=True)
+
+ def test_uts46_6342(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩁≮\U0006329b≯.٬\U0001ed55⳿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩁≮\U0006329b≯.٬\U0001ed55⳿', strict=True)
+
+ def test_uts46_6343(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐩁≮\U0006329b≯.٬\U0001ed55⳿', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐩁≮\U0006329b≯.٬\U0001ed55⳿', strict=True)
+
+ def test_uts46_6344(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdhc0519o0y27b.xn--lib468q0d21a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdhc0519o0y27b.xn--lib468q0d21a', strict=True)
+
+ def test_uts46_6345(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。⺐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。⺐', strict=True)
+
+ def test_uts46_6346(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-。⺐', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-。⺐', strict=True)
+
+ def test_uts46_6347(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-.xn--6vj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-.xn--6vj', strict=True)
+
+ def test_uts46_6348(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0c29𑲬.ٜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0c29𑲬.ٜ', strict=True)
+
+ def test_uts46_6349(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000e0c29𑲬.ٜ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000e0c29𑲬.ٜ', strict=True)
+
+ def test_uts46_6350(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--sn3d59267c.xn--4hb', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--sn3d59267c.xn--4hb', strict=True)
+
+ def test_uts46_6351(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐍺.\U0005a1c3\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐍺.\U0005a1c3\u200c', strict=True)
+
+ def test_uts46_6352(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ie8c.xn--2g51a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ie8c.xn--2g51a', strict=True)
+
+ def test_uts46_6353(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--ie8c.xn--0ug03366c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--ie8c.xn--0ug03366c', strict=True)
+
+ def test_uts46_6354(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ؽۣ.𐨎', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ؽۣ.𐨎', strict=True)
+
+ def test_uts46_6355(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8gb64a.xn--mr9c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8gb64a.xn--mr9c', strict=True)
+
+ def test_uts46_6356(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '漦Ⴙς.\U00061ec0𐴄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '漦Ⴙς.\U00061ec0𐴄', strict=True)
+
+ def test_uts46_6357(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '漦ⴙς.\U00061ec0𐴄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '漦ⴙς.\U00061ec0𐴄', strict=True)
+
+ def test_uts46_6358(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '漦ႹΣ.\U00061ec0𐴄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '漦ႹΣ.\U00061ec0𐴄', strict=True)
+
+ def test_uts46_6359(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '漦ⴙσ.\U00061ec0𐴄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '漦ⴙσ.\U00061ec0𐴄', strict=True)
+
+ def test_uts46_6360(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '漦Ⴙσ.\U00061ec0𐴄', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '漦Ⴙσ.\U00061ec0𐴄', strict=True)
+
+ def test_uts46_6361(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa772sl47b.xn--9d0d3162t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa772sl47b.xn--9d0d3162t', strict=True)
+
+ def test_uts46_6362(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa972sl47b.xn--9d0d3162t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa972sl47b.xn--9d0d3162t', strict=True)
+
+ def test_uts46_6363(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa947d717e.xn--9d0d3162t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa947d717e.xn--9d0d3162t', strict=True)
+
+ def test_uts46_6364(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa157d717e.xn--9d0d3162t', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa157d717e.xn--9d0d3162t', strict=True)
+
+ def test_uts46_6365(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹫踧್\U000ab687.\U000dc003⒈𝨤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹫踧್\U000ab687.\U000dc003⒈𝨤', strict=True)
+
+ def test_uts46_6366(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐹫踧್\U000ab687.\U000dc0031.𝨤', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐹫踧್\U000ab687.\U000dc0031.𝨤', strict=True)
+
+ def test_uts46_6367(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8tc1437dro0d6q06h.xn--1-p948l.xn--m82h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8tc1437dro0d6q06h.xn--1-p948l.xn--m82h', strict=True)
+
+ def test_uts46_6368(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8tc1437dro0d6q06h.xn--tsh2611ncu71e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8tc1437dro0d6q06h.xn--tsh2611ncu71e', strict=True)
+
+ def test_uts46_6369(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d≮.\U000e07ea\U00039acf-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d≮.\U000e07ea\U00039acf-', strict=True)
+
+ def test_uts46_6370(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d≮.\U000e07ea\U00039acf-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d≮.\U000e07ea\U00039acf-', strict=True)
+
+ def test_uts46_6371(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d≮.\U000e07ea\U00039acf-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d≮.\U000e07ea\U00039acf-', strict=True)
+
+ def test_uts46_6372(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d≮.\U000e07ea\U00039acf-', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d≮.\U000e07ea\U00039acf-', strict=True)
+
+ def test_uts46_6373(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--gdh.xn----cr99a1w710b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--gdh.xn----cr99a1w710b', strict=True)
+
+ def test_uts46_6374(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug95g.xn----cr99a1w710b', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug95g.xn----cr99a1w710b', strict=True)
+
+ def test_uts46_6375(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200d襔。Ⴜ5ꡮ\U0007574f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200d襔。Ⴜ5ꡮ\U0007574f', strict=True)
+
+ def test_uts46_6376(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\u200d\u200d襔。ⴜ5ꡮ\U0007574f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\u200d\u200d襔。ⴜ5ꡮ\U0007574f', strict=True)
+
+ def test_uts46_6377(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2u2a.xn--5-uws5848bpf44e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2u2a.xn--5-uws5848bpf44e', strict=True)
+
+ def test_uts46_6378(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1uga7691f.xn--5-uws5848bpf44e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1uga7691f.xn--5-uws5848bpf44e', strict=True)
+
+ def test_uts46_6379(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2u2a.xn--5-r1g7167ipfw8d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2u2a.xn--5-r1g7167ipfw8d', strict=True)
+
+ def test_uts46_6380(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1uga7691f.xn--5-r1g7167ipfw8d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1uga7691f.xn--5-r1g7167ipfw8d', strict=True)
+
+ def test_uts46_6381(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫜𑌼\u200d.婀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫜𑌼\u200d.婀', strict=True)
+
+ def test_uts46_6382(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐫜𑌼\u200d.婀', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐫜𑌼\u200d.婀', strict=True)
+
+ def test_uts46_6383(self):
+ self.assertEqual(idna.decode('xn--ix9c26l.xn--q0s', uts46=True, strict=True), '𐫜𑌼.婀')
+ self.assertEqual(idna.encode('xn--ix9c26l.xn--q0s', uts46=True, strict=True), b'xn--ix9c26l.xn--q0s')
+
+ def test_uts46_6384(self):
+ self.assertEqual(idna.decode('𐫜𑌼.婀', uts46=True, strict=True), '𐫜𑌼.婀')
+ self.assertEqual(idna.encode('𐫜𑌼.婀', uts46=True, strict=True), b'xn--ix9c26l.xn--q0s')
+
+ def test_uts46_6385(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ugx063g1if.xn--q0s', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ugx063g1if.xn--q0s', strict=True)
+
+ def test_uts46_6386(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅽︒︒𐹯。⬳᩸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅽︒︒𐹯。⬳᩸', strict=True)
+
+ def test_uts46_6387(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '󠅽。。𐹯。⬳᩸', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '󠅽。。𐹯。⬳᩸', strict=True)
+
+ def test_uts46_6388(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '..xn--no0d.xn--7of309e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '..xn--no0d.xn--7of309e', strict=True)
+
+ def test_uts46_6389(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--y86ca186j.xn--7of309e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--y86ca186j.xn--7of309e', strict=True)
+
+ def test_uts46_6390(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟖ß.󠄐-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟖ß.󠄐-?Ⴏ', strict=True)
+
+ def test_uts46_6391(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ß.󠄐-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ß.󠄐-?Ⴏ', strict=True)
+
+ def test_uts46_6392(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ß.󠄐-?ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ß.󠄐-?ⴏ', strict=True)
+
+ def test_uts46_6393(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8SS.󠄐-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8SS.󠄐-?Ⴏ', strict=True)
+
+ def test_uts46_6394(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ss.󠄐-?ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ss.󠄐-?ⴏ', strict=True)
+
+ def test_uts46_6395(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ss.󠄐-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ss.󠄐-?Ⴏ', strict=True)
+
+ def test_uts46_6396(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ss.xn---?-261a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ss.xn---?-261a', strict=True)
+
+ def test_uts46_6397(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-qfa.xn---?-261a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-qfa.xn---?-261a', strict=True)
+
+ def test_uts46_6398(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟖ß.󠄐-?ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟖ß.󠄐-?ⴏ', strict=True)
+
+ def test_uts46_6399(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟖SS.󠄐-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟖SS.󠄐-?Ⴏ', strict=True)
+
+ def test_uts46_6400(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟖ss.󠄐-?ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟖ss.󠄐-?ⴏ', strict=True)
+
+ def test_uts46_6401(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟖ss.󠄐-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟖ss.󠄐-?Ⴏ', strict=True)
+
+ def test_uts46_6402(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ss.xn---?-gfk', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ss.xn---?-gfk', strict=True)
+
+ def test_uts46_6403(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-qfa.xn---?-gfk', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-qfa.xn---?-gfk', strict=True)
+
+ def test_uts46_6404(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ss.-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ss.-?Ⴏ', strict=True)
+
+ def test_uts46_6405(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8ss.-?ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8ss.-?ⴏ', strict=True)
+
+ def test_uts46_6406(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8SS.-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8SS.-?Ⴏ', strict=True)
+
+ def test_uts46_6407(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-qfa.-?ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-qfa.-?ⴏ', strict=True)
+
+ def test_uts46_6408(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'XN--8-QFA.-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'XN--8-QFA.-?Ⴏ', strict=True)
+
+ def test_uts46_6409(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Xn--8-Qfa.-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Xn--8-Qfa.-?Ⴏ', strict=True)
+
+ def test_uts46_6410(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--8-qfa.-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--8-qfa.-?Ⴏ', strict=True)
+
+ def test_uts46_6411(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝟖Ss.󠄐-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝟖Ss.󠄐-?Ⴏ', strict=True)
+
+ def test_uts46_6412(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '8Ss.󠄐-?Ⴏ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '8Ss.󠄐-?Ⴏ', strict=True)
+
+ def test_uts46_6413(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200d\U000e02df.\u200c𐹣Ⴅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200d\U000e02df.\u200c𐹣Ⴅ', strict=True)
+
+ def test_uts46_6414(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '-\u200d\U000e02df.\u200c𐹣ⴅ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '-\u200d\U000e02df.\u200c𐹣ⴅ', strict=True)
+
+ def test_uts46_6415(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----s721m.xn--wkj1423e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----s721m.xn--wkj1423e', strict=True)
+
+ def test_uts46_6416(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ugnv7071n.xn--0ugz32cgr0p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ugnv7071n.xn--0ugz32cgr0p', strict=True)
+
+ def test_uts46_6417(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----s721m.xn--dnd9201k', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----s721m.xn--dnd9201k', strict=True)
+
+ def test_uts46_6418(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----ugnv7071n.xn--dnd999e4j4p', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----ugnv7071n.xn--dnd999e4j4p', strict=True)
+
+ def test_uts46_6419(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꦹ\u200d큷\U0003bda1。₂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꦹ\u200d큷\U0003bda1。₂', strict=True)
+
+ def test_uts46_6420(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꦹ\u200d큷\U0003bda1。₂', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꦹ\u200d큷\U0003bda1。₂', strict=True)
+
+ def test_uts46_6421(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꦹ\u200d큷\U0003bda1。2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꦹ\u200d큷\U0003bda1。2', strict=True)
+
+ def test_uts46_6422(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ꦹ\u200d큷\U0003bda1。2', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ꦹ\u200d큷\U0003bda1。2', strict=True)
+
+ def test_uts46_6423(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--0m9as84e2e21c.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--0m9as84e2e21c.c', strict=True)
+
+ def test_uts46_6424(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1ug1435cfkyaoi04d.c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1ug1435cfkyaoi04d.c', strict=True)
+
+ def test_uts46_6425(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '?.🄄\U0001ebd8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '?.🄄\U0001ebd8', strict=True)
+
+ def test_uts46_6426(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '?.3,\U0001ebd8', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '?.3,\U0001ebd8', strict=True)
+
+ def test_uts46_6427(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '?.xn--3,-tb22a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '?.xn--3,-tb22a', strict=True)
+
+ def test_uts46_6428(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '?.xn--3x6hx6f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '?.xn--3x6hx6f', strict=True)
+
+ def test_uts46_6429(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝨖\U00010a59。\u06dd\U000c0876ꣅ⒈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝨖\U00010a59。\u06dd\U000c0876ꣅ⒈', strict=True)
+
+ def test_uts46_6430(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𝨖\U00010a59。\u06dd\U000c0876ꣅ1.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𝨖\U00010a59。\u06dd\U000c0876ꣅ1.', strict=True)
+
+ def test_uts46_6431(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rt9cl956a.xn--1-dxc8545j0693i.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rt9cl956a.xn--1-dxc8545j0693i.', strict=True)
+
+ def test_uts46_6432(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--rt9cl956a.xn--tlb403mxv4g06s9i', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--rt9cl956a.xn--tlb403mxv4g06s9i', strict=True)
+
+ def test_uts46_6433(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00092223סڸ。Ⴈ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00092223סڸ。Ⴈ\u200d', strict=True)
+
+ def test_uts46_6434(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U00092223סڸ。ⴈ\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U00092223סڸ。ⴈ\u200d', strict=True)
+
+ def test_uts46_6435(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--meb44b57607c.xn--zkj', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--meb44b57607c.xn--zkj', strict=True)
+
+ def test_uts46_6436(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--meb44b57607c.xn--1ug232c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--meb44b57607c.xn--1ug232c', strict=True)
+
+ def test_uts46_6437(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--meb44b57607c.xn--gnd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--meb44b57607c.xn--gnd', strict=True)
+
+ def test_uts46_6438(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--meb44b57607c.xn--gnd699e', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--meb44b57607c.xn--gnd699e', strict=True)
+
+ def test_uts46_6439(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c06b6𝨱ߦ⒈.𑗝髯\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c06b6𝨱ߦ⒈.𑗝髯\u200c', strict=True)
+
+ def test_uts46_6440(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U000c06b6𝨱ߦ1..𑗝髯\u200c', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U000c06b6𝨱ߦ1..𑗝髯\u200c', strict=True)
+
+ def test_uts46_6441(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-idd62296a1fr6e..xn--uj6at43v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-idd62296a1fr6e..xn--uj6at43v', strict=True)
+
+ def test_uts46_6442(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1-idd62296a1fr6e..xn--0ugx259bocxd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1-idd62296a1fr6e..xn--0ugx259bocxd', strict=True)
+
+ def test_uts46_6443(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--etb477lq931a1f58e.xn--uj6at43v', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--etb477lq931a1f58e.xn--uj6at43v', strict=True)
+
+ def test_uts46_6444(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--etb477lq931a1f58e.xn--0ugx259bocxd', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--etb477lq931a1f58e.xn--0ugx259bocxd', strict=True)
+
+ def test_uts46_6445(self):
+ self.assertEqual(idna.decode('𐫀.ډ𑌀', uts46=True, strict=True), '𐫀.ډ𑌀')
+ self.assertEqual(idna.encode('𐫀.ډ𑌀', uts46=True, strict=True), b'xn--pw9c.xn--fjb8658k')
+
+ def test_uts46_6446(self):
+ self.assertEqual(idna.decode('𐫀.ډ𑌀', uts46=True, strict=True), '𐫀.ډ𑌀')
+ self.assertEqual(idna.encode('𐫀.ډ𑌀', uts46=True, strict=True), b'xn--pw9c.xn--fjb8658k')
+
+ def test_uts46_6447(self):
+ self.assertEqual(idna.decode('xn--pw9c.xn--fjb8658k', uts46=True, strict=True), '𐫀.ډ𑌀')
+ self.assertEqual(idna.encode('xn--pw9c.xn--fjb8658k', uts46=True, strict=True), b'xn--pw9c.xn--fjb8658k')
+
+ def test_uts46_6448(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑋪.𐳝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑋪.𐳝', strict=True)
+
+ def test_uts46_6449(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑋪.𐳝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑋪.𐳝', strict=True)
+
+ def test_uts46_6450(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑋪.𐲝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑋪.𐲝', strict=True)
+
+ def test_uts46_6451(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--fm1d.xn--5c0d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--fm1d.xn--5c0d', strict=True)
+
+ def test_uts46_6452(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑋪.𐲝', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑋪.𐲝', strict=True)
+
+ def test_uts46_6453(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠膣。ྃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠膣。ྃ', strict=True)
+
+ def test_uts46_6454(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '≠膣。ྃ', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '≠膣。ྃ', strict=True)
+
+ def test_uts46_6455(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1chy468a.xn--2ed', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1chy468a.xn--2ed', strict=True)
+
+ def test_uts46_6456(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007000e-ݽ。ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007000e-ݽ。ß', strict=True)
+
+ def test_uts46_6457(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007000e-ݽ。ß', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007000e-ݽ。ß', strict=True)
+
+ def test_uts46_6458(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007000e-ݽ。SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007000e-ݽ。SS', strict=True)
+
+ def test_uts46_6459(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007000e-ݽ。ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007000e-ݽ。ss', strict=True)
+
+ def test_uts46_6460(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007000e-ݽ。Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007000e-ݽ。Ss', strict=True)
+
+ def test_uts46_6461(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----j6c95618k.ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----j6c95618k.ss', strict=True)
+
+ def test_uts46_6462(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn----j6c95618k.xn--zca', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn----j6c95618k.xn--zca', strict=True)
+
+ def test_uts46_6463(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007000e-ݽ。SS', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007000e-ݽ。SS', strict=True)
+
+ def test_uts46_6464(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007000e-ݽ。ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007000e-ݽ。ss', strict=True)
+
+ def test_uts46_6465(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '\U0007000e-ݽ。Ss', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '\U0007000e-ݽ。Ss', strict=True)
+
+ def test_uts46_6466(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς𐹠ᡚ𑄳.⾭𐹽\U0003d416𐫜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς𐹠ᡚ𑄳.⾭𐹽\U0003d416𐫜', strict=True)
+
+ def test_uts46_6467(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'ς𐹠ᡚ𑄳.靑𐹽\U0003d416𐫜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'ς𐹠ᡚ𑄳.靑𐹽\U0003d416𐫜', strict=True)
+
+ def test_uts46_6468(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ𐹠ᡚ𑄳.靑𐹽\U0003d416𐫜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ𐹠ᡚ𑄳.靑𐹽\U0003d416𐫜', strict=True)
+
+ def test_uts46_6469(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ𐹠ᡚ𑄳.靑𐹽\U0003d416𐫜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ𐹠ᡚ𑄳.靑𐹽\U0003d416𐫜', strict=True)
+
+ def test_uts46_6470(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--4xa656hp23pxmc.xn--es5a888tvjc2u15h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--4xa656hp23pxmc.xn--es5a888tvjc2u15h', strict=True)
+
+ def test_uts46_6471(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--3xa856hp23pxmc.xn--es5a888tvjc2u15h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--3xa856hp23pxmc.xn--es5a888tvjc2u15h', strict=True)
+
+ def test_uts46_6472(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'Σ𐹠ᡚ𑄳.⾭𐹽\U0003d416𐫜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'Σ𐹠ᡚ𑄳.⾭𐹽\U0003d416𐫜', strict=True)
+
+ def test_uts46_6473(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'σ𐹠ᡚ𑄳.⾭𐹽\U0003d416𐫜', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'σ𐹠ᡚ𑄳.⾭𐹽\U0003d416𐫜', strict=True)
+
+ def test_uts46_6474(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋷。\u200d', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋷。\u200d', strict=True)
+
+ def test_uts46_6475(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--r97c.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--r97c.', strict=True)
+
+ def test_uts46_6476(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𐋷.', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𐋷.', strict=True)
+
+ def test_uts46_6477(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--r97c.xn--1ug', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--r97c.xn--1ug', strict=True)
+
+ def test_uts46_6478(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑰳𑈯。⥪', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑰳𑈯。⥪', strict=True)
+
+ def test_uts46_6479(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--2g1d14o.xn--jti', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--2g1d14o.xn--jti', strict=True)
+
+ def test_uts46_6480(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑆀䁴\U000649e3.Ⴕ𝟜\u200c͈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑆀䁴\U000649e3.Ⴕ𝟜\u200c͈', strict=True)
+
+ def test_uts46_6481(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑆀䁴\U000649e3.Ⴕ4\u200c͈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑆀䁴\U000649e3.Ⴕ4\u200c͈', strict=True)
+
+ def test_uts46_6482(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑆀䁴\U000649e3.ⴕ4\u200c͈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑆀䁴\U000649e3.ⴕ4\u200c͈', strict=True)
+
+ def test_uts46_6483(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1mnx647cg3x1b.xn--4-zfb5123a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1mnx647cg3x1b.xn--4-zfb5123a', strict=True)
+
+ def test_uts46_6484(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1mnx647cg3x1b.xn--4-zfb502tlsl', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1mnx647cg3x1b.xn--4-zfb502tlsl', strict=True)
+
+ def test_uts46_6485(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '𑆀䁴\U000649e3.ⴕ𝟜\u200c͈', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '𑆀䁴\U000649e3.ⴕ𝟜\u200c͈', strict=True)
+
+ def test_uts46_6486(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1mnx647cg3x1b.xn--4-zfb324h', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1mnx647cg3x1b.xn--4-zfb324h', strict=True)
+
+ def test_uts46_6487(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--1mnx647cg3x1b.xn--4-zfb324h32o', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--1mnx647cg3x1b.xn--4-zfb324h32o', strict=True)
+
+ def test_uts46_6488(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?\u200cႴ.𐋮\u200d≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?\u200cႴ.𐋮\u200d≠', strict=True)
+
+ def test_uts46_6489(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?\u200cႴ.𐋮\u200d≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?\u200cႴ.𐋮\u200d≠', strict=True)
+
+ def test_uts46_6490(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?\u200cⴔ.𐋮\u200d≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?\u200cⴔ.𐋮\u200d≠', strict=True)
+
+ def test_uts46_6491(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?\u200cⴔ.𐋮\u200d≠', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?\u200cⴔ.𐋮\u200d≠', strict=True)
+
+ def test_uts46_6492(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--?-fwsr13r.xn--1chz659f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--?-fwsr13r.xn--1chz659f', strict=True)
+
+ def test_uts46_6493(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--?-sgn310doh5c.xn--1ug73gl146a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--?-sgn310doh5c.xn--1ug73gl146a', strict=True)
+
+ def test_uts46_6494(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--?-c1g3623d.xn--1chz659f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--?-c1g3623d.xn--1chz659f', strict=True)
+
+ def test_uts46_6495(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--?-c1g798iy27d.xn--1ug73gl146a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--?-c1g798iy27d.xn--1ug73gl146a', strict=True)
+
+ def test_uts46_6496(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?ⴔ.xn--1chz659f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?ⴔ.xn--1chz659f', strict=True)
+
+ def test_uts46_6497(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?Ⴔ.XN--1CHZ659F', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?Ⴔ.XN--1CHZ659F', strict=True)
+
+ def test_uts46_6498(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?Ⴔ.xn--1chz659f', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?Ⴔ.xn--1chz659f', strict=True)
+
+ def test_uts46_6499(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?\u200cⴔ.xn--1ug73gl146a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?\u200cⴔ.xn--1ug73gl146a', strict=True)
+
+ def test_uts46_6500(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?\u200cႴ.XN--1UG73GL146A', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?\u200cႴ.XN--1UG73GL146A', strict=True)
+
+ def test_uts46_6501(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?\u200cႴ.xn--1ug73gl146a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?\u200cႴ.xn--1ug73gl146a', strict=True)
+
+ def test_uts46_6502(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--?-fwsr13r.xn--1ug73gl146a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--?-fwsr13r.xn--1ug73gl146a', strict=True)
+
+ def test_uts46_6503(self):
+ self.assertRaises(idna.IDNAError, idna.decode, 'xn--?-c1g3623d.xn--1ug73gl146a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, 'xn--?-c1g3623d.xn--1ug73gl146a', strict=True)
+
+ def test_uts46_6504(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?Ⴔ.xn--1ug73gl146a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?Ⴔ.xn--1ug73gl146a', strict=True)
+
+ def test_uts46_6505(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?ⴔ.xn--1ug73gl146a', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?ⴔ.xn--1ug73gl146a', strict=True)
+
+ def test_uts46_6506(self):
+ self.assertRaises(idna.IDNAError, idna.decode, '憡?Ⴔ.XN--1UG73GL146A', strict=True)
+ self.assertRaises(idna.IDNAError, idna.encode, '憡?Ⴔ.XN--1UG73GL146A', strict=True)
+
diff --git a/contrib/python/idna/py3/tests/ya.make b/contrib/python/idna/py3/tests/ya.make
index a481e959b1f..41ad8e8cccf 100644
--- a/contrib/python/idna/py3/tests/ya.make
+++ b/contrib/python/idna/py3/tests/ya.make
@@ -4,14 +4,7 @@ PEERDIR(
contrib/python/idna
)
-TEST_SRCS(
- test_idna_compat.py
- test_idna.py
- test_intranges.py
- test_idna_codec.py
- test_idna_other.py
- test_idna_uts46.py
-)
+ALL_PYTEST_SRCS()
NO_LINT()
diff --git a/contrib/python/idna/py3/ya.make b/contrib/python/idna/py3/ya.make
index 24aa33c7333..2dfd2939362 100644
--- a/contrib/python/idna/py3/ya.make
+++ b/contrib/python/idna/py3/ya.make
@@ -2,7 +2,7 @@
PY3_LIBRARY()
-VERSION(3.10)
+VERSION(3.11)
LICENSE(BSD-3-Clause)
diff --git a/contrib/python/psutil/py3/.dist-info/METADATA b/contrib/python/psutil/py3/.dist-info/METADATA
index 685d2e23f38..df3c87860ee 100644
--- a/contrib/python/psutil/py3/.dist-info/METADATA
+++ b/contrib/python/psutil/py3/.dist-info/METADATA
@@ -1,7 +1,7 @@
Metadata-Version: 2.1
Name: psutil
-Version: 7.0.0
-Summary: Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7.
+Version: 7.1.2
+Summary: Cross-platform lib for process and system monitoring.
Home-page: https://github.com/giampaolo/psutil
Author: Giampaolo Rodola
Author-email: [email protected]
@@ -10,19 +10,19 @@ Keywords: ps,top,kill,free,lsof,netstat,nice,tty,ionice,uptime,taskmgr,process,d
Platform: Platform Independent
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
-Classifier: Environment :: Win32 (MS Windows)
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: System Administrators
-Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows :: Windows 10
+Classifier: Operating System :: Microsoft :: Windows :: Windows 11
Classifier: Operating System :: Microsoft :: Windows :: Windows 7
Classifier: Operating System :: Microsoft :: Windows :: Windows 8
Classifier: Operating System :: Microsoft :: Windows :: Windows 8.1
Classifier: Operating System :: Microsoft :: Windows :: Windows Server 2003
Classifier: Operating System :: Microsoft :: Windows :: Windows Server 2008
Classifier: Operating System :: Microsoft :: Windows :: Windows Vista
+Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: Microsoft
Classifier: Operating System :: OS Independent
Classifier: Operating System :: POSIX :: AIX
@@ -41,7 +41,6 @@ Classifier: Programming Language :: Python
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: System :: Benchmark
-Classifier: Topic :: System :: Hardware :: Hardware Drivers
Classifier: Topic :: System :: Hardware
Classifier: Topic :: System :: Monitoring
Classifier: Topic :: System :: Networking :: Monitoring :: Hardware Watchdog
@@ -55,10 +54,12 @@ Description-Content-Type: text/x-rst
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: pytest ; extra == 'dev'
+Requires-Dist: pytest-instafail ; extra == 'dev'
+Requires-Dist: pytest-subtests ; extra == 'dev'
Requires-Dist: pytest-xdist ; extra == 'dev'
Requires-Dist: setuptools ; extra == 'dev'
Requires-Dist: abi3audit ; extra == 'dev'
-Requires-Dist: black (==24.10.0) ; extra == 'dev'
+Requires-Dist: black ; extra == 'dev'
Requires-Dist: check-manifest ; extra == 'dev'
Requires-Dist: coverage ; extra == 'dev'
Requires-Dist: packaging ; extra == 'dev'
@@ -73,20 +74,30 @@ Requires-Dist: sphinx ; extra == 'dev'
Requires-Dist: sphinx-rtd-theme ; extra == 'dev'
Requires-Dist: toml-sort ; extra == 'dev'
Requires-Dist: twine ; extra == 'dev'
+Requires-Dist: validate-pyproject[all] ; extra == 'dev'
Requires-Dist: virtualenv ; extra == 'dev'
Requires-Dist: vulture ; extra == 'dev'
Requires-Dist: wheel ; extra == 'dev'
+Requires-Dist: pyreadline ; (os_name == "nt") and extra == 'dev'
+Requires-Dist: pywin32 ; (os_name == "nt" and platform_python_implementation != "PyPy") and extra == 'dev'
+Requires-Dist: wheel ; (os_name == "nt" and platform_python_implementation != "PyPy") and extra == 'dev'
+Requires-Dist: wmi ; (os_name == "nt" and platform_python_implementation != "PyPy") and extra == 'dev'
Provides-Extra: test
Requires-Dist: pytest ; extra == 'test'
+Requires-Dist: pytest-instafail ; extra == 'test'
+Requires-Dist: pytest-subtests ; extra == 'test'
Requires-Dist: pytest-xdist ; extra == 'test'
Requires-Dist: setuptools ; extra == 'test'
+Requires-Dist: pywin32 ; (os_name == "nt" and platform_python_implementation != "PyPy") and extra == 'test'
+Requires-Dist: wheel ; (os_name == "nt" and platform_python_implementation != "PyPy") and extra == 'test'
+Requires-Dist: wmi ; (os_name == "nt" and platform_python_implementation != "PyPy") and extra == 'test'
| |downloads| |stars| |forks| |contributors| |coverage|
-| |version| |py-versions| |packages| |license|
+| |version| |packages| |license|
| |github-actions-wheels| |github-actions-bsd| |doc| |twitter| |tidelift|
.. |downloads| image:: https://img.shields.io/pypi/dm/psutil.svg
- :target: https://pepy.tech/project/psutil
+ :target: https://clickpy.clickhouse.com/dashboard/psutil
:alt: Downloads
.. |stars| image:: https://img.shields.io/github/stars/giampaolo/psutil.svg
@@ -121,9 +132,6 @@ Requires-Dist: setuptools ; extra == 'test'
:target: https://pypi.org/project/psutil
:alt: Latest version
-.. |py-versions| image:: https://img.shields.io/pypi/pyversions/psutil.svg
- :alt: Supported Python versions
-
.. |packages| image:: https://repology.org/badge/tiny-repos/python:psutil.svg
:target: https://repology.org/metapackage/python:psutil/versions
:alt: Binary packages
@@ -542,5 +550,3 @@ Portings
- Rust: https://github.com/rust-psutil/rust-psutil
- Nim: https://github.com/johnscillieri/psutil-nim
-
-
diff --git a/contrib/python/psutil/py3/.yandex_meta/yamaker.yaml b/contrib/python/psutil/py3/.yandex_meta/yamaker.yaml
index 7659f66f4fc..9ea6d958618 100644
--- a/contrib/python/psutil/py3/.yandex_meta/yamaker.yaml
+++ b/contrib/python/psutil/py3/.yandex_meta/yamaker.yaml
@@ -1,6 +1,9 @@
disable_includes:
- arch/aix/ifaddrs.h
- - arch/solaris/v10/ifaddrs.h
+ - ../../arch/bsd/init.h
+ - ../../arch/freebsd/init.h
+ - ../../arch/openbsd/init.h
+ - ../../arch/netbsd/init.h
exclude:
- psutil/_psutil_aix.c
- psutil/_psutil_bsd.c
diff --git a/contrib/python/psutil/py3/README.rst b/contrib/python/psutil/py3/README.rst
index 16c756c50e2..9eb011aa0c6 100644
--- a/contrib/python/psutil/py3/README.rst
+++ b/contrib/python/psutil/py3/README.rst
@@ -1,9 +1,9 @@
| |downloads| |stars| |forks| |contributors| |coverage|
-| |version| |py-versions| |packages| |license|
+| |version| |packages| |license|
| |github-actions-wheels| |github-actions-bsd| |doc| |twitter| |tidelift|
.. |downloads| image:: https://img.shields.io/pypi/dm/psutil.svg
- :target: https://pepy.tech/project/psutil
+ :target: https://clickpy.clickhouse.com/dashboard/psutil
:alt: Downloads
.. |stars| image:: https://img.shields.io/github/stars/giampaolo/psutil.svg
@@ -38,9 +38,6 @@
:target: https://pypi.org/project/psutil
:alt: Latest version
-.. |py-versions| image:: https://img.shields.io/pypi/pyversions/psutil.svg
- :alt: Supported Python versions
-
.. |packages| image:: https://repology.org/badge/tiny-repos/python:psutil.svg
:target: https://repology.org/metapackage/python:psutil/versions
:alt: Binary packages
diff --git a/contrib/python/psutil/py3/patches/01-arcadia.patch b/contrib/python/psutil/py3/patches/01-arcadia.patch
index 6a0b3aff1df..b050ab5beea 100644
--- a/contrib/python/psutil/py3/patches/01-arcadia.patch
+++ b/contrib/python/psutil/py3/patches/01-arcadia.patch
@@ -6,5 +6,5 @@
#include <tchar.h>
+#include <winioctl.h>
- #include "../../_psutil_common.h"
+ #include "../../arch/all/init.h"
diff --git a/contrib/python/psutil/py3/patches/02-unaccepted-pr2064-missing-extern.patch b/contrib/python/psutil/py3/patches/02-unaccepted-pr2064-missing-extern.patch
index 330b9a4d24a..26a9cdc814a 100644
--- a/contrib/python/psutil/py3/patches/02-unaccepted-pr2064-missing-extern.patch
+++ b/contrib/python/psutil/py3/patches/02-unaccepted-pr2064-missing-extern.patch
@@ -1,29 +1,12 @@
-commit a03e18c3d85dd0e4c50be4630afd5bf5cffd9a0e (HEAD -> ymake-refactoring)
-author: thegeorg
-date: 2022-01-24T14:25:44+03:00
-
- Make psutil compile with -fno-common
-
---- contrib/python/psutil/py3/psutil/_psutil_common.c (dd7c6db013778a31c03086c567edb72a9dfa4604)
-+++ contrib/python/psutil/py3/psutil/_psutil_common.c (a03e18c3d85dd0e4c50be4630afd5bf5cffd9a0e)
-@@ -7,6 +7,7 @@
- */
-
+--- contrib/python/psutil/py3/psutil/_psutil_windows.c (index)
++++ contrib/python/psutil/py3/psutil/_psutil_windows.c (working tree)
+@@ -17,6 +17,9 @@
#include <Python.h>
-+#define PSUTIL_MAYBE_EXTERN
- #include "_psutil_common.h"
-
- // ====================================================================
---- contrib/python/psutil/py3/psutil/arch/windows/ntextapi.h (dd7c6db013778a31c03086c567edb72a9dfa4604)
-+++ contrib/python/psutil/py3/psutil/arch/windows/ntextapi.h (a03e18c3d85dd0e4c50be4630afd5bf5cffd9a0e)
-@@ -10,6 +10,10 @@
- #include <winternl.h>
- #include <iphlpapi.h>
+ #include <windows.h>
-+#ifndef PSUTIL_MAYBE_EXTERN
-+#define PSUTIL_MAYBE_EXTERN extern
-+#endif
++#undef PSUTIL_MAYBE_EXTERN
++#define PSUTIL_MAYBE_EXTERN
+
- typedef LONG NTSTATUS;
+ #include "arch/all/init.h"
+ #include "arch/windows/init.h"
- // https://github.com/ajkhoury/TestDll/blob/master/nt_ddk.h
diff --git a/contrib/python/psutil/py3/patches/03-fix-build-on-win.patch b/contrib/python/psutil/py3/patches/03-fix-build-on-win.patch
index bd6f7a9e6cd..7b4ffa16251 100644
--- a/contrib/python/psutil/py3/patches/03-fix-build-on-win.patch
+++ b/contrib/python/psutil/py3/patches/03-fix-build-on-win.patch
@@ -1,5 +1,5 @@
---- contrib/python/psutil/py3/psutil/arch/windows/proc.h (index)
-+++ contrib/python/psutil/py3/psutil/arch/windows/proc.h (working tree)
+--- contrib/python/psutil/py3/psutil/arch/windows/init.h (index)
++++ contrib/python/psutil/py3/psutil/arch/windows/init.h (working tree)
@@ -9,2 +9,2 @@
-PyObject *TimeoutExpired;
-PyObject *TimeoutAbandoned;
diff --git a/contrib/python/psutil/py3/patches/04-fix-build-on-osx-arm64.patch b/contrib/python/psutil/py3/patches/04-fix-build-on-osx-arm64.patch
deleted file mode 100644
index 0d49690eaa1..00000000000
--- a/contrib/python/psutil/py3/patches/04-fix-build-on-osx-arm64.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- contrib/python/psutil/py3/psutil/arch/osx/cpu.c (index)
-+++ contrib/python/psutil/py3/psutil/arch/osx/cpu.c (working tree)
-@@ -31,6 +31,10 @@ For reference, here's the git history with original implementations:
- #include <IOKit/IOKitLib.h>
- #endif
-
-+#if (defined __MAC_OS_X_VERSION_MIN_REQUIRED) && (__MAC_OS_X_VERSION_MIN_REQUIRED < 120000)
-+#define kIOMainPortDefault kIOMasterPortDefault
-+#endif
-+
- #include "../../_psutil_common.h"
- #include "../../_psutil_posix.h"
-
diff --git a/contrib/python/psutil/py3/patches/99-fix-ya.make.patch b/contrib/python/psutil/py3/patches/99-fix-ya.make.patch
index 114f652aab7..a9aee73f4e0 100644
--- a/contrib/python/psutil/py3/patches/99-fix-ya.make.patch
+++ b/contrib/python/psutil/py3/patches/99-fix-ya.make.patch
@@ -1,33 +1,50 @@
---- contrib/python/psutil/py3/ya.make (index)
-+++ contrib/python/psutil/py3/ya.make (working tree)
-@@ -32,6 +29,0 @@ CFLAGS(
+--- contrib/python/psutil/py3/ya.make (index)
++++ contrib/python/psutil/py3/ya.make (working tree)
+@@ -32,7 +29,0 @@ CFLAGS(
- -DPSUTIL_POSIX=1
- -DPSUTIL_LINUX=1
- -DPSUTIL_POSIX=1
- -DPSUTIL_OSX=1
- -DPSUTIL_WINDOWS=1
- -DPSUTIL_SIZEOF_PID_T=4
-@@ -42,30 +33,0 @@ SRCS(
+- -DPSUTIL_MAYBE_EXTERN=extern
+@@ -42,46 +33,2 @@ SRCS(
- psutil/_psutil_linux.c
- psutil/_psutil_osx.c
-- psutil/_psutil_posix.c
- psutil/_psutil_windows.c
+ psutil/arch/all/init.c
+ psutil/arch/all/pids.c
- psutil/arch/linux/disk.c
- psutil/arch/linux/mem.c
- psutil/arch/linux/net.c
- psutil/arch/linux/proc.c
-- psutil/arch/linux/users.c
- psutil/arch/osx/cpu.c
- psutil/arch/osx/disk.c
+- psutil/arch/osx/init.c
- psutil/arch/osx/mem.c
- psutil/arch/osx/net.c
+- psutil/arch/osx/pids.c
- psutil/arch/osx/proc.c
- psutil/arch/osx/sensors.c
- psutil/arch/osx/sys.c
+- psutil/arch/posix/init.c
+- psutil/arch/posix/net.c
+- psutil/arch/posix/proc.c
+- psutil/arch/posix/sysctl.c
+- psutil/arch/posix/users.c
+- psutil/arch/sunos/cpu.c
+- psutil/arch/sunos/disk.c
+- psutil/arch/sunos/environ.c
+- psutil/arch/sunos/mem.c
+- psutil/arch/sunos/net.c
+- psutil/arch/sunos/proc.c
+- psutil/arch/sunos/sys.c
- psutil/arch/windows/cpu.c
- psutil/arch/windows/disk.c
+- psutil/arch/windows/init.c
- psutil/arch/windows/mem.c
- psutil/arch/windows/net.c
+- psutil/arch/windows/pids.c
- psutil/arch/windows/proc.c
- psutil/arch/windows/proc_handles.c
- psutil/arch/windows/proc_info.c
@@ -38,11 +55,10 @@
- psutil/arch/windows/socks.c
- psutil/arch/windows/sys.c
- psutil/arch/windows/wmi.c
-@@ -74,6 +36,86 @@ SRCS(
+@@ -74,5 +36,96 @@ SRCS(
-PY_REGISTER(
- psutil._psutil_linux
- psutil._psutil_osx
-- psutil._psutil_posix
- psutil._psutil_windows
-)
+IF (OS_LINUX)
@@ -53,17 +69,19 @@
+
+ SRCS(
+ psutil/_psutil_linux.c
-+ psutil/_psutil_posix.c
+ psutil/arch/linux/disk.c
+ psutil/arch/linux/mem.c
+ psutil/arch/linux/net.c
+ psutil/arch/linux/proc.c
-+ psutil/arch/linux/users.c
++ psutil/arch/posix/init.c
++ psutil/arch/posix/net.c
++ psutil/arch/posix/proc.c
++ psutil/arch/posix/sysctl.c
++ psutil/arch/posix/users.c
+ )
+
+ PY_REGISTER(
+ psutil._psutil_linux
-+ psutil._psutil_posix
+ )
+ENDIF()
+
@@ -80,19 +98,24 @@
+
+ SRCS(
+ psutil/_psutil_osx.c
-+ psutil/_psutil_posix.c
+ psutil/arch/osx/cpu.c
+ psutil/arch/osx/disk.c
++ psutil/arch/osx/init.c
+ psutil/arch/osx/mem.c
+ psutil/arch/osx/net.c
++ psutil/arch/osx/pids.c
+ psutil/arch/osx/proc.c
+ psutil/arch/osx/sensors.c
+ psutil/arch/osx/sys.c
++ psutil/arch/posix/init.c
++ psutil/arch/posix/net.c
++ psutil/arch/posix/proc.c
++ psutil/arch/posix/sysctl.c
++ psutil/arch/posix/users.c
+ )
+
+ PY_REGISTER(
+ psutil._psutil_osx
-+ psutil._psutil_posix
+ )
+ENDIF()
+
@@ -100,6 +123,7 @@
+ CFLAGS(
+ -DPSUTIL_WINDOWS=1
+ -DPSUTIL_SIZEOF_PID_T=4
++ -DPSUTIL_MAYBE_EXTERN=extern
+ )
+
+ LDFLAGS(
@@ -113,8 +137,10 @@
+ psutil/_psutil_windows.c
+ psutil/arch/windows/cpu.c
+ psutil/arch/windows/disk.c
++ psutil/arch/windows/init.c
+ psutil/arch/windows/mem.c
+ psutil/arch/windows/net.c
++ psutil/arch/windows/pids.c
+ psutil/arch/windows/proc.c
+ psutil/arch/windows/proc_handles.c
+ psutil/arch/windows/proc_info.c
diff --git a/contrib/python/psutil/py3/psutil/__init__.py b/contrib/python/psutil/py3/psutil/__init__.py
index cf4a58057f9..b289c161703 100644
--- a/contrib/python/psutil/py3/psutil/__init__.py
+++ b/contrib/python/psutil/py3/psutil/__init__.py
@@ -30,7 +30,6 @@ import sys
import threading
import time
-
try:
import pwd
except ImportError:
@@ -86,7 +85,6 @@ from ._common import debug
from ._common import memoize_when_activated
from ._common import wrap_numbers as _wrap_numbers
-
if LINUX:
# This is public API and it will be retrieved from _pslinux.py
# via sys.modules.
@@ -194,20 +192,18 @@ __all__.extend(_psplatform.__extra__all__)
# Linux, FreeBSD
if hasattr(_psplatform.Process, "rlimit"):
# Populate global namespace with RLIM* constants.
- from . import _psutil_posix
-
_globals = globals()
_name = None
- for _name in dir(_psutil_posix):
+ for _name in dir(_psplatform.cext):
if _name.startswith('RLIM') and _name.isupper():
- _globals[_name] = getattr(_psutil_posix, _name)
+ _globals[_name] = getattr(_psplatform.cext, _name)
__all__.append(_name)
del _globals, _name
AF_LINK = _psplatform.AF_LINK
__author__ = "Giampaolo Rodola'"
-__version__ = "7.0.0"
+__version__ = "7.1.2"
version_info = tuple(int(num) for num in __version__.split('.'))
_timer = getattr(time, 'monotonic', time.time)
@@ -377,7 +373,11 @@ class Process:
won't reuse the same PID after such a short period of time
(0.01 secs). Technically this is inherently racy, but
practically it should be good enough.
+
+ NOTE: unreliable on FreeBSD and OpenBSD as ctime is subject to
+ system clock updates.
"""
+
if WINDOWS:
# Use create_time() fast method in order to speedup
# `process_iter()`. This means we'll get AccessDenied for
@@ -386,6 +386,11 @@ class Process:
# https://github.com/giampaolo/psutil/issues/2366#issuecomment-2381646555
self._create_time = self._proc.create_time(fast_only=True)
return (self.pid, self._create_time)
+ elif LINUX or NETBSD or OSX:
+ # Use 'monotonic' process starttime since boot to form unique
+ # process identity, since it is stable over changes to system
+ # time.
+ return (self.pid, self._proc.create_time(monotonic=True))
else:
return (self.pid, self.create_time())
@@ -426,12 +431,12 @@ class Process:
# on PID and creation time.
if not isinstance(other, Process):
return NotImplemented
- if OPENBSD or NETBSD: # pragma: no cover
- # Zombie processes on Open/NetBSD have a creation time of
- # 0.0. This covers the case when a process started normally
- # (so it has a ctime), then it turned into a zombie. It's
- # important to do this because is_running() depends on
- # __eq__.
+ if OPENBSD or NETBSD or SUNOS: # pragma: no cover
+ # Zombie processes on Open/NetBSD/illumos/Solaris have a
+ # creation time of 0.0. This covers the case when a process
+ # started normally (so it has a ctime), then it turned into a
+ # zombie. It's important to do this because is_running()
+ # depends on __eq__.
pid1, ident1 = self._ident
pid2, ident2 = other._ident
if pid1 == pid2:
@@ -593,10 +598,13 @@ class Process:
return None
ppid = self.ppid()
if ppid is not None:
- ctime = self.create_time()
+ # Get a fresh (non-cached) ctime in case the system clock
+ # was updated. TODO: use a monotonic ctime on platforms
+ # where it's supported.
+ proc_ctime = Process(self.pid).create_time()
try:
parent = Process(ppid)
- if parent.create_time() <= ctime:
+ if parent.create_time() <= proc_ctime:
return parent
# ...else ppid has been reused by another process
except NoSuchProcess:
@@ -765,8 +773,11 @@ class Process:
def create_time(self):
"""The process creation time as a floating point number
- expressed in seconds since the epoch.
- The return value is cached after first call.
+ expressed in seconds since the epoch (seconds since January 1,
+ 1970, at midnight UTC). The return value, which is cached after
+ first call, is based on the system clock, which means it may be
+ affected by changes such as manual adjustments or time
+ synchronization (e.g. NTP).
"""
if self._create_time is None:
self._create_time = self._proc.create_time()
@@ -964,6 +975,10 @@ class Process:
"""
self._raise_if_pid_reused()
ppid_map = _ppid_map()
+ # Get a fresh (non-cached) ctime in case the system clock was
+ # updated. TODO: use a monotonic ctime on platforms where it's
+ # supported.
+ proc_ctime = Process(self.pid).create_time()
ret = []
if not recursive:
for pid, ppid in ppid_map.items():
@@ -972,7 +987,7 @@ class Process:
child = Process(pid)
# if child happens to be older than its parent
# (self) it means child's PID has been reused
- if self.create_time() <= child.create_time():
+ if proc_ctime <= child.create_time():
ret.append(child)
except (NoSuchProcess, ZombieProcess):
pass
@@ -998,7 +1013,7 @@ class Process:
child = Process(child_pid)
# if child happens to be older than its parent
# (self) it means child's PID has been reused
- intime = self.create_time() <= child.create_time()
+ intime = proc_ctime <= child.create_time()
if intime:
ret.append(child)
stack.append(child_pid)
@@ -1484,7 +1499,7 @@ def process_iter(attrs=None, ad_value=None):
Every new Process instance is only created once and then cached
into an internal table which is updated every time this is used.
- Cache can optionally be cleared via `process_iter.clear_cache()`.
+ Cache can optionally be cleared via `process_iter.cache_clear()`.
The sorting order in which processes are yielded is based on
their PIDs.
@@ -2352,9 +2367,12 @@ if hasattr(_psplatform, "sensors_battery"):
def boot_time():
- """Return the system boot time expressed in seconds since the epoch."""
- # Note: we are not caching this because it is subject to
- # system clock updates.
+ """Return the system boot time expressed in seconds since the epoch
+ (seconds since January 1, 1970, at midnight UTC). The returned
+ value is based on the system clock, which means it may be affected
+ by changes such as manual adjustments or time synchronization (e.g.
+ NTP).
+ """
return _psplatform.boot_time()
diff --git a/contrib/python/psutil/py3/psutil/_common.py b/contrib/python/psutil/py3/psutil/_common.py
index 4096c0a18c8..51c798b4c67 100644
--- a/contrib/python/psutil/py3/psutil/_common.py
+++ b/contrib/python/psutil/py3/psutil/_common.py
@@ -22,7 +22,6 @@ from socket import AF_INET
from socket import SOCK_DGRAM
from socket import SOCK_STREAM
-
try:
from socket import AF_INET6
except ImportError:
@@ -409,7 +408,7 @@ def memoize(fun):
except KeyError:
try:
ret = cache[key] = fun(*args, **kwargs)
- except Exception as err: # noqa: BLE001
+ except Exception as err:
raise err from None
return ret
@@ -458,14 +457,14 @@ def memoize_when_activated(fun):
# case 2: we never entered oneshot() ctx
try:
return fun(self)
- except Exception as err: # noqa: BLE001
+ except Exception as err:
raise err from None
except KeyError:
# case 3: we entered oneshot() ctx but there's no cache
# for this entry yet
try:
ret = fun(self)
- except Exception as err: # noqa: BLE001
+ except Exception as err:
raise err from None
try:
self._cache[fun] = ret
@@ -523,7 +522,6 @@ def path_exists_strict(path):
return True
-@memoize
def supports_ipv6():
"""Return True if IPv6 is supported on this platform."""
if not socket.has_ipv6 or AF_INET6 is None:
diff --git a/contrib/python/psutil/py3/psutil/_psaix.py b/contrib/python/psutil/py3/psutil/_psaix.py
index ba2725fdc10..a84abe3f53f 100644
--- a/contrib/python/psutil/py3/psutil/_psaix.py
+++ b/contrib/python/psutil/py3/psutil/_psaix.py
@@ -17,7 +17,6 @@ from collections import namedtuple
from . import _common
from . import _psposix
from . import _psutil_aix as cext
-from . import _psutil_posix as cext_posix
from ._common import NIC_DUPLEX_FULL
from ._common import NIC_DUPLEX_HALF
from ._common import NIC_DUPLEX_UNKNOWN
@@ -29,7 +28,6 @@ from ._common import get_procfs_path
from ._common import memoize_when_activated
from ._common import usage_percent
-
__extra__all__ = ["PROCFS_PATH"]
@@ -42,8 +40,8 @@ HAS_THREADS = hasattr(cext, "proc_threads")
HAS_NET_IO_COUNTERS = hasattr(cext, "net_io_counters")
HAS_PROC_IO_COUNTERS = hasattr(cext, "proc_io_counters")
-PAGE_SIZE = cext_posix.getpagesize()
-AF_LINK = cext_posix.AF_LINK
+PAGE_SIZE = cext.getpagesize()
+AF_LINK = cext.AF_LINK
PROC_STATUSES = {
cext.SIDL: _common.STATUS_IDLE,
@@ -195,7 +193,7 @@ def disk_partitions(all=False):
# =====================================================================
-net_if_addrs = cext_posix.net_if_addrs
+net_if_addrs = cext.net_if_addrs
if HAS_NET_IO_COUNTERS:
net_io_counters = cext.net_io_counters
@@ -234,8 +232,8 @@ def net_if_stats():
names = {x[0] for x in net_if_addrs()}
ret = {}
for name in names:
- mtu = cext_posix.net_if_mtu(name)
- flags = cext_posix.net_if_flags(name)
+ mtu = cext.net_if_mtu(name)
+ flags = cext.net_if_flags(name)
# try to get speed and duplex
# TODO: rewrite this in C (entstat forks, so use truss -f to follow.
@@ -449,11 +447,11 @@ class Process:
@wrap_exceptions
def nice_get(self):
- return cext_posix.getpriority(self.pid)
+ return cext.proc_priority_get(self.pid)
@wrap_exceptions
def nice_set(self, value):
- return cext_posix.setpriority(self.pid, value)
+ return cext.proc_priority_set(self.pid, value)
@wrap_exceptions
def ppid(self):
diff --git a/contrib/python/psutil/py3/psutil/_psbsd.py b/contrib/python/psutil/py3/psutil/_psbsd.py
index 13bd926fabf..e96a29914e0 100644
--- a/contrib/python/psutil/py3/psutil/_psbsd.py
+++ b/contrib/python/psutil/py3/psutil/_psbsd.py
@@ -15,7 +15,6 @@ from xml.etree import ElementTree # noqa: ICN001
from . import _common
from . import _psposix
from . import _psutil_bsd as cext
-from . import _psutil_posix as cext_posix
from ._common import FREEBSD
from ._common import NETBSD
from ._common import OPENBSD
@@ -29,7 +28,6 @@ from ._common import memoize
from ._common import memoize_when_activated
from ._common import usage_percent
-
__extra__all__ = []
@@ -95,13 +93,10 @@ TCP_STATUSES = {
cext.PSUTIL_CONN_NONE: _common.CONN_NONE,
}
-PAGESIZE = cext_posix.getpagesize()
-AF_LINK = cext_posix.AF_LINK
+PAGESIZE = cext.getpagesize()
+AF_LINK = cext.AF_LINK
-HAS_PER_CPU_TIMES = hasattr(cext, "per_cpu_times")
HAS_PROC_NUM_THREADS = hasattr(cext, "proc_num_threads")
-HAS_PROC_OPEN_FILES = hasattr(cext, 'proc_open_files')
-HAS_PROC_NUM_FDS = hasattr(cext, 'proc_num_fds')
kinfo_proc_map = dict(
ppid=0,
@@ -240,36 +235,14 @@ def cpu_times():
return scputimes(user, nice, system, idle, irq)
-if HAS_PER_CPU_TIMES:
-
- def per_cpu_times():
- """Return system CPU times as a namedtuple."""
- ret = []
- for cpu_t in cext.per_cpu_times():
- user, nice, system, idle, irq = cpu_t
- item = scputimes(user, nice, system, idle, irq)
- ret.append(item)
- return ret
-
-else:
- # XXX
- # Ok, this is very dirty.
- # On FreeBSD < 8 we cannot gather per-cpu information, see:
- # https://github.com/giampaolo/psutil/issues/226
- # If num cpus > 1, on first call we return single cpu times to avoid a
- # crash at psutil import time.
- # Next calls will fail with NotImplementedError
- def per_cpu_times():
- """Return system CPU times as a namedtuple."""
- if cpu_count_logical() == 1:
- return [cpu_times()]
- if per_cpu_times.__called__:
- msg = "supported only starting from FreeBSD 8"
- raise NotImplementedError(msg)
- per_cpu_times.__called__ = True
- return [cpu_times()]
-
- per_cpu_times.__called__ = False
+def per_cpu_times():
+ """Return system CPU times as a namedtuple."""
+ ret = []
+ for cpu_t in cext.per_cpu_times():
+ user, nice, system, idle, irq = cpu_t
+ item = scputimes(user, nice, system, idle, irq)
+ ret.append(item)
+ return ret
def cpu_count_logical():
@@ -406,7 +379,7 @@ disk_io_counters = cext.disk_io_counters
net_io_counters = cext.net_io_counters
-net_if_addrs = cext_posix.net_if_addrs
+net_if_addrs = cext.net_if_addrs
def net_if_stats():
@@ -415,9 +388,9 @@ def net_if_stats():
ret = {}
for name in names:
try:
- mtu = cext_posix.net_if_mtu(name)
- flags = cext_posix.net_if_flags(name)
- duplex, speed = cext_posix.net_if_duplex_speed(name)
+ mtu = cext.net_if_mtu(name)
+ flags = cext.net_if_flags(name)
+ duplex, speed = cext.net_if_duplex_speed(name)
except OSError as err:
# https://github.com/giampaolo/psutil/issues/1279
if err.errno != errno.ENODEV:
@@ -505,15 +478,36 @@ def boot_time():
return cext.boot_time()
+if NETBSD:
+
+ try:
+ INIT_BOOT_TIME = boot_time()
+ except Exception as err: # noqa: BLE001
+ # Don't want to crash at import time.
+ debug(f"ignoring exception on import: {err!r}")
+ INIT_BOOT_TIME = 0
+
+ def adjust_proc_create_time(ctime):
+ """Account for system clock updates."""
+ if INIT_BOOT_TIME == 0:
+ return ctime
+
+ diff = INIT_BOOT_TIME - boot_time()
+ if diff == 0 or abs(diff) < 1:
+ return ctime
+
+ debug("system clock was updated; adjusting process create_time()")
+ if diff < 0:
+ return ctime - diff
+ return ctime + diff
+
+
def users():
"""Return currently connected users as a list of namedtuples."""
retlist = []
rawlist = cext.users()
for item in rawlist:
user, tty, hostname, tstamp, pid = item
- if pid == -1:
- assert OPENBSD
- pid = None
if tty == '~':
continue # reboot or shutdown
nt = _common.suser(user, tty or None, hostname, tstamp, pid)
@@ -779,13 +773,17 @@ class Process:
memory_full_info = memory_info
@wrap_exceptions
- def create_time(self):
- return self.oneshot()[kinfo_proc_map['create_time']]
+ def create_time(self, monotonic=False):
+ ctime = self.oneshot()[kinfo_proc_map['create_time']]
+ if NETBSD and not monotonic:
+ # NetBSD: ctime subject to system clock updates.
+ ctime = adjust_proc_create_time(ctime)
+ return ctime
@wrap_exceptions
def num_threads(self):
if HAS_PROC_NUM_THREADS:
- # FreeBSD
+ # FreeBSD / NetBSD
return cext.proc_num_threads(self.pid)
else:
return len(self.threads())
@@ -841,11 +839,11 @@ class Process:
@wrap_exceptions
def nice_get(self):
- return cext_posix.getpriority(self.pid)
+ return cext.proc_priority_get(self.pid)
@wrap_exceptions
def nice_set(self, value):
- return cext_posix.setpriority(self.pid, value)
+ return cext.proc_priority_set(self.pid, value)
@wrap_exceptions
def status(self):
@@ -870,14 +868,7 @@ class Process:
# it into None
if OPENBSD and self.pid == 0:
return "" # ...else it would raise EINVAL
- elif NETBSD or HAS_PROC_OPEN_FILES:
- # FreeBSD < 8 does not support functions based on
- # kinfo_getfile() and kinfo_getvmmap()
- return cext.proc_cwd(self.pid)
- else:
- raise NotImplementedError(
- "supported only starting from FreeBSD 8" if FREEBSD else ""
- )
+ return cext.proc_cwd(self.pid)
nt_mmap_grouped = namedtuple(
'mmap', 'path rss, private, ref_count, shadow_count'
@@ -886,36 +877,19 @@ class Process:
'mmap', 'addr, perms path rss, private, ref_count, shadow_count'
)
- def _not_implemented(self):
- raise NotImplementedError
-
- # FreeBSD < 8 does not support functions based on kinfo_getfile()
- # and kinfo_getvmmap()
- if HAS_PROC_OPEN_FILES:
-
- @wrap_exceptions
- def open_files(self):
- """Return files opened by process as a list of namedtuples."""
- rawlist = cext.proc_open_files(self.pid)
- return [_common.popenfile(path, fd) for path, fd in rawlist]
-
- else:
- open_files = _not_implemented
-
- # FreeBSD < 8 does not support functions based on kinfo_getfile()
- # and kinfo_getvmmap()
- if HAS_PROC_NUM_FDS:
-
- @wrap_exceptions
- def num_fds(self):
- """Return the number of file descriptors opened by this process."""
- ret = cext.proc_num_fds(self.pid)
- if NETBSD:
- self._assert_alive()
- return ret
+ @wrap_exceptions
+ def open_files(self):
+ """Return files opened by process as a list of namedtuples."""
+ rawlist = cext.proc_open_files(self.pid)
+ return [_common.popenfile(path, fd) for path, fd in rawlist]
- else:
- num_fds = _not_implemented
+ @wrap_exceptions
+ def num_fds(self):
+ """Return the number of file descriptors opened by this process."""
+ ret = cext.proc_num_fds(self.pid)
+ if NETBSD:
+ self._assert_alive()
+ return ret
# --- FreeBSD only APIs
diff --git a/contrib/python/psutil/py3/psutil/_pslinux.py b/contrib/python/psutil/py3/psutil/_pslinux.py
index 8cc64e9a100..821c4eb7178 100644
--- a/contrib/python/psutil/py3/psutil/_pslinux.py
+++ b/contrib/python/psutil/py3/psutil/_pslinux.py
@@ -24,7 +24,6 @@ from collections import namedtuple
from . import _common
from . import _psposix
from . import _psutil_linux as cext
-from . import _psutil_posix as cext_posix
from ._common import ENCODING
from ._common import NIC_DUPLEX_FULL
from ._common import NIC_DUPLEX_HALF
@@ -47,7 +46,6 @@ from ._common import path_exists_strict
from ._common import supports_ipv6
from ._common import usage_percent
-
# fmt: off
__extra__all__ = [
'PROCFS_PATH',
@@ -59,11 +57,6 @@ __extra__all__ = [
"CONN_FIN_WAIT2", "CONN_TIME_WAIT", "CONN_CLOSE", "CONN_CLOSE_WAIT",
"CONN_LAST_ACK", "CONN_LISTEN", "CONN_CLOSING",
]
-
-if hasattr(resource, "prlimit"):
- __extra__all__.extend(
- [x for x in dir(cext) if x.startswith('RLIM') and x.isupper()]
- )
# fmt: on
@@ -80,9 +73,9 @@ HAS_CPU_AFFINITY = hasattr(cext, "proc_cpu_affinity_get")
# Number of clock ticks per second
CLOCK_TICKS = os.sysconf("SC_CLK_TCK")
-PAGESIZE = cext_posix.getpagesize()
-BOOT_TIME = None # set later
+PAGESIZE = cext.getpagesize()
LITTLE_ENDIAN = sys.byteorder == 'little'
+UNSET = object()
# "man iostat" states that sectors are equivalent with blocks and have
# a size of 512 bytes. Despite this value can be queried at runtime
@@ -421,12 +414,6 @@ def virtual_memory():
except KeyError:
slab = 0
- used = total - free - cached - buffers
- if used < 0:
- # May be symptomatic of running within a LCX container where such
- # values will be dramatically distorted over those of the host.
- used = total - free
-
# - starting from 4.4.0 we match free's "available" column.
# Before 4.4.0 we calculated it as (free + buffers + cached)
# which matched htop.
@@ -457,6 +444,8 @@ def virtual_memory():
# 24fd2605c51fccc375ab0287cec33aa767f06718/proc/sysinfo.c#L764
avail = free
+ used = total - avail
+
percent = usage_percent((total - avail), total, round_=1)
# Warn about missing metrics which are set to 0.
@@ -739,7 +728,7 @@ else:
# =====================================================================
-net_if_addrs = cext_posix.net_if_addrs
+net_if_addrs = cext.net_if_addrs
class _Ipv6UnsupportedError(Exception):
@@ -1050,8 +1039,8 @@ def net_if_stats():
ret = {}
for name in names:
try:
- mtu = cext_posix.net_if_mtu(name)
- flags = cext_posix.net_if_flags(name)
+ mtu = cext.net_if_mtu(name)
+ flags = cext.net_if_flags(name)
duplex, speed = cext.net_if_duplex_speed(name)
except OSError as err:
# https://github.com/giampaolo/psutil/issues/1279
@@ -1525,7 +1514,7 @@ def sensors_battery():
secsleft = _common.POWER_TIME_UNLIMITED
elif energy_now is not None and power_now is not None:
try:
- secsleft = int(energy_now / power_now * 3600)
+ secsleft = int(energy_now / abs(power_now) * 3600)
except ZeroDivisionError:
secsleft = _common.POWER_TIME_UNKNOWN
elif time_to_empty is not None:
@@ -1556,14 +1545,11 @@ def users():
def boot_time():
"""Return the system boot time expressed in seconds since the epoch."""
- global BOOT_TIME
path = f"{get_procfs_path()}/stat"
with open_binary(path) as f:
for line in f:
if line.startswith(b'btime'):
- ret = float(line.strip().split()[1])
- BOOT_TIME = ret
- return ret
+ return float(line.strip().split()[1])
msg = f"line 'btime' not found in {path}"
raise RuntimeError(msg)
@@ -1623,9 +1609,9 @@ def ppid_map():
with open_binary(f"{procfs_path}/{pid}/stat") as f:
data = f.read()
except (FileNotFoundError, ProcessLookupError):
- # Note: we should be able to access /stat for all processes
- # aka it's unlikely we'll bump into EPERM, which is good.
pass
+ except PermissionError as err:
+ raise AccessDenied(pid) from err
else:
rpar = data.rfind(b')')
dset = data[rpar + 2 :].split()
@@ -1664,12 +1650,20 @@ def wrap_exceptions(fun):
class Process:
"""Linux process implementation."""
- __slots__ = ["_cache", "_name", "_ppid", "_procfs_path", "pid"]
+ __slots__ = [
+ "_cache",
+ "_ctime",
+ "_name",
+ "_ppid",
+ "_procfs_path",
+ "pid",
+ ]
def __init__(self, pid):
self.pid = pid
self._name = None
self._ppid = None
+ self._ctime = None
self._procfs_path = get_procfs_path()
def _is_zombie(self):
@@ -1698,6 +1692,22 @@ class Process:
# incorrect or incomplete result.
os.stat(f"{self._procfs_path}/{self.pid}")
+ def _readlink(self, path, fallback=UNSET):
+ # * https://github.com/giampaolo/psutil/issues/503
+ # os.readlink('/proc/pid/exe') may raise ESRCH (ProcessLookupError)
+ # instead of ENOENT (FileNotFoundError) when it races.
+ # * ENOENT may occur also if the path actually exists if PID is
+ # a low PID (~0-20 range).
+ # * https://github.com/giampaolo/psutil/issues/2514
+ try:
+ return readlink(path)
+ except (FileNotFoundError, ProcessLookupError):
+ if os.path.lexists(f"{self._procfs_path}/{self.pid}"):
+ self._raise_if_zombie()
+ if fallback is not UNSET:
+ return fallback
+ raise
+
@wrap_exceptions
@memoize_when_activated
def _parse_stat_file(self):
@@ -1770,16 +1780,9 @@ class Process:
@wrap_exceptions
def exe(self):
- try:
- return readlink(f"{self._procfs_path}/{self.pid}/exe")
- except (FileNotFoundError, ProcessLookupError):
- self._raise_if_zombie()
- # no such file error; might be raised also if the
- # path actually exists for system processes with
- # low pids (about 0-20)
- if os.path.lexists(f"{self._procfs_path}/{self.pid}"):
- return ""
- raise
+ return self._readlink(
+ f"{self._procfs_path}/{self.pid}/exe", fallback=""
+ )
@wrap_exceptions
def cmdline(self):
@@ -1880,15 +1883,21 @@ class Process:
return _psposix.wait_pid(self.pid, timeout, self._name)
@wrap_exceptions
- def create_time(self):
- ctime = float(self._parse_stat_file()['create_time'])
- # According to documentation, starttime is in field 21 and the
- # unit is jiffies (clock ticks).
- # We first divide it for clock ticks and then add uptime returning
- # seconds since the epoch.
- # Also use cached value if available.
- bt = BOOT_TIME or boot_time()
- return (ctime / CLOCK_TICKS) + bt
+ def create_time(self, monotonic=False):
+ # The 'starttime' field in /proc/[pid]/stat is expressed in
+ # jiffies (clock ticks per second), a relative value which
+ # represents the number of clock ticks that have passed since
+ # the system booted until the process was created. It never
+ # changes and is unaffected by system clock updates.
+ if self._ctime is None:
+ self._ctime = (
+ float(self._parse_stat_file()['create_time']) / CLOCK_TICKS
+ )
+ if monotonic:
+ return self._ctime
+ # Add the boot time, returning time expressed in seconds since
+ # the epoch. This is subject to system clock updates.
+ return self._ctime + boot_time()
@wrap_exceptions
def memory_info(self):
@@ -2001,7 +2010,7 @@ class Process:
else:
try:
data[fields[0]] = int(fields[1]) * 1024
- except ValueError:
+ except (ValueError, IndexError):
if fields[0].startswith(b'VmFlags:'):
# see issue #369
continue
@@ -2054,7 +2063,9 @@ class Process:
@wrap_exceptions
def cwd(self):
- return readlink(f"{self._procfs_path}/{self.pid}/cwd")
+ return self._readlink(
+ f"{self._procfs_path}/{self.pid}/cwd", fallback=""
+ )
@wrap_exceptions
def num_ctx_switches(
@@ -2112,11 +2123,11 @@ class Process:
# return int(data.split()[18])
# Use C implementation
- return cext_posix.getpriority(self.pid)
+ return cext.proc_priority_get(self.pid)
@wrap_exceptions
def nice_set(self, value):
- return cext_posix.setpriority(self.pid, value)
+ return cext.proc_priority_set(self.pid, value)
# starting from CentOS 6.
if HAS_CPU_AFFINITY:
diff --git a/contrib/python/psutil/py3/psutil/_psosx.py b/contrib/python/psutil/py3/psutil/_psosx.py
index 620497b30a0..e1030b654b0 100644
--- a/contrib/python/psutil/py3/psutil/_psosx.py
+++ b/contrib/python/psutil/py3/psutil/_psosx.py
@@ -12,18 +12,17 @@ from collections import namedtuple
from . import _common
from . import _psposix
from . import _psutil_osx as cext
-from . import _psutil_posix as cext_posix
from ._common import AccessDenied
from ._common import NoSuchProcess
from ._common import ZombieProcess
from ._common import conn_tmap
from ._common import conn_to_ntuple
+from ._common import debug
from ._common import isfile_strict
from ._common import memoize_when_activated
from ._common import parse_environ_block
from ._common import usage_percent
-
__extra__all__ = []
@@ -32,8 +31,8 @@ __extra__all__ = []
# =====================================================================
-PAGESIZE = cext_posix.getpagesize()
-AF_LINK = cext_posix.AF_LINK
+PAGESIZE = cext.getpagesize()
+AF_LINK = cext.AF_LINK
TCP_STATUSES = {
cext.TCPS_ESTABLISHED: _common.CONN_ESTABLISHED,
@@ -170,14 +169,16 @@ def cpu_stats():
)
-def cpu_freq():
- """Return CPU frequency.
- On macOS per-cpu frequency is not supported.
- Also, the returned frequency never changes, see:
- https://arstechnica.com/civis/viewtopic.php?f=19&t=465002.
- """
- curr, min_, max_ = cext.cpu_freq()
- return [_common.scpufreq(curr, min_, max_)]
+if cext.has_cpu_freq(): # not always available on ARM64
+
+ def cpu_freq():
+ """Return CPU frequency.
+ On macOS per-cpu frequency is not supported.
+ Also, the returned frequency never changes, see:
+ https://arstechnica.com/civis/viewtopic.php?f=19&t=465002.
+ """
+ curr, min_, max_ = cext.cpu_freq()
+ return [_common.scpufreq(curr, min_, max_)]
# =====================================================================
@@ -233,7 +234,7 @@ def sensors_battery():
net_io_counters = cext.net_io_counters
-net_if_addrs = cext_posix.net_if_addrs
+net_if_addrs = cext.net_if_addrs
def net_connections(kind='inet'):
@@ -260,9 +261,9 @@ def net_if_stats():
ret = {}
for name in names:
try:
- mtu = cext_posix.net_if_mtu(name)
- flags = cext_posix.net_if_flags(name)
- duplex, speed = cext_posix.net_if_duplex_speed(name)
+ mtu = cext.net_if_mtu(name)
+ flags = cext.net_if_flags(name)
+ duplex, speed = cext.net_if_duplex_speed(name)
except OSError as err:
# https://github.com/giampaolo/psutil/issues/1279
if err.errno != errno.ENODEV:
@@ -288,6 +289,29 @@ def boot_time():
return cext.boot_time()
+try:
+ INIT_BOOT_TIME = boot_time()
+except Exception as err: # noqa: BLE001
+ # Don't want to crash at import time.
+ debug(f"ignoring exception on import: {err!r}")
+ INIT_BOOT_TIME = 0
+
+
+def adjust_proc_create_time(ctime):
+ """Account for system clock updates."""
+ if INIT_BOOT_TIME == 0:
+ return ctime
+
+ diff = INIT_BOOT_TIME - boot_time()
+ if diff == 0 or abs(diff) < 1:
+ return ctime
+
+ debug("system clock was updated; adjusting process create_time()")
+ if diff < 0:
+ return ctime - diff
+ return ctime + diff
+
+
def users():
"""Return currently connected users as a list of namedtuples."""
retlist = []
@@ -327,14 +351,6 @@ def pids():
pid_exists = _psposix.pid_exists
-def is_zombie(pid):
- try:
- st = cext.proc_kinfo_oneshot(pid)[kinfo_proc_map['status']]
- return st == cext.SZOMB
- except OSError:
- return False
-
-
def wrap_exceptions(fun):
"""Decorator which translates bare OSError exceptions into
NoSuchProcess and AccessDenied.
@@ -346,11 +362,13 @@ def wrap_exceptions(fun):
try:
return fun(self, *args, **kwargs)
except ProcessLookupError as err:
- if is_zombie(pid):
+ if cext.proc_is_zombie(pid):
raise ZombieProcess(pid, name, ppid) from err
raise NoSuchProcess(pid, name) from err
except PermissionError as err:
raise AccessDenied(pid, name) from err
+ except cext.ZombieProcessError as err:
+ raise ZombieProcess(pid, name, ppid) from err
return wrapper
@@ -470,8 +488,11 @@ class Process:
)
@wrap_exceptions
- def create_time(self):
- return self._get_kinfo_proc()[kinfo_proc_map['ctime']]
+ def create_time(self, monotonic=False):
+ ctime = self._get_kinfo_proc()[kinfo_proc_map['ctime']]
+ if not monotonic:
+ ctime = adjust_proc_create_time(ctime)
+ return ctime
@wrap_exceptions
def num_ctx_switches(self):
@@ -522,11 +543,11 @@ class Process:
@wrap_exceptions
def nice_get(self):
- return cext_posix.getpriority(self.pid)
+ return cext.proc_priority_get(self.pid)
@wrap_exceptions
def nice_set(self, value):
- return cext_posix.setpriority(self.pid, value)
+ return cext.proc_priority_set(self.pid, value)
@wrap_exceptions
def status(self):
diff --git a/contrib/python/psutil/py3/psutil/_psposix.py b/contrib/python/psutil/py3/psutil/_psposix.py
index 88703fdbd26..83f1acdbe31 100644
--- a/contrib/python/psutil/py3/psutil/_psposix.py
+++ b/contrib/python/psutil/py3/psutil/_psposix.py
@@ -16,7 +16,6 @@ from ._common import memoize
from ._common import sdiskusage
from ._common import usage_percent
-
if MACOS:
from . import _psutil_osx
diff --git a/contrib/python/psutil/py3/psutil/_pssunos.py b/contrib/python/psutil/py3/psutil/_pssunos.py
index 78d941cc5ff..e3268932f64 100644
--- a/contrib/python/psutil/py3/psutil/_pssunos.py
+++ b/contrib/python/psutil/py3/psutil/_pssunos.py
@@ -15,7 +15,6 @@ from socket import AF_INET
from . import _common
from . import _psposix
-from . import _psutil_posix as cext_posix
from . import _psutil_sunos as cext
from ._common import AF_INET6
from ._common import ENCODING
@@ -30,7 +29,6 @@ from ._common import sockfam_to_enum
from ._common import socktype_to_enum
from ._common import usage_percent
-
__extra__all__ = ["CONN_IDLE", "CONN_BOUND", "PROCFS_PATH"]
@@ -39,8 +37,8 @@ __extra__all__ = ["CONN_IDLE", "CONN_BOUND", "PROCFS_PATH"]
# =====================================================================
-PAGE_SIZE = cext_posix.getpagesize()
-AF_LINK = cext_posix.AF_LINK
+PAGE_SIZE = cext.getpagesize()
+AF_LINK = cext.AF_LINK
IS_64_BIT = sys.maxsize > 2**32
CONN_IDLE = "IDLE"
@@ -253,7 +251,7 @@ def disk_partitions(all=False):
net_io_counters = cext.net_io_counters
-net_if_addrs = cext_posix.net_if_addrs
+net_if_addrs = cext.net_if_addrs
def net_connections(kind, _pid=-1):
@@ -439,7 +437,7 @@ class Process:
@wrap_exceptions
def cmdline(self):
- return self._proc_name_and_args()[1].split(' ')
+ return self._proc_name_and_args()[1]
@wrap_exceptions
def environ(self):
@@ -468,7 +466,7 @@ class Process:
# The process actually exists though, as it has a name,
# creation time, etc.
raise AccessDenied(self.pid, self._name)
- return cext_posix.setpriority(self.pid, value)
+ return cext.proc_priority_set(self.pid, value)
@wrap_exceptions
def ppid(self):
diff --git a/contrib/python/psutil/py3/psutil/_psutil_common.h b/contrib/python/psutil/py3/psutil/_psutil_common.h
deleted file mode 100644
index 024452630f3..00000000000
--- a/contrib/python/psutil/py3/psutil/_psutil_common.h
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-// ====================================================================
-// --- Global vars / constants
-// ====================================================================
-
-extern int PSUTIL_DEBUG;
-// a signaler for connections without an actual status
-static const int PSUTIL_CONN_NONE = 128;
-
-// strncpy() variant which appends a null terminator.
-#define PSUTIL_STRNCPY(dst, src, n) \
- strncpy(dst, src, n - 1); \
- dst[n - 1] = '\0'
-
-// ====================================================================
-// --- Backward compatibility with missing Python.h APIs
-// ====================================================================
-
-#if defined(PSUTIL_WINDOWS) && defined(PYPY_VERSION)
- #if !defined(PyErr_SetFromWindowsErrWithFilename)
- PyObject *PyErr_SetFromWindowsErrWithFilename(int ierr,
- const char *filename);
- #endif
- #if !defined(PyErr_SetExcFromWindowsErrWithFilenameObject)
- PyObject *PyErr_SetExcFromWindowsErrWithFilenameObject(
- PyObject *type, int ierr, PyObject *filename);
- #endif
-#endif
-
-// --- _Py_PARSE_PID
-
-// SIZEOF_INT|LONG is missing on Linux + PyPy (only?).
-// In this case we guess it from setup.py. It's not 100% bullet proof,
-// If wrong we'll probably get compiler warnings.
-// FWIW on all UNIX platforms I've seen pid_t is defined as an int.
-// _getpid() on Windows also returns an int.
-#if !defined(SIZEOF_INT)
- #define SIZEOF_INT 4
-#endif
-#if !defined(SIZEOF_LONG)
- #define SIZEOF_LONG 8
-#endif
-#if !defined(SIZEOF_PID_T)
- #define SIZEOF_PID_T PSUTIL_SIZEOF_PID_T // set as a macro in setup.py
-#endif
-
-// _Py_PARSE_PID was added in Python 3, but since it's private we make
-// sure it's always present.
-#ifndef _Py_PARSE_PID
- #if SIZEOF_PID_T == SIZEOF_INT
- #define _Py_PARSE_PID "i"
- #elif SIZEOF_PID_T == SIZEOF_LONG
- #define _Py_PARSE_PID "l"
- #elif defined(SIZEOF_LONG_LONG) && SIZEOF_PID_T == SIZEOF_LONG_LONG
- #define _Py_PARSE_PID "L"
- #else
- #error "_Py_PARSE_PID: sizeof(pid_t) is neither sizeof(int), "
- "sizeof(long) or sizeof(long long)"
- #endif
-#endif
-
-// PyPy on Windows
-#ifndef PyLong_FromPid
- #if ((SIZEOF_PID_T == SIZEOF_INT) || (SIZEOF_PID_T == SIZEOF_LONG))
- #define PyLong_FromPid PyLong_FromLong
- #elif defined(SIZEOF_LONG_LONG) && SIZEOF_PID_T == SIZEOF_LONG_LONG
- #define PyLong_FromPid PyLong_FromLongLong
- #else
- #error "PyLong_FromPid: sizeof(pid_t) is neither sizeof(int), "
- "sizeof(long) or sizeof(long long)"
- #endif
-#endif
-
-// ====================================================================
-// --- Custom exceptions
-// ====================================================================
-
-PyObject* AccessDenied(const char *msg);
-PyObject* NoSuchProcess(const char *msg);
-PyObject* psutil_PyErr_SetFromOSErrnoWithSyscall(const char *syscall);
-
-// ====================================================================
-// --- Global utils
-// ====================================================================
-
-PyObject* psutil_check_pid_range(PyObject *self, PyObject *args);
-PyObject* psutil_set_debug(PyObject *self, PyObject *args);
-int psutil_setup(void);
-
-
-// Print a debug message on stderr.
-#define psutil_debug(...) do { \
- if (! PSUTIL_DEBUG) \
- break; \
- fprintf(stderr, "psutil-debug [%s:%d]> ", __FILE__, __LINE__); \
- fprintf(stderr, __VA_ARGS__); \
- fprintf(stderr, "\n");} while(0)
-
-
-// ====================================================================
-// --- BSD
-// ====================================================================
-
-void convert_kvm_err(const char *syscall, char *errbuf);
-
-// ====================================================================
-// --- macOS
-// ====================================================================
-
-#ifdef PSUTIL_OSX
- #include <mach/mach_time.h>
-
- extern struct mach_timebase_info PSUTIL_MACH_TIMEBASE_INFO;
-#endif
-
-// ====================================================================
-// --- Windows
-// ====================================================================
-
-#ifdef PSUTIL_WINDOWS
- #include <windows.h>
- // make it available to any file which includes this module
- #include "arch/windows/ntextapi.h"
-
- extern int PSUTIL_WINVER;
- extern SYSTEM_INFO PSUTIL_SYSTEM_INFO;
- extern CRITICAL_SECTION PSUTIL_CRITICAL_SECTION;
-
- #define PSUTIL_WINDOWS_VISTA 60
- #define PSUTIL_WINDOWS_7 61
- #define PSUTIL_WINDOWS_8 62
- #define PSUTIL_WINDOWS_8_1 63
- #define PSUTIL_WINDOWS_10 100
- #define PSUTIL_WINDOWS_NEW MAXLONG
-
- #define MALLOC(x) HeapAlloc(GetProcessHeap(), 0, (x))
- #define MALLOC_ZERO(x) HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (x))
- #define FREE(x) HeapFree(GetProcessHeap(), 0, (x))
-
- #define _NT_FACILITY_MASK 0xfff
- #define _NT_FACILITY_SHIFT 16
- #define _NT_FACILITY(status) \
- ((((ULONG)(status)) >> _NT_FACILITY_SHIFT) & _NT_FACILITY_MASK)
-
- #define NT_NTWIN32(status) (_NT_FACILITY(status) == FACILITY_WIN32)
- #define WIN32_FROM_NTSTATUS(status) (((ULONG)(status)) & 0xffff)
-
- #define LO_T 1e-7
- #define HI_T 429.4967296
-
- #ifndef AF_INET6
- #define AF_INET6 23
- #endif
-
- PVOID psutil_GetProcAddress(LPCSTR libname, LPCSTR procname);
- PVOID psutil_GetProcAddressFromLib(LPCSTR libname, LPCSTR procname);
- PVOID psutil_SetFromNTStatusErr(NTSTATUS Status, const char *syscall);
- double psutil_FiletimeToUnixTime(FILETIME ft);
- double psutil_LargeIntegerToUnixTime(LARGE_INTEGER li);
-#endif
diff --git a/contrib/python/psutil/py3/psutil/_psutil_linux.c b/contrib/python/psutil/py3/psutil/_psutil_linux.c
index fcd886bfb61..2cfb4e47c42 100644
--- a/contrib/python/psutil/py3/psutil/_psutil_linux.c
+++ b/contrib/python/psutil/py3/psutil/_psutil_linux.c
@@ -12,12 +12,7 @@
#include <Python.h>
#include <linux/ethtool.h> // DUPLEX_*
-#include "_psutil_common.h"
-#include "arch/linux/disk.h"
-#include "arch/linux/mem.h"
-#include "arch/linux/net.h"
-#include "arch/linux/proc.h"
-#include "arch/linux/users.h"
+#include "arch/all/init.h"
// May happen on old RedHat versions, see:
// https://github.com/giampaolo/psutil/issues/607
@@ -25,21 +20,18 @@
#define DUPLEX_UNKNOWN 0xff
#endif
-#define INITERR return NULL
-
static PyMethodDef mod_methods[] = {
// --- per-process functions
-#ifdef PSUTIL_HAVE_IOPRIO
+#ifdef PSUTIL_HAS_IOPRIO
{"proc_ioprio_get", psutil_proc_ioprio_get, METH_VARARGS},
{"proc_ioprio_set", psutil_proc_ioprio_set, METH_VARARGS},
#endif
-#ifdef PSUTIL_HAVE_CPU_AFFINITY
+#ifdef PSUTIL_HAS_CPU_AFFINITY
{"proc_cpu_affinity_get", psutil_proc_cpu_affinity_get, METH_VARARGS},
{"proc_cpu_affinity_set", psutil_proc_cpu_affinity_set, METH_VARARGS},
#endif
// --- system related functions
{"disk_partitions", psutil_disk_partitions, METH_VARARGS},
- {"users", psutil_users, METH_VARARGS},
{"net_if_duplex_speed", psutil_net_if_duplex_speed, METH_VARARGS},
// --- linux specific
{"linux_sysinfo", psutil_linux_sysinfo, METH_VARARGS},
@@ -67,20 +59,28 @@ PyObject *
PyInit__psutil_linux(void) {
PyObject *mod = PyModule_Create(&moduledef);
if (mod == NULL)
- INITERR;
+ return NULL;
#ifdef Py_GIL_DISABLED
- PyUnstable_Module_SetGIL(mod, Py_MOD_GIL_NOT_USED);
+ if (PyUnstable_Module_SetGIL(mod, Py_MOD_GIL_NOT_USED))
+ return NULL;
#endif
- if (PyModule_AddIntConstant(mod, "version", PSUTIL_VERSION)) INITERR;
- if (PyModule_AddIntConstant(mod, "DUPLEX_HALF", DUPLEX_HALF)) INITERR;
- if (PyModule_AddIntConstant(mod, "DUPLEX_FULL", DUPLEX_FULL)) INITERR;
- if (PyModule_AddIntConstant(mod, "DUPLEX_UNKNOWN", DUPLEX_UNKNOWN)) INITERR;
+ if (psutil_setup() != 0)
+ return NULL;
+ if (psutil_posix_add_constants(mod) != 0)
+ return NULL;
+ if (psutil_posix_add_methods(mod) != 0)
+ return NULL;
- psutil_setup();
+ if (PyModule_AddIntConstant(mod, "version", PSUTIL_VERSION))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "DUPLEX_HALF", DUPLEX_HALF))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "DUPLEX_FULL", DUPLEX_FULL))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "DUPLEX_UNKNOWN", DUPLEX_UNKNOWN))
+ return NULL;
- if (mod == NULL)
- INITERR;
return mod;
}
diff --git a/contrib/python/psutil/py3/psutil/_psutil_osx.c b/contrib/python/psutil/py3/psutil/_psutil_osx.c
index b16103379be..dbb33efc0b0 100644
--- a/contrib/python/psutil/py3/psutil/_psutil_osx.c
+++ b/contrib/python/psutil/py3/psutil/_psutil_osx.c
@@ -11,28 +11,21 @@
#include <sys/proc.h>
#include <netinet/tcp_fsm.h>
-#include "_psutil_common.h"
-#include "arch/osx/cpu.h"
-#include "arch/osx/disk.h"
-#include "arch/osx/mem.h"
-#include "arch/osx/net.h"
-#include "arch/osx/proc.h"
-#include "arch/osx/sensors.h"
-#include "arch/osx/sys.h"
+#include "arch/all/init.h"
+#include "arch/osx/init.h"
-#define INITERR return NULL
-
static PyMethodDef mod_methods[] = {
// --- per-process functions
{"proc_cmdline", psutil_proc_cmdline, METH_VARARGS},
- {"proc_net_connections", psutil_proc_net_connections, METH_VARARGS},
{"proc_cwd", psutil_proc_cwd, METH_VARARGS},
{"proc_environ", psutil_proc_environ, METH_VARARGS},
{"proc_exe", psutil_proc_exe, METH_VARARGS},
+ {"proc_is_zombie", psutil_proc_is_zombie, METH_VARARGS},
{"proc_kinfo_oneshot", psutil_proc_kinfo_oneshot, METH_VARARGS},
{"proc_memory_uss", psutil_proc_memory_uss, METH_VARARGS},
{"proc_name", psutil_proc_name, METH_VARARGS},
+ {"proc_net_connections", psutil_proc_net_connections, METH_VARARGS},
{"proc_num_fds", psutil_proc_num_fds, METH_VARARGS},
{"proc_open_files", psutil_proc_open_files, METH_VARARGS},
{"proc_pidtaskinfo_oneshot", psutil_proc_pidtaskinfo_oneshot, METH_VARARGS},
@@ -48,12 +41,12 @@ static PyMethodDef mod_methods[] = {
{"disk_io_counters", psutil_disk_io_counters, METH_VARARGS},
{"disk_partitions", psutil_disk_partitions, METH_VARARGS},
{"disk_usage_used", psutil_disk_usage_used, METH_VARARGS},
+ {"has_cpu_freq", psutil_has_cpu_freq, METH_VARARGS},
{"net_io_counters", psutil_net_io_counters, METH_VARARGS},
{"per_cpu_times", psutil_per_cpu_times, METH_VARARGS},
{"pids", psutil_pids, METH_VARARGS},
{"sensors_battery", psutil_sensors_battery, METH_VARARGS},
{"swap_mem", psutil_swap_mem, METH_VARARGS},
- {"users", psutil_users, METH_VARARGS},
{"virtual_mem", psutil_virtual_mem, METH_VARARGS},
// --- others
@@ -81,56 +74,61 @@ PyObject *
PyInit__psutil_osx(void) {
PyObject *mod = PyModule_Create(&moduledef);
if (mod == NULL)
- INITERR;
+ return NULL;
#ifdef Py_GIL_DISABLED
- PyUnstable_Module_SetGIL(mod, Py_MOD_GIL_NOT_USED);
+ if (PyUnstable_Module_SetGIL(mod, Py_MOD_GIL_NOT_USED))
+ return NULL;
#endif
if (psutil_setup() != 0)
- INITERR;
+ return NULL;
+ if (psutil_setup_osx() != 0)
+ return NULL;
+ if (psutil_posix_add_constants(mod) != 0)
+ return NULL;
+ if (psutil_posix_add_methods(mod) != 0)
+ return NULL;
if (PyModule_AddIntConstant(mod, "version", PSUTIL_VERSION))
- INITERR;
+ return NULL;
// process status constants, defined in:
// http://fxr.watson.org/fxr/source/bsd/sys/proc.h?v=xnu-792.6.70#L149
if (PyModule_AddIntConstant(mod, "SIDL", SIDL))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "SRUN", SRUN))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "SSLEEP", SSLEEP))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "SSTOP", SSTOP))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "SZOMB", SZOMB))
- INITERR;
+ return NULL;
// connection status constants
if (PyModule_AddIntConstant(mod, "TCPS_CLOSED", TCPS_CLOSED))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_CLOSING", TCPS_CLOSING))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_CLOSE_WAIT", TCPS_CLOSE_WAIT))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_LISTEN", TCPS_LISTEN))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_ESTABLISHED", TCPS_ESTABLISHED))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_SYN_SENT", TCPS_SYN_SENT))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_SYN_RECEIVED", TCPS_SYN_RECEIVED))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_FIN_WAIT_1", TCPS_FIN_WAIT_1))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_FIN_WAIT_2", TCPS_FIN_WAIT_2))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_LAST_ACK", TCPS_LAST_ACK))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "TCPS_TIME_WAIT", TCPS_TIME_WAIT))
- INITERR;
+ return NULL;
if (PyModule_AddIntConstant(mod, "PSUTIL_CONN_NONE", PSUTIL_CONN_NONE))
- INITERR;
+ return NULL;
- if (mod == NULL)
- INITERR;
return mod;
}
diff --git a/contrib/python/psutil/py3/psutil/_psutil_posix.h b/contrib/python/psutil/py3/psutil/_psutil_posix.h
deleted file mode 100644
index 5a37e48b158..00000000000
--- a/contrib/python/psutil/py3/psutil/_psutil_posix.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-long psutil_getpagesize(void);
-int psutil_pid_exists(pid_t pid);
-void psutil_raise_for_pid(pid_t pid, char *msg);
diff --git a/contrib/python/psutil/py3/psutil/_psutil_windows.c b/contrib/python/psutil/py3/psutil/_psutil_windows.c
index 0af18f3e263..88bd5e0131c 100644
--- a/contrib/python/psutil/py3/psutil/_psutil_windows.c
+++ b/contrib/python/psutil/py3/psutil/_psutil_windows.c
@@ -17,24 +17,13 @@
#include <Python.h>
#include <windows.h>
-#include "_psutil_common.h"
-#include "arch/windows/cpu.h"
-#include "arch/windows/disk.h"
-#include "arch/windows/mem.h"
-#include "arch/windows/net.h"
-#include "arch/windows/proc.h"
-#include "arch/windows/proc_handles.h"
-#include "arch/windows/proc_info.h"
-#include "arch/windows/proc_utils.h"
-#include "arch/windows/security.h"
-#include "arch/windows/sensors.h"
-#include "arch/windows/services.h"
-#include "arch/windows/socks.h"
-#include "arch/windows/sys.h"
-#include "arch/windows/wmi.h"
+#undef PSUTIL_MAYBE_EXTERN
+#define PSUTIL_MAYBE_EXTERN
+
+#include "arch/all/init.h"
+#include "arch/windows/init.h"
-#define INITERROR return NULL
#define GETSTATE(m) ((struct module_state*)PyModule_GetState(m))
@@ -72,7 +61,7 @@ PsutilMethods[] = {
{"proc_info", psutil_proc_info, METH_VARARGS},
// --- system-related functions
- {"boot_time", psutil_boot_time, METH_VARARGS},
+ {"uptime", psutil_uptime, METH_VARARGS},
{"cpu_count_cores", psutil_cpu_count_cores, METH_VARARGS},
{"cpu_count_logical", psutil_cpu_count_logical, METH_VARARGS},
{"cpu_freq", psutil_cpu_freq, METH_VARARGS},
@@ -148,129 +137,110 @@ static struct PyModuleDef moduledef = {
PyMODINIT_FUNC
PyInit__psutil_windows(void) {
- struct module_state *st = NULL;
-
- PyObject *module = PyModule_Create(&moduledef);
- if (module == NULL)
- INITERROR;
+ PyObject *mod = PyModule_Create(&moduledef);
+ if (mod == NULL)
+ return NULL;
#ifdef Py_GIL_DISABLED
- PyUnstable_Module_SetGIL(module, Py_MOD_GIL_NOT_USED);
+ if (PyUnstable_Module_SetGIL(mod, Py_MOD_GIL_NOT_USED))
+ return NULL;
#endif
if (psutil_setup() != 0)
- INITERROR;
+ return NULL;
+ if (psutil_setup_windows() != 0)
+ return NULL;
if (psutil_set_se_debug() != 0)
- INITERROR;
-
- st = GETSTATE(module);
- st->error = PyErr_NewException("_psutil_windows.Error", NULL, NULL);
- if (st->error == NULL) {
- Py_DECREF(module);
- INITERROR;
- }
+ return NULL;
- // Exceptions.
+ // Exceptions
TimeoutExpired = PyErr_NewException(
"_psutil_windows.TimeoutExpired", NULL, NULL);
- Py_INCREF(TimeoutExpired);
- PyModule_AddObject(module, "TimeoutExpired", TimeoutExpired);
+ if (TimeoutExpired == NULL)
+ return NULL;
+ if (PyModule_AddObject(mod, "TimeoutExpired", TimeoutExpired))
+ return NULL;
TimeoutAbandoned = PyErr_NewException(
"_psutil_windows.TimeoutAbandoned", NULL, NULL);
- Py_INCREF(TimeoutAbandoned);
- PyModule_AddObject(module, "TimeoutAbandoned", TimeoutAbandoned);
+ if (TimeoutAbandoned == NULL)
+ return NULL;
+ if (PyModule_AddObject(mod, "TimeoutAbandoned", TimeoutAbandoned))
+ return NULL;
// version constant
- PyModule_AddIntConstant(module, "version", PSUTIL_VERSION);
+ if (PyModule_AddIntConstant(mod, "version", PSUTIL_VERSION))
+ return NULL;
// process status constants
// http://msdn.microsoft.com/en-us/library/ms683211(v=vs.85).aspx
- PyModule_AddIntConstant(
- module, "ABOVE_NORMAL_PRIORITY_CLASS", ABOVE_NORMAL_PRIORITY_CLASS);
- PyModule_AddIntConstant(
- module, "BELOW_NORMAL_PRIORITY_CLASS", BELOW_NORMAL_PRIORITY_CLASS);
- PyModule_AddIntConstant(
- module, "HIGH_PRIORITY_CLASS", HIGH_PRIORITY_CLASS);
- PyModule_AddIntConstant(
- module, "IDLE_PRIORITY_CLASS", IDLE_PRIORITY_CLASS);
- PyModule_AddIntConstant(
- module, "NORMAL_PRIORITY_CLASS", NORMAL_PRIORITY_CLASS);
- PyModule_AddIntConstant(
- module, "REALTIME_PRIORITY_CLASS", REALTIME_PRIORITY_CLASS);
+ if (PyModule_AddIntConstant(mod, "ABOVE_NORMAL_PRIORITY_CLASS", ABOVE_NORMAL_PRIORITY_CLASS))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "BELOW_NORMAL_PRIORITY_CLASS", BELOW_NORMAL_PRIORITY_CLASS))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "HIGH_PRIORITY_CLASS", HIGH_PRIORITY_CLASS))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "IDLE_PRIORITY_CLASS", IDLE_PRIORITY_CLASS))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "NORMAL_PRIORITY_CLASS", NORMAL_PRIORITY_CLASS))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "REALTIME_PRIORITY_CLASS", REALTIME_PRIORITY_CLASS))
+ return NULL;
// connection status constants
// http://msdn.microsoft.com/en-us/library/cc669305.aspx
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_CLOSED", MIB_TCP_STATE_CLOSED);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_CLOSING", MIB_TCP_STATE_CLOSING);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_CLOSE_WAIT", MIB_TCP_STATE_CLOSE_WAIT);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_LISTEN", MIB_TCP_STATE_LISTEN);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_ESTAB", MIB_TCP_STATE_ESTAB);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_SYN_SENT", MIB_TCP_STATE_SYN_SENT);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_SYN_RCVD", MIB_TCP_STATE_SYN_RCVD);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_FIN_WAIT1", MIB_TCP_STATE_FIN_WAIT1);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_FIN_WAIT2", MIB_TCP_STATE_FIN_WAIT2);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_LAST_ACK", MIB_TCP_STATE_LAST_ACK);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_TIME_WAIT", MIB_TCP_STATE_TIME_WAIT);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_TIME_WAIT", MIB_TCP_STATE_TIME_WAIT);
- PyModule_AddIntConstant(
- module, "MIB_TCP_STATE_DELETE_TCB", MIB_TCP_STATE_DELETE_TCB);
- PyModule_AddIntConstant(
- module, "PSUTIL_CONN_NONE", PSUTIL_CONN_NONE);
-
- // service status constants
- /*
- PyModule_AddIntConstant(
- module, "SERVICE_CONTINUE_PENDING", SERVICE_CONTINUE_PENDING);
- PyModule_AddIntConstant(
- module, "SERVICE_PAUSE_PENDING", SERVICE_PAUSE_PENDING);
- PyModule_AddIntConstant(
- module, "SERVICE_PAUSED", SERVICE_PAUSED);
- PyModule_AddIntConstant(
- module, "SERVICE_RUNNING", SERVICE_RUNNING);
- PyModule_AddIntConstant(
- module, "SERVICE_START_PENDING", SERVICE_START_PENDING);
- PyModule_AddIntConstant(
- module, "SERVICE_STOP_PENDING", SERVICE_STOP_PENDING);
- PyModule_AddIntConstant(
- module, "SERVICE_STOPPED", SERVICE_STOPPED);
- */
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_CLOSED", MIB_TCP_STATE_CLOSED))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_CLOSING", MIB_TCP_STATE_CLOSING))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_CLOSE_WAIT", MIB_TCP_STATE_CLOSE_WAIT))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_LISTEN", MIB_TCP_STATE_LISTEN))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_ESTAB", MIB_TCP_STATE_ESTAB))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_SYN_SENT", MIB_TCP_STATE_SYN_SENT))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_SYN_RCVD", MIB_TCP_STATE_SYN_RCVD))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_FIN_WAIT1", MIB_TCP_STATE_FIN_WAIT1))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_FIN_WAIT2", MIB_TCP_STATE_FIN_WAIT2))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_LAST_ACK", MIB_TCP_STATE_LAST_ACK))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_TIME_WAIT", MIB_TCP_STATE_TIME_WAIT))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_TIME_WAIT", MIB_TCP_STATE_TIME_WAIT))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "MIB_TCP_STATE_DELETE_TCB", MIB_TCP_STATE_DELETE_TCB))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "PSUTIL_CONN_NONE", PSUTIL_CONN_NONE))
+ return NULL;
// ...for internal use in _psutil_windows.py
- PyModule_AddIntConstant(
- module, "INFINITE", INFINITE);
- PyModule_AddIntConstant(
- module, "ERROR_ACCESS_DENIED", ERROR_ACCESS_DENIED);
- PyModule_AddIntConstant(
- module, "ERROR_INVALID_NAME", ERROR_INVALID_NAME);
- PyModule_AddIntConstant(
- module, "ERROR_SERVICE_DOES_NOT_EXIST", ERROR_SERVICE_DOES_NOT_EXIST);
- PyModule_AddIntConstant(
- module, "ERROR_PRIVILEGE_NOT_HELD", ERROR_PRIVILEGE_NOT_HELD);
- PyModule_AddIntConstant(
- module, "WINVER", PSUTIL_WINVER);
- PyModule_AddIntConstant(
- module, "WINDOWS_VISTA", PSUTIL_WINDOWS_VISTA);
- PyModule_AddIntConstant(
- module, "WINDOWS_7", PSUTIL_WINDOWS_7);
- PyModule_AddIntConstant(
- module, "WINDOWS_8", PSUTIL_WINDOWS_8);
- PyModule_AddIntConstant(
- module, "WINDOWS_8_1", PSUTIL_WINDOWS_8_1);
- PyModule_AddIntConstant(
- module, "WINDOWS_10", PSUTIL_WINDOWS_10);
-
- return module;
+ if (PyModule_AddIntConstant(mod, "INFINITE", INFINITE))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "ERROR_ACCESS_DENIED", ERROR_ACCESS_DENIED))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "ERROR_INVALID_NAME", ERROR_INVALID_NAME))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "ERROR_SERVICE_DOES_NOT_EXIST", ERROR_SERVICE_DOES_NOT_EXIST))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "ERROR_PRIVILEGE_NOT_HELD", ERROR_PRIVILEGE_NOT_HELD))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "WINVER", PSUTIL_WINVER))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "WINDOWS_VISTA", PSUTIL_WINDOWS_VISTA))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "WINDOWS_7", PSUTIL_WINDOWS_7))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "WINDOWS_8", PSUTIL_WINDOWS_8))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "WINDOWS_8_1", PSUTIL_WINDOWS_8_1))
+ return NULL;
+ if (PyModule_AddIntConstant(mod, "WINDOWS_10", PSUTIL_WINDOWS_10))
+ return NULL;
+
+ return mod;
}
diff --git a/contrib/python/psutil/py3/psutil/_pswindows.py b/contrib/python/psutil/py3/psutil/_pswindows.py
index e5af3c90f43..c6c8fffa4b0 100644
--- a/contrib/python/psutil/py3/psutil/_pswindows.py
+++ b/contrib/python/psutil/py3/psutil/_pswindows.py
@@ -10,6 +10,7 @@ import functools
import os
import signal
import sys
+import threading
import time
from collections import namedtuple
@@ -33,7 +34,6 @@ from ._psutil_windows import IDLE_PRIORITY_CLASS
from ._psutil_windows import NORMAL_PRIORITY_CLASS
from ._psutil_windows import REALTIME_PRIORITY_CLASS
-
try:
from . import _psutil_windows as cext
except ImportError as err:
@@ -184,12 +184,21 @@ pio = namedtuple('pio', ['read_count', 'write_count',
@functools.lru_cache(maxsize=512)
def convert_dos_path(s):
r"""Convert paths using native DOS format like:
- "\Device\HarddiskVolume1\Windows\systemew\file.txt"
+ "\Device\HarddiskVolume1\Windows\systemew\file.txt" or
+ "\??\C:\Windows\systemew\file.txt"
into:
"C:\Windows\systemew\file.txt".
"""
+ if s.startswith('\\\\'):
+ return s
rawdrive = '\\'.join(s.split('\\')[:3])
- driveletter = cext.QueryDosDevice(rawdrive)
+ if rawdrive in {"\\??\\UNC", "\\Device\\Mup"}:
+ rawdrive = '\\'.join(s.split('\\')[:5])
+ driveletter = '\\\\' + '\\'.join(s.split('\\')[3:5])
+ elif rawdrive.startswith('\\??\\'):
+ driveletter = s.split('\\')[2]
+ else:
+ driveletter = cext.QueryDosDevice(rawdrive)
remainder = s[len(rawdrive) :]
return os.path.join(driveletter, remainder)
@@ -322,22 +331,31 @@ def cpu_freq():
return [_common.scpufreq(float(curr), min_, float(max_))]
-_loadavg_inititialized = False
+_loadavg_initialized = False
+_lock = threading.Lock()
+
+
+def _getloadavg_impl():
+ # Drop to 2 decimal points which is what Linux does
+ raw_loads = cext.getloadavg()
+ return tuple(round(load, 2) for load in raw_loads)
def getloadavg():
"""Return the number of processes in the system run queue averaged
over the last 1, 5, and 15 minutes respectively as a tuple.
"""
- global _loadavg_inititialized
+ global _loadavg_initialized
- if not _loadavg_inititialized:
- cext.init_loadavg_counter()
- _loadavg_inititialized = True
+ if _loadavg_initialized:
+ return _getloadavg_impl()
- # Drop to 2 decimal points which is what Linux does
- raw_loads = cext.getloadavg()
- return tuple(round(load, 2) for load in raw_loads)
+ with _lock:
+ if not _loadavg_initialized:
+ cext.init_loadavg_counter()
+ _loadavg_initialized = True
+
+ return _getloadavg_impl()
# =====================================================================
@@ -426,12 +444,14 @@ _last_btime = 0
def boot_time():
- """The system boot time expressed in seconds since the epoch."""
+ """The system boot time expressed in seconds since the epoch. This
+ also includes the time spent during hybernate / suspend.
+ """
# This dirty hack is to adjust the precision of the returned
# value which may have a 1 second fluctuation, see:
# https://github.com/giampaolo/psutil/issues/1007
global _last_btime
- ret = float(cext.boot_time())
+ ret = time.time() - cext.uptime()
if abs(ret - _last_btime) <= 1:
return _last_btime
else:
diff --git a/contrib/python/psutil/py3/psutil/arch/all/init.c b/contrib/python/psutil/py3/psutil/arch/all/init.c
new file mode 100644
index 00000000000..82e7c4b6541
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/all/init.c
@@ -0,0 +1,134 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+// Global names shared by all platforms.
+
+#include <Python.h>
+#ifdef PSUTIL_WINDOWS
+#include <windows.h>
+#endif
+
+#include "init.h"
+
+int PSUTIL_DEBUG = 0;
+int PSUTIL_CONN_NONE = 128;
+
+#ifdef Py_GIL_DISABLED
+PyMutex utxent_lock = {0};
+#endif
+
+
+// Set OSError(errno=ESRCH, strerror="No such process (originated from")
+// Python exception.
+PyObject *
+NoSuchProcess(const char *syscall) {
+ PyObject *exc;
+ char msg[1024];
+
+ sprintf(msg, "assume no such process (originated from %s)", syscall);
+ exc = PyObject_CallFunction(PyExc_OSError, "(is)", ESRCH, msg);
+ PyErr_SetObject(PyExc_OSError, exc);
+ Py_XDECREF(exc);
+ return NULL;
+}
+
+
+// Set OSError(errno=EACCES, strerror="Permission denied" (originated from ...)
+// Python exception.
+PyObject *
+AccessDenied(const char *syscall) {
+ PyObject *exc;
+ char msg[1024];
+
+ sprintf(msg, "assume access denied (originated from %s)", syscall);
+ exc = PyObject_CallFunction(PyExc_OSError, "(is)", EACCES, msg);
+ PyErr_SetObject(PyExc_OSError, exc);
+ Py_XDECREF(exc);
+ return NULL;
+}
+
+
+// Same as PyErr_SetFromErrno(0) but adds the syscall to the exception
+// message.
+PyObject *
+psutil_PyErr_SetFromOSErrnoWithSyscall(const char *syscall) {
+ char fullmsg[1024];
+
+#ifdef PSUTIL_WINDOWS
+ DWORD dwLastError = GetLastError();
+ sprintf(fullmsg, "(originated from %s)", syscall);
+ PyErr_SetFromWindowsErrWithFilename(dwLastError, fullmsg);
+#else
+ PyObject *exc;
+ sprintf(fullmsg, "%s (originated from %s)", strerror(errno), syscall);
+ exc = PyObject_CallFunction(PyExc_OSError, "(is)", errno, fullmsg);
+ PyErr_SetObject(PyExc_OSError, exc);
+ Py_XDECREF(exc);
+#endif
+ return NULL;
+}
+
+
+// Enable or disable PSUTIL_DEBUG messages.
+PyObject *
+psutil_set_debug(PyObject *self, PyObject *args) {
+ PyObject *value;
+ int x;
+
+ if (!PyArg_ParseTuple(args, "O", &value))
+ return NULL;
+ x = PyObject_IsTrue(value);
+ if (x < 0) {
+ return NULL;
+ }
+ else if (x == 0) {
+ PSUTIL_DEBUG = 0;
+ }
+ else {
+ PSUTIL_DEBUG = 1;
+ }
+ Py_RETURN_NONE;
+}
+
+
+// Raise OverflowError if Python int value overflowed when converting
+// to pid_t. Raise ValueError if Python int value is negative.
+// Otherwise, return None.
+PyObject *
+psutil_check_pid_range(PyObject *self, PyObject *args) {
+#ifdef PSUTIL_WINDOWS
+ DWORD pid;
+#else
+ pid_t pid;
+#endif
+
+ if (!PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
+ return NULL;
+ if (pid < 0) {
+ PyErr_SetString(PyExc_ValueError, "pid must be a positive integer");
+ return NULL;
+ }
+ Py_RETURN_NONE;
+}
+
+
+// Use it when invalid args are passed to a C function.
+int
+psutil_badargs(const char *funcname) {
+ PyErr_Format(
+ PyExc_RuntimeError, "%s() invalid args passed to function", funcname
+ );
+ return -1;
+}
+
+
+// Called on module import on all platforms.
+int
+psutil_setup(void) {
+ if (getenv("PSUTIL_DEBUG") != NULL)
+ PSUTIL_DEBUG = 1;
+ return 0;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/all/init.h b/contrib/python/psutil/py3/psutil/arch/all/init.h
new file mode 100644
index 00000000000..2b3e20ff81c
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/all/init.h
@@ -0,0 +1,128 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+// Global names shared by all platforms.
+
+#include <Python.h>
+
+// We do this so that all .c files have to include only one header
+// (ourselves, init.h).
+
+#if defined(PSUTIL_POSIX)
+ #include "../../arch/posix/init.h"
+#endif
+#if defined(PSUTIL_BSD)
+ #error #include "../../arch/bsd/init.h"
+#endif
+
+#if defined(PSUTIL_LINUX)
+ #include "../../arch/linux/init.h"
+#elif defined(PSUTIL_WINDOWS)
+ #include "../../arch/windows/init.h"
+#elif defined(PSUTIL_OSX)
+ #include "../../arch/osx/init.h"
+#elif defined(PSUTIL_FREEBSD)
+ #error #include "../../arch/freebsd/init.h"
+#elif defined(PSUTIL_OPENBSD)
+ #error #include "../../arch/openbsd/init.h"
+#elif defined(PSUTIL_NETBSD)
+ #error #include "../../arch/netbsd/init.h"
+#elif defined(PSUTIL_SUNOS)
+ #include "../../arch/sunos/init.h"
+#endif
+
+// print debug messages when set to 1
+extern int PSUTIL_DEBUG;
+// a signaler for connections without an actual status
+extern int PSUTIL_CONN_NONE;
+
+#ifdef Py_GIL_DISABLED
+ extern PyMutex utxent_lock;
+ #define UTXENT_MUTEX_LOCK() PyMutex_Lock(&utxent_lock)
+ #define UTXENT_MUTEX_UNLOCK() PyMutex_Unlock(&utxent_lock)
+#else
+ #define UTXENT_MUTEX_LOCK()
+ #define UTXENT_MUTEX_UNLOCK()
+#endif
+
+// Print a debug message on stderr.
+#define psutil_debug(...) do { \
+ if (! PSUTIL_DEBUG) \
+ break; \
+ fprintf(stderr, "psutil-debug [%s:%d]> ", __FILE__, __LINE__); \
+ fprintf(stderr, __VA_ARGS__); \
+ fprintf(stderr, "\n");} while(0)
+
+
+// strncpy() variant which appends a null terminator.
+#define PSUTIL_STRNCPY(dst, src, n) \
+ strncpy(dst, src, n - 1); \
+ dst[n - 1] = '\0'
+
+// ====================================================================
+// --- Custom exceptions
+// ====================================================================
+
+PyObject *AccessDenied(const char *msg);
+PyObject *NoSuchProcess(const char *msg);
+PyObject *psutil_PyErr_SetFromOSErrnoWithSyscall(const char *syscall);
+
+// ====================================================================
+// --- Backward compatibility with missing Python.h APIs
+// ====================================================================
+
+// --- _Py_PARSE_PID
+
+// SIZEOF_INT|LONG is missing on Linux + PyPy (only?).
+// In this case we guess it from setup.py. It's not 100% bullet proof,
+// If wrong we'll probably get compiler warnings.
+// FWIW on all UNIX platforms I've seen pid_t is defined as an int.
+// _getpid() on Windows also returns an int.
+#if !defined(SIZEOF_INT)
+ #define SIZEOF_INT 4
+#endif
+#if !defined(SIZEOF_LONG)
+ #define SIZEOF_LONG 8
+#endif
+#if !defined(SIZEOF_PID_T)
+ #define SIZEOF_PID_T PSUTIL_SIZEOF_PID_T // set as a macro in setup.py
+#endif
+
+// _Py_PARSE_PID was added in Python 3, but since it's private we make
+// sure it's always present.
+#ifndef _Py_PARSE_PID
+ #if SIZEOF_PID_T == SIZEOF_INT
+ #define _Py_PARSE_PID "i"
+ #elif SIZEOF_PID_T == SIZEOF_LONG
+ #define _Py_PARSE_PID "l"
+ #elif defined(SIZEOF_LONG_LONG) && SIZEOF_PID_T == SIZEOF_LONG_LONG
+ #define _Py_PARSE_PID "L"
+ #else
+ #error "_Py_PARSE_PID: sizeof(pid_t) is neither sizeof(int), "
+ "sizeof(long) or sizeof(long long)"
+ #endif
+#endif
+
+// PyPy on Windows
+#ifndef PyLong_FromPid
+ #if ((SIZEOF_PID_T == SIZEOF_INT) || (SIZEOF_PID_T == SIZEOF_LONG))
+ #define PyLong_FromPid PyLong_FromLong
+ #elif defined(SIZEOF_LONG_LONG) && SIZEOF_PID_T == SIZEOF_LONG_LONG
+ #define PyLong_FromPid PyLong_FromLongLong
+ #else
+ #error "PyLong_FromPid: sizeof(pid_t) is neither sizeof(int), "
+ "sizeof(long) or sizeof(long long)"
+ #endif
+#endif
+
+int psutil_badargs(const char *funcname);
+int psutil_setup(void);
+
+#if defined(PSUTIL_WINDOWS) || defined(PSUTIL_BSD) || defined(PSUTIL_OSX)
+PyObject *psutil_pids(PyObject *self, PyObject *args);
+#endif
+PyObject *psutil_set_debug(PyObject *self, PyObject *args);
+PyObject *psutil_check_pid_range(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/all/pids.c b/contrib/python/psutil/py3/psutil/arch/all/pids.c
new file mode 100644
index 00000000000..d88c10dd6b1
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/all/pids.c
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#if defined(PSUTIL_WINDOWS) || defined(PSUTIL_BSD) || defined(PSUTIL_OSX)
+#include <Python.h>
+
+#include "init.h"
+
+
+PyObject *
+psutil_pids(PyObject *self, PyObject *args) {
+#ifdef PSUTIL_WINDOWS
+ DWORD *pids_array = NULL;
+#else
+ pid_t *pids_array = NULL;
+#endif
+ int pids_count = 0;
+ int i;
+ PyObject *py_retlist = PyList_New(0);
+ PyObject *py_pid = NULL;
+
+ if (!py_retlist)
+ return NULL;
+
+ if (_psutil_pids(&pids_array, &pids_count) != 0)
+ goto error;
+
+ if (pids_count == 0) {
+ PyErr_Format(PyExc_RuntimeError, "no PIDs found");
+ goto error;
+ }
+
+ for (i = 0; i < pids_count; i++) {
+ py_pid = PyLong_FromPid(pids_array[i]);
+ if (!py_pid)
+ goto error;
+ if (PyList_Append(py_retlist, py_pid))
+ goto error;
+ Py_CLEAR(py_pid);
+ }
+
+ free(pids_array);
+ return py_retlist;
+
+error:
+ Py_XDECREF(py_pid);
+ Py_DECREF(py_retlist);
+ free(pids_array);
+ return NULL;
+}
+#endif
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/disk.c b/contrib/python/psutil/py3/psutil/arch/linux/disk.c
index 692a7d5d476..fb6726af989 100644
--- a/contrib/python/psutil/py3/psutil/arch/linux/disk.c
+++ b/contrib/python/psutil/py3/psutil/arch/linux/disk.c
@@ -4,11 +4,11 @@
* found in the LICENSE file.
*/
+#include "../../arch/all/init.h"
+
#include <Python.h>
#include <mntent.h>
-#include "../../_psutil_common.h"
-
// Return disk mounted partitions as a list of tuples including device,
// mount point and filesystem type.
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/disk.h b/contrib/python/psutil/py3/psutil/arch/linux/disk.h
deleted file mode 100644
index 90a86d611b8..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/linux/disk.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_disk_partitions(PyObject* self, PyObject* args);
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/proc.h b/contrib/python/psutil/py3/psutil/arch/linux/init.h
index 94a84c62ec6..77c83c6b355 100644
--- a/contrib/python/psutil/py3/psutil/arch/linux/proc.h
+++ b/contrib/python/psutil/py3/psutil/arch/linux/init.h
@@ -8,9 +8,13 @@
#include <sys/syscall.h> // __NR_*
#include <sched.h> // CPU_ALLOC
+PyObject *psutil_disk_partitions(PyObject *self, PyObject *args);
+PyObject *psutil_linux_sysinfo(PyObject *self, PyObject *args);
+PyObject *psutil_net_if_duplex_speed(PyObject *self, PyObject *args);
+
// Linux >= 2.6.13
#if defined(__NR_ioprio_get) && defined(__NR_ioprio_set)
- #define PSUTIL_HAVE_IOPRIO
+ #define PSUTIL_HAS_IOPRIO
PyObject *psutil_proc_ioprio_get(PyObject *self, PyObject *args);
PyObject *psutil_proc_ioprio_set(PyObject *self, PyObject *args);
@@ -18,7 +22,7 @@
// Should exist starting from CentOS 6 (year 2011).
#ifdef CPU_ALLOC
- #define PSUTIL_HAVE_CPU_AFFINITY
+ #define PSUTIL_HAS_CPU_AFFINITY
PyObject *psutil_proc_cpu_affinity_get(PyObject *self, PyObject *args);
PyObject *psutil_proc_cpu_affinity_set(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/mem.c b/contrib/python/psutil/py3/psutil/arch/linux/mem.c
index 3b9b4fef3fd..cacf1e7766c 100644
--- a/contrib/python/psutil/py3/psutil/arch/linux/mem.c
+++ b/contrib/python/psutil/py3/psutil/arch/linux/mem.c
@@ -7,7 +7,7 @@
#include <Python.h>
#include <sys/sysinfo.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
PyObject *
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/mem.h b/contrib/python/psutil/py3/psutil/arch/linux/mem.h
deleted file mode 100644
index 582d3e0314f..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/linux/mem.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_linux_sysinfo(PyObject* self, PyObject* args);
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/net.c b/contrib/python/psutil/py3/psutil/arch/linux/net.c
index 6d2785ee636..2488d9ab278 100644
--- a/contrib/python/psutil/py3/psutil/arch/linux/net.c
+++ b/contrib/python/psutil/py3/psutil/arch/linux/net.c
@@ -12,6 +12,8 @@
#include <linux/version.h>
#include <unistd.h>
+#include "../../arch/all/init.h"
+
// see: https://github.com/giampaolo/psutil/issues/659
#ifdef PSUTIL_ETHTOOL_MISSING_TYPES
#include <linux/types.h>
@@ -25,8 +27,6 @@
#define _LINUX_SYSINFO_H
#include <linux/ethtool.h>
-#include "../../_psutil_common.h"
-
// * defined in linux/ethtool.h but not always available (e.g. Android)
// * #ifdef check needed for old kernels, see:
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/net.h b/contrib/python/psutil/py3/psutil/arch/linux/net.h
deleted file mode 100644
index 55095c06c92..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/linux/net.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_net_if_duplex_speed(PyObject* self, PyObject* args);
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/proc.c b/contrib/python/psutil/py3/psutil/arch/linux/proc.c
index f8230ee75b0..9024c818424 100644
--- a/contrib/python/psutil/py3/psutil/arch/linux/proc.c
+++ b/contrib/python/psutil/py3/psutil/arch/linux/proc.c
@@ -4,16 +4,14 @@
* found in the LICENSE file.
*/
+#include "../../arch/all/init.h"
+
#include <Python.h>
#include <sys/syscall.h>
#include <sched.h>
#include <unistd.h>
-#include "proc.h"
-#include "../../_psutil_common.h"
-
-
-#ifdef PSUTIL_HAVE_IOPRIO
+#ifdef PSUTIL_HAS_IOPRIO
enum {
IOPRIO_WHO_PROCESS = 1,
};
@@ -72,10 +70,10 @@ psutil_proc_ioprio_set(PyObject *self, PyObject *args) {
return PyErr_SetFromErrno(PyExc_OSError);
Py_RETURN_NONE;
}
-#endif // PSUTIL_HAVE_IOPRIO
+#endif // PSUTIL_HAS_IOPRIO
-#ifdef PSUTIL_HAVE_CPU_AFFINITY
+#ifdef PSUTIL_HAS_CPU_AFFINITY
// Return process CPU affinity as a Python list.
PyObject *
@@ -186,4 +184,4 @@ psutil_proc_cpu_affinity_set(PyObject *self, PyObject *args) {
Py_RETURN_NONE;
}
-#endif // PSUTIL_HAVE_CPU_AFFINITY
+#endif // PSUTIL_HAS_CPU_AFFINITY
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/users.h b/contrib/python/psutil/py3/psutil/arch/linux/users.h
deleted file mode 100644
index ba2735d1d29..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/linux/users.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_users(PyObject* self, PyObject* args);
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/cpu.c b/contrib/python/psutil/py3/psutil/arch/osx/cpu.c
index a3531536416..e556037d57b 100644
--- a/contrib/python/psutil/py3/psutil/arch/osx/cpu.c
+++ b/contrib/python/psutil/py3/psutil/arch/osx/cpu.c
@@ -27,39 +27,34 @@ For reference, here's the git history with original implementations:
#include <sys/vmmeter.h>
#include <mach/mach.h>
#if defined(__arm64__) || defined(__aarch64__)
-#include <CoreFoundation/CoreFoundation.h>
-#include <IOKit/IOKitLib.h>
+ #include <CoreFoundation/CoreFoundation.h>
+ #include <IOKit/IOKitLib.h>
#endif
-#if (defined __MAC_OS_X_VERSION_MIN_REQUIRED) && (__MAC_OS_X_VERSION_MIN_REQUIRED < 120000)
-#define kIOMainPortDefault kIOMasterPortDefault
-#endif
-
-#include "../../_psutil_common.h"
-#include "../../_psutil_posix.h"
+#include "../../arch/all/init.h"
+// added in macOS 12
+#ifndef kIOMainPortDefault
+ #define kIOMainPortDefault 0
+#endif
PyObject *
psutil_cpu_count_logical(PyObject *self, PyObject *args) {
int num;
- size_t size = sizeof(int);
- if (sysctlbyname("hw.logicalcpu", &num, &size, NULL, 2))
- Py_RETURN_NONE; // mimic os.cpu_count()
- else
- return Py_BuildValue("i", num);
+ if (psutil_sysctlbyname("hw.logicalcpu", &num, sizeof(num)) != 0)
+ Py_RETURN_NONE;
+ return Py_BuildValue("i", num);
}
PyObject *
psutil_cpu_count_cores(PyObject *self, PyObject *args) {
int num;
- size_t size = sizeof(int);
- if (sysctlbyname("hw.physicalcpu", &num, &size, NULL, 0))
- Py_RETURN_NONE; // mimic os.cpu_count()
- else
- return Py_BuildValue("i", num);
+ if (psutil_sysctlbyname("hw.physicalcpu", &num, sizeof(num)) != 0)
+ Py_RETURN_NONE;
+ return Py_BuildValue("i", num);
}
@@ -68,17 +63,25 @@ psutil_cpu_times(PyObject *self, PyObject *args) {
mach_msg_type_number_t count = HOST_CPU_LOAD_INFO_COUNT;
kern_return_t error;
host_cpu_load_info_data_t r_load;
+ mach_port_t mport = mach_host_self();
+
+ if (mport == MACH_PORT_NULL) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "mach_host_self() returned MACH_PORT_NULL");
+ return NULL;
+ }
- mach_port_t host_port = mach_host_self();
- error = host_statistics(host_port, HOST_CPU_LOAD_INFO,
+ error = host_statistics(mport, HOST_CPU_LOAD_INFO,
(host_info_t)&r_load, &count);
+ mach_port_deallocate(mach_task_self(), mport);
+
if (error != KERN_SUCCESS) {
return PyErr_Format(
PyExc_RuntimeError,
"host_statistics(HOST_CPU_LOAD_INFO) syscall failed: %s",
- mach_error_string(error));
+ mach_error_string(error)
+ );
}
- mach_port_deallocate(mach_task_self(), host_port);
return Py_BuildValue(
"(dddd)",
@@ -92,235 +95,259 @@ psutil_cpu_times(PyObject *self, PyObject *args) {
PyObject *
psutil_cpu_stats(PyObject *self, PyObject *args) {
- struct vmmeter vmstat;
kern_return_t ret;
- mach_msg_type_number_t count = sizeof(vmstat) / sizeof(integer_t);
+ mach_msg_type_number_t count = HOST_VM_INFO_COUNT;
mach_port_t mport = mach_host_self();
+ struct vmmeter vmstat;
+
+ if (mport == MACH_PORT_NULL) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "mach_host_self() returned MACH_PORT_NULL");
+ return NULL;
+ }
ret = host_statistics(mport, HOST_VM_INFO, (host_info_t)&vmstat, &count);
+ mach_port_deallocate(mach_task_self(), mport);
+
if (ret != KERN_SUCCESS) {
PyErr_Format(
PyExc_RuntimeError,
"host_statistics(HOST_VM_INFO) failed: %s",
- mach_error_string(ret));
+ mach_error_string(ret)
+ );
return NULL;
}
- mach_port_deallocate(mach_task_self(), mport);
return Py_BuildValue(
"IIIII",
- vmstat.v_swtch, // ctx switches
- vmstat.v_intr, // interrupts
- vmstat.v_soft, // software interrupts
- vmstat.v_syscall, // syscalls
- vmstat.v_trap // traps
+ vmstat.v_swtch,
+ vmstat.v_intr,
+ vmstat.v_soft,
+#if defined(__MAC_OS_X_VERSION_MIN_REQUIRED) \
+ && __MAC_OS_X_VERSION_MIN_REQUIRED__ >= 120000
+ 0,
+#else
+ vmstat.v_syscall,
+#endif
+ vmstat.v_trap
);
}
+
#if defined(__arm64__) || defined(__aarch64__)
-PyObject *
-psutil_cpu_freq(PyObject *self, PyObject *args) {
- uint32_t min;
- uint32_t curr;
- uint32_t pMin;
- uint32_t eMin;
- uint32_t max;
+
+// Helper to locate the 'pmgr' entry in AppleARMIODevice. Returns 0 on
+// failure, nonzero on success, and stores the found entry in
+// *out_entry. Caller is responsible for IOObjectRelease(*out_entry).
+// Needed because on GitHub CI sometimes (but not all the times)
+// "AppleARMIODevice" is not available.
+static int
+psutil_find_pmgr_entry(io_registry_entry_t *out_entry) {
kern_return_t status;
- CFDictionaryRef matching = NULL;
- CFTypeRef pCoreRef = NULL;
- CFTypeRef eCoreRef = NULL;
- io_iterator_t iter = 0;
- io_registry_entry_t entry = 0;
- io_name_t name;
+ io_iterator_t iter = IO_OBJECT_NULL;
+ io_registry_entry_t entry = IO_OBJECT_NULL;
+ CFDictionaryRef matching = IOServiceMatching("AppleARMIODevice");
+ int found = 0;
- matching = IOServiceMatching("AppleARMIODevice");
- if (matching == 0) {
- return PyErr_Format(
- PyExc_RuntimeError,
- "IOServiceMatching call failed, 'AppleARMIODevice' not found"
- );
- }
+ if (!out_entry || !matching)
+ return 0;
status = IOServiceGetMatchingServices(kIOMainPortDefault, matching, &iter);
- if (status != KERN_SUCCESS) {
- PyErr_Format(
- PyExc_RuntimeError, "IOServiceGetMatchingServices call failed"
- );
- goto error;
- }
-
- while ((entry = IOIteratorNext(iter)) != 0) {
- status = IORegistryEntryGetName(entry, name);
- if (status != KERN_SUCCESS) {
- IOObjectRelease(entry);
- continue;
- }
- if (strcmp(name, "pmgr") == 0) {
+ if (status != KERN_SUCCESS || iter == IO_OBJECT_NULL)
+ return 0;
+
+ while ((entry = IOIteratorNext(iter)) != IO_OBJECT_NULL) {
+ io_name_t name;
+ if (IORegistryEntryGetName(entry, name) == KERN_SUCCESS &&
+ strcmp(name, "pmgr") == 0) {
+ found = 1;
break;
}
IOObjectRelease(entry);
}
- if (entry == 0) {
- PyErr_Format(
- PyExc_RuntimeError,
- "'pmgr' entry was not found in AppleARMIODevice service"
- );
- goto error;
- }
+ IOObjectRelease(iter);
- pCoreRef = IORegistryEntryCreateCFProperty(
- entry, CFSTR("voltage-states5-sram"), kCFAllocatorDefault, 0);
- if (pCoreRef == NULL) {
- PyErr_Format(
- PyExc_RuntimeError, "'voltage-states5-sram' property not found");
- goto error;
+ if (found) {
+ *out_entry = entry;
+ return 1;
}
+ return 0;
+}
- eCoreRef = IORegistryEntryCreateCFProperty(
- entry, CFSTR("voltage-states1-sram"), kCFAllocatorDefault, 0);
- if (eCoreRef == NULL) {
- PyErr_Format(
- PyExc_RuntimeError, "'voltage-states1-sram' property not found");
- goto error;
- }
+// Python wrapper: return True/False.
+PyObject *
+psutil_has_cpu_freq(PyObject *self, PyObject *args) {
+ io_registry_entry_t entry = IO_OBJECT_NULL;
+ int ok = psutil_find_pmgr_entry(&entry);
+ if (entry != IO_OBJECT_NULL)
+ IOObjectRelease(entry);
+ if (ok)
+ Py_RETURN_TRUE;
+ Py_RETURN_FALSE;
+}
- size_t pCoreLength = CFDataGetLength(pCoreRef);
- size_t eCoreLength = CFDataGetLength(eCoreRef);
- if (pCoreLength < 8) {
- PyErr_Format(
+
+PyObject *
+psutil_cpu_freq(PyObject *self, PyObject *args) {
+ io_registry_entry_t entry = IO_OBJECT_NULL;
+ CFTypeRef pCoreRef = NULL;
+ CFTypeRef eCoreRef = NULL;
+ size_t pCoreLength = 0;
+ uint32_t pMin = 0, eMin = 0, min = 0, max = 0, curr = 0;
+
+ if (!psutil_find_pmgr_entry(&entry)) {
+ PyErr_SetString(
PyExc_RuntimeError,
- "expected 'voltage-states5-sram' buffer to have at least size 8"
+ "'pmgr' entry not found in AppleARMIODevice"
);
- goto error;
+ return NULL;
}
- if (eCoreLength < 4) {
- PyErr_Format(
- PyExc_RuntimeError,
- "expected 'voltage-states1-sram' buffer to have at least size 4"
- );
- goto error;
+
+ pCoreRef = IORegistryEntryCreateCFProperty(
+ entry, CFSTR("voltage-states5-sram"), kCFAllocatorDefault, 0
+ );
+ eCoreRef = IORegistryEntryCreateCFProperty(
+ entry, CFSTR("voltage-states1-sram"), kCFAllocatorDefault, 0
+ );
+
+ if (!pCoreRef ||
+ !eCoreRef ||
+ CFGetTypeID(pCoreRef) != CFDataGetTypeID() ||
+ CFGetTypeID(eCoreRef) != CFDataGetTypeID() ||
+ CFDataGetLength(pCoreRef) < 8 ||
+ CFDataGetLength(eCoreRef) < 4)
+ {
+ PyErr_SetString(PyExc_RuntimeError, "invalid CPU frequency data");
+ goto cleanup;
}
- CFDataGetBytes(pCoreRef, CFRangeMake(0, 4), (UInt8 *) &pMin);
- CFDataGetBytes(eCoreRef, CFRangeMake(0, 4), (UInt8 *) &eMin);
- CFDataGetBytes(pCoreRef, CFRangeMake(pCoreLength - 8, 4), (UInt8 *) &max);
+ pCoreLength = CFDataGetLength(pCoreRef);
+ CFDataGetBytes(pCoreRef, CFRangeMake(0, 4), (UInt8 *)&pMin);
+ CFDataGetBytes(eCoreRef, CFRangeMake(0, 4), (UInt8 *)&eMin);
+ CFDataGetBytes(pCoreRef, CFRangeMake(pCoreLength - 8, 4), (UInt8 *)&max);
- min = pMin < eMin ? pMin : eMin;
+ min = (pMin < eMin) ? pMin : eMin;
curr = max;
- CFRelease(pCoreRef);
- CFRelease(eCoreRef);
- IOObjectRelease(iter);
- IOObjectRelease(entry);
+cleanup:
+ if (pCoreRef)
+ CFRelease(pCoreRef);
+ if (eCoreRef)
+ CFRelease(eCoreRef);
+ if (entry != IO_OBJECT_NULL)
+ IOObjectRelease(entry);
return Py_BuildValue(
- "IKK",
- curr / 1000 / 1000,
- min / 1000 / 1000,
- max / 1000 / 1000
+ "KKK",
+ (unsigned long long)(curr / 1000 / 1000),
+ (unsigned long long)(min / 1000 / 1000),
+ (unsigned long long)(max / 1000 / 1000)
);
+}
-error:
- if (pCoreRef != NULL)
- CFRelease(pCoreRef);
- if (eCoreRef != NULL)
- CFRelease(eCoreRef);
- if (iter != 0)
- IOObjectRelease(iter);
- if (entry != 0)
- IOObjectRelease(entry);
- return NULL;
+#else // not ARM64 / ARCH64
+
+PyObject *
+psutil_has_cpu_freq(PyObject *self, PyObject *args) {
+ Py_RETURN_TRUE;
}
-#else
+
PyObject *
psutil_cpu_freq(PyObject *self, PyObject *args) {
unsigned int curr;
- int64_t min = 0;
- int64_t max = 0;
- int mib[2];
- size_t len = sizeof(curr);
- size_t size = sizeof(min);
-
- // also available as "hw.cpufrequency" but it's deprecated
- mib[0] = CTL_HW;
- mib[1] = HW_CPU_FREQ;
+ int64_t min = 0, max = 0;
+ int mib[2] = {CTL_HW, HW_CPU_FREQ};
- if (sysctl(mib, 2, &curr, &len, NULL, 0) < 0)
+ if (psutil_sysctl(mib, 2, &curr, sizeof(curr)) < 0)
return psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl(HW_CPU_FREQ)");
- if (sysctlbyname("hw.cpufrequency_min", &min, &size, NULL, 0))
- psutil_debug("sysctl('hw.cpufrequency_min') failed (set to 0)");
+ if (psutil_sysctlbyname("hw.cpufrequency_min", &min, sizeof(min)) != 0) {
+ min = 0;
+ psutil_debug("sysctlbyname('hw.cpufrequency_min') failed (set to 0)");
+ }
- if (sysctlbyname("hw.cpufrequency_max", &max, &size, NULL, 0))
- psutil_debug("sysctl('hw.cpufrequency_min') failed (set to 0)");
+ if (psutil_sysctlbyname("hw.cpufrequency_max", &max, sizeof(max)) != 0) {
+ max = 0;
+ psutil_debug("sysctlbyname('hw.cpufrequency_max') failed (set to 0)");
+ }
return Py_BuildValue(
- "IKK",
- curr / 1000 / 1000,
- min / 1000 / 1000,
- max / 1000 / 1000);
+ "KKK",
+ (unsigned long long)(curr / 1000 / 1000),
+ (unsigned long long)(min / 1000 / 1000),
+ (unsigned long long)(max / 1000 / 1000)
+ );
}
-#endif
+
+#endif // ARM64
PyObject *
psutil_per_cpu_times(PyObject *self, PyObject *args) {
- natural_t cpu_count;
- natural_t i;
- processor_info_array_t info_array;
- mach_msg_type_number_t info_count;
- kern_return_t error;
+ natural_t cpu_count = 0;
+ mach_msg_type_number_t info_count = 0;
processor_cpu_load_info_data_t *cpu_load_info = NULL;
- int ret;
+ processor_info_array_t info_array = NULL;
+ kern_return_t error;
+ mach_port_t mport = mach_host_self();
PyObject *py_retlist = PyList_New(0);
- PyObject *py_cputime = NULL;
- if (py_retlist == NULL)
+ if (!py_retlist)
return NULL;
- mach_port_t host_port = mach_host_self();
- error = host_processor_info(host_port, PROCESSOR_CPU_LOAD_INFO,
- &cpu_count, &info_array, &info_count);
- if (error != KERN_SUCCESS) {
+ if (mport == MACH_PORT_NULL) {
+ PyErr_SetString(PyExc_RuntimeError, "mach_host_self() returned NULL");
+ goto error;
+ }
+
+ error = host_processor_info(
+ mport, PROCESSOR_CPU_LOAD_INFO, &cpu_count, &info_array, &info_count
+ );
+ mach_port_deallocate(mach_task_self(), mport);
+
+ if (error != KERN_SUCCESS || !info_array) {
PyErr_Format(
PyExc_RuntimeError,
- "host_processor_info(PROCESSOR_CPU_LOAD_INFO) syscall failed: %s",
- mach_error_string(error));
+ "host_processor_info failed: %s",
+ mach_error_string(error)
+ );
goto error;
}
- mach_port_deallocate(mach_task_self(), host_port);
- cpu_load_info = (processor_cpu_load_info_data_t *) info_array;
+ cpu_load_info = (processor_cpu_load_info_data_t *)info_array;
- for (i = 0; i < cpu_count; i++) {
- py_cputime = Py_BuildValue(
+ for (natural_t i = 0; i < cpu_count; i++) {
+ PyObject *py_cputime = Py_BuildValue(
"(dddd)",
(double)cpu_load_info[i].cpu_ticks[CPU_STATE_USER] / CLK_TCK,
(double)cpu_load_info[i].cpu_ticks[CPU_STATE_NICE] / CLK_TCK,
(double)cpu_load_info[i].cpu_ticks[CPU_STATE_SYSTEM] / CLK_TCK,
(double)cpu_load_info[i].cpu_ticks[CPU_STATE_IDLE] / CLK_TCK
);
- if (!py_cputime)
+ if (!py_cputime) {
goto error;
- if (PyList_Append(py_retlist, py_cputime))
+ }
+ if (PyList_Append(py_retlist, py_cputime)) {
+ Py_DECREF(py_cputime);
goto error;
- Py_CLEAR(py_cputime);
+ }
+ Py_DECREF(py_cputime);
}
- ret = vm_deallocate(mach_task_self(), (vm_address_t)info_array,
- info_count * sizeof(int));
- if (ret != KERN_SUCCESS)
- PyErr_WarnEx(PyExc_RuntimeWarning, "vm_deallocate() failed", 2);
+ vm_deallocate(
+ mach_task_self(),
+ (vm_address_t)info_array,
+ info_count * sizeof(integer_t)
+ );
return py_retlist;
error:
- Py_XDECREF(py_cputime);
- Py_DECREF(py_retlist);
- if (cpu_load_info != NULL) {
- ret = vm_deallocate(mach_task_self(), (vm_address_t)info_array,
- info_count * sizeof(int));
- if (ret != KERN_SUCCESS)
- PyErr_WarnEx(PyExc_RuntimeWarning, "vm_deallocate() failed", 2);
- }
+ Py_XDECREF(py_retlist);
+ if (info_array)
+ vm_deallocate(
+ mach_task_self(),
+ (vm_address_t)info_array,
+ info_count * sizeof(integer_t)
+ );
return NULL;
}
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/cpu.h b/contrib/python/psutil/py3/psutil/arch/osx/cpu.h
deleted file mode 100644
index 6cf92f82b3f..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/osx/cpu.h
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_cpu_count_cores(PyObject *self, PyObject *args);
-PyObject *psutil_cpu_count_logical(PyObject *self, PyObject *args);
-PyObject *psutil_cpu_freq(PyObject *self, PyObject *args);
-PyObject *psutil_cpu_stats(PyObject *self, PyObject *args);
-PyObject *psutil_cpu_times(PyObject *self, PyObject *args);
-PyObject *psutil_per_cpu_times(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/disk.c b/contrib/python/psutil/py3/psutil/arch/osx/disk.c
index e1a8f5a4927..052d19996b3 100644
--- a/contrib/python/psutil/py3/psutil/arch/osx/disk.c
+++ b/contrib/python/psutil/py3/psutil/arch/osx/disk.c
@@ -18,7 +18,7 @@
#include <IOKit/storage/IOMedia.h>
#include <IOKit/IOBSD.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
/*
@@ -188,6 +188,8 @@ psutil_disk_usage_used(PyObject *self, PyObject *args) {
attrs.bitmapcount = ATTR_BIT_MAP_COUNT;
attrs.volattr = ATTR_VOL_INFO | ATTR_VOL_SPACEUSED;
+ attrbuf.size = sizeof(attrbuf);
+
Py_BEGIN_ALLOW_THREADS
ret = getattrlist(mount_point, &attrs, &attrbuf, sizeof(attrbuf), 0);
Py_END_ALLOW_THREADS
@@ -208,170 +210,162 @@ psutil_disk_usage_used(PyObject *self, PyObject *args) {
*/
PyObject *
psutil_disk_io_counters(PyObject *self, PyObject *args) {
- CFDictionaryRef parent_dict;
- CFDictionaryRef props_dict;
- CFDictionaryRef stats_dict;
- io_registry_entry_t parent;
- io_registry_entry_t disk;
- io_iterator_t disk_list;
+ CFDictionaryRef parent_dict = NULL;
+ CFDictionaryRef props_dict = NULL;
+ CFDictionaryRef stats_dict = NULL;
+ io_registry_entry_t parent = IO_OBJECT_NULL;
+ io_registry_entry_t disk = IO_OBJECT_NULL;
+ io_iterator_t disk_list = IO_OBJECT_NULL;
PyObject *py_disk_info = NULL;
PyObject *py_retdict = PyDict_New();
if (py_retdict == NULL)
return NULL;
- // Get list of disks
- if (IOServiceGetMatchingServices(kIOMasterPortDefault,
- IOServiceMatching(kIOMediaClass),
- &disk_list) != kIOReturnSuccess) {
- PyErr_SetString(
- PyExc_RuntimeError, "unable to get the list of disks.");
+ if (IOServiceGetMatchingServices(
+ kIOMasterPortDefault,
+ IOServiceMatching(kIOMediaClass),
+ &disk_list) != kIOReturnSuccess)
+ {
+ PyErr_SetString(PyExc_RuntimeError, "unable to get the list of disks");
goto error;
}
- // Iterate over disks
while ((disk = IOIteratorNext(disk_list)) != 0) {
py_disk_info = NULL;
parent_dict = NULL;
props_dict = NULL;
stats_dict = NULL;
+ parent = IO_OBJECT_NULL;
+
+ if (IORegistryEntryGetParentEntry(disk, kIOServicePlane, &parent) != kIOReturnSuccess) {
+ PyErr_SetString(PyExc_RuntimeError, "unable to get the disk's parent");
+ goto error;
+ }
- if (IORegistryEntryGetParentEntry(disk, kIOServicePlane, &parent)
- != kIOReturnSuccess) {
- PyErr_SetString(PyExc_RuntimeError,
- "unable to get the disk's parent.");
+ if (!IOObjectConformsTo(parent, "IOBlockStorageDriver")) {
+ IOObjectRelease(parent);
IOObjectRelease(disk);
+ continue;
+ }
+
+ if (IORegistryEntryCreateCFProperties(disk,
+ (CFMutableDictionaryRef *)&parent_dict,
+ kCFAllocatorDefault, kNilOptions) != kIOReturnSuccess)
+ {
+ PyErr_SetString(
+ PyExc_RuntimeError, "unable to get the parent's properties"
+ );
+ goto error;
+ }
+
+ if (IORegistryEntryCreateCFProperties(parent,
+ (CFMutableDictionaryRef *)&props_dict,
+ kCFAllocatorDefault, kNilOptions) != kIOReturnSuccess)
+ {
+ PyErr_SetString(
+ PyExc_RuntimeError, "unable to get the disk properties"
+ );
+ goto error;
+ }
+
+ CFStringRef disk_name_ref = (CFStringRef)CFDictionaryGetValue(
+ parent_dict, CFSTR(kIOBSDNameKey)
+ );
+ if (disk_name_ref == NULL) {
+ PyErr_SetString(PyExc_RuntimeError, "unable to get disk name");
+ goto error;
+ }
+
+ const int kMaxDiskNameSize = 64;
+ char disk_name[kMaxDiskNameSize];
+ if (!CFStringGetCString(disk_name_ref, disk_name, kMaxDiskNameSize,
+ CFStringGetSystemEncoding())) {
+ PyErr_SetString(
+ PyExc_RuntimeError, "unable to convert disk name to C string"
+ );
goto error;
}
- if (IOObjectConformsTo(parent, "IOBlockStorageDriver")) {
- if (IORegistryEntryCreateCFProperties(
- disk,
- (CFMutableDictionaryRef *) &parent_dict,
- kCFAllocatorDefault,
- kNilOptions
- ) != kIOReturnSuccess)
- {
- PyErr_SetString(PyExc_RuntimeError,
- "unable to get the parent's properties.");
- IOObjectRelease(disk);
- IOObjectRelease(parent);
- goto error;
- }
-
- if (IORegistryEntryCreateCFProperties(
- parent,
- (CFMutableDictionaryRef *) &props_dict,
- kCFAllocatorDefault,
- kNilOptions
- ) != kIOReturnSuccess)
- {
- PyErr_SetString(PyExc_RuntimeError,
- "unable to get the disk properties.");
- CFRelease(props_dict);
- IOObjectRelease(disk);
- IOObjectRelease(parent);
- goto error;
- }
-
- const int kMaxDiskNameSize = 64;
- CFStringRef disk_name_ref = (CFStringRef)CFDictionaryGetValue(
- parent_dict, CFSTR(kIOBSDNameKey));
- char disk_name[kMaxDiskNameSize];
-
- CFStringGetCString(disk_name_ref,
- disk_name,
- kMaxDiskNameSize,
- CFStringGetSystemEncoding());
-
- stats_dict = (CFDictionaryRef)CFDictionaryGetValue(
- props_dict, CFSTR(kIOBlockStorageDriverStatisticsKey));
-
- if (stats_dict == NULL) {
- PyErr_SetString(PyExc_RuntimeError,
- "Unable to get disk stats.");
- goto error;
- }
-
- CFNumberRef number;
- int64_t reads = 0;
- int64_t writes = 0;
- int64_t read_bytes = 0;
- int64_t write_bytes = 0;
- int64_t read_time = 0;
- int64_t write_time = 0;
-
- // Get disk reads/writes
- if ((number = (CFNumberRef)CFDictionaryGetValue(
- stats_dict,
- CFSTR(kIOBlockStorageDriverStatisticsReadsKey))))
- {
- CFNumberGetValue(number, kCFNumberSInt64Type, &reads);
- }
- if ((number = (CFNumberRef)CFDictionaryGetValue(
- stats_dict,
- CFSTR(kIOBlockStorageDriverStatisticsWritesKey))))
- {
- CFNumberGetValue(number, kCFNumberSInt64Type, &writes);
- }
-
- // Get disk bytes read/written
- if ((number = (CFNumberRef)CFDictionaryGetValue(
- stats_dict,
- CFSTR(kIOBlockStorageDriverStatisticsBytesReadKey))))
- {
- CFNumberGetValue(number, kCFNumberSInt64Type, &read_bytes);
- }
- if ((number = (CFNumberRef)CFDictionaryGetValue(
- stats_dict,
- CFSTR(kIOBlockStorageDriverStatisticsBytesWrittenKey))))
- {
- CFNumberGetValue(number, kCFNumberSInt64Type, &write_bytes);
- }
-
- // Get disk time spent reading/writing (nanoseconds)
- if ((number = (CFNumberRef)CFDictionaryGetValue(
- stats_dict,
- CFSTR(kIOBlockStorageDriverStatisticsTotalReadTimeKey))))
- {
- CFNumberGetValue(number, kCFNumberSInt64Type, &read_time);
- }
- if ((number = (CFNumberRef)CFDictionaryGetValue(
- stats_dict,
- CFSTR(kIOBlockStorageDriverStatisticsTotalWriteTimeKey))))
- {
- CFNumberGetValue(number, kCFNumberSInt64Type, &write_time);
- }
-
- // Read/Write time on macOS comes back in nanoseconds and in psutil
- // we've standardized on milliseconds so do the conversion.
- py_disk_info = Py_BuildValue(
- "(KKKKKK)",
- reads,
- writes,
- read_bytes,
- write_bytes,
- read_time / 1000 / 1000,
- write_time / 1000 / 1000);
- if (!py_disk_info)
- goto error;
- if (PyDict_SetItemString(py_retdict, disk_name, py_disk_info))
- goto error;
+ stats_dict = (CFDictionaryRef)CFDictionaryGetValue(
+ props_dict, CFSTR(kIOBlockStorageDriverStatisticsKey)
+ );
+ if (stats_dict == NULL) {
+ PyErr_SetString(PyExc_RuntimeError, "unable to get disk stats");
+ goto error;
+ }
+
+ CFNumberRef number;
+ int64_t reads = 0, writes = 0, read_bytes = 0, write_bytes = 0;
+ int64_t read_time = 0, write_time = 0;
+
+ if ((number = (CFNumberRef)CFDictionaryGetValue(
+ stats_dict, CFSTR(kIOBlockStorageDriverStatisticsReadsKey))))
+ CFNumberGetValue(number, kCFNumberSInt64Type, &reads);
+
+ if ((number = (CFNumberRef)CFDictionaryGetValue(
+ stats_dict, CFSTR(kIOBlockStorageDriverStatisticsWritesKey))))
+ CFNumberGetValue(number, kCFNumberSInt64Type, &writes);
+
+ if ((number = (CFNumberRef)CFDictionaryGetValue(
+ stats_dict, CFSTR(kIOBlockStorageDriverStatisticsBytesReadKey))))
+ CFNumberGetValue(number, kCFNumberSInt64Type, &read_bytes);
+
+ if ((number = (CFNumberRef)CFDictionaryGetValue(
+ stats_dict, CFSTR(kIOBlockStorageDriverStatisticsBytesWrittenKey))))
+ CFNumberGetValue(number, kCFNumberSInt64Type, &write_bytes);
+
+ if ((number = (CFNumberRef)CFDictionaryGetValue(
+ stats_dict, CFSTR(kIOBlockStorageDriverStatisticsTotalReadTimeKey))))
+ CFNumberGetValue(number, kCFNumberSInt64Type, &read_time);
+
+ if ((number = (CFNumberRef)CFDictionaryGetValue(
+ stats_dict, CFSTR(kIOBlockStorageDriverStatisticsTotalWriteTimeKey))))
+ CFNumberGetValue(number, kCFNumberSInt64Type, &write_time);
+
+ py_disk_info = Py_BuildValue(
+ "(KKKKKK)",
+ (unsigned long long)reads,
+ (unsigned long long)writes,
+ (unsigned long long)read_bytes,
+ (unsigned long long)write_bytes,
+ (unsigned long long)(read_time / 1000 / 1000),
+ (unsigned long long)(write_time / 1000 / 1000)
+ );
+
+ if (!py_disk_info)
+ goto error;
+
+ if (PyDict_SetItemString(py_retdict, disk_name, py_disk_info)) {
Py_CLEAR(py_disk_info);
+ goto error;
+ }
+ Py_CLEAR(py_disk_info);
+
+ if (parent_dict)
CFRelease(parent_dict);
- IOObjectRelease(parent);
+ if (props_dict)
CFRelease(props_dict);
- IOObjectRelease(disk);
- }
+ IOObjectRelease(parent);
+ IOObjectRelease(disk);
}
- IOObjectRelease (disk_list);
-
+ IOObjectRelease(disk_list);
return py_retdict;
error:
Py_XDECREF(py_disk_info);
Py_DECREF(py_retdict);
+ if (parent_dict)
+ CFRelease(parent_dict);
+ if (props_dict)
+ CFRelease(props_dict);
+ if (parent != IO_OBJECT_NULL)
+ IOObjectRelease(parent);
+ if (disk != IO_OBJECT_NULL)
+ IOObjectRelease(disk);
+ if (disk_list != IO_OBJECT_NULL)
+ IOObjectRelease(disk_list);
return NULL;
}
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/disk.h b/contrib/python/psutil/py3/psutil/arch/osx/disk.h
deleted file mode 100644
index 88ca9a28b1f..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/osx/disk.h
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_disk_io_counters(PyObject *self, PyObject *args);
-PyObject *psutil_disk_partitions(PyObject *self, PyObject *args);
-PyObject *psutil_disk_usage_used(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/init.c b/contrib/python/psutil/py3/psutil/arch/osx/init.c
new file mode 100644
index 00000000000..7120e8ab0e5
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/osx/init.c
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+#include <mach/mach_time.h>
+
+#include "../../arch/all/init.h"
+#include "init.h"
+
+
+struct mach_timebase_info PSUTIL_MACH_TIMEBASE_INFO;
+
+// Called on module import.
+int
+psutil_setup_osx(void) {
+ kern_return_t ret;
+
+ ret = mach_timebase_info(&PSUTIL_MACH_TIMEBASE_INFO);
+ if (ret != KERN_SUCCESS) {
+ psutil_PyErr_SetFromOSErrnoWithSyscall("mach_timebase_info");
+ return -1;
+ }
+ return 0;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/init.h b/contrib/python/psutil/py3/psutil/arch/osx/init.h
new file mode 100644
index 00000000000..4a13f73e0da
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/osx/init.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+#include <mach/mach_time.h>
+
+extern struct mach_timebase_info PSUTIL_MACH_TIMEBASE_INFO;
+
+int psutil_setup_osx(void);
+int _psutil_pids(pid_t **pids_array, int *pids_count);
+
+PyObject *psutil_boot_time(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_count_cores(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_count_logical(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_freq(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_stats(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_times(PyObject *self, PyObject *args);
+PyObject *psutil_disk_io_counters(PyObject *self, PyObject *args);
+PyObject *psutil_disk_partitions(PyObject *self, PyObject *args);
+PyObject *psutil_disk_usage_used(PyObject *self, PyObject *args);
+PyObject *psutil_has_cpu_freq(PyObject *self, PyObject *args);
+PyObject *psutil_net_io_counters(PyObject *self, PyObject *args);
+PyObject *psutil_per_cpu_times(PyObject *self, PyObject *args);
+PyObject *psutil_proc_cmdline(PyObject *self, PyObject *args);
+PyObject *psutil_proc_cwd(PyObject *self, PyObject *args);
+PyObject *psutil_proc_environ(PyObject *self, PyObject *args);
+PyObject *psutil_proc_exe(PyObject *self, PyObject *args);
+PyObject *psutil_proc_is_zombie(PyObject *self, PyObject *args);
+PyObject *psutil_proc_kinfo_oneshot(PyObject *self, PyObject *args);
+PyObject *psutil_proc_memory_uss(PyObject *self, PyObject *args);
+PyObject *psutil_proc_name(PyObject *self, PyObject *args);
+PyObject *psutil_proc_net_connections(PyObject *self, PyObject *args);
+PyObject *psutil_proc_num_fds(PyObject *self, PyObject *args);
+PyObject *psutil_proc_open_files(PyObject *self, PyObject *args);
+PyObject *psutil_proc_pidtaskinfo_oneshot(PyObject *self, PyObject *args);
+PyObject *psutil_proc_threads(PyObject *self, PyObject *args);
+PyObject *psutil_sensors_battery(PyObject *self, PyObject *args);
+PyObject *psutil_swap_mem(PyObject *self, PyObject *args);
+PyObject *psutil_virtual_mem(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/mem.c b/contrib/python/psutil/py3/psutil/arch/osx/mem.c
index 8103876070a..cbac711a9b0 100644
--- a/contrib/python/psutil/py3/psutil/arch/osx/mem.c
+++ b/contrib/python/psutil/py3/psutil/arch/osx/mem.c
@@ -16,25 +16,33 @@
#include <sys/sysctl.h>
#include <mach/mach.h>
-#include "../../_psutil_posix.h"
+#include "../../arch/all/init.h"
static int
psutil_sys_vminfo(vm_statistics64_t vmstat) {
kern_return_t ret;
- unsigned int count = HOST_VM_INFO64_COUNT;
- mach_port_t mport = mach_host_self();
+ mach_msg_type_number_t count = HOST_VM_INFO64_COUNT;
+ mach_port_t mport;
+
+ mport = mach_host_self();
+ if (mport == MACH_PORT_NULL) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "mach_host_self() returned MACH_PORT_NULL");
+ return -1;
+ }
ret = host_statistics64(mport, HOST_VM_INFO64, (host_info64_t)vmstat, &count);
+ mach_port_deallocate(mach_task_self(), mport);
if (ret != KERN_SUCCESS) {
PyErr_Format(
PyExc_RuntimeError,
- "host_statistics(HOST_VM_INFO) syscall failed: %s",
- mach_error_string(ret));
- return 0;
+ "host_statistics64(HOST_VM_INFO64) syscall failed: %s",
+ mach_error_string(ret)
+ );
+ return -1;
}
- mach_port_deallocate(mach_task_self(), mport);
- return 1;
+ return 0;
}
@@ -48,7 +56,6 @@ PyObject *
psutil_virtual_mem(PyObject *self, PyObject *args) {
int mib[2];
uint64_t total;
- size_t len = sizeof(total);
vm_statistics64_data_t vm;
long pagesize = psutil_getpagesize();
// physical mem
@@ -56,22 +63,16 @@ psutil_virtual_mem(PyObject *self, PyObject *args) {
mib[1] = HW_MEMSIZE;
// This is also available as sysctlbyname("hw.memsize").
- if (sysctl(mib, 2, &total, &len, NULL, 0)) {
- if (errno != 0)
- PyErr_SetFromErrno(PyExc_OSError);
- else
- PyErr_Format(
- PyExc_RuntimeError, "sysctl(HW_MEMSIZE) syscall failed");
+ if (psutil_sysctl(mib, 2, &total, sizeof(total)) != 0)
return NULL;
- }
// vm
- if (!psutil_sys_vminfo(&vm))
+ if (psutil_sys_vminfo(&vm) != 0)
return NULL;
return Py_BuildValue(
"KKKKKK",
- total,
+ (unsigned long long) total,
(unsigned long long) vm.active_count * pagesize, // active
(unsigned long long) vm.inactive_count * pagesize, // inactive
(unsigned long long) vm.wire_count * pagesize, // wired
@@ -87,30 +88,25 @@ psutil_virtual_mem(PyObject *self, PyObject *args) {
PyObject *
psutil_swap_mem(PyObject *self, PyObject *args) {
int mib[2];
- size_t size;
struct xsw_usage totals;
- vm_statistics64_data_t vmstat;
+ vm_statistics64_data_t vmstat;
long pagesize = psutil_getpagesize();
mib[0] = CTL_VM;
mib[1] = VM_SWAPUSAGE;
- size = sizeof(totals);
- if (sysctl(mib, 2, &totals, &size, NULL, 0) == -1) {
- if (errno != 0)
- PyErr_SetFromErrno(PyExc_OSError);
- else
- PyErr_Format(
- PyExc_RuntimeError, "sysctl(VM_SWAPUSAGE) syscall failed");
- return NULL;
- }
- if (!psutil_sys_vminfo(&vmstat))
+
+ if (psutil_sysctl(mib, 2, &totals, sizeof(totals)) != 0)
+ return psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl(VM_SWAPUSAGE)");
+
+ if (psutil_sys_vminfo(&vmstat) != 0)
return NULL;
return Py_BuildValue(
- "LLLKK",
- totals.xsu_total,
- totals.xsu_used,
- totals.xsu_avail,
- (unsigned long long)vmstat.pageins * pagesize,
- (unsigned long long)vmstat.pageouts * pagesize);
+ "KKKKK",
+ (unsigned long long) totals.xsu_total,
+ (unsigned long long) totals.xsu_used,
+ (unsigned long long) totals.xsu_avail,
+ (unsigned long long) vmstat.pageins * pagesize,
+ (unsigned long long) vmstat.pageouts * pagesize
+ );
}
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/mem.h b/contrib/python/psutil/py3/psutil/arch/osx/mem.h
deleted file mode 100644
index dc4cd74388e..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/osx/mem.h
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_swap_mem(PyObject *self, PyObject *args);
-PyObject *psutil_virtual_mem(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/net.c b/contrib/python/psutil/py3/psutil/arch/osx/net.c
index d365676ce1e..93be69e5413 100644
--- a/contrib/python/psutil/py3/psutil/arch/osx/net.c
+++ b/contrib/python/psutil/py3/psutil/arch/osx/net.c
@@ -15,7 +15,7 @@
#include <net/if_dl.h>
#include <net/route.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
PyObject *
@@ -23,70 +23,85 @@ psutil_net_io_counters(PyObject *self, PyObject *args) {
char *buf = NULL, *lim, *next;
struct if_msghdr *ifm;
int mib[6];
- mib[0] = CTL_NET; // networking subsystem
- mib[1] = PF_ROUTE; // type of information
- mib[2] = 0; // protocol (IPPROTO_xxx)
- mib[3] = 0; // address family
- mib[4] = NET_RT_IFLIST2; // operation
- mib[5] = 0;
- size_t len;
+ size_t len = 0;
PyObject *py_ifc_info = NULL;
PyObject *py_retdict = PyDict_New();
if (py_retdict == NULL)
return NULL;
- if (sysctl(mib, 6, NULL, &len, NULL, 0) < 0) {
- PyErr_SetFromErrno(PyExc_OSError);
- goto error;
- }
-
- buf = malloc(len);
- if (buf == NULL) {
- PyErr_NoMemory();
- goto error;
- }
+ mib[0] = CTL_NET; // networking subsystem
+ mib[1] = PF_ROUTE; // type of information
+ mib[2] = 0; // protocol (IPPROTO_xxx)
+ mib[3] = 0; // address family
+ mib[4] = NET_RT_IFLIST2; // operation
+ mib[5] = 0;
- if (sysctl(mib, 6, buf, &len, NULL, 0) < 0) {
- PyErr_SetFromErrno(PyExc_OSError);
+ if (psutil_sysctl_malloc(mib, 6, &buf, &len) != 0)
goto error;
- }
lim = buf + len;
for (next = buf; next < lim; ) {
+ if ((size_t)(lim - next) < sizeof(struct if_msghdr)) {
+ psutil_debug("struct if_msghdr size mismatch (skip entry)");
+ break;
+ }
+
ifm = (struct if_msghdr *)next;
+
+ if (ifm->ifm_msglen == 0 || next + ifm->ifm_msglen > lim) {
+ psutil_debug("ifm_msglen size mismatch (skip entry)");
+ break;
+ }
+
next += ifm->ifm_msglen;
if (ifm->ifm_type == RTM_IFINFO2) {
py_ifc_info = NULL;
struct if_msghdr2 *if2m = (struct if_msghdr2 *)ifm;
+
+ if ((char *)if2m + sizeof(struct if_msghdr2) > lim) {
+ psutil_debug("if_msghdr2 + sockaddr_dl mismatch (skip entry)");
+ continue;
+ }
+
struct sockaddr_dl *sdl = (struct sockaddr_dl *)(if2m + 1);
- char ifc_name[32];
- strncpy(ifc_name, sdl->sdl_data, sdl->sdl_nlen);
- ifc_name[sdl->sdl_nlen] = 0;
+ if ((char *)sdl + sizeof(struct sockaddr_dl) > lim) {
+ psutil_debug("not enough buffer for sockaddr_dl (skip entry)");
+ continue;
+ }
+
+ char ifc_name[IFNAMSIZ];
+ size_t namelen = sdl->sdl_nlen;
+ if (namelen >= IFNAMSIZ)
+ namelen = IFNAMSIZ - 1;
+
+ memcpy(ifc_name, sdl->sdl_data, namelen);
+ ifc_name[namelen] = '\0';
py_ifc_info = Py_BuildValue(
"(KKKKKKKi)",
- if2m->ifm_data.ifi_obytes,
- if2m->ifm_data.ifi_ibytes,
- if2m->ifm_data.ifi_opackets,
- if2m->ifm_data.ifi_ipackets,
- if2m->ifm_data.ifi_ierrors,
- if2m->ifm_data.ifi_oerrors,
- if2m->ifm_data.ifi_iqdrops,
+ (unsigned long long)if2m->ifm_data.ifi_obytes,
+ (unsigned long long)if2m->ifm_data.ifi_ibytes,
+ (unsigned long long)if2m->ifm_data.ifi_opackets,
+ (unsigned long long)if2m->ifm_data.ifi_ipackets,
+ (unsigned long long)if2m->ifm_data.ifi_ierrors,
+ (unsigned long long)if2m->ifm_data.ifi_oerrors,
+ (unsigned long long)if2m->ifm_data.ifi_iqdrops,
0); // dropout not supported
if (!py_ifc_info)
goto error;
- if (PyDict_SetItemString(py_retdict, ifc_name, py_ifc_info))
+
+ if (PyDict_SetItemString(py_retdict, ifc_name, py_ifc_info)) {
+ Py_CLEAR(py_ifc_info);
goto error;
+ }
+
Py_CLEAR(py_ifc_info);
}
- else {
- continue;
- }
}
free(buf);
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/net.h b/contrib/python/psutil/py3/psutil/arch/osx/net.h
deleted file mode 100644
index 99079523c1e..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/osx/net.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_net_io_counters(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/pids.c b/contrib/python/psutil/py3/psutil/arch/osx/pids.c
new file mode 100644
index 00000000000..2c3ddaa82bf
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/osx/pids.c
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+#include <stdlib.h>
+#include <sys/types.h>
+#include <sys/sysctl.h>
+#include <sys/user.h>
+
+#include "../../arch/all/init.h"
+
+
+int
+_psutil_pids(pid_t **pids_array, int *pids_count) {
+ int mib[3] = {CTL_KERN, KERN_PROC, KERN_PROC_ALL};
+ size_t len = 0;
+ char *buf = NULL;
+ struct kinfo_proc *proc_list = NULL;
+ size_t num_procs = 0;
+
+ *pids_array = NULL;
+ *pids_count = 0;
+
+ if (psutil_sysctl_malloc(mib, 3, &buf, &len) != 0)
+ return -1;
+
+ if (len == 0) {
+ PyErr_Format(PyExc_RuntimeError, "no PIDs found");
+ goto error;
+ }
+
+ proc_list = (struct kinfo_proc *)buf;
+ num_procs = len / sizeof(struct kinfo_proc);
+
+ *pids_array = malloc(num_procs * sizeof(pid_t));
+ if (!*pids_array) {
+ PyErr_NoMemory();
+ goto error;
+ }
+
+ for (size_t i = 0; i < num_procs; i++) {
+ (*pids_array)[i] = proc_list[i].kp_proc.p_pid;
+ }
+
+ *pids_count = (int)num_procs;
+ free(buf);
+ return 0;
+
+error:
+ if (buf != NULL)
+ free(buf);
+ return -1;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/proc.c b/contrib/python/psutil/py3/psutil/arch/osx/proc.c
index 681642c3ad9..43c91ffb73b 100644
--- a/contrib/python/psutil/py3/psutil/arch/osx/proc.c
+++ b/contrib/python/psutil/py3/psutil/arch/osx/proc.c
@@ -29,110 +29,59 @@
#include <mach/shared_region.h>
#include <mach-o/loader.h>
-#include "../../_psutil_common.h"
-#include "../../_psutil_posix.h"
+#include "../../arch/all/init.h"
#define PSUTIL_TV2DOUBLE(t) ((t).tv_sec + (t).tv_usec / 1000000.0)
-typedef struct kinfo_proc kinfo_proc;
// ====================================================================
// --- utils
// ====================================================================
-/*
- * Returns a list of all BSD processes on the system. This routine
- * allocates the list and puts it in *procList and a count of the
- * number of entries in *procCount. You are responsible for freeing
- * this list (use "free" from System framework).
- * On success, the function returns 0.
- * On error, the function returns a BSD errno value.
- */
-static int
-psutil_get_proc_list(kinfo_proc **procList, size_t *procCount) {
- int mib[3];
- size_t size, size2;
- void *ptr;
- int err;
- int lim = 8; // some limit
+static int
+psutil_get_kinfo_proc(pid_t pid, struct kinfo_proc *kp) {
+ int mib[4];
+ size_t len;
mib[0] = CTL_KERN;
mib[1] = KERN_PROC;
- mib[2] = KERN_PROC_ALL;
- *procCount = 0;
-
- /*
- * We start by calling sysctl with ptr == NULL and size == 0.
- * That will succeed, and set size to the appropriate length.
- * We then allocate a buffer of at least that size and call
- * sysctl with that buffer. If that succeeds, we're done.
- * If that call fails with ENOMEM, we throw the buffer away
- * and try again.
- * Note that the loop calls sysctl with NULL again. This is
- * is necessary because the ENOMEM failure case sets size to
- * the amount of data returned, not the amount of data that
- * could have been returned.
- */
- while (lim-- > 0) {
- size = 0;
- if (sysctl((int *)mib, 3, NULL, &size, NULL, 0) == -1) {
- psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl(KERN_PROC_ALL)");
- return 1;
- }
- size2 = size + (size >> 3); // add some
- if (size2 > size) {
- ptr = malloc(size2);
- if (ptr == NULL)
- ptr = malloc(size);
- else
- size = size2;
- }
- else {
- ptr = malloc(size);
- }
- if (ptr == NULL) {
- PyErr_NoMemory();
- return 1;
- }
+ mib[2] = KERN_PROC_PID;
+ mib[3] = pid;
- if (sysctl((int *)mib, 3, ptr, &size, NULL, 0) == -1) {
- err = errno;
- free(ptr);
- if (err != ENOMEM) {
- psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl(KERN_PROC_ALL)");
- return 1;
- }
- }
- else {
- *procList = (kinfo_proc *)ptr;
- *procCount = size / sizeof(kinfo_proc);
- if (procCount <= 0) {
- PyErr_Format(PyExc_RuntimeError, "no PIDs found");
- return 1;
- }
- return 0; // success
- }
+ if (pid < 0 || !kp)
+ return psutil_badargs("psutil_get_kinfo_proc");
+
+ len = sizeof(struct kinfo_proc);
+
+ if (sysctl(mib, 4, kp, &len, NULL, 0) == -1) {
+ // raise an exception and throw errno as the error
+ psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl");
+ return -1;
}
- PyErr_Format(PyExc_RuntimeError, "couldn't collect PIDs list");
- return 1;
+ // sysctl succeeds but len is zero, happens when process has gone away
+ if (len == 0) {
+ NoSuchProcess("sysctl(kinfo_proc), len == 0");
+ return -1;
+ }
+ return 0;
}
-// Read the maximum argument size for processes
static int
-psutil_sysctl_argmax() {
- int argmax;
- int mib[2];
- size_t size = sizeof(argmax);
+is_zombie(size_t pid) {
+ struct kinfo_proc kp;
- mib[0] = CTL_KERN;
- mib[1] = KERN_ARGMAX;
+ if (pid < 0)
+ return psutil_badargs("is_zombie");
- if (sysctl(mib, 2, &argmax, &size, NULL, 0) == 0)
- return argmax;
- psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl(KERN_ARGMAX)");
+ if (psutil_get_kinfo_proc(pid, &kp) == -1) {
+ PyErr_Clear();
+ return 0;
+ }
+ if (kp.kp_proc.p_stat == SZOMB)
+ return 1;
return 0;
}
@@ -146,53 +95,32 @@ psutil_sysctl_procargs(pid_t pid, char *procargs, size_t *argmax) {
mib[1] = KERN_PROCARGS2;
mib[2] = pid;
+ if (pid < 0 || !procargs || !argmax || *argmax == 0)
+ return psutil_badargs("psutil_sysctl_procargs");
+
if (sysctl(mib, 3, procargs, argmax, NULL, 0) < 0) {
if (psutil_pid_exists(pid) == 0) {
NoSuchProcess("psutil_pid_exists -> 0");
- return 1;
+ return -1;
+ }
+
+ if (is_zombie(pid) == 1) {
+ PyErr_SetString(ZombieProcessError, "");
+ return -1;
}
- // In case of zombie process we'll get EINVAL. We translate it
- // to NSP and _psosx.py will translate it to ZP.
+
if (errno == EINVAL) {
- psutil_debug("sysctl(KERN_PROCARGS2) -> EINVAL translated to NSP");
- NoSuchProcess("sysctl(KERN_PROCARGS2) -> EINVAL");
- return 1;
+ psutil_debug("sysctl(KERN_PROCARGS2) -> EINVAL translated to AD");
+ AccessDenied("sysctl(KERN_PROCARGS2) -> EINVAL");
+ return -1;
}
- // There's nothing we can do other than raising AD.
+
if (errno == EIO) {
psutil_debug("sysctl(KERN_PROCARGS2) -> EIO translated to AD");
AccessDenied("sysctl(KERN_PROCARGS2) -> EIO");
- return 1;
+ return -1;
}
psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl(KERN_PROCARGS2)");
- return 1;
- }
- return 0;
-}
-
-
-static int
-psutil_get_kinfo_proc(pid_t pid, struct kinfo_proc *kp) {
- int mib[4];
- size_t len;
- mib[0] = CTL_KERN;
- mib[1] = KERN_PROC;
- mib[2] = KERN_PROC_PID;
- mib[3] = pid;
-
- // fetch the info with sysctl()
- len = sizeof(struct kinfo_proc);
-
- // now read the data from sysctl
- if (sysctl(mib, 4, kp, &len, NULL, 0) == -1) {
- // raise an exception and throw errno as the error
- psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl");
- return -1;
- }
-
- // sysctl succeeds but len is zero, happens when process has gone away
- if (len == 0) {
- NoSuchProcess("sysctl(kinfo_proc), len == 0");
return -1;
}
return 0;
@@ -206,20 +134,28 @@ psutil_get_kinfo_proc(pid_t pid, struct kinfo_proc *kp) {
*/
static int
psutil_proc_pidinfo(pid_t pid, int flavor, uint64_t arg, void *pti, int size) {
- errno = 0;
int ret;
+ if (pid < 0 || !pti || size <= 0)
+ return psutil_badargs("psutil_proc_pidinfo");
+
+ errno = 0;
ret = proc_pidinfo(pid, flavor, arg, pti, size);
if (ret <= 0) {
psutil_raise_for_pid(pid, "proc_pidinfo()");
- return 0;
+ return -1;
}
- if ((unsigned long)ret < sizeof(pti)) {
+
+ // check for truncated return size
+ if (ret < size) {
psutil_raise_for_pid(
- pid, "proc_pidinfo() return size < sizeof(struct_pointer)");
- return 0;
+ pid,
+ "proc_pidinfo() returned less data than requested buffer size"
+ );
+ return -1;
}
- return ret;
+
+ return 0;
}
@@ -231,26 +167,28 @@ psutil_proc_pidinfo(pid_t pid, int flavor, uint64_t arg, void *pti, int size) {
* - for PIDs != getpid() or PIDs which are not members of the procmod
* it requires root
* As such we can only guess what the heck went wrong and fail either
- * with NoSuchProcess or giveup with AccessDenied.
- * Here's some history:
+ * with NoSuchProcess or give up with AccessDenied.
+ * References:
* https://github.com/giampaolo/psutil/issues/1181
* https://github.com/giampaolo/psutil/issues/1209
* https://github.com/giampaolo/psutil/issues/1291#issuecomment-396062519
*/
static int
-psutil_task_for_pid(pid_t pid, mach_port_t *task)
-{
- // See: https://github.com/giampaolo/psutil/issues/1181
- kern_return_t err = KERN_SUCCESS;
+psutil_task_for_pid(pid_t pid, mach_port_t *task) {
+ kern_return_t err;
+
+ if (pid < 0 || !task)
+ return psutil_badargs("psutil_task_for_pid");
err = task_for_pid(mach_task_self(), pid, task);
if (err != KERN_SUCCESS) {
- if (psutil_pid_exists(pid) == 0)
+ if (psutil_pid_exists(pid) == 0) {
NoSuchProcess("task_for_pid");
- // Now done in Python.
- // else if (psutil_is_zombie(pid) == 1)
- // PyErr_SetString(ZombieProcessError,
- // "task_for_pid -> psutil_is_zombie -> 1");
+ }
+ else if (is_zombie(pid) == 1) {
+ PyErr_SetString(ZombieProcessError,
+ "task_for_pid -> psutil_is_zombie -> 1");
+ }
else {
psutil_debug(
"task_for_pid() failed (pid=%ld, err=%i, errno=%i, msg='%s'); "
@@ -258,8 +196,9 @@ psutil_task_for_pid(pid_t pid, mach_port_t *task)
(long)pid, err, errno, mach_error_string(err));
AccessDenied("task_for_pid");
}
- return 1;
+ return -1;
}
+
return 0;
}
@@ -275,6 +214,11 @@ psutil_proc_list_fds(pid_t pid, int *num_fds) {
int max_size = 24 * 1024 * 1024; // 24M
struct proc_fdinfo *fds_pointer = NULL;
+ if (pid < 0 || num_fds == NULL) {
+ psutil_badargs("psutil_proc_list_fds");
+ return NULL;
+ }
+
errno = 0;
ret = proc_pidinfo(pid, PROC_PIDLISTFDS, 0, NULL, 0);
if (ret <= 0) {
@@ -335,45 +279,17 @@ error:
// ====================================================================
-/*
- * Return a Python list of all the PIDs running on the system.
- */
+// Return True if PID is a zombie else False, including if PID does not
+// exist or the underlying function fails.
PyObject *
-psutil_pids(PyObject *self, PyObject *args) {
- kinfo_proc *proclist = NULL;
- kinfo_proc *orig_address = NULL;
- size_t num_processes;
- size_t idx;
- PyObject *py_pid = NULL;
- PyObject *py_retlist = PyList_New(0);
+psutil_proc_is_zombie(PyObject *self, PyObject *args) {
+ pid_t pid;
- if (py_retlist == NULL)
+ if (! PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
return NULL;
-
- if (psutil_get_proc_list(&proclist, &num_processes) != 0)
- goto error;
-
- // save the address of proclist so we can free it later
- orig_address = proclist;
- for (idx = 0; idx < num_processes; idx++) {
- py_pid = PyLong_FromPid(proclist->kp_proc.p_pid);
- if (! py_pid)
- goto error;
- if (PyList_Append(py_retlist, py_pid))
- goto error;
- Py_CLEAR(py_pid);
- proclist++;
- }
- free(orig_address);
-
- return py_retlist;
-
-error:
- Py_XDECREF(py_pid);
- Py_DECREF(py_retlist);
- if (orig_address != NULL)
- free(orig_address);
- return NULL;
+ if (is_zombie(pid) == 1)
+ Py_RETURN_TRUE;
+ Py_RETURN_FALSE;
}
@@ -389,8 +305,8 @@ PyObject *
psutil_proc_kinfo_oneshot(PyObject *self, PyObject *args) {
pid_t pid;
struct kinfo_proc kp;
- PyObject *py_name;
- PyObject *py_retlist;
+ PyObject *py_name = NULL;
+ PyObject *py_retlist = NULL;
if (! PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
return NULL;
@@ -402,11 +318,12 @@ psutil_proc_kinfo_oneshot(PyObject *self, PyObject *args) {
// Likely a decoding error. We don't want to fail the whole
// operation. The python module may retry with proc_name().
PyErr_Clear();
+ Py_INCREF(Py_None);
py_name = Py_None;
}
py_retlist = Py_BuildValue(
- _Py_PARSE_PID "llllllidiO",
+ _Py_PARSE_PID "llllllldiO",
kp.kp_eproc.e_ppid, // (pid_t) ppid
(long)kp.kp_eproc.e_pcred.p_ruid, // (long) real uid
(long)kp.kp_eproc.e_ucred.cr_uid, // (long) effective uid
@@ -414,16 +331,13 @@ psutil_proc_kinfo_oneshot(PyObject *self, PyObject *args) {
(long)kp.kp_eproc.e_pcred.p_rgid, // (long) real gid
(long)kp.kp_eproc.e_ucred.cr_groups[0], // (long) effective gid
(long)kp.kp_eproc.e_pcred.p_svgid, // (long) saved gid
- kp.kp_eproc.e_tdev, // (int) tty nr
+ (long long)kp.kp_eproc.e_tdev, // (long long) tty nr
PSUTIL_TV2DOUBLE(kp.kp_proc.p_starttime), // (double) create time
(int)kp.kp_proc.p_stat, // (int) status
py_name // (pystr) name
);
- if (py_retlist != NULL) {
- // XXX shall we decref() also in case of Py_BuildValue() error?
- Py_DECREF(py_name);
- }
+ Py_DECREF(py_name);
return py_retlist;
}
@@ -445,7 +359,7 @@ psutil_proc_pidtaskinfo_oneshot(PyObject *self, PyObject *args) {
if (! PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
return NULL;
- if (psutil_proc_pidinfo(pid, PROC_PIDTASKINFO, 0, &pti, sizeof(pti)) <= 0)
+ if (psutil_proc_pidinfo(pid, PROC_PIDTASKINFO, 0, &pti, sizeof(pti)) != 0)
return NULL;
total_user = pti.pti_total_user * PSUTIL_MACH_TIMEBASE_INFO.numer;
@@ -487,10 +401,10 @@ psutil_proc_name(PyObject *self, PyObject *args) {
return NULL;
if (psutil_get_kinfo_proc(pid, &kp) == -1)
return NULL;
+
return PyUnicode_DecodeFSDefault(kp.kp_proc.p_comm);
}
-
/*
* Return process current working directory.
* Raises NSP in case of zombie process.
@@ -504,7 +418,7 @@ psutil_proc_cwd(PyObject *self, PyObject *args) {
return NULL;
if (psutil_proc_pidinfo(
- pid, PROC_PIDVNODEPATHINFO, 0, &pathinfo, sizeof(pathinfo)) <= 0)
+ pid, PROC_PIDVNODEPATHINFO, 0, &pathinfo, sizeof(pathinfo)) != 0)
{
return NULL;
}
@@ -585,17 +499,17 @@ psutil_in_shared_region(mach_vm_address_t addr, cpu_type_t type) {
PyObject *
psutil_proc_memory_uss(PyObject *self, PyObject *args) {
pid_t pid;
- size_t len;
cpu_type_t cpu_type;
size_t private_pages = 0;
mach_vm_size_t size = 0;
- mach_msg_type_number_t info_count = VM_REGION_TOP_INFO_COUNT;
+ mach_msg_type_number_t info_count;
kern_return_t kr;
long pagesize = psutil_getpagesize();
- mach_vm_address_t addr = MACH_VM_MIN_ADDRESS;
+ mach_vm_address_t addr;
mach_port_t task = MACH_PORT_NULL;
vm_region_top_info_data_t info;
mach_port_t object_name;
+ mach_vm_address_t prev_addr;
if (! PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
return NULL;
@@ -603,16 +517,18 @@ psutil_proc_memory_uss(PyObject *self, PyObject *args) {
if (psutil_task_for_pid(pid, &task) != 0)
return NULL;
- len = sizeof(cpu_type);
- if (sysctlbyname("sysctl.proc_cputype", &cpu_type, &len, NULL, 0) != 0) {
- return psutil_PyErr_SetFromOSErrnoWithSyscall(
- "sysctlbyname('sysctl.proc_cputype')"
- );
+ if (psutil_sysctlbyname(
+ "sysctl.proc_cputype", &cpu_type, sizeof(cpu_type)) != 0)
+ {
+ return NULL;
}
// Roughly based on libtop_update_vm_regions in
// http://www.opensource.apple.com/source/top/top-100.1.2/libtop.c
- for (addr = 0; ; addr += size) {
+ for (addr = MACH_VM_MIN_ADDRESS; ; addr += size) {
+ prev_addr = addr;
+ info_count = VM_REGION_TOP_INFO_COUNT; // reset before each call
+
kr = mach_vm_region(
task, &addr, &size, VM_REGION_TOP_INFO, (vm_region_info_t)&info,
&info_count, &object_name);
@@ -623,10 +539,17 @@ psutil_proc_memory_uss(PyObject *self, PyObject *args) {
else if (kr != KERN_SUCCESS) {
PyErr_Format(
PyExc_RuntimeError,
- "mach_vm_region(VM_REGION_TOP_INFO) syscall failed");
+ "mach_vm_region(VM_REGION_TOP_INFO) syscall failed"
+ );
+ mach_port_deallocate(mach_task_self(), task);
return NULL;
}
+ if (size == 0 || addr < prev_addr) {
+ psutil_debug("prevent infinite loop");
+ break;
+ }
+
if (psutil_in_shared_region(addr, cpu_type) &&
info.share_mode != SM_PRIVATE) {
continue;
@@ -666,9 +589,7 @@ psutil_proc_memory_uss(PyObject *self, PyObject *args) {
PyObject *
psutil_proc_threads(PyObject *self, PyObject *args) {
pid_t pid;
- int err, ret;
kern_return_t kr;
- unsigned int info_count = TASK_BASIC_INFO_COUNT;
mach_port_t task = MACH_PORT_NULL;
struct task_basic_info tasks_info;
thread_act_port_array_t thread_list = NULL;
@@ -688,12 +609,11 @@ psutil_proc_threads(PyObject *self, PyObject *args) {
if (psutil_task_for_pid(pid, &task) != 0)
goto error;
- info_count = TASK_BASIC_INFO_COUNT;
- err = task_info(task, TASK_BASIC_INFO, (task_info_t)&tasks_info,
- &info_count);
- if (err != KERN_SUCCESS) {
- // errcode 4 is "invalid argument" (access denied)
- if (err == 4) {
+ // Get basic task info (optional, ignored if access denied)
+ mach_msg_type_number_t info_count = TASK_BASIC_INFO_COUNT;
+ kr = task_info(task, TASK_BASIC_INFO, (task_info_t)&tasks_info, &info_count);
+ if (kr != KERN_SUCCESS) {
+ if (kr == KERN_INVALID_ARGUMENT) {
AccessDenied("task_info(TASK_BASIC_INFO)");
}
else {
@@ -704,8 +624,8 @@ psutil_proc_threads(PyObject *self, PyObject *args) {
goto error;
}
- err = task_threads(task, &thread_list, &thread_count);
- if (err != KERN_SUCCESS) {
+ kr = task_threads(task, &thread_list, &thread_count);
+ if (kr != KERN_SUCCESS) {
PyErr_Format(PyExc_RuntimeError, "task_threads() syscall failed");
goto error;
}
@@ -736,26 +656,28 @@ psutil_proc_threads(PyObject *self, PyObject *args) {
Py_CLEAR(py_tuple);
}
- ret = vm_deallocate(task, (vm_address_t)thread_list,
- thread_count * sizeof(int));
- if (ret != KERN_SUCCESS)
- PyErr_WarnEx(PyExc_RuntimeWarning, "vm_deallocate() failed", 2);
-
- mach_port_deallocate(mach_task_self(), task);
+ if (thread_list != NULL) {
+ vm_deallocate(mach_task_self(), (vm_address_t)thread_list,
+ thread_count * sizeof(thread_act_t));
+ }
+ if (task != MACH_PORT_NULL) {
+ mach_port_deallocate(mach_task_self(), task);
+ }
return py_retlist;
error:
- if (task != MACH_PORT_NULL)
- mach_port_deallocate(mach_task_self(), task);
Py_XDECREF(py_tuple);
- Py_DECREF(py_retlist);
+ Py_XDECREF(py_retlist);
+
if (thread_list != NULL) {
- ret = vm_deallocate(task, (vm_address_t)thread_list,
- thread_count * sizeof(int));
- if (ret != KERN_SUCCESS)
- PyErr_WarnEx(PyExc_RuntimeWarning, "vm_deallocate() failed", 2);
+ vm_deallocate(mach_task_self(), (vm_address_t)thread_list,
+ thread_count * sizeof(thread_act_t));
}
+ if (task != MACH_PORT_NULL) {
+ mach_port_deallocate(mach_task_self(), task);
+ }
+
return NULL;
}
@@ -866,6 +788,7 @@ psutil_proc_net_connections(PyObject *self, PyObject *args) {
struct proc_fdinfo *fds_pointer = NULL;
struct proc_fdinfo *fdp_pointer;
struct socket_fdinfo si;
+ const char* ntopret;
PyObject *py_retlist = PyList_New(0);
PyObject *py_tuple = NULL;
PyObject *py_laddr = NULL;
@@ -901,12 +824,11 @@ psutil_proc_net_connections(PyObject *self, PyObject *args) {
fdp_pointer = &fds_pointer[i];
if (fdp_pointer->proc_fdtype == PROX_FDTYPE_SOCKET) {
- errno = 0;
nb = proc_pidfdinfo(pid, fdp_pointer->proc_fd,
PROC_PIDFDSOCKETINFO, &si, sizeof(si));
// --- errors checking
- if ((nb <= 0) || (nb < sizeof(si)) || (errno != 0)) {
+ if ((nb <= 0) || (nb < sizeof(si))) {
if (errno == EBADF) {
// let's assume socket has been closed
psutil_debug("proc_pidfdinfo(PROC_PIDFDSOCKETINFO) -> "
@@ -930,8 +852,7 @@ psutil_proc_net_connections(PyObject *self, PyObject *args) {
//
int fd, family, type, lport, rport, state;
- // TODO: use INET6_ADDRSTRLEN instead of 200
- char lip[200], rip[200];
+ char lip[INET6_ADDRSTRLEN], rip[INET6_ADDRSTRLEN];
int inseq;
PyObject *py_family;
PyObject *py_type;
@@ -944,42 +865,63 @@ psutil_proc_net_connections(PyObject *self, PyObject *args) {
py_family = PyLong_FromLong((long)family);
inseq = PySequence_Contains(py_af_filter, py_family);
Py_DECREF(py_family);
+ if (inseq == -1)
+ goto error;
if (inseq == 0)
continue;
+
py_type = PyLong_FromLong((long)type);
inseq = PySequence_Contains(py_type_filter, py_type);
Py_DECREF(py_type);
+ if (inseq == -1)
+ goto error;
if (inseq == 0)
continue;
if ((family == AF_INET) || (family == AF_INET6)) {
if (family == AF_INET) {
- inet_ntop(AF_INET,
- &si.psi.soi_proto.pri_tcp.tcpsi_ini. \
- insi_laddr.ina_46.i46a_addr4,
- lip,
- sizeof(lip));
- inet_ntop(AF_INET,
- &si.psi.soi_proto.pri_tcp.tcpsi_ini.insi_faddr. \
- ina_46.i46a_addr4,
- rip,
- sizeof(rip));
+ ntopret = inet_ntop(
+ AF_INET,
+ &si.psi.soi_proto.pri_tcp.tcpsi_ini.insi_laddr.ina_46.i46a_addr4,
+ lip,
+ sizeof(lip)
+ );
+ if (!ntopret) {
+ psutil_PyErr_SetFromOSErrnoWithSyscall("inet_ntop()");
+ goto error;
+ }
+ ntopret = inet_ntop(
+ AF_INET,
+ &si.psi.soi_proto.pri_tcp.tcpsi_ini.insi_faddr.ina_46.i46a_addr4,
+ rip,
+ sizeof(rip)
+ );
+ if (!ntopret) {
+ psutil_PyErr_SetFromOSErrnoWithSyscall("inet_ntop()");
+ goto error;
+ }
}
else {
- inet_ntop(AF_INET6,
- &si.psi.soi_proto.pri_tcp.tcpsi_ini. \
- insi_laddr.ina_6,
- lip, sizeof(lip));
- inet_ntop(AF_INET6,
- &si.psi.soi_proto.pri_tcp.tcpsi_ini. \
- insi_faddr.ina_6,
- rip, sizeof(rip));
- }
-
- // check for inet_ntop failures
- if (errno != 0) {
- psutil_PyErr_SetFromOSErrnoWithSyscall("inet_ntop()");
- goto error;
+ ntopret = inet_ntop(
+ AF_INET6,
+ &si.psi.soi_proto.pri_tcp.tcpsi_ini.insi_laddr.ina_6,
+ lip,
+ sizeof(lip)
+ );
+ if (!ntopret) {
+ psutil_PyErr_SetFromOSErrnoWithSyscall("inet_ntop()");
+ goto error;
+ }
+ ntopret = inet_ntop(
+ AF_INET6,
+ &si.psi.soi_proto.pri_tcp.tcpsi_ini.insi_faddr.ina_6,
+ rip,
+ sizeof(rip)
+ );
+ if (!ntopret) {
+ psutil_PyErr_SetFromOSErrnoWithSyscall("inet_ntop()");
+ goto error;
+ }
}
lport = ntohs(si.psi.soi_proto.pri_tcp.tcpsi_ini.insi_lport);
@@ -999,7 +941,6 @@ psutil_proc_net_connections(PyObject *self, PyObject *args) {
if (!py_raddr)
goto error;
- // construct the python list
py_tuple = Py_BuildValue(
"(iiiNNi)", fd, family, type, py_laddr, py_raddr, state);
if (!py_tuple)
@@ -1017,7 +958,7 @@ psutil_proc_net_connections(PyObject *self, PyObject *args) {
si.psi.soi_proto.pri_un.unsi_caddr.ua_sun.sun_path);
if (!py_raddr)
goto error;
- // construct the python list
+
py_tuple = Py_BuildValue(
"(iiiOOi)",
fd, family, type,
@@ -1096,7 +1037,7 @@ psutil_proc_cmdline(PyObject *self, PyObject *args) {
// read argmax and allocate memory for argument space.
argmax = psutil_sysctl_argmax();
- if (! argmax)
+ if (argmax == 0)
goto error;
procargs = (char *)malloc(argmax);
@@ -1173,22 +1114,23 @@ psutil_proc_environ(PyObject *self, PyObject *args) {
char *arg_end;
char *env_start;
size_t argmax;
+ size_t env_len;
PyObject *py_ret = NULL;
if (! PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
return NULL;
- // special case for PID 0 (kernel_task) where cmdline cannot be fetched
+ // PID 0 (kernel_task) has no cmdline.
if (pid == 0)
goto empty;
- // read argmax and allocate memory for argument space.
+ // Allocate buffer for process args.
argmax = psutil_sysctl_argmax();
- if (! argmax)
+ if (argmax == 0)
goto error;
procargs = (char *)malloc(argmax);
- if (NULL == procargs) {
+ if (procargs == NULL) {
PyErr_NoMemory();
goto error;
}
@@ -1196,56 +1138,66 @@ psutil_proc_environ(PyObject *self, PyObject *args) {
if (psutil_sysctl_procargs(pid, procargs, &argmax) != 0)
goto error;
- arg_end = &procargs[argmax];
- // copy the number of arguments to nargs
+ arg_end = procargs + argmax;
+
+ // Copy nargs.
memcpy(&nargs, procargs, sizeof(nargs));
// skip executable path
arg_ptr = procargs + sizeof(nargs);
arg_ptr = memchr(arg_ptr, '\0', arg_end - arg_ptr);
-
- if (arg_ptr == NULL || arg_ptr == arg_end) {
- psutil_debug(
- "(arg_ptr == NULL || arg_ptr == arg_end); set environ to empty");
+ if (arg_ptr == NULL || arg_ptr >= arg_end)
goto empty;
- }
- // skip ahead to the first argument
- for (; arg_ptr < arg_end; arg_ptr++) {
- if (*arg_ptr != '\0')
- break;
- }
+ // Skip null bytes until first argument.
+ while (arg_ptr < arg_end && *arg_ptr == '\0')
+ arg_ptr++;
- // iterate through arguments
+ // Skip arguments.
while (arg_ptr < arg_end && nargs > 0) {
if (*arg_ptr++ == '\0')
nargs--;
}
- // build an environment variable block
+ if (arg_ptr >= arg_end)
+ goto empty;
+
env_start = arg_ptr;
- procenv = calloc(1, arg_end - arg_ptr);
+ // Compute maximum possible environment length.
+ env_len = (size_t)(arg_end - env_start);
+ if (env_len == 0)
+ goto empty;
+
+ procenv = (char *)calloc(1, env_len);
if (procenv == NULL) {
PyErr_NoMemory();
goto error;
}
- while (*arg_ptr != '\0' && arg_ptr < arg_end) {
- char *s = memchr(arg_ptr + 1, '\0', arg_end - arg_ptr);
+ while (arg_ptr < arg_end && *arg_ptr != '\0') {
+ // Find the next NUL terminator.
+ size_t rem = (size_t)(arg_end - arg_ptr);
+ char *s = memchr(arg_ptr, '\0', rem);
if (s == NULL)
break;
- memcpy(procenv + (arg_ptr - env_start), arg_ptr, s - arg_ptr);
+
+ size_t copy_len = (size_t)(s - arg_ptr);
+ size_t offset = (size_t)(arg_ptr - env_start);
+ if (offset + copy_len >= env_len)
+ break; // prevent overflow.
+
+ memcpy(procenv + offset, arg_ptr, copy_len);
arg_ptr = s + 1;
}
- py_ret = PyUnicode_DecodeFSDefaultAndSize(
- procenv, arg_ptr - env_start + 1);
- if (!py_ret) {
- // XXX: don't want to free() this as per:
- // https://github.com/giampaolo/psutil/issues/926
- // It sucks but not sure what else to do.
- procargs = NULL;
+ size_t used = (size_t)(arg_ptr - env_start);
+ if (used >= env_len)
+ used = env_len - 1;
+
+ py_ret = PyUnicode_DecodeFSDefaultAndSize(procenv, (Py_ssize_t)used);
+ if (py_ret == NULL) {
+ procargs = NULL; // don't double free; see psutil issue #926.
goto error;
}
@@ -1254,6 +1206,7 @@ psutil_proc_environ(PyObject *self, PyObject *args) {
return py_ret;
empty:
+ psutil_debug("set environ to empty");
if (procargs != NULL)
free(procargs);
return Py_BuildValue("s", "");
@@ -1263,6 +1216,6 @@ error:
if (procargs != NULL)
free(procargs);
if (procenv != NULL)
- free(procargs);
+ free(procenv);
return NULL;
}
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/proc.h b/contrib/python/psutil/py3/psutil/arch/osx/proc.h
deleted file mode 100644
index f18f5f1fd68..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/osx/proc.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_pids(PyObject *self, PyObject *args);
-PyObject *psutil_proc_cmdline(PyObject *self, PyObject *args);
-PyObject *psutil_proc_cwd(PyObject *self, PyObject *args);
-PyObject *psutil_proc_environ(PyObject *self, PyObject *args);
-PyObject *psutil_proc_exe(PyObject *self, PyObject *args);
-PyObject *psutil_proc_kinfo_oneshot(PyObject *self, PyObject *args);
-PyObject *psutil_proc_memory_uss(PyObject *self, PyObject *args);
-PyObject *psutil_proc_name(PyObject *self, PyObject *args);
-PyObject *psutil_proc_net_connections(PyObject *self, PyObject *args);
-PyObject *psutil_proc_num_fds(PyObject *self, PyObject *args);
-PyObject *psutil_proc_open_files(PyObject *self, PyObject *args);
-PyObject *psutil_proc_pidtaskinfo_oneshot(PyObject *self, PyObject *args);
-PyObject *psutil_proc_threads(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/sensors.c b/contrib/python/psutil/py3/psutil/arch/osx/sensors.c
index 53626c2dc40..ea73d520357 100644
--- a/contrib/python/psutil/py3/psutil/arch/osx/sensors.c
+++ b/contrib/python/psutil/py3/psutil/arch/osx/sensors.c
@@ -16,7 +16,7 @@
#include <IOKit/ps/IOPowerSources.h>
#include <IOKit/ps/IOPSKeys.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
PyObject *
@@ -33,7 +33,6 @@ psutil_sensors_battery(PyObject *self, PyObject *args) {
int is_power_plugged;
power_info = IOPSCopyPowerSourcesInfo();
-
if (!power_info) {
PyErr_SetString(PyExc_RuntimeError,
"IOPSCopyPowerSourcesInfo() syscall failed");
@@ -47,32 +46,40 @@ psutil_sensors_battery(PyObject *self, PyObject *args) {
goto error;
}
- /* Should only get one source. But in practice, check for > 0 sources */
- if (!CFArrayGetCount(power_sources_list)) {
+ if (CFArrayGetCount(power_sources_list) == 0) {
PyErr_SetString(PyExc_NotImplementedError, "no battery");
goto error;
}
power_sources_information = IOPSGetPowerSourceDescription(
power_info, CFArrayGetValueAtIndex(power_sources_list, 0));
+ if (!power_sources_information) {
+ PyErr_SetString(
+ PyExc_RuntimeError, "Failed to get power source description"
+ );
+ goto error;
+ }
- capacity_ref = (CFNumberRef) CFDictionaryGetValue(
+ capacity_ref = (CFNumberRef)CFDictionaryGetValue(
power_sources_information, CFSTR(kIOPSCurrentCapacityKey));
- if (!CFNumberGetValue(capacity_ref, kCFNumberSInt32Type, &capacity)) {
+ if (!capacity_ref || !CFNumberGetValue(capacity_ref, kCFNumberSInt32Type, &capacity)) {
PyErr_SetString(PyExc_RuntimeError,
"No battery capacity information in power sources info");
goto error;
}
- ps_state_ref = (CFStringRef) CFDictionaryGetValue(
+ ps_state_ref = (CFStringRef)CFDictionaryGetValue(
power_sources_information, CFSTR(kIOPSPowerSourceStateKey));
+ if (!ps_state_ref) {
+ PyErr_SetString(PyExc_RuntimeError, "power source state info missing");
+ goto error;
+ }
is_power_plugged = CFStringCompare(
- ps_state_ref, CFSTR(kIOPSACPowerValue), 0)
- == kCFCompareEqualTo;
+ ps_state_ref, CFSTR(kIOPSACPowerValue), 0) == kCFCompareEqualTo;
- time_to_empty_ref = (CFNumberRef) CFDictionaryGetValue(
+ time_to_empty_ref = (CFNumberRef)CFDictionaryGetValue(
power_sources_information, CFSTR(kIOPSTimeToEmptyKey));
- if (!CFNumberGetValue(time_to_empty_ref,
+ if (!time_to_empty_ref || !CFNumberGetValue(time_to_empty_ref,
kCFNumberIntType, &time_to_empty)) {
/* This value is recommended for non-Apple power sources, so it's not
* an error if it doesn't exist. We'll return -1 for "unknown" */
@@ -81,16 +88,13 @@ psutil_sensors_battery(PyObject *self, PyObject *args) {
time_to_empty = -1;
}
- py_tuple = Py_BuildValue("Iii",
- capacity, time_to_empty, is_power_plugged);
- if (!py_tuple) {
+ py_tuple = Py_BuildValue("Iii", capacity, time_to_empty, is_power_plugged);
+ if (!py_tuple)
goto error;
- }
CFRelease(power_info);
CFRelease(power_sources_list);
/* Caller should NOT release power_sources_information */
-
return py_tuple;
error:
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/sensors.h b/contrib/python/psutil/py3/psutil/arch/osx/sensors.h
deleted file mode 100644
index edace25d3de..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/osx/sensors.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_sensors_battery(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/sys.c b/contrib/python/psutil/py3/psutil/arch/osx/sys.c
index 4fe66425973..3fafcac2b52 100644
--- a/contrib/python/psutil/py3/psutil/arch/osx/sys.c
+++ b/contrib/python/psutil/py3/psutil/arch/osx/sys.c
@@ -10,79 +10,19 @@
#include <Python.h>
#include <sys/sysctl.h>
-#include <utmpx.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
PyObject *
psutil_boot_time(PyObject *self, PyObject *args) {
// fetch sysctl "kern.boottime"
- static int request[2] = { CTL_KERN, KERN_BOOTTIME };
+ int mib[2] = {CTL_KERN, KERN_BOOTTIME};
struct timeval result;
- size_t result_len = sizeof result;
time_t boot_time = 0;
- if (sysctl(request, 2, &result, &result_len, NULL, 0) == -1)
- return PyErr_SetFromErrno(PyExc_OSError);
- boot_time = result.tv_sec;
- return Py_BuildValue("f", (float)boot_time);
-}
-
-
-PyObject *
-psutil_users(PyObject *self, PyObject *args) {
- struct utmpx *utx;
- PyObject *py_username = NULL;
- PyObject *py_tty = NULL;
- PyObject *py_hostname = NULL;
- PyObject *py_tuple = NULL;
- PyObject *py_retlist = PyList_New(0);
-
- if (py_retlist == NULL)
+ if (psutil_sysctl(mib, 2, &result, sizeof(result)) == -1)
return NULL;
- while ((utx = getutxent()) != NULL) {
- if (utx->ut_type != USER_PROCESS)
- continue;
- py_username = PyUnicode_DecodeFSDefault(utx->ut_user);
- if (! py_username)
- goto error;
- py_tty = PyUnicode_DecodeFSDefault(utx->ut_line);
- if (! py_tty)
- goto error;
- py_hostname = PyUnicode_DecodeFSDefault(utx->ut_host);
- if (! py_hostname)
- goto error;
- py_tuple = Py_BuildValue(
- "(OOOdi)",
- py_username, // username
- py_tty, // tty
- py_hostname, // hostname
- (double)utx->ut_tv.tv_sec, // start time
- utx->ut_pid // process id
- );
- if (!py_tuple) {
- endutxent();
- goto error;
- }
- if (PyList_Append(py_retlist, py_tuple)) {
- endutxent();
- goto error;
- }
- Py_CLEAR(py_username);
- Py_CLEAR(py_tty);
- Py_CLEAR(py_hostname);
- Py_CLEAR(py_tuple);
- }
-
- endutxent();
- return py_retlist;
-
-error:
- Py_XDECREF(py_username);
- Py_XDECREF(py_tty);
- Py_XDECREF(py_hostname);
- Py_XDECREF(py_tuple);
- Py_DECREF(py_retlist);
- return NULL;
+ boot_time = result.tv_sec;
+ return Py_BuildValue("d", (double)boot_time);
}
diff --git a/contrib/python/psutil/py3/psutil/arch/osx/sys.h b/contrib/python/psutil/py3/psutil/arch/osx/sys.h
deleted file mode 100644
index 344ca21d42c..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/osx/sys.h
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_boot_time(PyObject *self, PyObject *args);
-PyObject *psutil_users(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/posix/init.c b/contrib/python/psutil/py3/psutil/arch/posix/init.c
new file mode 100644
index 00000000000..8a95a3151aa
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/posix/init.c
@@ -0,0 +1,225 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+#include <sys/resource.h>
+#include <sys/socket.h>
+
+#include "init.h"
+
+PyObject *ZombieProcessError = NULL;;
+
+/*
+ * From "man getpagesize" on Linux, https://linux.die.net/man/2/getpagesize:
+ *
+ * > In SUSv2 the getpagesize() call is labeled LEGACY, and in POSIX.1-2001
+ * > it has been dropped.
+ * > Portable applications should employ sysconf(_SC_PAGESIZE) instead
+ * > of getpagesize().
+ * > Most systems allow the synonym _SC_PAGE_SIZE for _SC_PAGESIZE.
+ * > Whether getpagesize() is present as a Linux system call depends on the
+ * > architecture.
+ */
+long
+psutil_getpagesize(void) {
+#ifdef _SC_PAGESIZE
+ // recommended POSIX
+ return sysconf(_SC_PAGESIZE);
+#elif _SC_PAGE_SIZE
+ // alias
+ return sysconf(_SC_PAGE_SIZE);
+#else
+ // legacy
+ return (long) getpagesize();
+#endif
+}
+
+
+// Exposed so we can test it against Python's stdlib.
+PyObject *
+psutil_getpagesize_pywrapper(PyObject *self, PyObject *args) {
+ return Py_BuildValue("l", psutil_getpagesize());
+}
+
+
+// POSIX-only methods.
+static PyMethodDef posix_methods[] = {
+ {"getpagesize", psutil_getpagesize_pywrapper, METH_VARARGS},
+ {"net_if_addrs", psutil_net_if_addrs, METH_VARARGS},
+ {"net_if_flags", psutil_net_if_flags, METH_VARARGS},
+ {"net_if_is_running", psutil_net_if_is_running, METH_VARARGS},
+ {"net_if_mtu", psutil_net_if_mtu, METH_VARARGS},
+ {"proc_priority_get", psutil_proc_priority_get, METH_VARARGS},
+ {"proc_priority_set", psutil_proc_priority_set, METH_VARARGS},
+#if defined(PSUTIL_BSD) || defined(PSUTIL_OSX)
+ {"net_if_duplex_speed", psutil_net_if_duplex_speed, METH_VARARGS},
+#endif
+#if !defined(PSUTIL_OPENBSD) && !defined(PSUTIL_AIX)
+ {"users", psutil_users, METH_VARARGS},
+#endif
+ {NULL, NULL, 0, NULL}
+};
+
+
+// Add POSIX methods to main OS module.
+int
+psutil_posix_add_methods(PyObject *mod) {
+ for (int i = 0; posix_methods[i].ml_name != NULL; i++) {
+ PyObject *f = PyCFunction_NewEx(&posix_methods[i], NULL, mod);
+ if (!f) {
+ return -1;
+ }
+ if (PyModule_AddObject(mod, posix_methods[i].ml_name, f)) {
+ Py_DECREF(f);
+ return -1;
+ }
+ }
+
+ // custom exception
+ ZombieProcessError = PyErr_NewException(
+ "_psutil_posix.ZombieProcessError", NULL, NULL
+ );
+ if (ZombieProcessError == NULL)
+ return -1;
+ if (PyModule_AddObject(mod, "ZombieProcessError", ZombieProcessError))
+ return -1;
+
+ return 0;
+}
+
+
+// Add POSIX constants to main OS module.
+int
+psutil_posix_add_constants(PyObject *mod) {
+ if (!mod)
+ return -1;
+
+#if defined(PSUTIL_BSD) || \
+ defined(PSUTIL_OSX) || \
+ defined(PSUTIL_SUNOS) || \
+ defined(PSUTIL_AIX)
+ if (PyModule_AddIntConstant(mod, "AF_LINK", AF_LINK))
+ return -1;
+#endif
+
+#if defined(PSUTIL_LINUX) || defined(PSUTIL_FREEBSD)
+ PyObject *v;
+
+#ifdef RLIMIT_AS
+ if (PyModule_AddIntConstant(mod, "RLIMIT_AS", RLIMIT_AS))
+ return -1;
+#endif
+
+#ifdef RLIMIT_CORE
+ if (PyModule_AddIntConstant(mod, "RLIMIT_CORE", RLIMIT_CORE))
+ return -1;
+#endif
+
+#ifdef RLIMIT_CPU
+ if (PyModule_AddIntConstant(mod, "RLIMIT_CPU", RLIMIT_CPU))
+ return -1;
+#endif
+
+#ifdef RLIMIT_DATA
+ if (PyModule_AddIntConstant(mod, "RLIMIT_DATA", RLIMIT_DATA))
+ return -1;
+#endif
+
+#ifdef RLIMIT_FSIZE
+ if (PyModule_AddIntConstant(mod, "RLIMIT_FSIZE", RLIMIT_FSIZE))
+ return -1;
+#endif
+
+#ifdef RLIMIT_MEMLOCK
+ if (PyModule_AddIntConstant(mod, "RLIMIT_MEMLOCK", RLIMIT_MEMLOCK))
+ return -1;
+#endif
+
+#ifdef RLIMIT_NOFILE
+ if (PyModule_AddIntConstant(mod, "RLIMIT_NOFILE", RLIMIT_NOFILE))
+ return -1;
+#endif
+
+#ifdef RLIMIT_NPROC
+ if (PyModule_AddIntConstant(mod, "RLIMIT_NPROC", RLIMIT_NPROC))
+ return -1;
+#endif
+
+#ifdef RLIMIT_RSS
+ if (PyModule_AddIntConstant(mod, "RLIMIT_RSS", RLIMIT_RSS))
+ return -1;
+#endif
+
+#ifdef RLIMIT_STACK
+ if (PyModule_AddIntConstant(mod, "RLIMIT_STACK", RLIMIT_STACK))
+ return -1;
+#endif
+
+// Linux specific
+
+#ifdef RLIMIT_LOCKS
+ if (PyModule_AddIntConstant(mod, "RLIMIT_LOCKS", RLIMIT_LOCKS))
+ return -1;
+#endif
+
+#ifdef RLIMIT_MSGQUEUE
+ if (PyModule_AddIntConstant(mod, "RLIMIT_MSGQUEUE", RLIMIT_MSGQUEUE))
+ return -1;
+#endif
+
+#ifdef RLIMIT_NICE
+ if (PyModule_AddIntConstant(mod, "RLIMIT_NICE", RLIMIT_NICE))
+ return -1;
+#endif
+
+#ifdef RLIMIT_RTPRIO
+ if (PyModule_AddIntConstant(mod, "RLIMIT_RTPRIO", RLIMIT_RTPRIO))
+ return -1;
+#endif
+
+#ifdef RLIMIT_RTTIME
+ if (PyModule_AddIntConstant(mod, "RLIMIT_RTTIME", RLIMIT_RTTIME))
+ return -1;
+#endif
+
+#ifdef RLIMIT_SIGPENDING
+ if (PyModule_AddIntConstant(mod, "RLIMIT_SIGPENDING", RLIMIT_SIGPENDING))
+ return -1;
+#endif
+
+// Free specific
+
+#ifdef RLIMIT_SWAP
+ if (PyModule_AddIntConstant(mod, "RLIMIT_SWAP", RLIMIT_SWAP))
+ return -1;
+#endif
+
+#ifdef RLIMIT_SBSIZE
+ if (PyModule_AddIntConstant(mod, "RLIMIT_SBSIZE", RLIMIT_SBSIZE))
+ return -1;
+#endif
+
+#ifdef RLIMIT_NPTS
+ if (PyModule_AddIntConstant(mod, "RLIMIT_NPTS", RLIMIT_NPTS))
+ return -1;
+#endif
+
+#if defined(HAVE_LONG_LONG)
+ if (sizeof(RLIM_INFINITY) > sizeof(long)) {
+ v = PyLong_FromLongLong((PY_LONG_LONG) RLIM_INFINITY);
+ } else
+#endif
+ {
+ v = PyLong_FromLong((long) RLIM_INFINITY);
+ }
+ if (v) {
+ if (PyModule_AddObject(mod, "RLIM_INFINITY", v))
+ return -1;
+ }
+#endif // defined(PSUTIL_LINUX) || defined(PSUTIL_FREEBSD)
+
+ return 0;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/posix/init.h b/contrib/python/psutil/py3/psutil/arch/posix/init.h
new file mode 100644
index 00000000000..3e323ca149b
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/posix/init.h
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+extern PyObject *ZombieProcessError;
+
+#if !defined(PSUTIL_OPENBSD) && !defined(PSUTIL_AIX)
+ #define PSUTIL_HAS_POSIX_USERS
+
+ PyObject *psutil_users(PyObject *self, PyObject *args);
+#endif
+
+#if defined(PSUTIL_BSD) || defined(PSUTIL_OSX)
+ #include <sys/types.h>
+
+ #define PSUTIL_HAS_SYSCTL
+
+ int psutil_sysctl(int *mib, u_int miblen, void *buf, size_t buflen);
+ int psutil_sysctl_malloc(int *mib, u_int miblen, char **buf, size_t *buflen);
+ size_t psutil_sysctl_argmax();
+
+ #if !defined(PSUTIL_OPENBSD)
+
+ #define PSUTIL_HAS_SYSCTLBYNAME
+
+ int psutil_sysctlbyname(const char *name, void *buf, size_t buflen);
+ int psutil_sysctlbyname_malloc(const char *name, char **buf, size_t *buflen);
+ #endif
+#endif
+
+#if defined(PSUTIL_BSD) || defined(PSUTIL_OSX)
+ #define PSUTIL_HAS_NET_IF_DUPLEX_SPEED
+
+ PyObject *psutil_net_if_duplex_speed(PyObject *self, PyObject *args);
+#endif
+
+int psutil_pid_exists(pid_t pid);
+long psutil_getpagesize(void);
+void psutil_raise_for_pid(pid_t pid, char *msg);
+int psutil_posix_add_constants(PyObject *mod);
+int psutil_posix_add_methods(PyObject *mod);
+
+PyObject *psutil_getpagesize_pywrapper(PyObject *self, PyObject *args);
+PyObject *psutil_net_if_addrs(PyObject *self, PyObject *args);
+PyObject *psutil_net_if_flags(PyObject *self, PyObject *args);
+PyObject *psutil_net_if_is_running(PyObject *self, PyObject *args);
+PyObject *psutil_net_if_mtu(PyObject *self, PyObject *args);
+PyObject *psutil_proc_priority_get(PyObject *self, PyObject *args);
+PyObject *psutil_proc_priority_set(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/_psutil_posix.c b/contrib/python/psutil/py3/psutil/arch/posix/net.c
index de10f7854a8..a857a5dea84 100644
--- a/contrib/python/psutil/py3/psutil/_psutil_posix.c
+++ b/contrib/python/psutil/py3/psutil/arch/posix/net.c
@@ -2,24 +2,18 @@
* Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
- *
- * Functions specific to all POSIX compliant platforms.
*/
#include <Python.h>
#include <errno.h>
#include <stdlib.h>
-#include <sys/resource.h>
#include <sys/types.h>
-#include <signal.h>
#include <sys/socket.h>
#include <sys/ioctl.h>
#include <net/if.h>
#include <unistd.h>
-#ifdef PSUTIL_SUNOS10
- #error #include "arch/solaris/v10/ifaddrs.h"
-#elif PSUTIL_AIX
+#ifdef PSUTIL_AIX
#error #include "arch/aix/ifaddrs.h"
#else
#include <ifaddrs.h>
@@ -45,183 +39,15 @@
#if defined(PSUTIL_AIX)
#include <netdb.h>
#endif
-#if defined(PSUTIL_LINUX) || defined(PSUTIL_FREEBSD)
- #include <sys/resource.h>
-#endif
-
-#include "_psutil_common.h"
-
-
-#define INITERR return NULL
-
-
-// ====================================================================
-// --- Utils
-// ====================================================================
-
-
-/*
- * From "man getpagesize" on Linux, https://linux.die.net/man/2/getpagesize:
- *
- * > In SUSv2 the getpagesize() call is labeled LEGACY, and in POSIX.1-2001
- * > it has been dropped.
- * > Portable applications should employ sysconf(_SC_PAGESIZE) instead
- * > of getpagesize().
- * > Most systems allow the synonym _SC_PAGE_SIZE for _SC_PAGESIZE.
- * > Whether getpagesize() is present as a Linux system call depends on the
- * > architecture.
- */
-long
-psutil_getpagesize(void) {
-#ifdef _SC_PAGESIZE
- // recommended POSIX
- return sysconf(_SC_PAGESIZE);
-#elif _SC_PAGE_SIZE
- // alias
- return sysconf(_SC_PAGE_SIZE);
-#else
- // legacy
- return (long) getpagesize();
-#endif
-}
-
-
-/*
- * Check if PID exists. Return values:
- * 1: exists
- * 0: does not exist
- * -1: error (Python exception is set)
- */
-int
-psutil_pid_exists(pid_t pid) {
- int ret;
-
- // No negative PID exists, plus -1 is an alias for sending signal
- // too all processes except system ones. Not what we want.
- if (pid < 0)
- return 0;
-
- // As per "man 2 kill" PID 0 is an alias for sending the signal to
- // every process in the process group of the calling process.
- // Not what we want. Some platforms have PID 0, some do not.
- // We decide that at runtime.
- if (pid == 0) {
-#if defined(PSUTIL_LINUX) || defined(PSUTIL_FREEBSD)
- return 0;
-#else
- return 1;
-#endif
- }
-
- ret = kill(pid , 0);
- if (ret == 0)
- return 1;
- else {
- if (errno == ESRCH) {
- // ESRCH == No such process
- return 0;
- }
- else if (errno == EPERM) {
- // EPERM clearly indicates there's a process to deny
- // access to.
- return 1;
- }
- else {
- // According to "man 2 kill" possible error values are
- // (EINVAL, EPERM, ESRCH) therefore we should never get
- // here. If we do let's be explicit in considering this
- // an error.
- PyErr_SetFromErrno(PyExc_OSError);
- return -1;
- }
- }
-}
-
-
-/*
- * Utility used for those syscalls which do not return a meaningful
- * error that we can translate into an exception which makes sense.
- * As such, we'll have to guess.
- * On UNIX, if errno is set, we return that one (OSError).
- * Else, if PID does not exist we assume the syscall failed because
- * of that so we raise NoSuchProcess.
- * If none of this is true we giveup and raise RuntimeError(msg).
- * This will always set a Python exception and return NULL.
- */
-void
-psutil_raise_for_pid(long pid, char *syscall) {
- if (errno != 0)
- psutil_PyErr_SetFromOSErrnoWithSyscall(syscall);
- else if (psutil_pid_exists(pid) == 0)
- NoSuchProcess(syscall);
- else
- PyErr_Format(PyExc_RuntimeError, "%s syscall failed", syscall);
-}
-
-
-// ====================================================================
-// --- Python wrappers
-// ====================================================================
-
-// Exposed so we can test it against Python's stdlib.
-static PyObject *
-psutil_getpagesize_pywrapper(PyObject *self, PyObject *args) {
- return Py_BuildValue("l", psutil_getpagesize());
-}
-
-
-/*
- * Given a PID return process priority as a Python integer.
- */
-static PyObject *
-psutil_posix_getpriority(PyObject *self, PyObject *args) {
- pid_t pid;
- int priority;
- errno = 0;
-
- if (! PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
- return NULL;
-
-#ifdef PSUTIL_OSX
- priority = getpriority(PRIO_PROCESS, (id_t)pid);
-#else
- priority = getpriority(PRIO_PROCESS, pid);
-#endif
- if (errno != 0)
- return PyErr_SetFromErrno(PyExc_OSError);
- return Py_BuildValue("i", priority);
-}
-
-
-/*
- * Given a PID and a value change process priority.
- */
-static PyObject *
-psutil_posix_setpriority(PyObject *self, PyObject *args) {
- pid_t pid;
- int priority;
- int retval;
-
- if (! PyArg_ParseTuple(args, _Py_PARSE_PID "i", &pid, &priority))
- return NULL;
-
-#ifdef PSUTIL_OSX
- retval = setpriority(PRIO_PROCESS, (id_t)pid, priority);
-#else
- retval = setpriority(PRIO_PROCESS, pid, priority);
-#endif
- if (retval == -1)
- return PyErr_SetFromErrno(PyExc_OSError);
- Py_RETURN_NONE;
-}
+#include "../../arch/all/init.h"
/*
* Translate a sockaddr struct into a Python string.
* Return None if address family is not AF_INET* or AF_PACKET.
*/
-static PyObject *
+PyObject *
psutil_convert_ipaddr(struct sockaddr *addr, int family) {
char buf[NI_MAXHOST];
int err;
@@ -297,7 +123,7 @@ psutil_convert_ipaddr(struct sockaddr *addr, int family) {
* Return NICs information a-la ifconfig as a list of tuples.
* TODO: on Solaris we won't get any MAC address.
*/
-static PyObject*
+PyObject*
psutil_net_if_addrs(PyObject* self, PyObject* args) {
struct ifaddrs *ifaddr, *ifa;
int family;
@@ -391,16 +217,12 @@ error:
* Return NIC MTU. References:
* http://www.i-scream.org/libstatgrab/
*/
-static PyObject *
+PyObject *
psutil_net_if_mtu(PyObject *self, PyObject *args) {
char *nic_name;
int sock = -1;
int ret;
-#ifdef PSUTIL_SUNOS10
- struct lifreq lifr;
-#else
struct ifreq ifr;
-#endif
if (! PyArg_ParseTuple(args, "s", &nic_name))
return NULL;
@@ -409,22 +231,13 @@ psutil_net_if_mtu(PyObject *self, PyObject *args) {
if (sock == -1)
goto error;
-#ifdef PSUTIL_SUNOS10
- PSUTIL_STRNCPY(lifr.lifr_name, nic_name, sizeof(lifr.lifr_name));
- ret = ioctl(sock, SIOCGIFMTU, &lifr);
-#else
PSUTIL_STRNCPY(ifr.ifr_name, nic_name, sizeof(ifr.ifr_name));
ret = ioctl(sock, SIOCGIFMTU, &ifr);
-#endif
if (ret == -1)
goto error;
close(sock);
-#ifdef PSUTIL_SUNOS10
- return Py_BuildValue("i", lifr.lifr_mtu);
-#else
return Py_BuildValue("i", ifr.ifr_mtu);
-#endif
error:
if (sock != -1)
@@ -433,7 +246,7 @@ error:
}
static int
-append_flag(PyObject *py_retlist, const char * flag_name)
+append_flag(PyObject *py_retlist, const char *flag_name)
{
PyObject *py_str = NULL;
@@ -452,7 +265,7 @@ append_flag(PyObject *py_retlist, const char * flag_name)
/*
* Get all of the NIC flags and return them.
*/
-static PyObject *
+PyObject *
psutil_net_if_flags(PyObject *self, PyObject *args) {
char *nic_name;
int sock = -1;
@@ -638,7 +451,7 @@ error:
* running. References:
* http://www.i-scream.org/libstatgrab/
*/
-static PyObject *
+PyObject *
psutil_net_if_is_running(PyObject *self, PyObject *args) {
char *nic_name;
int sock = -1;
@@ -670,10 +483,9 @@ error:
}
-/*
- * net_if_stats() macOS/BSD implementation.
- */
-#if defined(PSUTIL_BSD) || defined(PSUTIL_OSX)
+
+// net_if_stats() macOS/BSD implementation.
+#ifdef PSUTIL_HAS_NET_IF_DUPLEX_SPEED
int psutil_get_nic_speed(int ifm_active) {
// Determine NIC speed. Taken from:
@@ -817,7 +629,7 @@ int psutil_get_nic_speed(int ifm_active) {
* References:
* http://www.i-scream.org/libstatgrab/
*/
-static PyObject *
+PyObject *
psutil_net_if_duplex_speed(PyObject *self, PyObject *args) {
char *nic_name;
int sock = -1;
@@ -856,162 +668,4 @@ psutil_net_if_duplex_speed(PyObject *self, PyObject *args) {
close(sock);
return Py_BuildValue("[ii]", duplex, speed);
}
-#endif // net_if_stats() macOS/BSD implementation
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-/*
- * define the psutil C module methods and initialize the module.
- */
-static PyMethodDef mod_methods[] = {
- {"getpagesize", psutil_getpagesize_pywrapper, METH_VARARGS},
- {"getpriority", psutil_posix_getpriority, METH_VARARGS},
- {"net_if_addrs", psutil_net_if_addrs, METH_VARARGS},
- {"net_if_flags", psutil_net_if_flags, METH_VARARGS},
- {"net_if_is_running", psutil_net_if_is_running, METH_VARARGS},
- {"net_if_mtu", psutil_net_if_mtu, METH_VARARGS},
- {"setpriority", psutil_posix_setpriority, METH_VARARGS},
-#if defined(PSUTIL_BSD) || defined(PSUTIL_OSX)
- {"net_if_duplex_speed", psutil_net_if_duplex_speed, METH_VARARGS},
-#endif
- {NULL, NULL, 0, NULL}
-};
-
-
-static struct PyModuleDef moduledef = {
- PyModuleDef_HEAD_INIT,
- "_psutil_posix",
- NULL,
- -1,
- mod_methods,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-PyObject *
-PyInit__psutil_posix(void) {
- PyObject *mod = PyModule_Create(&moduledef);
- if (mod == NULL)
- INITERR;
-
-#ifdef Py_GIL_DISABLED
- PyUnstable_Module_SetGIL(mod, Py_MOD_GIL_NOT_USED);
-#endif
-
-#if defined(PSUTIL_BSD) || \
- defined(PSUTIL_OSX) || \
- defined(PSUTIL_SUNOS) || \
- defined(PSUTIL_AIX)
- if (PyModule_AddIntConstant(mod, "AF_LINK", AF_LINK)) INITERR;
-#endif
-
-#if defined(PSUTIL_LINUX) || defined(PSUTIL_FREEBSD)
- PyObject *v;
-
-#ifdef RLIMIT_AS
- if (PyModule_AddIntConstant(mod, "RLIMIT_AS", RLIMIT_AS)) INITERR;
-#endif
-
-#ifdef RLIMIT_CORE
- if (PyModule_AddIntConstant(mod, "RLIMIT_CORE", RLIMIT_CORE)) INITERR;
-#endif
-
-#ifdef RLIMIT_CPU
- if (PyModule_AddIntConstant(mod, "RLIMIT_CPU", RLIMIT_CPU)) INITERR;
-#endif
-
-#ifdef RLIMIT_DATA
- if (PyModule_AddIntConstant(mod, "RLIMIT_DATA", RLIMIT_DATA)) INITERR;
-#endif
-
-#ifdef RLIMIT_FSIZE
- if (PyModule_AddIntConstant(mod, "RLIMIT_FSIZE", RLIMIT_FSIZE)) INITERR;
-#endif
-
-#ifdef RLIMIT_MEMLOCK
- if (PyModule_AddIntConstant(mod, "RLIMIT_MEMLOCK", RLIMIT_MEMLOCK)) INITERR;
-#endif
-
-#ifdef RLIMIT_NOFILE
- if (PyModule_AddIntConstant(mod, "RLIMIT_NOFILE", RLIMIT_NOFILE)) INITERR;
-#endif
-
-#ifdef RLIMIT_NPROC
- if (PyModule_AddIntConstant(mod, "RLIMIT_NPROC", RLIMIT_NPROC)) INITERR;
-#endif
-
-#ifdef RLIMIT_RSS
- if (PyModule_AddIntConstant(mod, "RLIMIT_RSS", RLIMIT_RSS)) INITERR;
-#endif
-
-#ifdef RLIMIT_STACK
- if (PyModule_AddIntConstant(mod, "RLIMIT_STACK", RLIMIT_STACK)) INITERR;
-#endif
-
-// Linux specific
-
-#ifdef RLIMIT_LOCKS
- if (PyModule_AddIntConstant(mod, "RLIMIT_LOCKS", RLIMIT_LOCKS)) INITERR;
-#endif
-
-#ifdef RLIMIT_MSGQUEUE
- if (PyModule_AddIntConstant(mod, "RLIMIT_MSGQUEUE", RLIMIT_MSGQUEUE)) INITERR;
-#endif
-
-#ifdef RLIMIT_NICE
- if (PyModule_AddIntConstant(mod, "RLIMIT_NICE", RLIMIT_NICE)) INITERR;
-#endif
-
-#ifdef RLIMIT_RTPRIO
- if (PyModule_AddIntConstant(mod, "RLIMIT_RTPRIO", RLIMIT_RTPRIO)) INITERR;
-#endif
-
-#ifdef RLIMIT_RTTIME
- if (PyModule_AddIntConstant(mod, "RLIMIT_RTTIME", RLIMIT_RTTIME)) INITERR;
-#endif
-
-#ifdef RLIMIT_SIGPENDING
- if (PyModule_AddIntConstant(mod, "RLIMIT_SIGPENDING", RLIMIT_SIGPENDING)) INITERR;
-#endif
-
-// Free specific
-
-#ifdef RLIMIT_SWAP
- if (PyModule_AddIntConstant(mod, "RLIMIT_SWAP", RLIMIT_SWAP)) INITERR;
-#endif
-
-#ifdef RLIMIT_SBSIZE
- if (PyModule_AddIntConstant(mod, "RLIMIT_SBSIZE", RLIMIT_SBSIZE)) INITERR;
-#endif
-
-#ifdef RLIMIT_NPTS
- if (PyModule_AddIntConstant(mod, "RLIMIT_NPTS", RLIMIT_NPTS)) INITERR;
-#endif
-
-#if defined(HAVE_LONG_LONG)
- if (sizeof(RLIM_INFINITY) > sizeof(long)) {
- v = PyLong_FromLongLong((PY_LONG_LONG) RLIM_INFINITY);
- } else
-#endif
- {
- v = PyLong_FromLong((long) RLIM_INFINITY);
- }
- if (v) {
- PyModule_AddObject(mod, "RLIM_INFINITY", v);
- }
-#endif // defined(PSUTIL_LINUX) || defined(PSUTIL_FREEBSD)
-
- if (mod == NULL)
- INITERR;
- return mod;
-}
-
-#ifdef __cplusplus
-}
-#endif
+#endif // PSUTIL_HAS_NET_IF_DUPLEX_SPEED
diff --git a/contrib/python/psutil/py3/psutil/arch/posix/proc.c b/contrib/python/psutil/py3/psutil/arch/posix/proc.c
new file mode 100644
index 00000000000..b0ddf7b0e64
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/posix/proc.c
@@ -0,0 +1,120 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+
+#include <signal.h>
+#include <sys/resource.h>
+
+#include "../../arch/all/init.h"
+
+// Check if PID exists. Return values:
+// 1: exists
+// 0: does not exist
+// -1: error (Python exception is set)
+int
+psutil_pid_exists(pid_t pid) {
+ int ret;
+
+ // No negative PID exists, plus -1 is an alias for sending signal
+ // too all processes except system ones. Not what we want.
+ if (pid < 0)
+ return 0;
+
+ // As per "man 2 kill" PID 0 is an alias for sending the signal to
+ // every process in the process group of the calling process.
+ // Not what we want. Some platforms have PID 0, some do not.
+ // We decide that at runtime.
+ if (pid == 0) {
+#if defined(PSUTIL_LINUX) || defined(PSUTIL_FREEBSD)
+ return 0;
+#else
+ return 1;
+#endif
+ }
+
+ ret = kill(pid , 0);
+ if (ret == 0)
+ return 1;
+ else {
+ if (errno == ESRCH) {
+ // ESRCH == No such process
+ return 0;
+ }
+ else if (errno == EPERM) {
+ // EPERM clearly indicates there's a process to deny
+ // access to.
+ return 1;
+ }
+ else {
+ // According to "man 2 kill" possible error values are
+ // (EINVAL, EPERM, ESRCH) therefore we should never get
+ // here. If we do let's be explicit in considering this
+ // an error.
+ PyErr_SetFromErrno(PyExc_OSError);
+ return -1;
+ }
+ }
+}
+
+
+// Utility used for those syscalls which do not return a meaningful
+// error that we can translate into an exception which makes sense. As
+// such, we'll have to guess. On UNIX, if errno is set, we return that
+// one (OSError). Else, if PID does not exist we assume the syscall
+// failed because of that so we raise NoSuchProcess. If none of this is
+// true we giveup and raise RuntimeError(msg). This will always set a
+// Python exception and return NULL.
+void
+psutil_raise_for_pid(pid_t pid, char *syscall) {
+ if (errno != 0)
+ psutil_PyErr_SetFromOSErrnoWithSyscall(syscall);
+ else if (psutil_pid_exists(pid) == 0)
+ NoSuchProcess(syscall);
+ else
+ PyErr_Format(PyExc_RuntimeError, "%s syscall failed", syscall);
+}
+
+
+// Get PID priority.
+PyObject *
+psutil_proc_priority_get(PyObject *self, PyObject *args) {
+ pid_t pid;
+ int priority;
+ errno = 0;
+
+ if (! PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
+ return NULL;
+
+#ifdef PSUTIL_OSX
+ priority = getpriority(PRIO_PROCESS, (id_t)pid);
+#else
+ priority = getpriority(PRIO_PROCESS, pid);
+#endif
+ if (errno != 0)
+ return PyErr_SetFromErrno(PyExc_OSError);
+ return Py_BuildValue("i", priority);
+}
+
+
+// Set PID priority.
+PyObject *
+psutil_proc_priority_set(PyObject *self, PyObject *args) {
+ pid_t pid;
+ int priority;
+ int retval;
+
+ if (! PyArg_ParseTuple(args, _Py_PARSE_PID "i", &pid, &priority))
+ return NULL;
+
+#ifdef PSUTIL_OSX
+ retval = setpriority(PRIO_PROCESS, (id_t)pid, priority);
+#else
+ retval = setpriority(PRIO_PROCESS, pid, priority);
+#endif
+ if (retval == -1)
+ return PyErr_SetFromErrno(PyExc_OSError);
+ Py_RETURN_NONE;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/posix/sysctl.c b/contrib/python/psutil/py3/psutil/arch/posix/sysctl.c
new file mode 100644
index 00000000000..fbe1b561cb1
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/posix/sysctl.c
@@ -0,0 +1,245 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include "../../arch/all/init.h"
+
+#ifdef PSUTIL_HAS_SYSCTL
+#include <Python.h>
+#include <sys/types.h>
+#include <sys/sysctl.h>
+
+
+static const int MAX_RETRIES = 10;
+
+
+// A thin wrapper on top of sysctl().
+int
+psutil_sysctl(int *mib, u_int miblen, void *buf, size_t buflen) {
+ size_t len = buflen;
+
+ if (!mib || miblen == 0 || !buf || buflen == 0)
+ return psutil_badargs("psutil_sysctl");
+
+ if (sysctl(mib, miblen, buf, &len, NULL, 0) == -1) {
+ psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl()");
+ return -1;
+ }
+
+ if (len != buflen) {
+ PyErr_SetString(PyExc_RuntimeError, "sysctl() size mismatch");
+ return -1;
+ }
+
+ return 0;
+}
+
+
+// Allocate buffer for sysctl with retry on ENOMEM or buffer size mismatch.
+// The caller is responsible for freeing the memory.
+int
+psutil_sysctl_malloc(int *mib, u_int miblen, char **buf, size_t *buflen) {
+ size_t needed = 0;
+ char *buffer = NULL;
+ int ret;
+ int max_retries = MAX_RETRIES;
+
+ if (!mib || miblen == 0 || !buf || !buflen)
+ return psutil_badargs("psutil_sysctl_malloc");
+
+ // First query to determine required size
+ ret = sysctl(mib, miblen, NULL, &needed, NULL, 0);
+ if (ret == -1) {
+ psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl() malloc 1/3");
+ return -1;
+ }
+
+ if (needed == 0) {
+ psutil_debug("psutil_sysctl_malloc() size = 0");
+ }
+
+ while (max_retries-- > 0) {
+ // zero-initialize buffer to prevent uninitialized bytes
+ buffer = calloc(1, needed);
+ if (buffer == NULL) {
+ PyErr_NoMemory();
+ return -1;
+ }
+
+ size_t len = needed;
+ ret = sysctl(mib, miblen, buffer, &len, NULL, 0);
+
+ if (ret == 0) {
+ // Success: return buffer and length
+ *buf = buffer;
+ *buflen = len;
+ return 0;
+ }
+
+ // Handle buffer too small
+ if (errno == ENOMEM) {
+ free(buffer);
+ buffer = NULL;
+
+ // Re-query needed size for next attempt
+ if (sysctl(mib, miblen, NULL, &needed, NULL, 0) == -1) {
+ psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl() malloc 2/3");
+ return -1;
+ }
+
+ psutil_debug("psutil_sysctl_malloc() retry");
+ continue;
+ }
+
+ // Other errors: clean up and give up
+ free(buffer);
+ psutil_PyErr_SetFromOSErrnoWithSyscall("sysctl() malloc 3/3");
+ return -1;
+ }
+
+ PyErr_SetString(
+ PyExc_RuntimeError, "sysctl() buffer allocation retry limit exceeded"
+ );
+ return -1;
+}
+
+
+// Get the maximum process arguments size. Return 0 on error.
+size_t
+psutil_sysctl_argmax() {
+ int argmax;
+ int mib[2] = {CTL_KERN, KERN_ARGMAX};
+
+ if (psutil_sysctl(mib, 2, &argmax, sizeof(argmax)) != 0) {
+ return 0;
+ }
+
+ if (argmax <= 0) {
+ PyErr_SetString(
+ PyExc_RuntimeError, "sysctl(KERN_ARGMAX) return <= 0"
+ );
+ return 0;
+ }
+
+ return (size_t)argmax;
+}
+
+
+#ifdef PSUTIL_HAS_SYSCTLBYNAME
+// A thin wrapper on top of sysctlbyname().
+int
+psutil_sysctlbyname(const char *name, void *buf, size_t buflen) {
+ size_t len = buflen;
+ char errbuf[256];
+
+ if (!name || !buf || buflen == 0)
+ return psutil_badargs("psutil_sysctlbyname");
+
+ if (sysctlbyname(name, buf, &len, NULL, 0) == -1) {
+ snprintf(errbuf, sizeof(errbuf), "sysctlbyname('%s')", name);
+ psutil_PyErr_SetFromOSErrnoWithSyscall(errbuf);
+ return -1;
+ }
+
+ if (len != buflen) {
+ snprintf(
+ errbuf,
+ sizeof(errbuf),
+ "sysctlbyname('%s') size mismatch: returned %zu, expected %zu",
+ name,
+ len,
+ buflen
+ );
+ PyErr_SetString(PyExc_RuntimeError, errbuf);
+ return -1;
+ }
+
+ return 0;
+}
+
+
+// Allocate buffer for sysctlbyname with retry on ENOMEM or size mismatch.
+// The caller is responsible for freeing the memory.
+int
+psutil_sysctlbyname_malloc(const char *name, char **buf, size_t *buflen) {
+ int ret;
+ int max_retries = MAX_RETRIES;
+ size_t needed = 0;
+ size_t len = 0;
+ char *buffer = NULL;
+ char errbuf[256];
+
+ if (!name || !buf || !buflen)
+ return psutil_badargs("psutil_sysctlbyname_malloc");
+
+ // First query to determine required size.
+ ret = sysctlbyname(name, NULL, &needed, NULL, 0);
+ if (ret == -1) {
+ snprintf(errbuf, sizeof(errbuf), "sysctlbyname('%s') malloc 1/3", name);
+ psutil_PyErr_SetFromOSErrnoWithSyscall(errbuf);
+ return -1;
+ }
+
+ if (needed == 0) {
+ psutil_debug("psutil_sysctlbyname_malloc() size = 0");
+ }
+
+ while (max_retries-- > 0) {
+ // Zero-initialize buffer to prevent uninitialized bytes.
+ buffer = calloc(1, needed);
+ if (buffer == NULL) {
+ PyErr_NoMemory();
+ return -1;
+ }
+
+ len = needed;
+ ret = sysctlbyname(name, buffer, &len, NULL, 0);
+ if (ret == 0) {
+ // Success: return buffer and actual length.
+ *buf = buffer;
+ *buflen = len;
+ return 0;
+ }
+
+ // Handle buffer too small. Re-query and retry.
+ if (errno == ENOMEM) {
+ free(buffer);
+ buffer = NULL;
+
+ if (sysctlbyname(name, NULL, &needed, NULL, 0) == -1) {
+ snprintf(
+ errbuf,
+ sizeof(errbuf),
+ "sysctlbyname('%s') malloc 2/3",
+ name
+ );
+ psutil_PyErr_SetFromOSErrnoWithSyscall(errbuf);
+ return -1;
+ }
+
+ psutil_debug("psutil_sysctlbyname_malloc() retry");
+ continue;
+ }
+
+ // Other errors: clean up and give up.
+ free(buffer);
+ snprintf(
+ errbuf, sizeof(errbuf), "sysctlbyname('%s') malloc 3/3", name
+ );
+ psutil_PyErr_SetFromOSErrnoWithSyscall(errbuf);
+ return -1;
+ }
+
+ snprintf(
+ errbuf,
+ sizeof(errbuf),
+ "sysctlbyname('%s') buffer allocation retry limit exceeded",
+ name
+ );
+ PyErr_SetString(PyExc_RuntimeError, errbuf);
+ return -1;
+}
+#endif // PSUTIL_HAS_SYSCTLBYNAME
+#endif // PSUTIL_HAS_SYSCTL
diff --git a/contrib/python/psutil/py3/psutil/arch/linux/users.c b/contrib/python/psutil/py3/psutil/arch/posix/users.c
index 663d0f2a457..df33820e0ac 100644
--- a/contrib/python/psutil/py3/psutil/arch/linux/users.c
+++ b/contrib/python/psutil/py3/psutil/arch/posix/users.c
@@ -4,40 +4,74 @@
* found in the LICENSE file.
*/
+#include "../../arch/all/init.h"
+
+#ifdef PSUTIL_HAS_POSIX_USERS
#include <Python.h>
-#include <utmp.h>
#include <string.h>
-#include "../../_psutil_common.h"
+#include <utmpx.h>
+
+
+
+static void
+setup() {
+ UTXENT_MUTEX_LOCK();
+ setutxent();
+}
+
+
+static void
+teardown() {
+ endutxent();
+ UTXENT_MUTEX_UNLOCK();
+}
PyObject *
psutil_users(PyObject *self, PyObject *args) {
- struct utmp *ut;
- PyObject *py_retlist = PyList_New(0);
- PyObject *py_tuple = NULL;
+ struct utmpx *ut;
+ size_t host_len;
PyObject *py_username = NULL;
PyObject *py_tty = NULL;
PyObject *py_hostname = NULL;
+ PyObject *py_tuple = NULL;
+ PyObject *py_retlist = PyList_New(0);
if (py_retlist == NULL)
return NULL;
- setutent();
- while (NULL != (ut = getutent())) {
+
+ setup();
+
+ while ((ut = getutxent()) != NULL) {
if (ut->ut_type != USER_PROCESS)
continue;
py_tuple = NULL;
+
py_username = PyUnicode_DecodeFSDefault(ut->ut_user);
if (! py_username)
goto error;
+
py_tty = PyUnicode_DecodeFSDefault(ut->ut_line);
if (! py_tty)
goto error;
- if (strcmp(ut->ut_host, ":0") == 0 || strcmp(ut->ut_host, ":0.0") == 0)
+
+ host_len = strnlen(ut->ut_host, sizeof(ut->ut_host));
+ if (host_len == 0 ||
+ (strcmp(ut->ut_host, ":0") == 0) ||
+ (strcmp(ut->ut_host, ":0.0") == 0))
+ {
py_hostname = PyUnicode_DecodeFSDefault("localhost");
- else
- py_hostname = PyUnicode_DecodeFSDefault(ut->ut_host);
- if (! py_hostname)
+ }
+ else {
+ // ut_host might not be null-terminated if the hostname is
+ // very long, so we do it.
+ char hostbuf[sizeof(ut->ut_host)];
+ memcpy(hostbuf, ut->ut_host, host_len);
+ hostbuf[host_len] = '\0';
+ py_hostname = PyUnicode_DecodeFSDefault(hostbuf);
+ }
+ if (!py_hostname)
goto error;
py_tuple = Py_BuildValue(
@@ -57,15 +91,17 @@ psutil_users(PyObject *self, PyObject *args) {
Py_CLEAR(py_hostname);
Py_CLEAR(py_tuple);
}
- endutent();
+
+ teardown();
return py_retlist;
error:
+ teardown();
Py_XDECREF(py_username);
Py_XDECREF(py_tty);
Py_XDECREF(py_hostname);
Py_XDECREF(py_tuple);
Py_DECREF(py_retlist);
- endutent();
return NULL;
}
+#endif // PSUTIL_HAS_POSIX_USERS
diff --git a/contrib/python/psutil/py3/psutil/arch/sunos/cpu.c b/contrib/python/psutil/py3/psutil/arch/sunos/cpu.c
new file mode 100644
index 00000000000..946bffd00fe
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/sunos/cpu.c
@@ -0,0 +1,137 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+
+#include <sys/sysinfo.h>
+#include <kstat.h>
+
+
+// System-wide CPU times.
+PyObject *
+psutil_per_cpu_times(PyObject *self, PyObject *args) {
+ kstat_ctl_t *kc;
+ kstat_t *ksp;
+ cpu_stat_t cs;
+ PyObject *py_retlist = PyList_New(0);
+ PyObject *py_cputime = NULL;
+
+ if (py_retlist == NULL)
+ return NULL;
+
+ kc = kstat_open();
+ if (kc == NULL) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ for (ksp = kc->kc_chain; ksp != NULL; ksp = ksp->ks_next) {
+ if (strcmp(ksp->ks_module, "cpu_stat") == 0) {
+ if (kstat_read(kc, ksp, &cs) == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+ py_cputime = Py_BuildValue("ffff",
+ (float)cs.cpu_sysinfo.cpu[CPU_USER],
+ (float)cs.cpu_sysinfo.cpu[CPU_KERNEL],
+ (float)cs.cpu_sysinfo.cpu[CPU_IDLE],
+ (float)cs.cpu_sysinfo.cpu[CPU_WAIT]);
+ if (py_cputime == NULL)
+ goto error;
+ if (PyList_Append(py_retlist, py_cputime))
+ goto error;
+ Py_CLEAR(py_cputime);
+ }
+ }
+
+ kstat_close(kc);
+ return py_retlist;
+
+error:
+ Py_XDECREF(py_cputime);
+ Py_DECREF(py_retlist);
+ if (kc != NULL)
+ kstat_close(kc);
+ return NULL;
+}
+
+
+// Return the number of CPU cores on the system.
+PyObject *
+psutil_cpu_count_cores(PyObject *self, PyObject *args) {
+ kstat_ctl_t *kc;
+ kstat_t *ksp;
+ int ncpus = 0;
+
+ kc = kstat_open();
+ if (kc == NULL)
+ goto error;
+ ksp = kstat_lookup(kc, "cpu_info", -1, NULL);
+ if (ksp == NULL)
+ goto error;
+
+ for (ksp = kc->kc_chain; ksp; ksp = ksp->ks_next) {
+ if (strcmp(ksp->ks_module, "cpu_info") != 0)
+ continue;
+ if (kstat_read(kc, ksp, NULL) == -1)
+ goto error;
+ ncpus += 1;
+ }
+
+ kstat_close(kc);
+ if (ncpus > 0)
+ return Py_BuildValue("i", ncpus);
+ else
+ goto error;
+
+error:
+ // mimic os.cpu_count()
+ if (kc != NULL)
+ kstat_close(kc);
+ Py_RETURN_NONE;
+}
+
+
+// Return CPU statistics.
+PyObject *
+psutil_cpu_stats(PyObject *self, PyObject *args) {
+ kstat_ctl_t *kc;
+ kstat_t *ksp;
+ cpu_stat_t cs;
+ unsigned int ctx_switches = 0;
+ unsigned int interrupts = 0;
+ unsigned int traps = 0;
+ unsigned int syscalls = 0;
+
+ kc = kstat_open();
+ if (kc == NULL) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ for (ksp = kc->kc_chain; ksp != NULL; ksp = ksp->ks_next) {
+ if (strcmp(ksp->ks_module, "cpu_stat") == 0) {
+ if (kstat_read(kc, ksp, &cs) == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+ // voluntary + involuntary
+ ctx_switches += cs.cpu_sysinfo.pswitch + cs.cpu_sysinfo.inv_swtch;
+ interrupts += cs.cpu_sysinfo.intr;
+ traps += cs.cpu_sysinfo.trap;
+ syscalls += cs.cpu_sysinfo.syscall;
+ }
+ }
+
+ kstat_close(kc);
+ return Py_BuildValue(
+ "IIII", ctx_switches, interrupts, syscalls, traps);
+
+error:
+ if (kc != NULL)
+ kstat_close(kc);
+ return NULL;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/sunos/disk.c b/contrib/python/psutil/py3/psutil/arch/sunos/disk.c
new file mode 100644
index 00000000000..f736984c769
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/sunos/disk.c
@@ -0,0 +1,119 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+
+#include <sys/mntent.h>
+#include <sys/mnttab.h>
+#include <kstat.h>
+
+
+PyObject *
+psutil_disk_io_counters(PyObject *self, PyObject *args) {
+ kstat_ctl_t *kc;
+ kstat_t *ksp;
+ kstat_io_t kio;
+ PyObject *py_retdict = PyDict_New();
+ PyObject *py_disk_info = NULL;
+
+ if (py_retdict == NULL)
+ return NULL;
+ kc = kstat_open();
+ if (kc == NULL) {
+ PyErr_SetFromErrno(PyExc_OSError);;
+ goto error;
+ }
+ ksp = kc->kc_chain;
+ while (ksp != NULL) {
+ if (ksp->ks_type == KSTAT_TYPE_IO) {
+ if (strcmp(ksp->ks_class, "disk") == 0) {
+ if (kstat_read(kc, ksp, &kio) == -1) {
+ kstat_close(kc);
+ return PyErr_SetFromErrno(PyExc_OSError);;
+ }
+ py_disk_info = Py_BuildValue(
+ "(IIKKLL)",
+ kio.reads,
+ kio.writes,
+ kio.nread,
+ kio.nwritten,
+ kio.rtime / 1000 / 1000, // from nano to milli secs
+ kio.wtime / 1000 / 1000 // from nano to milli secs
+ );
+ if (!py_disk_info)
+ goto error;
+ if (PyDict_SetItemString(py_retdict, ksp->ks_name,
+ py_disk_info))
+ goto error;
+ Py_CLEAR(py_disk_info);
+ }
+ }
+ ksp = ksp->ks_next;
+ }
+ kstat_close(kc);
+
+ return py_retdict;
+
+error:
+ Py_XDECREF(py_disk_info);
+ Py_DECREF(py_retdict);
+ if (kc != NULL)
+ kstat_close(kc);
+ return NULL;
+}
+
+
+PyObject *
+psutil_disk_partitions(PyObject *self, PyObject *args) {
+ FILE *file;
+ struct mnttab mt;
+ PyObject *py_dev = NULL;
+ PyObject *py_mountp = NULL;
+ PyObject *py_tuple = NULL;
+ PyObject *py_retlist = PyList_New(0);
+
+ if (py_retlist == NULL)
+ return NULL;
+
+ file = fopen(MNTTAB, "rb");
+ if (file == NULL) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ while (getmntent(file, &mt) == 0) {
+ py_dev = PyUnicode_DecodeFSDefault(mt.mnt_special);
+ if (! py_dev)
+ goto error;
+ py_mountp = PyUnicode_DecodeFSDefault(mt.mnt_mountp);
+ if (! py_mountp)
+ goto error;
+ py_tuple = Py_BuildValue(
+ "(OOss)",
+ py_dev, // device
+ py_mountp, // mount point
+ mt.mnt_fstype, // fs type
+ mt.mnt_mntopts); // options
+ if (py_tuple == NULL)
+ goto error;
+ if (PyList_Append(py_retlist, py_tuple))
+ goto error;
+ Py_CLEAR(py_dev);
+ Py_CLEAR(py_mountp);
+ Py_CLEAR(py_tuple);
+ }
+ fclose(file);
+ return py_retlist;
+
+error:
+ Py_XDECREF(py_dev);
+ Py_XDECREF(py_mountp);
+ Py_XDECREF(py_tuple);
+ Py_DECREF(py_retlist);
+ if (file != NULL)
+ fclose(file);
+ return NULL;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/sunos/environ.c b/contrib/python/psutil/py3/psutil/arch/sunos/environ.c
new file mode 100644
index 00000000000..458c7f22251
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/sunos/environ.c
@@ -0,0 +1,400 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola', Oleksii Shevchuk.
+ * All rights reserved. Use of this source code is governed by a BSD-style
+ * license that can be found in the LICENSE file.
+ *
+ * Functions specific for Process.environ().
+ */
+
+#define _STRUCTURED_PROC 1
+
+#include <Python.h>
+
+#include <sys/types.h>
+#include <sys/procfs.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <unistd.h>
+
+#include "../../arch/all/init.h"
+
+
+#define STRING_SEARCH_BUF_SIZE 512
+
+
+/*
+ * Open address space of specified process and return file descriptor.
+ * @param pid a pid of process.
+ * @param procfs_path a path to mounted procfs filesystem.
+ * @return file descriptor or -1 in case of error.
+ */
+static int
+open_address_space(pid_t pid, const char *procfs_path) {
+ int fd;
+ char proc_path[PATH_MAX];
+
+ snprintf(proc_path, PATH_MAX, "%s/%i/as", procfs_path, pid);
+ fd = open(proc_path, O_RDONLY);
+ if (fd < 0)
+ PyErr_SetFromErrno(PyExc_OSError);
+
+ return fd;
+}
+
+
+/*
+ * Read chunk of data by offset to specified buffer of the same size.
+ * @param fd a file descriptor.
+ * @param offset an required offset in file.
+ * @param buf a buffer where to store result.
+ * @param buf_size a size of buffer where data will be stored.
+ * @return amount of bytes stored to the buffer or -1 in case of
+ * error.
+ */
+static size_t
+read_offt(int fd, off_t offset, char *buf, size_t buf_size) {
+ size_t to_read = buf_size;
+ size_t stored = 0;
+ int r;
+
+ while (to_read) {
+ r = pread(fd, buf + stored, to_read, offset + stored);
+ if (r < 0)
+ goto error;
+ else if (r == 0)
+ break;
+
+ to_read -= r;
+ stored += r;
+ }
+
+ return stored;
+
+ error:
+ PyErr_SetFromErrno(PyExc_OSError);
+ return -1;
+}
+
+
+/*
+ * Read null-terminated string from file descriptor starting from
+ * specified offset.
+ * @param fd a file descriptor of opened address space.
+ * @param offset an offset in specified file descriptor.
+ * @return allocated null-terminated string or NULL in case of error.
+*/
+static char *
+read_cstring_offt(int fd, off_t offset) {
+ int r;
+ int i = 0;
+ off_t end = offset;
+ size_t len;
+ char buf[STRING_SEARCH_BUF_SIZE];
+ char *result = NULL;
+
+ if (lseek(fd, offset, SEEK_SET) == (off_t)-1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ // Search end of string
+ for (;;) {
+ r = read(fd, buf, sizeof(buf));
+ if (r == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+ else if (r == 0) {
+ break;
+ }
+ else {
+ for (i=0; i<r; i++)
+ if (! buf[i])
+ goto found;
+ }
+
+ end += r;
+ }
+
+found:
+ len = end + i - offset;
+
+ result = malloc(len+1);
+ if (! result) {
+ PyErr_NoMemory();
+ goto error;
+ }
+
+ if (len) {
+ if (read_offt(fd, offset, result, len) < 0) {
+ goto error;
+ }
+ }
+
+ result[len] = '\0';
+ return result;
+
+ error:
+ if (result)
+ free(result);
+ return NULL;
+}
+
+
+/*
+ * Read block of addresses by offset, dereference them one by one
+ * and create an array of null terminated C strings from them.
+ * @param fd a file descriptor of address space of interesting process.
+ * @param offset an offset of address block in address space.
+ * @param ptr_size a size of pointer. Only 4 or 8 are valid values.
+ * @param count amount of pointers in block.
+ * @return allocated array of strings dereferenced and read by offset.
+ * Number of elements in array are count. In case of error function
+ * returns NULL.
+ */
+static char **
+read_cstrings_block(int fd, off_t offset, size_t ptr_size, size_t count) {
+ char **result = NULL;
+ char *pblock = NULL;
+ size_t pblock_size;
+ size_t i;
+
+ assert(ptr_size == 4 || ptr_size == 8);
+
+ if (!count)
+ goto error;
+
+ pblock_size = ptr_size * count;
+
+ pblock = malloc(pblock_size);
+ if (! pblock) {
+ PyErr_NoMemory();
+ goto error;
+ }
+
+ if (read_offt(fd, offset, pblock, pblock_size) != pblock_size)
+ goto error;
+
+ result = (char **) calloc(count, sizeof(char *));
+ if (! result) {
+ PyErr_NoMemory();
+ goto error;
+ }
+
+ for (i=0; i<count; i++) {
+ result[i] = read_cstring_offt(
+ fd, (ptr_size == 4?
+ ((uint32_t *) pblock)[i]:
+ ((uint64_t *) pblock)[i]));
+
+ if (!result[i])
+ goto error;
+ }
+
+ free(pblock);
+ return result;
+
+ error:
+ if (result)
+ psutil_free_cstrings_array(result, i);
+ if (pblock)
+ free(pblock);
+ return NULL;
+}
+
+
+/*
+ * Check that caller process can extract proper values from psinfo_t
+ * structure.
+ * @param info a pointer to process info (psinfo_t) structure of the
+ * interesting process.
+ * @return 1 in case if caller process can extract proper values from
+ * psinfo_t structure, or 0 otherwise.
+ */
+static inline int
+is_ptr_dereference_possible(psinfo_t info) {
+#if !defined(_LP64)
+ return info.pr_dmodel == PR_MODEL_ILP32;
+#else
+ return 1;
+#endif
+}
+
+
+/*
+ * Return pointer size according to psinfo_t structure
+ * @param info a pointer to process info (psinfo_t) structure of the
+ * interesting process.
+ * @return pointer size (4 or 8).
+ */
+static inline int
+ptr_size_by_psinfo(psinfo_t info) {
+ return info.pr_dmodel == PR_MODEL_ILP32? 4 : 8;
+}
+
+
+/*
+ * Count amount of pointers in a block which ends with NULL.
+ * @param fd a descriptor of /proc/PID/as special file.
+ * @param offt an offset of block of pointers at the file.
+ * @param ptr_size a pointer size (allowed values: {4, 8}).
+ * @return amount of non-NULL pointers or -1 in case of error.
+ */
+static int
+search_pointers_vector_size_offt(int fd, off_t offt, size_t ptr_size) {
+ int count = 0;
+ size_t r;
+ char buf[8];
+ static const char zeros[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
+
+ assert(ptr_size == 4 || ptr_size == 8);
+
+ if (lseek(fd, offt, SEEK_SET) == (off_t)-1)
+ goto error;
+
+ for (;; count ++) {
+ r = read(fd, buf, ptr_size);
+
+ if (r < 0)
+ goto error;
+
+ if (r == 0)
+ break;
+
+ if (r != ptr_size) {
+ PyErr_SetString(
+ PyExc_RuntimeError, "pointer block is truncated");
+ return -1;
+ }
+
+ if (! memcmp(buf, zeros, ptr_size))
+ break;
+ }
+
+ return count;
+
+ error:
+ PyErr_SetFromErrno(PyExc_OSError);
+ return -1;
+}
+
+
+/*
+ * Dereference and read array of strings by psinfo_t.pr_argv pointer from
+ * remote process.
+ * @param info a pointer to process info (psinfo_t) structure of the
+ * interesting process
+ * @param procfs_path a cstring with path to mounted procfs filesystem.
+ * @param count a pointer to variable where to store amount of elements in
+ * returned array. In case of error value of variable will not be
+ changed.
+ * @return allocated array of cstrings or NULL in case of error.
+ */
+char **
+psutil_read_raw_args(psinfo_t info, const char *procfs_path, size_t *count) {
+ int as;
+ char **result;
+
+ if (! is_ptr_dereference_possible(info)) {
+ PyErr_SetString(
+ PyExc_NotImplementedError,
+ "can't get env of a 64 bit process from a 32 bit process");
+ return NULL;
+ }
+
+ if (! (info.pr_argv && info.pr_argc)) {
+ PyErr_SetString(
+ PyExc_RuntimeError, "process doesn't have arguments block");
+
+ return NULL;
+ }
+
+ as = open_address_space(info.pr_pid, procfs_path);
+ if (as < 0)
+ return NULL;
+
+ result = read_cstrings_block(
+ as, info.pr_argv, ptr_size_by_psinfo(info), info.pr_argc
+ );
+
+ if (result && count)
+ *count = info.pr_argc;
+
+ close(as);
+
+ return result;
+}
+
+
+/*
+ * Dereference and read array of strings by psinfo_t.pr_envp pointer
+ * from remote process.
+ * @param info a pointer to process info (psinfo_t) structure of the
+ * interesting process.
+ * @param procfs_path a cstring with path to mounted procfs filesystem.
+ * @param count a pointer to variable where to store amount of elements in
+ * returned array. In case of error value of variable will not be
+ * changed. To detect special case (described later) variable should be
+ * initialized by -1 or other negative value.
+ * @return allocated array of cstrings or NULL in case of error.
+ * Special case: count set to 0, return NULL.
+ * Special case means there is no error acquired, but no data
+ * retrieved.
+ * Special case exists because the nature of the process. From the
+ * beginning it's not clean how many pointers in envp array. Also
+ * situation when environment is empty is common for kernel processes.
+ */
+char **
+psutil_read_raw_env(psinfo_t info, const char *procfs_path, ssize_t *count) {
+ int as;
+ int env_count;
+ int ptr_size;
+ char **result = NULL;
+
+ if (! is_ptr_dereference_possible(info)) {
+ PyErr_SetString(
+ PyExc_NotImplementedError,
+ "can't get env of a 64 bit process from a 32 bit process");
+ return NULL;
+ }
+
+ as = open_address_space(info.pr_pid, procfs_path);
+ if (as < 0)
+ return NULL;
+
+ ptr_size = ptr_size_by_psinfo(info);
+
+ env_count = search_pointers_vector_size_offt(
+ as, info.pr_envp, ptr_size);
+
+ if (env_count >= 0 && count)
+ *count = env_count;
+
+ if (env_count > 0)
+ result = read_cstrings_block(
+ as, info.pr_envp, ptr_size, env_count);
+
+ close(as);
+ return result;
+}
+
+
+/*
+ * Free array of cstrings.
+ * @param array an array of cstrings returned by psutil_read_raw_env,
+ * psutil_read_raw_args or any other function.
+ * @param count a count of strings in the passed array
+ */
+void
+psutil_free_cstrings_array(char **array, size_t count) {
+ size_t i;
+
+ if (!array)
+ return;
+ for (i=0; i<count; i++) {
+ if (array[i]) {
+ free(array[i]);
+ }
+ }
+ free(array);
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/sunos/init.h b/contrib/python/psutil/py3/psutil/arch/sunos/init.h
new file mode 100644
index 00000000000..52ac0139b32
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/sunos/init.h
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+#include <libproc.h>
+
+#ifndef PROCESS_AS_UTILS_H
+#define PROCESS_AS_UTILS_H
+
+char **
+psutil_read_raw_args(psinfo_t info, const char *procfs_path, size_t *count);
+
+char **
+psutil_read_raw_env(psinfo_t info, const char *procfs_path, ssize_t *count);
+
+void
+psutil_free_cstrings_array(char **array, size_t count);
+#endif // PROCESS_AS_UTILS_H
+
+PyObject *psutil_boot_time(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_count_cores(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_stats(PyObject *self, PyObject *args);
+PyObject *psutil_disk_io_counters(PyObject *self, PyObject *args);
+PyObject *psutil_disk_partitions(PyObject *self, PyObject *args);
+PyObject *psutil_net_connections(PyObject *self, PyObject *args);
+PyObject *psutil_net_if_stats(PyObject *self, PyObject *args);
+PyObject *psutil_net_io_counters(PyObject *self, PyObject *args);
+PyObject *psutil_per_cpu_times(PyObject *self, PyObject *args);
+PyObject *psutil_proc_basic_info(PyObject *self, PyObject *args);
+PyObject *psutil_proc_cpu_num(PyObject *self, PyObject *args);
+PyObject *psutil_proc_cpu_times(PyObject *self, PyObject *args);
+PyObject *psutil_proc_cred(PyObject *self, PyObject *args);
+PyObject *psutil_proc_environ(PyObject *self, PyObject *args);
+PyObject *psutil_proc_memory_maps(PyObject *self, PyObject *args);
+PyObject *psutil_proc_name_and_args(PyObject *self, PyObject *args);
+PyObject *psutil_proc_num_ctx_switches(PyObject *self, PyObject *args);
+PyObject *psutil_proc_query_thread(PyObject *self, PyObject *args);
+PyObject *psutil_swap_mem(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/sunos/mem.c b/contrib/python/psutil/py3/psutil/arch/sunos/mem.c
new file mode 100644
index 00000000000..c4bf97189bd
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/sunos/mem.c
@@ -0,0 +1,103 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+
+#include <kstat.h>
+#include <string.h>
+#include <sys/sysinfo.h>
+
+
+PyObject *
+psutil_swap_mem(PyObject *self, PyObject *args) {
+// XXX (arghhh!)
+// total/free swap mem: commented out as for some reason I can't
+// manage to get the same results shown by "swap -l", despite the
+// code below is exactly the same as:
+// http://cvs.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/
+// cmd/swap/swap.c
+// We're going to parse "swap -l" output from Python (sigh!)
+
+/*
+ struct swaptable *st;
+ struct swapent *swapent;
+ int i;
+ struct stat64 statbuf;
+ char *path;
+ char fullpath[MAXPATHLEN+1];
+ int num;
+
+ if ((num = swapctl(SC_GETNSWP, NULL)) == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ return NULL;
+ }
+ if (num == 0) {
+ PyErr_SetString(PyExc_RuntimeError, "no swap devices configured");
+ return NULL;
+ }
+ if ((st = malloc(num * sizeof(swapent_t) + sizeof (int))) == NULL) {
+ PyErr_SetString(PyExc_RuntimeError, "malloc failed");
+ return NULL;
+ }
+ if ((path = malloc(num * MAXPATHLEN)) == NULL) {
+ PyErr_SetString(PyExc_RuntimeError, "malloc failed");
+ return NULL;
+ }
+ swapent = st->swt_ent;
+ for (i = 0; i < num; i++, swapent++) {
+ swapent->ste_path = path;
+ path += MAXPATHLEN;
+ }
+ st->swt_n = num;
+ if ((num = swapctl(SC_LIST, st)) == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ return NULL;
+ }
+
+ swapent = st->swt_ent;
+ long t = 0, f = 0;
+ for (i = 0; i < num; i++, swapent++) {
+ int diskblks_per_page =(int)(sysconf(_SC_PAGESIZE) >> DEV_BSHIFT);
+ t += (long)swapent->ste_pages;
+ f += (long)swapent->ste_free;
+ }
+
+ free(st);
+ return Py_BuildValue("(kk)", t, f);
+*/
+
+ kstat_ctl_t *kc;
+ kstat_t *k;
+ cpu_stat_t *cpu;
+ int cpu_count = 0;
+ int flag = 0;
+ uint_t sin = 0;
+ uint_t sout = 0;
+
+ kc = kstat_open();
+ if (kc == NULL)
+ return PyErr_SetFromErrno(PyExc_OSError);;
+
+ k = kc->kc_chain;
+ while (k != NULL) {
+ if ((strncmp(k->ks_name, "cpu_stat", 8) == 0) && \
+ (kstat_read(kc, k, NULL) != -1) )
+ {
+ flag = 1;
+ cpu = (cpu_stat_t *) k->ks_data;
+ sin += cpu->cpu_vminfo.pgswapin; // num pages swapped in
+ sout += cpu->cpu_vminfo.pgswapout; // num pages swapped out
+ }
+ cpu_count += 1;
+ k = k->ks_next;
+ }
+ kstat_close(kc);
+ if (!flag) {
+ PyErr_SetString(PyExc_RuntimeError, "no swap device was found");
+ return NULL;
+ }
+ return Py_BuildValue("(II)", sin, sout);
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/sunos/net.c b/contrib/python/psutil/py3/psutil/arch/sunos/net.c
new file mode 100644
index 00000000000..1d1432b6db5
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/sunos/net.c
@@ -0,0 +1,539 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+#include <inet/mib2.h>
+#include <kstat.h>
+#include <netinet/in.h>
+#include <stdio.h>
+#include <stropts.h>
+#include <sys/fcntl.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <sys/sockio.h>
+#include <netinet/in.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <sys/stropts.h>
+#include <sys/tihdr.h>
+#include <net/if.h>
+#include <fcntl.h>
+
+#include "../../arch/all/init.h"
+
+
+PyObject *
+psutil_net_io_counters(PyObject *self, PyObject *args) {
+ kstat_ctl_t *kc = NULL;
+ kstat_t *ksp;
+ kstat_named_t *rbytes, *wbytes, *rpkts, *wpkts, *ierrs, *oerrs;
+ int ret;
+ int sock = -1;
+ struct lifreq ifr;
+
+ PyObject *py_retdict = PyDict_New();
+ PyObject *py_ifc_info = NULL;
+
+ if (py_retdict == NULL)
+ return NULL;
+ kc = kstat_open();
+ if (kc == NULL)
+ goto error;
+
+ sock = socket(AF_INET, SOCK_DGRAM, 0);
+ if (sock == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ ksp = kc->kc_chain;
+ while (ksp != NULL) {
+ if (ksp->ks_type != KSTAT_TYPE_NAMED)
+ goto next;
+ if (strcmp(ksp->ks_class, "net") != 0)
+ goto next;
+ // skip 'lo' (localhost) because it doesn't have the statistics we need
+ // and it makes kstat_data_lookup() fail
+ if (strcmp(ksp->ks_module, "lo") == 0)
+ goto next;
+
+ // check if this is a network interface by sending a ioctl
+ PSUTIL_STRNCPY(ifr.lifr_name, ksp->ks_name, sizeof(ifr.lifr_name));
+ ret = ioctl(sock, SIOCGLIFFLAGS, &ifr);
+ if (ret == -1)
+ goto next;
+
+ if (kstat_read(kc, ksp, NULL) == -1) {
+ errno = 0;
+ goto next;
+ }
+
+ rbytes = (kstat_named_t *)kstat_data_lookup(ksp, "rbytes");
+ wbytes = (kstat_named_t *)kstat_data_lookup(ksp, "obytes");
+ rpkts = (kstat_named_t *)kstat_data_lookup(ksp, "ipackets");
+ wpkts = (kstat_named_t *)kstat_data_lookup(ksp, "opackets");
+ ierrs = (kstat_named_t *)kstat_data_lookup(ksp, "ierrors");
+ oerrs = (kstat_named_t *)kstat_data_lookup(ksp, "oerrors");
+
+ if ((rbytes == NULL) || (wbytes == NULL) || (rpkts == NULL) ||
+ (wpkts == NULL) || (ierrs == NULL) || (oerrs == NULL))
+ {
+ PyErr_SetString(PyExc_RuntimeError, "kstat_data_lookup() failed");
+ goto error;
+ }
+
+ if (rbytes->data_type == KSTAT_DATA_UINT64)
+ {
+ py_ifc_info = Py_BuildValue("(KKKKIIii)",
+ wbytes->value.ui64,
+ rbytes->value.ui64,
+ wpkts->value.ui64,
+ rpkts->value.ui64,
+ ierrs->value.ui32,
+ oerrs->value.ui32,
+ 0, // dropin not supported
+ 0 // dropout not supported
+ );
+ }
+ else
+ {
+ py_ifc_info = Py_BuildValue("(IIIIIIii)",
+ wbytes->value.ui32,
+ rbytes->value.ui32,
+ wpkts->value.ui32,
+ rpkts->value.ui32,
+ ierrs->value.ui32,
+ oerrs->value.ui32,
+ 0, // dropin not supported
+ 0 // dropout not supported
+ );
+ }
+ if (!py_ifc_info)
+ goto error;
+ if (PyDict_SetItemString(py_retdict, ksp->ks_name, py_ifc_info))
+ goto error;
+ Py_CLEAR(py_ifc_info);
+ goto next;
+
+next:
+ ksp = ksp->ks_next;
+ }
+
+ kstat_close(kc);
+ close(sock);
+ return py_retdict;
+
+error:
+ Py_XDECREF(py_ifc_info);
+ Py_DECREF(py_retdict);
+ if (kc != NULL)
+ kstat_close(kc);
+ if (sock != -1) {
+ close(sock);
+ }
+ return NULL;
+}
+
+
+// Return stats about a particular network interface. Refs:
+// * https://github.com/dpaleino/wicd/blob/master/wicd/backends/be-ioctl.py
+// * http://www.i-scream.org/libstatgrab/
+PyObject*
+psutil_net_if_stats(PyObject* self, PyObject* args) {
+ kstat_ctl_t *kc = NULL;
+ kstat_t *ksp;
+ kstat_named_t *knp;
+ int ret;
+ int sock = -1;
+ int duplex;
+ int speed;
+
+ PyObject *py_retdict = PyDict_New();
+ PyObject *py_ifc_info = NULL;
+ PyObject *py_is_up = NULL;
+
+ if (py_retdict == NULL)
+ return NULL;
+ kc = kstat_open();
+ if (kc == NULL)
+ goto error;
+ sock = socket(AF_INET, SOCK_DGRAM, 0);
+ if (sock == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ for (ksp = kc->kc_chain; ksp; ksp = ksp->ks_next) {
+ if (strcmp(ksp->ks_class, "net") == 0) {
+ struct lifreq ifr;
+
+ kstat_read(kc, ksp, NULL);
+ if (ksp->ks_type != KSTAT_TYPE_NAMED)
+ continue;
+ if (strcmp(ksp->ks_class, "net") != 0)
+ continue;
+
+ PSUTIL_STRNCPY(ifr.lifr_name, ksp->ks_name, sizeof(ifr.lifr_name));
+ ret = ioctl(sock, SIOCGLIFFLAGS, &ifr);
+ if (ret == -1)
+ continue; // not a network interface
+
+ // is up?
+ if ((ifr.lifr_flags & IFF_UP) != 0) {
+ if ((knp = kstat_data_lookup(ksp, "link_up")) != NULL) {
+ if (knp->value.ui32 != 0u)
+ py_is_up = Py_True;
+ else
+ py_is_up = Py_False;
+ }
+ else {
+ py_is_up = Py_True;
+ }
+ }
+ else {
+ py_is_up = Py_False;
+ }
+ Py_INCREF(py_is_up);
+
+ // duplex
+ duplex = 0; // unknown
+ if ((knp = kstat_data_lookup(ksp, "link_duplex")) != NULL) {
+ if (knp->value.ui32 == 1)
+ duplex = 1; // half
+ else if (knp->value.ui32 == 2)
+ duplex = 2; // full
+ }
+
+ // speed
+ if ((knp = kstat_data_lookup(ksp, "ifspeed")) != NULL)
+ // expressed in bits per sec, we want mega bits per sec
+ speed = (int)knp->value.ui64 / 1000000;
+ else
+ speed = 0;
+
+ // mtu
+ ret = ioctl(sock, SIOCGLIFMTU, &ifr);
+ if (ret == -1)
+ goto error;
+
+ py_ifc_info = Py_BuildValue("(Oiii)", py_is_up, duplex, speed,
+ ifr.lifr_mtu);
+ if (!py_ifc_info)
+ goto error;
+ if (PyDict_SetItemString(py_retdict, ksp->ks_name, py_ifc_info))
+ goto error;
+ Py_CLEAR(py_ifc_info);
+ }
+ }
+
+ close(sock);
+ kstat_close(kc);
+ return py_retdict;
+
+error:
+ Py_XDECREF(py_is_up);
+ Py_XDECREF(py_ifc_info);
+ Py_DECREF(py_retdict);
+ if (sock != -1)
+ close(sock);
+ if (kc != NULL)
+ kstat_close(kc);
+ PyErr_SetFromErrno(PyExc_OSError);
+ return NULL;
+}
+
+
+/*
+ * Return TCP and UDP connections opened by process.
+ * UNIX sockets are excluded.
+ *
+ * Thanks to:
+ * https://github.com/DavidGriffith/finx/blob/master/
+ * nxsensor-3.5.0-1/src/sysdeps/solaris.c
+ * ...and:
+ * https://hg.java.net/hg/solaris~on-src/file/tip/usr/src/cmd/
+ * cmd-inet/usr.bin/netstat/netstat.c
+ */
+PyObject *
+psutil_net_connections(PyObject *self, PyObject *args) {
+ long pid;
+ int sd = 0;
+ mib2_tcpConnEntry_t tp;
+ mib2_udpEntry_t ude;
+#if defined(AF_INET6)
+ mib2_tcp6ConnEntry_t tp6;
+ mib2_udp6Entry_t ude6;
+#endif
+ char buf[512];
+ int i, flags, getcode, num_ent, state, ret;
+ char lip[INET6_ADDRSTRLEN], rip[INET6_ADDRSTRLEN];
+ int lport, rport;
+ int processed_pid;
+ int databuf_init = 0;
+ struct strbuf ctlbuf, databuf;
+ struct T_optmgmt_req tor = {0};
+ struct T_optmgmt_ack toa = {0};
+ struct T_error_ack tea = {0};
+ struct opthdr mibhdr = {0};
+
+ PyObject *py_retlist = PyList_New(0);
+ PyObject *py_tuple = NULL;
+ PyObject *py_laddr = NULL;
+ PyObject *py_raddr = NULL;
+
+ if (py_retlist == NULL)
+ return NULL;
+ if (! PyArg_ParseTuple(args, "l", &pid))
+ goto error;
+
+ sd = open("/dev/arp", O_RDWR);
+ if (sd == -1) {
+ PyErr_SetFromErrnoWithFilename(PyExc_OSError, "/dev/arp");
+ goto error;
+ }
+
+ ret = ioctl(sd, I_PUSH, "tcp");
+ if (ret == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+ ret = ioctl(sd, I_PUSH, "udp");
+ if (ret == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+ //
+ // OK, this mess is basically copied and pasted from nxsensor project
+ // which copied and pasted it from netstat source code, mibget()
+ // function. Also see:
+ // http://stackoverflow.com/questions/8723598/
+ tor.PRIM_type = T_SVR4_OPTMGMT_REQ;
+ tor.OPT_offset = sizeof (struct T_optmgmt_req);
+ tor.OPT_length = sizeof (struct opthdr);
+ tor.MGMT_flags = T_CURRENT;
+ mibhdr.level = MIB2_IP;
+ mibhdr.name = 0;
+
+ mibhdr.len = 1;
+ memcpy(buf, &tor, sizeof tor);
+ memcpy(buf + tor.OPT_offset, &mibhdr, sizeof mibhdr);
+
+ ctlbuf.buf = buf;
+ ctlbuf.len = tor.OPT_offset + tor.OPT_length;
+ flags = 0; // request to be sent in non-priority
+
+ if (putmsg(sd, &ctlbuf, (struct strbuf *)0, flags) == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ ctlbuf.maxlen = sizeof (buf);
+ for (;;) {
+ flags = 0;
+ getcode = getmsg(sd, &ctlbuf, (struct strbuf *)0, &flags);
+ memcpy(&toa, buf, sizeof toa);
+ memcpy(&tea, buf, sizeof tea);
+
+ if (getcode != MOREDATA ||
+ ctlbuf.len < (int)sizeof (struct T_optmgmt_ack) ||
+ toa.PRIM_type != T_OPTMGMT_ACK ||
+ toa.MGMT_flags != T_SUCCESS)
+ {
+ break;
+ }
+ if (ctlbuf.len >= (int)sizeof (struct T_error_ack) &&
+ tea.PRIM_type == T_ERROR_ACK)
+ {
+ PyErr_SetString(PyExc_RuntimeError, "ERROR_ACK");
+ goto error;
+ }
+ if (getcode == 0 &&
+ ctlbuf.len >= (int)sizeof (struct T_optmgmt_ack) &&
+ toa.PRIM_type == T_OPTMGMT_ACK &&
+ toa.MGMT_flags == T_SUCCESS)
+ {
+ PyErr_SetString(PyExc_RuntimeError, "ERROR_T_OPTMGMT_ACK");
+ goto error;
+ }
+
+ memset(&mibhdr, 0x0, sizeof(mibhdr));
+ memcpy(&mibhdr, buf + toa.OPT_offset, toa.OPT_length);
+
+ databuf.maxlen = mibhdr.len;
+ databuf.len = 0;
+ databuf.buf = (char *)malloc((int)mibhdr.len);
+ if (!databuf.buf) {
+ PyErr_NoMemory();
+ goto error;
+ }
+ databuf_init = 1;
+
+ flags = 0;
+ getcode = getmsg(sd, (struct strbuf *)0, &databuf, &flags);
+ if (getcode < 0) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ // TCPv4
+ if (mibhdr.level == MIB2_TCP && mibhdr.name == MIB2_TCP_13) {
+ num_ent = mibhdr.len / sizeof(mib2_tcpConnEntry_t);
+ for (i = 0; i < num_ent; i++) {
+ memcpy(&tp, databuf.buf + i * sizeof tp, sizeof tp);
+ processed_pid = tp.tcpConnCreationProcess;
+ if (pid != -1 && processed_pid != pid)
+ continue;
+ // construct local/remote addresses
+ inet_ntop(AF_INET, &tp.tcpConnLocalAddress, lip, sizeof(lip));
+ inet_ntop(AF_INET, &tp.tcpConnRemAddress, rip, sizeof(rip));
+ lport = tp.tcpConnLocalPort;
+ rport = tp.tcpConnRemPort;
+
+ // construct python tuple/list
+ py_laddr = Py_BuildValue("(si)", lip, lport);
+ if (!py_laddr)
+ goto error;
+ if (rport != 0)
+ py_raddr = Py_BuildValue("(si)", rip, rport);
+ else {
+ py_raddr = Py_BuildValue("()");
+ }
+ if (!py_raddr)
+ goto error;
+ state = tp.tcpConnEntryInfo.ce_state;
+
+ // add item
+ py_tuple = Py_BuildValue("(iiiNNiI)", -1, AF_INET, SOCK_STREAM,
+ py_laddr, py_raddr, state,
+ processed_pid);
+ if (!py_tuple)
+ goto error;
+ if (PyList_Append(py_retlist, py_tuple))
+ goto error;
+ Py_CLEAR(py_tuple);
+ }
+ }
+#if defined(AF_INET6)
+ // TCPv6
+ else if (mibhdr.level == MIB2_TCP6 && mibhdr.name == MIB2_TCP6_CONN)
+ {
+ num_ent = mibhdr.len / sizeof(mib2_tcp6ConnEntry_t);
+
+ for (i = 0; i < num_ent; i++) {
+ memcpy(&tp6, databuf.buf + i * sizeof tp6, sizeof tp6);
+ processed_pid = tp6.tcp6ConnCreationProcess;
+ if (pid != -1 && processed_pid != pid)
+ continue;
+ // construct local/remote addresses
+ inet_ntop(AF_INET6, &tp6.tcp6ConnLocalAddress, lip, sizeof(lip));
+ inet_ntop(AF_INET6, &tp6.tcp6ConnRemAddress, rip, sizeof(rip));
+ lport = tp6.tcp6ConnLocalPort;
+ rport = tp6.tcp6ConnRemPort;
+
+ // construct python tuple/list
+ py_laddr = Py_BuildValue("(si)", lip, lport);
+ if (!py_laddr)
+ goto error;
+ if (rport != 0)
+ py_raddr = Py_BuildValue("(si)", rip, rport);
+ else
+ py_raddr = Py_BuildValue("()");
+ if (!py_raddr)
+ goto error;
+ state = tp6.tcp6ConnEntryInfo.ce_state;
+
+ // add item
+ py_tuple = Py_BuildValue("(iiiNNiI)", -1, AF_INET6, SOCK_STREAM,
+ py_laddr, py_raddr, state, processed_pid);
+ if (!py_tuple)
+ goto error;
+ if (PyList_Append(py_retlist, py_tuple))
+ goto error;
+ Py_CLEAR(py_tuple);
+ }
+ }
+#endif
+ // UDPv4
+ else if (mibhdr.level == MIB2_UDP && mibhdr.name == MIB2_UDP_ENTRY) {
+ num_ent = mibhdr.len / sizeof(mib2_udpEntry_t);
+ assert(num_ent * sizeof(mib2_udpEntry_t) == mibhdr.len);
+ for (i = 0; i < num_ent; i++) {
+ memcpy(&ude, databuf.buf + i * sizeof ude, sizeof ude);
+ processed_pid = ude.udpCreationProcess;
+ if (pid != -1 && processed_pid != pid)
+ continue;
+ // XXX Very ugly hack! It seems we get here only the first
+ // time we bump into a UDPv4 socket. PID is a very high
+ // number (clearly impossible) and the address does not
+ // belong to any valid interface. Not sure what else
+ // to do other than skipping.
+ if (processed_pid > 131072)
+ continue;
+ inet_ntop(AF_INET, &ude.udpLocalAddress, lip, sizeof(lip));
+ lport = ude.udpLocalPort;
+ py_laddr = Py_BuildValue("(si)", lip, lport);
+ if (!py_laddr)
+ goto error;
+ py_raddr = Py_BuildValue("()");
+ if (!py_raddr)
+ goto error;
+ py_tuple = Py_BuildValue("(iiiNNiI)", -1, AF_INET, SOCK_DGRAM,
+ py_laddr, py_raddr, PSUTIL_CONN_NONE,
+ processed_pid);
+ if (!py_tuple)
+ goto error;
+ if (PyList_Append(py_retlist, py_tuple))
+ goto error;
+ Py_CLEAR(py_tuple);
+ }
+ }
+#if defined(AF_INET6)
+ // UDPv6
+ else if (mibhdr.level == MIB2_UDP6 ||
+ mibhdr.level == MIB2_UDP6_ENTRY)
+ {
+ num_ent = mibhdr.len / sizeof(mib2_udp6Entry_t);
+ for (i = 0; i < num_ent; i++) {
+ memcpy(&ude6, databuf.buf + i * sizeof ude6, sizeof ude6);
+ processed_pid = ude6.udp6CreationProcess;
+ if (pid != -1 && processed_pid != pid)
+ continue;
+ inet_ntop(AF_INET6, &ude6.udp6LocalAddress, lip, sizeof(lip));
+ lport = ude6.udp6LocalPort;
+ py_laddr = Py_BuildValue("(si)", lip, lport);
+ if (!py_laddr)
+ goto error;
+ py_raddr = Py_BuildValue("()");
+ if (!py_raddr)
+ goto error;
+ py_tuple = Py_BuildValue("(iiiNNiI)", -1, AF_INET6, SOCK_DGRAM,
+ py_laddr, py_raddr, PSUTIL_CONN_NONE,
+ processed_pid);
+ if (!py_tuple)
+ goto error;
+ if (PyList_Append(py_retlist, py_tuple))
+ goto error;
+ Py_CLEAR(py_tuple);
+ }
+ }
+#endif
+ free(databuf.buf);
+ }
+
+ close(sd);
+ return py_retlist;
+
+error:
+ Py_XDECREF(py_tuple);
+ Py_XDECREF(py_laddr);
+ Py_XDECREF(py_raddr);
+ Py_DECREF(py_retlist);
+ if (databuf_init == 1)
+ free(databuf.buf);
+ if (sd != 0)
+ close(sd);
+ return NULL;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/sunos/proc.c b/contrib/python/psutil/py3/psutil/arch/sunos/proc.c
new file mode 100644
index 00000000000..f892353f0b2
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/sunos/proc.c
@@ -0,0 +1,585 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+
+#include <fcntl.h>
+#include <libproc.h>
+
+#include "../../arch/all/init.h"
+
+#define PSUTIL_TV2DOUBLE(t) (((t).tv_nsec * 0.000000001) + (t).tv_sec)
+
+
+// Read a file content and fills a C structure with it.
+static int
+psutil_file_to_struct(char *path, void *fstruct, size_t size) {
+ int fd;
+ ssize_t nbytes;
+ fd = open(path, O_RDONLY);
+ if (fd == -1) {
+ PyErr_SetFromErrnoWithFilename(PyExc_OSError, path);
+ return 0;
+ }
+ nbytes = read(fd, fstruct, size);
+ if (nbytes == -1) {
+ close(fd);
+ PyErr_SetFromErrno(PyExc_OSError);
+ return 0;
+ }
+ if (nbytes != (ssize_t) size) {
+ close(fd);
+ PyErr_SetString(
+ PyExc_RuntimeError, "read() file structure size mismatch");
+ return 0;
+ }
+ close(fd);
+ return nbytes;
+}
+
+
+/*
+ * Return process ppid, rss, vms, ctime, nice, nthreads, status and tty
+ * as a Python tuple.
+ */
+PyObject *
+psutil_proc_basic_info(PyObject *self, PyObject *args) {
+ int pid;
+ char path[1000];
+ psinfo_t info;
+ const char *procfs_path;
+
+ if (! PyArg_ParseTuple(args, "is", &pid, &procfs_path))
+ return NULL;
+
+ sprintf(path, "%s/%i/psinfo", procfs_path, pid);
+ if (! psutil_file_to_struct(path, (void *)&info, sizeof(info)))
+ return NULL;
+ return Py_BuildValue(
+ "ikkdiiikiiii",
+ info.pr_ppid, // parent pid
+ info.pr_rssize, // rss
+ info.pr_size, // vms
+ PSUTIL_TV2DOUBLE(info.pr_start), // create time
+ info.pr_lwp.pr_nice, // nice
+ info.pr_nlwp, // no. of threads
+ info.pr_lwp.pr_state, // status code
+ info.pr_ttydev, // tty nr
+ (int)info.pr_uid, // real user id
+ (int)info.pr_euid, // effective user id
+ (int)info.pr_gid, // real group id
+ (int)info.pr_egid // effective group id
+ );
+}
+
+
+/*
+ * Return process name and args as a Python tuple.
+ */
+PyObject *
+psutil_proc_name_and_args(PyObject *self, PyObject *args) {
+ int pid;
+ char path[1000];
+ psinfo_t info;
+ const char *procfs_path;
+ size_t i;
+ size_t argc;
+ char **argv = NULL;
+ PyObject *py_name = NULL;
+ PyObject *py_sep = NULL;
+ PyObject *py_arg = NULL;
+ PyObject *py_args_str = NULL;
+ PyObject *py_args_list = NULL;
+ PyObject *py_rettuple = NULL;
+
+ if (! PyArg_ParseTuple(args, "is", &pid, &procfs_path))
+ return NULL;
+ sprintf(path, "%s/%i/psinfo", procfs_path, pid);
+ if (! psutil_file_to_struct(path, (void *)&info, sizeof(info)))
+ return NULL;
+
+ py_name = PyUnicode_DecodeFSDefault(info.pr_fname);
+ if (!py_name)
+ goto error;
+
+ /* SunOS truncates arguments to length PRARGSZ and has them space-separated.
+ * The only way to retrieve full properly-split command line is to parse process memory */
+ argv = psutil_read_raw_args(info, procfs_path, &argc);
+ if (argv) {
+ py_args_list = PyList_New(argc);
+ if (!py_args_list)
+ goto error;
+
+ // iterate through arguments
+ for (i = 0; i < argc; i++) {
+ py_arg = PyUnicode_DecodeFSDefault(argv[i]);
+ if (!py_arg) {
+ Py_DECREF(py_args_list);
+ py_args_list = NULL;
+ break;
+ }
+
+ if (PyList_SetItem(py_args_list, i, py_arg))
+ goto error;
+
+ py_arg = NULL;
+ }
+
+ psutil_free_cstrings_array(argv, argc);
+ }
+
+ /* If we can't read process memory or can't decode the result
+ * then return args from /proc. */
+ if (!py_args_list) {
+ PyErr_Clear();
+ py_args_str = PyUnicode_DecodeFSDefault(info.pr_psargs);
+ if (!py_args_str)
+ goto error;
+
+ py_sep = PyUnicode_FromString(" ");
+ if (!py_sep)
+ goto error;
+
+ py_args_list = PyUnicode_Split(py_args_str, py_sep, -1);
+ if (!py_args_list)
+ goto error;
+
+ Py_XDECREF(py_sep);
+ Py_XDECREF(py_args_str);
+ }
+
+ py_rettuple = Py_BuildValue("OO", py_name, py_args_list);
+ if (!py_rettuple)
+ goto error;
+
+ Py_DECREF(py_name);
+ Py_DECREF(py_args_list);
+
+ return py_rettuple;
+
+error:
+ psutil_free_cstrings_array(argv, argc);
+ Py_XDECREF(py_name);
+ Py_XDECREF(py_args_list);
+ Py_XDECREF(py_sep);
+ Py_XDECREF(py_arg);
+ Py_XDECREF(py_args_str);
+ Py_XDECREF(py_rettuple);
+ return NULL;
+}
+
+
+/*
+ * Return process environ block.
+ */
+PyObject *
+psutil_proc_environ(PyObject *self, PyObject *args) {
+ int pid;
+ char path[1000];
+ psinfo_t info;
+ const char *procfs_path;
+ char **env = NULL;
+ ssize_t env_count = -1;
+ char *dm;
+ int i = 0;
+ PyObject *py_envname = NULL;
+ PyObject *py_envval = NULL;
+ PyObject *py_retdict = PyDict_New();
+
+ if (! py_retdict)
+ return PyErr_NoMemory();
+
+ if (! PyArg_ParseTuple(args, "is", &pid, &procfs_path))
+ return NULL;
+
+ sprintf(path, "%s/%i/psinfo", procfs_path, pid);
+ if (! psutil_file_to_struct(path, (void *)&info, sizeof(info)))
+ goto error;
+
+ if (! info.pr_envp) {
+ AccessDenied("/proc/pid/psinfo struct not set");
+ goto error;
+ }
+
+ env = psutil_read_raw_env(info, procfs_path, &env_count);
+ if (! env && env_count != 0)
+ goto error;
+
+ for (i=0; i<env_count; i++) {
+ if (! env[i])
+ break;
+
+ dm = strchr(env[i], '=');
+ if (! dm)
+ continue;
+
+ *dm = '\0';
+
+ py_envname = PyUnicode_DecodeFSDefault(env[i]);
+ if (! py_envname)
+ goto error;
+
+ py_envval = PyUnicode_DecodeFSDefault(dm+1);
+ if (! py_envname)
+ goto error;
+
+ if (PyDict_SetItem(py_retdict, py_envname, py_envval) < 0)
+ goto error;
+
+ Py_CLEAR(py_envname);
+ Py_CLEAR(py_envval);
+ }
+
+ psutil_free_cstrings_array(env, env_count);
+ return py_retdict;
+
+ error:
+ if (env && env_count >= 0)
+ psutil_free_cstrings_array(env, env_count);
+
+ Py_XDECREF(py_envname);
+ Py_XDECREF(py_envval);
+ Py_XDECREF(py_retdict);
+ return NULL;
+}
+
+
+/*
+ * Return process user and system CPU times as a Python tuple.
+ */
+PyObject *
+psutil_proc_cpu_times(PyObject *self, PyObject *args) {
+ int pid;
+ char path[1000];
+ pstatus_t info;
+ const char *procfs_path;
+
+ if (! PyArg_ParseTuple(args, "is", &pid, &procfs_path))
+ return NULL;
+ sprintf(path, "%s/%i/status", procfs_path, pid);
+ if (! psutil_file_to_struct(path, (void *)&info, sizeof(info)))
+ return NULL;
+ // results are more precise than os.times()
+ return Py_BuildValue(
+ "(dddd)",
+ PSUTIL_TV2DOUBLE(info.pr_utime),
+ PSUTIL_TV2DOUBLE(info.pr_stime),
+ PSUTIL_TV2DOUBLE(info.pr_cutime),
+ PSUTIL_TV2DOUBLE(info.pr_cstime)
+ );
+}
+
+
+/*
+ * Return what CPU the process is running on.
+ */
+PyObject *
+psutil_proc_cpu_num(PyObject *self, PyObject *args) {
+ int fd = -1;
+ int pid;
+ char path[1000];
+ struct prheader header;
+ struct lwpsinfo *lwp = NULL;
+ int nent;
+ int size;
+ int proc_num;
+ ssize_t nbytes;
+ const char *procfs_path;
+
+ if (! PyArg_ParseTuple(args, "is", &pid, &procfs_path))
+ return NULL;
+
+ sprintf(path, "%s/%i/lpsinfo", procfs_path, pid);
+ fd = open(path, O_RDONLY);
+ if (fd == -1) {
+ PyErr_SetFromErrnoWithFilename(PyExc_OSError, path);
+ return NULL;
+ }
+
+ // read header
+ nbytes = pread(fd, &header, sizeof(header), 0);
+ if (nbytes == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+ if (nbytes != sizeof(header)) {
+ PyErr_SetString(
+ PyExc_RuntimeError, "read() file structure size mismatch");
+ goto error;
+ }
+
+ // malloc
+ nent = header.pr_nent;
+ size = header.pr_entsize * nent;
+ lwp = malloc(size);
+ if (lwp == NULL) {
+ PyErr_NoMemory();
+ goto error;
+ }
+
+ // read the rest
+ nbytes = pread(fd, lwp, size, sizeof(header));
+ if (nbytes == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+ if (nbytes != size) {
+ PyErr_SetString(
+ PyExc_RuntimeError, "read() file structure size mismatch");
+ goto error;
+ }
+
+ // done
+ proc_num = lwp->pr_onpro;
+ close(fd);
+ free(lwp);
+ return Py_BuildValue("i", proc_num);
+
+error:
+ if (fd != -1)
+ close(fd);
+ free(lwp);
+ return NULL;
+}
+
+
+/*
+ * Return process uids/gids as a Python tuple.
+ */
+PyObject *
+psutil_proc_cred(PyObject *self, PyObject *args) {
+ int pid;
+ char path[1000];
+ prcred_t info;
+ const char *procfs_path;
+
+ if (! PyArg_ParseTuple(args, "is", &pid, &procfs_path))
+ return NULL;
+ sprintf(path, "%s/%i/cred", procfs_path, pid);
+ if (! psutil_file_to_struct(path, (void *)&info, sizeof(info)))
+ return NULL;
+ return Py_BuildValue("iiiiii",
+ info.pr_ruid, info.pr_euid, info.pr_suid,
+ info.pr_rgid, info.pr_egid, info.pr_sgid);
+}
+
+
+/*
+ * Return process voluntary and involuntary context switches as a Python tuple.
+ */
+PyObject *
+psutil_proc_num_ctx_switches(PyObject *self, PyObject *args) {
+ int pid;
+ char path[1000];
+ prusage_t info;
+ const char *procfs_path;
+
+ if (! PyArg_ParseTuple(args, "is", &pid, &procfs_path))
+ return NULL;
+ sprintf(path, "%s/%i/usage", procfs_path, pid);
+ if (! psutil_file_to_struct(path, (void *)&info, sizeof(info)))
+ return NULL;
+ return Py_BuildValue("kk", info.pr_vctx, info.pr_ictx);
+}
+
+
+/*
+ * Process IO counters.
+ *
+ * Commented out and left here as a reminder. Apparently we cannot
+ * retrieve process IO stats because:
+ * - 'pr_ioch' is a sum of chars read and written, with no distinction
+ * - 'pr_inblk' and 'pr_oublk', which should be the number of bytes
+ * read and written, hardly increase and according to:
+ * http://www.brendangregg.com/Solaris/paper_diskubyp1.pdf
+ * ...they should be meaningless anyway.
+ *
+PyObject*
+proc_io_counters(PyObject* self, PyObject* args) {
+ int pid;
+ char path[1000];
+ prusage_t info;
+ const char *procfs_path;
+
+ if (! PyArg_ParseTuple(args, "is", &pid, &procfs_path))
+ return NULL;
+ sprintf(path, "%s/%i/usage", procfs_path, pid);
+ if (! psutil_file_to_struct(path, (void *)&info, sizeof(info)))
+ return NULL;
+
+ // On Solaris we only have 'pr_ioch' which accounts for bytes read
+ // *and* written.
+ // 'pr_inblk' and 'pr_oublk' should be expressed in blocks of
+ // 8KB according to:
+ // http://www.brendangregg.com/Solaris/paper_diskubyp1.pdf (pag. 8)
+ return Py_BuildValue("kkkk",
+ info.pr_ioch,
+ info.pr_ioch,
+ info.pr_inblk,
+ info.pr_oublk);
+}
+*/
+
+
+/*
+ * Return information about a given process thread.
+ */
+PyObject *
+psutil_proc_query_thread(PyObject *self, PyObject *args) {
+ int pid, tid;
+ char path[1000];
+ lwpstatus_t info;
+ const char *procfs_path;
+
+ if (! PyArg_ParseTuple(args, "iis", &pid, &tid, &procfs_path))
+ return NULL;
+ sprintf(path, "%s/%i/lwp/%i/lwpstatus", procfs_path, pid, tid);
+ if (! psutil_file_to_struct(path, (void *)&info, sizeof(info)))
+ return NULL;
+ return Py_BuildValue("dd",
+ PSUTIL_TV2DOUBLE(info.pr_utime),
+ PSUTIL_TV2DOUBLE(info.pr_stime));
+}
+
+
+/*
+ * Return process memory mappings.
+ */
+PyObject *
+psutil_proc_memory_maps(PyObject *self, PyObject *args) {
+ int pid;
+ int fd = -1;
+ char path[1000];
+ char perms[10];
+ const char *name;
+ struct stat st;
+ pstatus_t status;
+
+ prxmap_t *xmap = NULL, *p;
+ off_t size;
+ size_t nread;
+ int nmap;
+ uintptr_t pr_addr_sz;
+ uintptr_t stk_base_sz, brk_base_sz;
+ const char *procfs_path;
+
+ PyObject *py_tuple = NULL;
+ PyObject *py_path = NULL;
+ PyObject *py_retlist = PyList_New(0);
+
+ if (py_retlist == NULL)
+ return NULL;
+ if (! PyArg_ParseTuple(args, "is", &pid, &procfs_path))
+ goto error;
+
+ sprintf(path, "%s/%i/status", procfs_path, pid);
+ if (! psutil_file_to_struct(path, (void *)&status, sizeof(status)))
+ goto error;
+
+ sprintf(path, "%s/%i/xmap", procfs_path, pid);
+ if (stat(path, &st) == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ size = st.st_size;
+
+ fd = open(path, O_RDONLY);
+ if (fd == -1) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto error;
+ }
+
+ xmap = (prxmap_t *)malloc(size);
+ if (xmap == NULL) {
+ PyErr_NoMemory();
+ goto error;
+ }
+
+ nread = pread(fd, xmap, size, 0);
+ nmap = nread / sizeof(prxmap_t);
+ p = xmap;
+
+ while (nmap) {
+ nmap -= 1;
+ if (p == NULL) {
+ p += 1;
+ continue;
+ }
+
+ perms[0] = '\0';
+ pr_addr_sz = p->pr_vaddr + p->pr_size;
+
+ // perms
+ sprintf(perms, "%c%c%c%c", p->pr_mflags & MA_READ ? 'r' : '-',
+ p->pr_mflags & MA_WRITE ? 'w' : '-',
+ p->pr_mflags & MA_EXEC ? 'x' : '-',
+ p->pr_mflags & MA_SHARED ? 's' : '-');
+
+ // name
+ if (strlen(p->pr_mapname) > 0) {
+ name = p->pr_mapname;
+ }
+ else {
+ if ((p->pr_mflags & MA_ISM) || (p->pr_mflags & MA_SHM)) {
+ name = "[shmid]";
+ }
+ else {
+ stk_base_sz = status.pr_stkbase + status.pr_stksize;
+ brk_base_sz = status.pr_brkbase + status.pr_brksize;
+
+ if ((pr_addr_sz > status.pr_stkbase) &&
+ (p->pr_vaddr < stk_base_sz)) {
+ name = "[stack]";
+ }
+ else if ((p->pr_mflags & MA_ANON) && \
+ (pr_addr_sz > status.pr_brkbase) && \
+ (p->pr_vaddr < brk_base_sz)) {
+ name = "[heap]";
+ }
+ else {
+ name = "[anon]";
+ }
+ }
+ }
+
+ py_path = PyUnicode_DecodeFSDefault(name);
+ if (! py_path)
+ goto error;
+ py_tuple = Py_BuildValue(
+ "kksOkkk",
+ (unsigned long)p->pr_vaddr,
+ (unsigned long)pr_addr_sz,
+ perms,
+ py_path,
+ (unsigned long)p->pr_rss * p->pr_pagesize,
+ (unsigned long)p->pr_anon * p->pr_pagesize,
+ (unsigned long)p->pr_locked * p->pr_pagesize);
+ if (!py_tuple)
+ goto error;
+ if (PyList_Append(py_retlist, py_tuple))
+ goto error;
+ Py_CLEAR(py_path);
+ Py_CLEAR(py_tuple);
+
+ // increment pointer
+ p += 1;
+ }
+
+ close(fd);
+ free(xmap);
+ return py_retlist;
+
+error:
+ if (fd != -1)
+ close(fd);
+ Py_XDECREF(py_tuple);
+ Py_XDECREF(py_path);
+ Py_DECREF(py_retlist);
+ if (xmap != NULL)
+ free(xmap);
+ return NULL;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/sunos/sys.c b/contrib/python/psutil/py3/psutil/arch/sunos/sys.c
new file mode 100644
index 00000000000..d9f3ae4bfbf
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/sunos/sys.c
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+
+#include <utmpx.h>
+
+#include "../../arch/all/init.h"
+
+
+PyObject *
+psutil_boot_time(PyObject *self, PyObject *args) {
+ float boot_time = 0.0;
+ struct utmpx *ut;
+
+ UTXENT_MUTEX_LOCK();
+ setutxent();
+ while (NULL != (ut = getutxent())) {
+ if (ut->ut_type == BOOT_TIME) {
+ boot_time = (float)ut->ut_tv.tv_sec;
+ break;
+ }
+ }
+ endutxent();
+ UTXENT_MUTEX_UNLOCK();
+ if (fabs(boot_time) < 0.000001) {
+ /* could not find BOOT_TIME in getutxent loop */
+ PyErr_SetString(PyExc_RuntimeError, "can't determine boot time");
+ return NULL;
+ }
+ return Py_BuildValue("f", boot_time);
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/cpu.c b/contrib/python/psutil/py3/psutil/arch/windows/cpu.c
index 9d89e5bb6c3..6d70ab37cc8 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/cpu.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/cpu.c
@@ -8,7 +8,7 @@
#include <windows.h>
#include <PowrProf.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
/*
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/cpu.h b/contrib/python/psutil/py3/psutil/arch/windows/cpu.h
deleted file mode 100644
index 1ef3ff1f04e..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/cpu.h
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_cpu_count_logical(PyObject *self, PyObject *args);
-PyObject *psutil_cpu_count_cores(PyObject *self, PyObject *args);
-PyObject *psutil_cpu_freq(PyObject *self, PyObject *args);
-PyObject *psutil_cpu_stats(PyObject *self, PyObject *args);
-PyObject *psutil_cpu_times(PyObject *self, PyObject *args);
-PyObject *psutil_per_cpu_times(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/disk.c b/contrib/python/psutil/py3/psutil/arch/windows/disk.c
index d0405a98f84..625a975f917 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/disk.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/disk.c
@@ -9,7 +9,7 @@
#include <tchar.h>
#include <winioctl.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
#ifndef _ARRAYSIZE
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/disk.h b/contrib/python/psutil/py3/psutil/arch/windows/disk.h
deleted file mode 100644
index 28bed22b545..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/disk.h
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_disk_io_counters(PyObject *self, PyObject *args);
-PyObject *psutil_disk_partitions(PyObject *self, PyObject *args);
-PyObject *psutil_disk_usage(PyObject *self, PyObject *args);
-PyObject *psutil_QueryDosDevice(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/_psutil_common.c b/contrib/python/psutil/py3/psutil/arch/windows/init.c
index 2a56ae0f4aa..b410d5670f3 100644
--- a/contrib/python/psutil/py3/psutil/_psutil_common.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/init.c
@@ -2,19 +2,19 @@
* Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
- *
- * Routines common to all platforms.
*/
#include <Python.h>
-#define PSUTIL_MAYBE_EXTERN
-#include "_psutil_common.h"
+#include <windows.h>
-// ====================================================================
-// --- Global vars
-// ====================================================================
+#include "../../arch/all/init.h"
+#include "ntextapi.h"
-int PSUTIL_DEBUG = 0;
+
+// Needed to make these globally visible.
+int PSUTIL_WINVER;
+SYSTEM_INFO PSUTIL_SYSTEM_INFO;
+CRITICAL_SECTION PSUTIL_CRITICAL_SECTION;
// ====================================================================
@@ -22,7 +22,7 @@ int PSUTIL_DEBUG = 0;
// ====================================================================
// PyPy on Windows. Missing APIs added in PyPy 7.3.14.
-#if defined(PSUTIL_WINDOWS) && defined(PYPY_VERSION)
+#if defined(PYPY_VERSION)
#if !defined(PyErr_SetFromWindowsErrWithFilename)
PyObject *
PyErr_SetFromWindowsErrWithFilename(int winerr, const char *filename) {
@@ -61,175 +61,55 @@ error:
#if !defined(PyErr_SetExcFromWindowsErrWithFilenameObject)
PyObject *
-PyErr_SetExcFromWindowsErrWithFilenameObject(PyObject *type,
- int ierr,
- PyObject *filename) {
+PyErr_SetExcFromWindowsErrWithFilenameObject(
+ PyObject *type, int ierr, PyObject *filename)
+{
// Original function is too complex. Just raise OSError without
// filename.
return PyErr_SetFromWindowsErrWithFilename(ierr, NULL);
}
#endif // !defined(PyErr_SetExcFromWindowsErrWithFilenameObject)
-#endif // defined(PSUTIL_WINDOWS) && defined(PYPY_VERSION)
+#endif // defined(PYPY_VERSION)
// ====================================================================
-// --- Custom exceptions
+// --- Utils
// ====================================================================
-/*
- * Same as PyErr_SetFromErrno(0) but adds the syscall to the exception
- * message.
- */
-PyObject *
-psutil_PyErr_SetFromOSErrnoWithSyscall(const char *syscall) {
+// Convert a NTSTATUS value to a Win32 error code and set the proper
+// Python exception.
+PVOID
+psutil_SetFromNTStatusErr(NTSTATUS status, const char *syscall) {
+ ULONG err;
char fullmsg[1024];
-#ifdef PSUTIL_WINDOWS
- DWORD dwLastError = GetLastError();
- sprintf(fullmsg, "(originated from %s)", syscall);
- PyErr_SetFromWindowsErrWithFilename(dwLastError, fullmsg);
-#else
- PyObject *exc;
- sprintf(fullmsg, "%s (originated from %s)", strerror(errno), syscall);
- exc = PyObject_CallFunction(PyExc_OSError, "(is)", errno, fullmsg);
- PyErr_SetObject(PyExc_OSError, exc);
- Py_XDECREF(exc);
-#endif
- return NULL;
-}
-
-
-/*
- * Set OSError(errno=ESRCH, strerror="No such process (originated from")
- * Python exception.
- */
-PyObject *
-NoSuchProcess(const char *syscall) {
- PyObject *exc;
- char msg[1024];
-
- sprintf(msg, "assume no such process (originated from %s)", syscall);
- exc = PyObject_CallFunction(PyExc_OSError, "(is)", ESRCH, msg);
- PyErr_SetObject(PyExc_OSError, exc);
- Py_XDECREF(exc);
- return NULL;
-}
-
-
-/*
- * Set OSError(errno=EACCES, strerror="Permission denied" (originated from ...)
- * Python exception.
- */
-PyObject *
-AccessDenied(const char *syscall) {
- PyObject *exc;
- char msg[1024];
-
- sprintf(msg, "assume access denied (originated from %s)", syscall);
- exc = PyObject_CallFunction(PyExc_OSError, "(is)", EACCES, msg);
- PyErr_SetObject(PyExc_OSError, exc);
- Py_XDECREF(exc);
- return NULL;
-}
-
-/*
- * Raise OverflowError if Python int value overflowed when converting to pid_t.
- * Raise ValueError if Python int value is negative.
- * Otherwise, return None.
- */
-PyObject *
-psutil_check_pid_range(PyObject *self, PyObject *args) {
-#ifdef PSUTIL_WINDOWS
- DWORD pid;
-#else
- pid_t pid;
-#endif
-
- if (!PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
- return NULL;
- if (pid < 0) {
- PyErr_SetString(PyExc_ValueError, "pid must be a positive integer");
- return NULL;
- }
- Py_RETURN_NONE;
-}
-
-// Enable or disable PSUTIL_DEBUG messages.
-PyObject *
-psutil_set_debug(PyObject *self, PyObject *args) {
- PyObject *value;
- int x;
-
- if (!PyArg_ParseTuple(args, "O", &value))
- return NULL;
- x = PyObject_IsTrue(value);
- if (x < 0) {
- return NULL;
- }
- else if (x == 0) {
- PSUTIL_DEBUG = 0;
- }
- else {
- PSUTIL_DEBUG = 1;
- }
- Py_RETURN_NONE;
-}
-
-
-// ============================================================================
-// Utility functions (BSD)
-// ============================================================================
-
-#if defined(PSUTIL_FREEBSD) || defined(PSUTIL_OPENBSD) || defined(PSUTIL_NETBSD)
-void
-convert_kvm_err(const char *syscall, char *errbuf) {
- char fullmsg[8192];
-
- sprintf(fullmsg, "(originated from %s: %s)", syscall, errbuf);
- if (strstr(errbuf, "Permission denied") != NULL)
- AccessDenied(fullmsg);
- else if (strstr(errbuf, "Operation not permitted") != NULL)
- AccessDenied(fullmsg);
+ if (NT_NTWIN32(status))
+ err = WIN32_FROM_NTSTATUS(status);
else
- PyErr_Format(PyExc_RuntimeError, fullmsg);
+ err = RtlNtStatusToDosErrorNoTeb(status);
+ // if (GetLastError() != 0)
+ // err = GetLastError();
+ sprintf(fullmsg, "(originated from %s)", syscall);
+ return PyErr_SetFromWindowsErrWithFilename(err, fullmsg);
}
-#endif
-
-// ====================================================================
-// --- macOS
-// ====================================================================
-
-#ifdef PSUTIL_OSX
-#include <mach/mach_time.h>
-
-struct mach_timebase_info PSUTIL_MACH_TIMEBASE_INFO;
-#endif
-
-// ====================================================================
-// --- Windows
-// ====================================================================
-
-#ifdef PSUTIL_WINDOWS
-#include <windows.h>
-
-// Needed to make these globally visible.
-int PSUTIL_WINVER;
-SYSTEM_INFO PSUTIL_SYSTEM_INFO;
-CRITICAL_SECTION PSUTIL_CRITICAL_SECTION;
// A wrapper around GetModuleHandle and GetProcAddress.
PVOID
-psutil_GetProcAddress(LPCSTR libname, LPCSTR procname) {
+psutil_GetProcAddress(LPCSTR libname, LPCSTR apiname) {
HMODULE mod;
FARPROC addr;
if ((mod = GetModuleHandleA(libname)) == NULL) {
+ psutil_debug(
+ "%s module not supported (needed for %s)", libname, apiname
+ );
PyErr_SetFromWindowsErrWithFilename(0, libname);
return NULL;
}
- if ((addr = GetProcAddress(mod, procname)) == NULL) {
- PyErr_SetFromWindowsErrWithFilename(0, procname);
+ if ((addr = GetProcAddress(mod, apiname)) == NULL) {
+ psutil_debug("%s -> %s API not supported", libname, apiname);
+ PyErr_SetFromWindowsErrWithFilename(0, apiname);
return NULL;
}
return addr;
@@ -238,7 +118,7 @@ psutil_GetProcAddress(LPCSTR libname, LPCSTR procname) {
// A wrapper around LoadLibrary and GetProcAddress.
PVOID
-psutil_GetProcAddressFromLib(LPCSTR libname, LPCSTR procname) {
+psutil_GetProcAddressFromLib(LPCSTR libname, LPCSTR apiname) {
HMODULE mod;
FARPROC addr;
@@ -246,11 +126,13 @@ psutil_GetProcAddressFromLib(LPCSTR libname, LPCSTR procname) {
mod = LoadLibraryA(libname);
Py_END_ALLOW_THREADS
if (mod == NULL) {
+ psutil_debug("%s lib not supported (needed for %s)", libname, apiname);
PyErr_SetFromWindowsErrWithFilename(0, libname);
return NULL;
}
- if ((addr = GetProcAddress(mod, procname)) == NULL) {
- PyErr_SetFromWindowsErrWithFilename(0, procname);
+ if ((addr = GetProcAddress(mod, apiname)) == NULL) {
+ psutil_debug("%s -> %s not supported", libname, apiname);
+ PyErr_SetFromWindowsErrWithFilename(0, apiname);
FreeLibrary(mod);
return NULL;
}
@@ -260,87 +142,112 @@ psutil_GetProcAddressFromLib(LPCSTR libname, LPCSTR procname) {
}
-/*
- * Convert a NTSTATUS value to a Win32 error code and set the proper
- * Python exception.
- */
-PVOID
-psutil_SetFromNTStatusErr(NTSTATUS Status, const char *syscall) {
- ULONG err;
- char fullmsg[1024];
+// Convert the hi and lo parts of a FILETIME structure or a
+// LARGE_INTEGER to a UNIX time. A FILETIME contains a 64-bit value
+// representing the number of 100-nanosecond intervals since January 1,
+// 1601 (UTC). A UNIX time is the number of seconds that have elapsed
+// since the UNIX epoch, that is the time 00:00:00 UTC on 1 January
+// 1970.
+static double
+_to_unix_time(ULONGLONG hiPart, ULONGLONG loPart) {
+ ULONGLONG ret;
- if (NT_NTWIN32(Status))
- err = WIN32_FROM_NTSTATUS(Status);
- else
- err = RtlNtStatusToDosErrorNoTeb(Status);
- // if (GetLastError() != 0)
- // err = GetLastError();
- sprintf(fullmsg, "(originated from %s)", syscall);
- return PyErr_SetFromWindowsErrWithFilename(err, fullmsg);
+ // 100 nanosecond intervals since January 1, 1601.
+ ret = hiPart << 32;
+ ret += loPart;
+ // Change starting time to the Epoch (00:00:00 UTC, January 1, 1970).
+ ret -= 116444736000000000ull;
+ // Convert nano secs to secs.
+ return (double) ret / 10000000ull;
+}
+
+
+double
+psutil_FiletimeToUnixTime(FILETIME ft) {
+ return _to_unix_time(
+ (ULONGLONG)ft.dwHighDateTime, (ULONGLONG)ft.dwLowDateTime
+ );
+}
+
+
+double
+psutil_LargeIntegerToUnixTime(LARGE_INTEGER li) {
+ return _to_unix_time(
+ (ULONGLONG)li.HighPart, (ULONGLONG)li.LowPart
+ );
}
+// ====================================================================
+// --- Init / load libs
+// ====================================================================
+
+
static int
psutil_loadlibs() {
// --- Mandatory
NtQuerySystemInformation = psutil_GetProcAddressFromLib(
"ntdll.dll", "NtQuerySystemInformation");
if (! NtQuerySystemInformation)
- return 1;
+ return -1;
NtQueryInformationProcess = psutil_GetProcAddress(
"ntdll.dll", "NtQueryInformationProcess");
if (! NtQueryInformationProcess)
- return 1;
+ return -1;
NtSetInformationProcess = psutil_GetProcAddress(
"ntdll.dll", "NtSetInformationProcess");
if (! NtSetInformationProcess)
- return 1;
+ return -1;
NtQueryObject = psutil_GetProcAddressFromLib(
"ntdll.dll", "NtQueryObject");
if (! NtQueryObject)
- return 1;
+ return -1;
RtlIpv4AddressToStringA = psutil_GetProcAddressFromLib(
"ntdll.dll", "RtlIpv4AddressToStringA");
if (! RtlIpv4AddressToStringA)
- return 1;
+ return -1;
GetExtendedTcpTable = psutil_GetProcAddressFromLib(
"iphlpapi.dll", "GetExtendedTcpTable");
if (! GetExtendedTcpTable)
- return 1;
+ return -1;
GetExtendedUdpTable = psutil_GetProcAddressFromLib(
"iphlpapi.dll", "GetExtendedUdpTable");
if (! GetExtendedUdpTable)
- return 1;
+ return -1;
RtlGetVersion = psutil_GetProcAddressFromLib(
"ntdll.dll", "RtlGetVersion");
if (! RtlGetVersion)
- return 1;
+ return -1;
NtSuspendProcess = psutil_GetProcAddressFromLib(
"ntdll", "NtSuspendProcess");
if (! NtSuspendProcess)
- return 1;
+ return -1;
NtResumeProcess = psutil_GetProcAddressFromLib(
"ntdll", "NtResumeProcess");
if (! NtResumeProcess)
- return 1;
+ return -1;
NtQueryVirtualMemory = psutil_GetProcAddressFromLib(
"ntdll", "NtQueryVirtualMemory");
if (! NtQueryVirtualMemory)
- return 1;
+ return -1;
RtlNtStatusToDosErrorNoTeb = psutil_GetProcAddressFromLib(
"ntdll", "RtlNtStatusToDosErrorNoTeb");
if (! RtlNtStatusToDosErrorNoTeb)
- return 1;
+ return -1;
GetTickCount64 = psutil_GetProcAddress(
"kernel32", "GetTickCount64");
if (! GetTickCount64)
- return 1;
+ return -1;
RtlIpv6AddressToStringA = psutil_GetProcAddressFromLib(
"ntdll.dll", "RtlIpv6AddressToStringA");
if (! RtlIpv6AddressToStringA)
- return 1;
+ return -1;
// --- Optional
+
+ // minimum requirement: Win 7
+ QueryInterruptTime = psutil_GetProcAddressFromLib(
+ "kernelbase.dll", "QueryInterruptTime");
// minimum requirement: Win 7
GetActiveProcessorCount = psutil_GetProcAddress(
"kernel32", "GetActiveProcessorCount");
@@ -387,59 +294,14 @@ psutil_set_winver() {
}
-/*
- * Convert the hi and lo parts of a FILETIME structure or a LARGE_INTEGER
- * to a UNIX time.
- * A FILETIME contains a 64-bit value representing the number of
- * 100-nanosecond intervals since January 1, 1601 (UTC).
- * A UNIX time is the number of seconds that have elapsed since the
- * UNIX epoch, that is the time 00:00:00 UTC on 1 January 1970.
- */
-static double
-_to_unix_time(ULONGLONG hiPart, ULONGLONG loPart) {
- ULONGLONG ret;
-
- // 100 nanosecond intervals since January 1, 1601.
- ret = hiPart << 32;
- ret += loPart;
- // Change starting time to the Epoch (00:00:00 UTC, January 1, 1970).
- ret -= 116444736000000000ull;
- // Convert nano secs to secs.
- return (double) ret / 10000000ull;
-}
-
-
-double
-psutil_FiletimeToUnixTime(FILETIME ft) {
- return _to_unix_time((ULONGLONG)ft.dwHighDateTime,
- (ULONGLONG)ft.dwLowDateTime);
-}
-
-
-double
-psutil_LargeIntegerToUnixTime(LARGE_INTEGER li) {
- return _to_unix_time((ULONGLONG)li.HighPart,
- (ULONGLONG)li.LowPart);
-}
-#endif // PSUTIL_WINDOWS
-
-
-// Called on module import on all platforms.
+// Called on module import.
int
-psutil_setup(void) {
- if (getenv("PSUTIL_DEBUG") != NULL)
- PSUTIL_DEBUG = 1;
-
-#ifdef PSUTIL_WINDOWS
+psutil_setup_windows(void) {
if (psutil_loadlibs() != 0)
- return 1;
+ return -1;
if (psutil_set_winver() != 0)
- return 1;
+ return -1;
GetSystemInfo(&PSUTIL_SYSTEM_INFO);
InitializeCriticalSection(&PSUTIL_CRITICAL_SECTION);
-#endif
-#ifdef PSUTIL_OSX
- mach_timebase_info(&PSUTIL_MACH_TIMEBASE_INFO);
-#endif
return 0;
}
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/init.h b/contrib/python/psutil/py3/psutil/arch/windows/init.h
new file mode 100644
index 00000000000..2b3905dd35c
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/windows/init.h
@@ -0,0 +1,140 @@
+/*
+ * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+#include <windows.h>
+#include <Winsvc.h>
+
+#include "ntextapi.h"
+
+
+extern int PSUTIL_WINVER;
+extern SYSTEM_INFO PSUTIL_SYSTEM_INFO;
+extern CRITICAL_SECTION PSUTIL_CRITICAL_SECTION;
+
+#define PSUTIL_WINDOWS_VISTA 60
+#define PSUTIL_WINDOWS_7 61
+#define PSUTIL_WINDOWS_8 62
+#define PSUTIL_WINDOWS_8_1 63
+#define PSUTIL_WINDOWS_10 100
+#define PSUTIL_WINDOWS_NEW MAXLONG
+
+#define MALLOC(x) HeapAlloc(GetProcessHeap(), 0, (x))
+#define MALLOC_ZERO(x) HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (x))
+#define FREE(x) HeapFree(GetProcessHeap(), 0, (x))
+
+#define _NT_FACILITY_MASK 0xfff
+#define _NT_FACILITY_SHIFT 16
+#define _NT_FACILITY(status) \
+ ((((ULONG)(status)) >> _NT_FACILITY_SHIFT) & _NT_FACILITY_MASK)
+
+#define NT_NTWIN32(status) (_NT_FACILITY(status) == FACILITY_WIN32)
+#define WIN32_FROM_NTSTATUS(status) (((ULONG)(status)) & 0xffff)
+
+#define PSUTIL_FIRST_PROCESS(Processes) ( \
+ (PSYSTEM_PROCESS_INFORMATION)(Processes))
+#define PSUTIL_NEXT_PROCESS(Process) ( \
+ ((PSYSTEM_PROCESS_INFORMATION)(Process))->NextEntryOffset ? \
+ (PSYSTEM_PROCESS_INFORMATION)((PCHAR)(Process) + \
+ ((PSYSTEM_PROCESS_INFORMATION)(Process))->NextEntryOffset) : NULL)
+
+#define LO_T 1e-7
+#define HI_T 429.4967296
+
+#ifndef AF_INET6
+ #define AF_INET6 23
+#endif
+
+#if defined(PSUTIL_WINDOWS) && defined(PYPY_VERSION)
+ #if !defined(PyErr_SetFromWindowsErrWithFilename)
+ PyObject *PyErr_SetFromWindowsErrWithFilename(
+ int ierr, const char *filename
+ );
+ #endif
+ #if !defined(PyErr_SetExcFromWindowsErrWithFilenameObject)
+ PyObject *PyErr_SetExcFromWindowsErrWithFilenameObject(
+ PyObject *type, int ierr, PyObject *filename
+ );
+ #endif
+#endif
+
+double psutil_FiletimeToUnixTime(FILETIME ft);
+double psutil_LargeIntegerToUnixTime(LARGE_INTEGER li);
+int psutil_setup_windows(void);
+PVOID psutil_GetProcAddress(LPCSTR libname, LPCSTR procname);
+PVOID psutil_GetProcAddressFromLib(LPCSTR libname, LPCSTR procname);
+PVOID psutil_SetFromNTStatusErr(NTSTATUS status, const char *syscall);
+
+extern PyObject *TimeoutExpired;
+extern PyObject *TimeoutAbandoned;
+
+
+int _psutil_pids(DWORD **pids_array, int *pids_count);
+HANDLE psutil_check_phandle(HANDLE hProcess, DWORD pid, int check_exit_code);
+HANDLE psutil_handle_from_pid(DWORD pid, DWORD dwDesiredAccess);
+int psutil_assert_pid_exists(DWORD pid, char *err);
+int psutil_assert_pid_not_exists(DWORD pid, char *err);
+int psutil_pid_is_running(DWORD pid);
+int psutil_set_se_debug();
+SC_HANDLE psutil_get_service_handle(char service_name, DWORD scm_access, DWORD access);
+
+int psutil_get_proc_info(DWORD pid, PSYSTEM_PROCESS_INFORMATION *retProcess, PVOID *retBuffer);
+PyObject *psutil_cpu_count_cores(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_count_logical(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_freq(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_stats(PyObject *self, PyObject *args);
+PyObject *psutil_cpu_times(PyObject *self, PyObject *args);
+PyObject *psutil_disk_io_counters(PyObject *self, PyObject *args);
+PyObject *psutil_disk_partitions(PyObject *self, PyObject *args);
+PyObject *psutil_disk_usage(PyObject *self, PyObject *args);
+PyObject *psutil_get_loadavg();
+PyObject *psutil_get_open_files(DWORD pid, HANDLE hProcess);
+PyObject *psutil_getpagesize(PyObject *self, PyObject *args);
+PyObject *psutil_init_loadavg_counter();
+PyObject *psutil_net_connections(PyObject *self, PyObject *args);
+PyObject *psutil_net_if_addrs(PyObject *self, PyObject *args);
+PyObject *psutil_net_if_stats(PyObject *self, PyObject *args);
+PyObject *psutil_net_io_counters(PyObject *self, PyObject *args);
+PyObject *psutil_per_cpu_times(PyObject *self, PyObject *args);
+PyObject *psutil_pid_exists(PyObject *self, PyObject *args);
+PyObject *psutil_pids(PyObject *self, PyObject *args);
+PyObject *psutil_ppid_map(PyObject *self, PyObject *args);
+PyObject *psutil_proc_cmdline(PyObject *self, PyObject *args, PyObject *kwdict);
+PyObject *psutil_proc_cpu_affinity_get(PyObject *self, PyObject *args);
+PyObject *psutil_proc_cpu_affinity_set(PyObject *self, PyObject *args);
+PyObject *psutil_proc_cwd(PyObject *self, PyObject *args);
+PyObject *psutil_proc_environ(PyObject *self, PyObject *args);
+PyObject *psutil_proc_exe(PyObject *self, PyObject *args);
+PyObject *psutil_proc_info(PyObject *self, PyObject *args);
+PyObject *psutil_proc_io_counters(PyObject *self, PyObject *args);
+PyObject *psutil_proc_io_priority_get(PyObject *self, PyObject *args);
+PyObject *psutil_proc_io_priority_set(PyObject *self, PyObject *args);
+PyObject *psutil_proc_is_suspended(PyObject *self, PyObject *args);
+PyObject *psutil_proc_kill(PyObject *self, PyObject *args);
+PyObject *psutil_proc_memory_info(PyObject *self, PyObject *args);
+PyObject *psutil_proc_memory_maps(PyObject *self, PyObject *args);
+PyObject *psutil_proc_memory_uss(PyObject *self, PyObject *args);
+PyObject *psutil_proc_num_handles(PyObject *self, PyObject *args);
+PyObject *psutil_proc_open_files(PyObject *self, PyObject *args);
+PyObject *psutil_proc_priority_get(PyObject *self, PyObject *args);
+PyObject *psutil_proc_priority_set(PyObject *self, PyObject *args);
+PyObject *psutil_proc_suspend_or_resume(PyObject *self, PyObject *args);
+PyObject *psutil_proc_threads(PyObject *self, PyObject *args);
+PyObject *psutil_proc_times(PyObject *self, PyObject *args);
+PyObject *psutil_proc_username(PyObject *self, PyObject *args);
+PyObject *psutil_proc_wait(PyObject *self, PyObject *args);
+PyObject *psutil_QueryDosDevice(PyObject *self, PyObject *args);
+PyObject *psutil_sensors_battery(PyObject *self, PyObject *args);
+PyObject *psutil_swap_percent(PyObject *self, PyObject *args);
+PyObject *psutil_uptime(PyObject *self, PyObject *args);
+PyObject *psutil_users(PyObject *self, PyObject *args);
+PyObject *psutil_virtual_mem(PyObject *self, PyObject *args);
+PyObject *psutil_winservice_enumerate(PyObject *self, PyObject *args);
+PyObject *psutil_winservice_query_config(PyObject *self, PyObject *args);
+PyObject *psutil_winservice_query_descr(PyObject *self, PyObject *args);
+PyObject *psutil_winservice_query_status(PyObject *self, PyObject *args);
+PyObject *psutil_winservice_start(PyObject *self, PyObject *args);
+PyObject *psutil_winservice_stop(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/mem.c b/contrib/python/psutil/py3/psutil/arch/windows/mem.c
index 24dc15ad0e2..03b85777d01 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/mem.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/mem.c
@@ -9,7 +9,7 @@
#include <Psapi.h>
#include <pdh.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
PyObject *
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/mem.h b/contrib/python/psutil/py3/psutil/arch/windows/mem.h
deleted file mode 100644
index 48d3dadee6f..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/mem.h
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_getpagesize(PyObject *self, PyObject *args);
-PyObject *psutil_virtual_mem(PyObject *self, PyObject *args);
-PyObject *psutil_swap_percent(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/net.c b/contrib/python/psutil/py3/psutil/arch/windows/net.c
index 9a5634b0693..b9ca07dc0fd 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/net.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/net.c
@@ -12,7 +12,7 @@
#include <wchar.h>
#include <ws2tcpip.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
static PIP_ADAPTER_ADDRESSES
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/net.h b/contrib/python/psutil/py3/psutil/arch/windows/net.h
deleted file mode 100644
index 7a6158d13b1..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/net.h
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_net_if_addrs(PyObject *self, PyObject *args);
-PyObject *psutil_net_if_stats(PyObject *self, PyObject *args);
-PyObject *psutil_net_io_counters(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/ntextapi.h b/contrib/python/psutil/py3/psutil/arch/windows/ntextapi.h
index 91a66e4e847..742d7181003 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/ntextapi.h
+++ b/contrib/python/psutil/py3/psutil/arch/windows/ntextapi.h
@@ -10,10 +10,6 @@
#include <winternl.h>
#include <iphlpapi.h>
-#ifndef PSUTIL_MAYBE_EXTERN
-#define PSUTIL_MAYBE_EXTERN extern
-#endif
-
typedef LONG NTSTATUS;
// https://github.com/ajkhoury/TestDll/blob/master/nt_ddk.h
@@ -664,6 +660,12 @@ PSUTIL_MAYBE_EXTERN ULONGLONG (CALLBACK *_GetTickCount64) (
#define GetTickCount64 _GetTickCount64
+PSUTIL_MAYBE_EXTERN VOID(CALLBACK *_QueryInterruptTime) (
+ PULONGLONG lpInterruptTime
+);
+
+#define QueryInterruptTime _QueryInterruptTime
+
PSUTIL_MAYBE_EXTERN NTSTATUS (NTAPI *_NtQueryObject) (
HANDLE Handle,
OBJECT_INFORMATION_CLASS ObjectInformationClass,
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/pids.c b/contrib/python/psutil/py3/psutil/arch/windows/pids.c
new file mode 100644
index 00000000000..6f4b4ee6a2a
--- /dev/null
+++ b/contrib/python/psutil/py3/psutil/arch/windows/pids.c
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include <Python.h>
+#include <windows.h>
+#include <psapi.h>
+
+int
+_psutil_pids(DWORD **pids_array, int *pids_count) {
+ DWORD *proc_array = NULL;
+ DWORD proc_array_bytes;
+ int proc_array_sz = 0;
+ DWORD enum_return_bytes = 0;
+
+ *pids_array = NULL;
+ *pids_count = 0;
+
+ do {
+ proc_array_sz += 1024;
+ if (proc_array != NULL)
+ free(proc_array);
+
+ proc_array_bytes = proc_array_sz * sizeof(DWORD);
+ proc_array = malloc(proc_array_bytes);
+ if (proc_array == NULL) {
+ PyErr_NoMemory();
+ return -1;
+ }
+
+ if (!EnumProcesses(proc_array, proc_array_bytes, &enum_return_bytes)) {
+ free(proc_array);
+ PyErr_SetFromWindowsErr(0);
+ return -1;
+ }
+
+ // Retry if our buffer was too small.
+ } while (enum_return_bytes == proc_array_bytes);
+
+ *pids_count = (int)(enum_return_bytes / sizeof(DWORD));
+ *pids_array = proc_array;
+ return 0;
+}
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/proc.c b/contrib/python/psutil/py3/psutil/arch/windows/proc.c
index 41fa9dda680..c62897bb417 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/proc.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/proc.c
@@ -23,11 +23,7 @@
// Link with Iphlpapi.lib
#pragma comment(lib, "IPHLPAPI.lib")
-#include "../../_psutil_common.h"
-#include "proc.h"
-#include "proc_info.h"
-#include "proc_handles.h"
-#include "proc_utils.h"
+#include "../../arch/all/init.h"
// Raised by Process.wait().
@@ -54,45 +50,6 @@ psutil_pid_exists(PyObject *self, PyObject *args) {
/*
- * Return a Python list of all the PIDs running on the system.
- */
-PyObject *
-psutil_pids(PyObject *self, PyObject *args) {
- DWORD *proclist = NULL;
- DWORD numberOfReturnedPIDs;
- DWORD i;
- PyObject *py_pid = NULL;
- PyObject *py_retlist = PyList_New(0);
-
- if (py_retlist == NULL)
- return NULL;
- proclist = psutil_get_pids(&numberOfReturnedPIDs);
- if (proclist == NULL)
- goto error;
-
- for (i = 0; i < numberOfReturnedPIDs; i++) {
- py_pid = PyLong_FromPid(proclist[i]);
- if (!py_pid)
- goto error;
- if (PyList_Append(py_retlist, py_pid))
- goto error;
- Py_CLEAR(py_pid);
- }
-
- // free C array allocated for PIDs
- free(proclist);
- return py_retlist;
-
-error:
- Py_XDECREF(py_pid);
- Py_DECREF(py_retlist);
- if (proclist != NULL)
- free(proclist);
- return NULL;
-}
-
-
-/*
* Kill a process given its PID.
*/
PyObject *
@@ -428,7 +385,7 @@ psutil_GetProcWsetInformation(
buffer = MALLOC_ZERO(bufferSize);
if (! buffer) {
PyErr_NoMemory();
- return 1;
+ return -1;
}
while ((status = NtQueryVirtualMemory(
@@ -445,12 +402,12 @@ psutil_GetProcWsetInformation(
if (bufferSize > 256 * 1024 * 1024) {
PyErr_SetString(PyExc_RuntimeError,
"NtQueryVirtualMemory bufsize is too large");
- return 1;
+ return -1;
}
buffer = MALLOC_ZERO(bufferSize);
if (! buffer) {
PyErr_NoMemory();
- return 1;
+ return -1;
}
}
@@ -467,7 +424,7 @@ psutil_GetProcWsetInformation(
status, "NtQueryVirtualMemory(MemoryWorkingSetInformation)");
}
HeapFree(GetProcessHeap(), 0, buffer);
- return 1;
+ return -1;
}
*wSetInfo = (PMEMORY_WORKING_SET_INFORMATION)buffer;
@@ -1059,7 +1016,7 @@ psutil_proc_is_suspended(PyObject *self, PyObject *args) {
if (! PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
return NULL;
- if (! psutil_get_proc_info(pid, &process, &buffer))
+ if (psutil_get_proc_info(pid, &process, &buffer) != 0)
return NULL;
for (i = 0; i < process->NumberOfThreads; i++) {
if (process->Threads[i].ThreadState != Waiting ||
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/proc.h b/contrib/python/psutil/py3/psutil/arch/windows/proc.h
deleted file mode 100644
index 048d27dd7cc..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/proc.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-extern PyObject *TimeoutExpired;
-extern PyObject *TimeoutAbandoned;
-
-PyObject *psutil_pid_exists(PyObject *self, PyObject *args);
-PyObject *psutil_pids(PyObject *self, PyObject *args);
-PyObject *psutil_ppid_map(PyObject *self, PyObject *args);
-PyObject *psutil_proc_cpu_affinity_get(PyObject *self, PyObject *args);
-PyObject *psutil_proc_cpu_affinity_set(PyObject *self, PyObject *args);
-PyObject *psutil_proc_exe(PyObject *self, PyObject *args);
-PyObject *psutil_proc_io_counters(PyObject *self, PyObject *args);
-PyObject *psutil_proc_io_priority_get(PyObject *self, PyObject *args);
-PyObject *psutil_proc_io_priority_set(PyObject *self, PyObject *args);
-PyObject *psutil_proc_is_suspended(PyObject *self, PyObject *args);
-PyObject *psutil_proc_kill(PyObject *self, PyObject *args);
-PyObject *psutil_proc_memory_info(PyObject *self, PyObject *args);
-PyObject *psutil_proc_memory_maps(PyObject *self, PyObject *args);
-PyObject *psutil_proc_memory_uss(PyObject *self, PyObject *args);
-PyObject *psutil_proc_num_handles(PyObject *self, PyObject *args);
-PyObject *psutil_proc_open_files(PyObject *self, PyObject *args);
-PyObject *psutil_proc_priority_get(PyObject *self, PyObject *args);
-PyObject *psutil_proc_priority_set(PyObject *self, PyObject *args);
-PyObject *psutil_proc_suspend_or_resume(PyObject *self, PyObject *args);
-PyObject *psutil_proc_threads(PyObject *self, PyObject *args);
-PyObject *psutil_proc_times(PyObject *self, PyObject *args);
-PyObject *psutil_proc_username(PyObject *self, PyObject *args);
-PyObject *psutil_proc_wait(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/proc_handles.c b/contrib/python/psutil/py3/psutil/arch/windows/proc_handles.c
index 01ef6a425e8..471944c6438 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/proc_handles.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/proc_handles.c
@@ -22,8 +22,7 @@
#include <windows.h>
#include <Python.h>
-#include "../../_psutil_common.h"
-#include "proc_utils.h"
+#include "../../arch/all/init.h"
#define THREAD_TIMEOUT 100 // ms
@@ -42,7 +41,7 @@ psutil_enum_handles(PSYSTEM_HANDLE_INFORMATION_EX *handles) {
buffer = MALLOC_ZERO(bufferSize);
if (buffer == NULL) {
PyErr_NoMemory();
- return 1;
+ return -1;
}
while ((status = NtQuerySystemInformation(
@@ -60,20 +59,20 @@ psutil_enum_handles(PSYSTEM_HANDLE_INFORMATION_EX *handles) {
PyErr_SetString(
PyExc_RuntimeError,
"SystemExtendedHandleInformation buffer too big");
- return 1;
+ return -1;
}
buffer = MALLOC_ZERO(bufferSize);
if (buffer == NULL) {
PyErr_NoMemory();
- return 1;
+ return -1;
}
}
if (! NT_SUCCESS(status)) {
psutil_SetFromNTStatusErr(status, "NtQuerySystemInformation");
FREE(buffer);
- return 1;
+ return -1;
}
*handles = (PSYSTEM_HANDLE_INFORMATION_EX)buffer;
@@ -157,7 +156,7 @@ psutil_threaded_get_filename(HANDLE hFile) {
NULL, 0, (LPTHREAD_START_ROUTINE)psutil_get_filename, &hFile, 0, NULL);
if (hThread == NULL) {
psutil_PyErr_SetFromOSErrnoWithSyscall("CreateThread");
- return 1;
+ return -1;
}
// Wait for the worker thread to finish.
@@ -170,7 +169,7 @@ psutil_threaded_get_filename(HANDLE hFile) {
if (TerminateThread(hThread, 0) == 0) {
psutil_PyErr_SetFromOSErrnoWithSyscall("TerminateThread");
CloseHandle(hThread);
- return 1;
+ return -1;
}
CloseHandle(hThread);
return 0;
@@ -183,11 +182,11 @@ psutil_threaded_get_filename(HANDLE hFile) {
"WaitForSingleObject -> WAIT_FAILED -> TerminateThread"
);
CloseHandle(hThread);
- return 1;
+ return -1;
}
psutil_PyErr_SetFromOSErrnoWithSyscall("WaitForSingleObject");
CloseHandle(hThread);
- return 1;
+ return -1;
}
if (GetExitCodeThread(hThread, &threadRetValue) == 0) {
@@ -196,12 +195,12 @@ psutil_threaded_get_filename(HANDLE hFile) {
"GetExitCodeThread (failed) -> TerminateThread"
);
CloseHandle(hThread);
- return 1;
+ return -1;
}
CloseHandle(hThread);
psutil_PyErr_SetFromOSErrnoWithSyscall("GetExitCodeThread");
- return 1;
+ return -1;
}
CloseHandle(hThread);
return threadRetValue;
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/proc_handles.h b/contrib/python/psutil/py3/psutil/arch/windows/proc_handles.h
deleted file mode 100644
index d1be3152d5f..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/proc_handles.h
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-#include <windows.h>
-
-PyObject* psutil_get_open_files(DWORD pid, HANDLE hProcess);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/proc_info.c b/contrib/python/psutil/py3/psutil/arch/windows/proc_info.c
index 9e0caf34426..75bd17c7bb2 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/proc_info.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/proc_info.c
@@ -10,9 +10,7 @@
#include <Python.h>
#include <windows.h>
-#include "../../_psutil_common.h"
-#include "proc_info.h"
-#include "proc_utils.h"
+#include "../../arch/all/init.h"
#ifndef _WIN64
@@ -701,7 +699,7 @@ out:
* We use this as a fallback when faster functions fail with access
* denied. This is slower because it iterates over all processes
* but it doesn't require any privilege (also work for PID 0).
- * On success return 1, else 0 with Python exception already set.
+ * On success return 0, else -1 with Python exception already set.
*/
int
psutil_get_proc_info(DWORD pid, PSYSTEM_PROCESS_INFORMATION *retProcess,
@@ -754,7 +752,7 @@ psutil_get_proc_info(DWORD pid, PSYSTEM_PROCESS_INFORMATION *retProcess,
if ((ULONG_PTR)process->UniqueProcessId == pid) {
*retProcess = process;
*retBuffer = buffer;
- return 1;
+ return 0;
}
} while ((process = PSUTIL_NEXT_PROCESS(process)));
@@ -764,7 +762,7 @@ psutil_get_proc_info(DWORD pid, PSYSTEM_PROCESS_INFORMATION *retProcess,
error:
if (buffer != NULL)
free(buffer);
- return 0;
+ return -1;
}
@@ -796,7 +794,7 @@ psutil_proc_info(PyObject *self, PyObject *args) {
if (! PyArg_ParseTuple(args, _Py_PARSE_PID, &pid))
return NULL;
- if (! psutil_get_proc_info(pid, &process, &buffer))
+ if (psutil_get_proc_info(pid, &process, &buffer) != 0)
return NULL;
for (i = 0; i < process->NumberOfThreads; i++)
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/proc_info.h b/contrib/python/psutil/py3/psutil/arch/windows/proc_info.h
deleted file mode 100644
index b7795451dc8..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/proc_info.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-#include <windows.h>
-
-#include "ntextapi.h"
-
-#define PSUTIL_FIRST_PROCESS(Processes) ( \
- (PSYSTEM_PROCESS_INFORMATION)(Processes))
-#define PSUTIL_NEXT_PROCESS(Process) ( \
- ((PSYSTEM_PROCESS_INFORMATION)(Process))->NextEntryOffset ? \
- (PSYSTEM_PROCESS_INFORMATION)((PCHAR)(Process) + \
- ((PSYSTEM_PROCESS_INFORMATION)(Process))->NextEntryOffset) : NULL)
-
-int psutil_get_proc_info(DWORD pid, PSYSTEM_PROCESS_INFORMATION *retProcess,
- PVOID *retBuffer);
-PyObject* psutil_proc_cmdline(PyObject *self, PyObject *args, PyObject *kwdict);
-PyObject* psutil_proc_cwd(PyObject *self, PyObject *args);
-PyObject* psutil_proc_environ(PyObject *self, PyObject *args);
-PyObject* psutil_proc_info(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/proc_utils.c b/contrib/python/psutil/py3/psutil/arch/windows/proc_utils.c
index 1ebb76c448c..d272e91251c 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/proc_utils.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/proc_utils.c
@@ -10,68 +10,28 @@
#include <windows.h>
#include <Psapi.h> // EnumProcesses
-#include "../../_psutil_common.h"
-#include "proc_utils.h"
-
-
-DWORD *
-psutil_get_pids(DWORD *numberOfReturnedPIDs) {
- // Win32 SDK says the only way to know if our process array
- // wasn't large enough is to check the returned size and make
- // sure that it doesn't match the size of the array.
- // If it does we allocate a larger array and try again
-
- // Stores the actual array
- DWORD *procArray = NULL;
- DWORD procArrayByteSz;
- int procArraySz = 0;
-
- // Stores the byte size of the returned array from enumprocesses
- DWORD enumReturnSz = 0;
-
- do {
- procArraySz += 1024;
- if (procArray != NULL)
- free(procArray);
- procArrayByteSz = procArraySz * sizeof(DWORD);
- procArray = malloc(procArrayByteSz);
- if (procArray == NULL) {
- PyErr_NoMemory();
- return NULL;
- }
- if (! EnumProcesses(procArray, procArrayByteSz, &enumReturnSz)) {
- free(procArray);
- PyErr_SetFromWindowsErr(0);
- return NULL;
- }
- } while (enumReturnSz == procArraySz * sizeof(DWORD));
+#include "../../arch/all/init.h"
- // The number of elements is the returned size / size of each element
- *numberOfReturnedPIDs = enumReturnSz / sizeof(DWORD);
-
- return procArray;
-}
// Return 1 if PID exists, 0 if not, -1 on error.
int
psutil_pid_in_pids(DWORD pid) {
- DWORD *proclist = NULL;
- DWORD numberOfReturnedPIDs;
- DWORD i;
+ DWORD *pids_array = NULL;
+ int pids_count = 0;
+ int i;
- proclist = psutil_get_pids(&numberOfReturnedPIDs);
- if (proclist == NULL) {
- psutil_debug("psutil_get_pids() failed");
+ if (_psutil_pids(&pids_array, &pids_count) != 0)
return -1;
- }
- for (i = 0; i < numberOfReturnedPIDs; i++) {
- if (proclist[i] == pid) {
- free(proclist);
+
+ for (i = 0; i < pids_count; i++) {
+ if (pids_array[i] == pid) {
+ free(pids_array);
return 1;
}
}
- free(proclist);
+
+ free(pids_array);
return 0;
}
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/proc_utils.h b/contrib/python/psutil/py3/psutil/arch/windows/proc_utils.h
deleted file mode 100644
index dca7c991a5a..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/proc_utils.h
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-DWORD* psutil_get_pids(DWORD *numberOfReturnedPIDs);
-HANDLE psutil_handle_from_pid(DWORD pid, DWORD dwDesiredAccess);
-HANDLE psutil_check_phandle(HANDLE hProcess, DWORD pid, int check_exit_code);
-int psutil_pid_is_running(DWORD pid);
-int psutil_assert_pid_exists(DWORD pid, char *err);
-int psutil_assert_pid_not_exists(DWORD pid, char *err);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/security.c b/contrib/python/psutil/py3/psutil/arch/windows/security.c
index 07d23998498..8beeb7cb8e2 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/security.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/security.c
@@ -10,7 +10,7 @@
#include <windows.h>
#include <Python.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
static BOOL
@@ -22,7 +22,7 @@ psutil_set_privilege(HANDLE hToken, LPCTSTR Privilege, BOOL bEnablePrivilege) {
if (! LookupPrivilegeValue(NULL, Privilege, &luid)) {
psutil_PyErr_SetFromOSErrnoWithSyscall("LookupPrivilegeValue");
- return 1;
+ return -1;
}
// first pass. get current privilege setting
@@ -39,7 +39,7 @@ psutil_set_privilege(HANDLE hToken, LPCTSTR Privilege, BOOL bEnablePrivilege) {
&cbPrevious))
{
psutil_PyErr_SetFromOSErrnoWithSyscall("AdjustTokenPrivileges");
- return 1;
+ return -1;
}
// Second pass. Set privilege based on previous setting.
@@ -61,7 +61,7 @@ psutil_set_privilege(HANDLE hToken, LPCTSTR Privilege, BOOL bEnablePrivilege) {
NULL))
{
psutil_PyErr_SetFromOSErrnoWithSyscall("AdjustTokenPrivileges");
- return 1;
+ return -1;
}
return 0;
@@ -122,13 +122,13 @@ psutil_set_se_debug() {
HANDLE hToken;
if ((hToken = psutil_get_thisproc_token()) == NULL) {
- // "return 1;" to get an exception
+ // "return -1;" to get an exception
psutil_print_err();
return 0;
}
if (psutil_set_privilege(hToken, SE_DEBUG_NAME, TRUE) != 0) {
- // "return 1;" to get an exception
+ // "return -1;" to get an exception
psutil_print_err();
}
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/security.h b/contrib/python/psutil/py3/psutil/arch/windows/security.h
deleted file mode 100644
index 8d4ddb00d41..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/security.h
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- *
- * Security related functions for Windows platform (Set privileges such as
- * SeDebug), as well as security helper functions.
- */
-
-#include <windows.h>
-
-int psutil_set_se_debug();
-
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/sensors.c b/contrib/python/psutil/py3/psutil/arch/windows/sensors.c
index fbe2c2fe9fe..8bb636c44e2 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/sensors.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/sensors.c
@@ -7,6 +7,8 @@
#include <Python.h>
#include <windows.h>
+#include "../../arch/all/init.h"
+
// Added in https://github.com/giampaolo/psutil/commit/109f873 in 2017.
// Moved in here in 2023.
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/sensors.h b/contrib/python/psutil/py3/psutil/arch/windows/sensors.h
deleted file mode 100644
index edace25d3de..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/sensors.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_sensors_battery(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/services.c b/contrib/python/psutil/py3/psutil/arch/windows/services.c
index 4931e9d66de..8ea99a8daff 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/services.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/services.c
@@ -8,36 +8,76 @@
#include <windows.h>
#include <Winsvc.h>
-#include "../../_psutil_common.h"
-#include "services.h"
+#include "../../arch/all/init.h"
// ==================================================================
// utils
// ==================================================================
+
SC_HANDLE
-psutil_get_service_handler(char *service_name, DWORD scm_access, DWORD access)
+psutil_get_service_handler(
+ const wchar_t *service_name,
+ DWORD scm_access,
+ DWORD access)
{
SC_HANDLE sc = NULL;
SC_HANDLE hService = NULL;
- sc = OpenSCManager(NULL, NULL, scm_access);
+ sc = OpenSCManagerW(NULL, NULL, scm_access);
if (sc == NULL) {
- psutil_PyErr_SetFromOSErrnoWithSyscall("OpenSCManager");
+ psutil_PyErr_SetFromOSErrnoWithSyscall("OpenSCManagerW");
return NULL;
}
- hService = OpenService(sc, service_name, access);
+
+ hService = OpenServiceW(sc, service_name, access);
if (hService == NULL) {
- psutil_PyErr_SetFromOSErrnoWithSyscall("OpenService");
+ psutil_PyErr_SetFromOSErrnoWithSyscall("OpenServiceW");
CloseServiceHandle(sc);
return NULL;
}
+
CloseServiceHandle(sc);
return hService;
}
+// helper: parse args, convert to wchar, and open service
+// returns NULL on error. On success, fills *service_name_out.
+static SC_HANDLE
+psutil_get_service_from_args(
+ PyObject *args,
+ DWORD scm_access,
+ DWORD access,
+ wchar_t **service_name_out)
+{
+ PyObject *py_service_name = NULL;
+ wchar_t *service_name = NULL;
+ Py_ssize_t wlen;
+ SC_HANDLE hService = NULL;
+
+ if (!PyArg_ParseTuple(args, "U", &py_service_name)) {
+ return NULL;
+ }
+
+ service_name = PyUnicode_AsWideCharString(py_service_name, &wlen);
+ if (service_name == NULL) {
+ return NULL;
+ }
+
+ hService = psutil_get_service_handler(service_name, scm_access, access);
+ if (hService == NULL) {
+ PyMem_Free(service_name);
+ return NULL;
+ }
+
+ *service_name_out = service_name;
+ return hService;
+}
+
+
+
// XXX - expose these as constants?
static const char *
get_startup_string(DWORD startup) {
@@ -189,7 +229,7 @@ error:
*/
PyObject *
psutil_winservice_query_config(PyObject *self, PyObject *args) {
- char *service_name;
+ wchar_t *service_name = NULL;
SC_HANDLE hService = NULL;
BOOL ok;
DWORD bytesNeeded = 0;
@@ -199,12 +239,14 @@ psutil_winservice_query_config(PyObject *self, PyObject *args) {
PyObject *py_unicode_binpath = NULL;
PyObject *py_unicode_username = NULL;
- if (!PyArg_ParseTuple(args, "s", &service_name))
- return NULL;
- hService = psutil_get_service_handler(
- service_name, SC_MANAGER_ENUMERATE_SERVICE, SERVICE_QUERY_CONFIG);
+ hService = psutil_get_service_from_args(
+ args,
+ SC_MANAGER_ENUMERATE_SERVICE,
+ SERVICE_QUERY_CONFIG,
+ &service_name
+ );
if (hService == NULL)
- goto error;
+ return NULL;
// First call to QueryServiceConfigW() is necessary to get the
// right size.
@@ -214,9 +256,15 @@ psutil_winservice_query_config(PyObject *self, PyObject *args) {
psutil_PyErr_SetFromOSErrnoWithSyscall("QueryServiceConfigW");
goto error;
}
+
qsc = (QUERY_SERVICE_CONFIGW *)malloc(bytesNeeded);
+ if (qsc == NULL) {
+ PyErr_NoMemory();
+ goto error;
+ }
+
ok = QueryServiceConfigW(hService, qsc, bytesNeeded, &bytesNeeded);
- if (ok == 0) {
+ if (!ok) {
psutil_PyErr_SetFromOSErrnoWithSyscall("QueryServiceConfigW");
goto error;
}
@@ -256,6 +304,7 @@ psutil_winservice_query_config(PyObject *self, PyObject *args) {
Py_DECREF(py_unicode_username);
free(qsc);
CloseServiceHandle(hService);
+ PyMem_Free(service_name);
return py_tuple;
error:
@@ -263,10 +312,12 @@ error:
Py_XDECREF(py_unicode_binpath);
Py_XDECREF(py_unicode_username);
Py_XDECREF(py_tuple);
- if (hService != NULL)
+ if (hService)
CloseServiceHandle(hService);
- if (qsc != NULL)
+ if (qsc)
free(qsc);
+ if (service_name)
+ PyMem_Free(service_name);
return NULL;
}
@@ -278,19 +329,21 @@ error:
*/
PyObject *
psutil_winservice_query_status(PyObject *self, PyObject *args) {
- char *service_name;
+ wchar_t *service_name = NULL;
SC_HANDLE hService = NULL;
BOOL ok;
DWORD bytesNeeded = 0;
- SERVICE_STATUS_PROCESS *ssp = NULL;
+ SERVICE_STATUS_PROCESS *ssp = NULL;
PyObject *py_tuple = NULL;
- if (!PyArg_ParseTuple(args, "s", &service_name))
- return NULL;
- hService = psutil_get_service_handler(
- service_name, SC_MANAGER_ENUMERATE_SERVICE, SERVICE_QUERY_STATUS);
+ hService = psutil_get_service_from_args(
+ args,
+ SC_MANAGER_ENUMERATE_SERVICE,
+ SERVICE_QUERY_STATUS,
+ &service_name
+ );
if (hService == NULL)
- goto error;
+ return NULL;
// First call to QueryServiceStatusEx() is necessary to get the
// right size.
@@ -300,14 +353,15 @@ psutil_winservice_query_status(PyObject *self, PyObject *args) {
// Also services.msc fails in the same manner, so we return an
// empty string.
CloseServiceHandle(hService);
+ PyMem_Free(service_name);
return Py_BuildValue("s", "");
}
if (GetLastError() != ERROR_INSUFFICIENT_BUFFER) {
psutil_PyErr_SetFromOSErrnoWithSyscall("QueryServiceStatusEx");
goto error;
}
- ssp = (SERVICE_STATUS_PROCESS *)HeapAlloc(
- GetProcessHeap(), 0, bytesNeeded);
+
+ ssp = (SERVICE_STATUS_PROCESS *)HeapAlloc(GetProcessHeap(), 0, bytesNeeded);
if (ssp == NULL) {
PyErr_NoMemory();
goto error;
@@ -316,7 +370,7 @@ psutil_winservice_query_status(PyObject *self, PyObject *args) {
// Actual call.
ok = QueryServiceStatusEx(hService, SC_STATUS_PROCESS_INFO, (LPBYTE)ssp,
bytesNeeded, &bytesNeeded);
- if (ok == 0) {
+ if (!ok) {
psutil_PyErr_SetFromOSErrnoWithSyscall("QueryServiceStatusEx");
goto error;
}
@@ -331,58 +385,65 @@ psutil_winservice_query_status(PyObject *self, PyObject *args) {
CloseServiceHandle(hService);
HeapFree(GetProcessHeap(), 0, ssp);
+ PyMem_Free(service_name);
return py_tuple;
error:
Py_XDECREF(py_tuple);
- if (hService != NULL)
+ if (hService)
CloseServiceHandle(hService);
- if (ssp != NULL)
+ if (ssp)
HeapFree(GetProcessHeap(), 0, ssp);
+ if (service_name)
+ PyMem_Free(service_name);
return NULL;
}
-
-/*
- * Get service description.
- */
PyObject *
psutil_winservice_query_descr(PyObject *self, PyObject *args) {
- ENUM_SERVICE_STATUS_PROCESSW *lpService = NULL;
BOOL ok;
DWORD bytesNeeded = 0;
SC_HANDLE hService = NULL;
SERVICE_DESCRIPTIONW *scd = NULL;
- char *service_name;
+ wchar_t *service_name = NULL;
PyObject *py_retstr = NULL;
- if (!PyArg_ParseTuple(args, "s", &service_name))
- return NULL;
- hService = psutil_get_service_handler(
- service_name, SC_MANAGER_ENUMERATE_SERVICE, SERVICE_QUERY_CONFIG);
+ hService = psutil_get_service_from_args(
+ args,
+ SC_MANAGER_ENUMERATE_SERVICE,
+ SERVICE_QUERY_CONFIG,
+ &service_name
+ );
if (hService == NULL)
- goto error;
+ return NULL;
- // This first call to QueryServiceConfig2W() is necessary in order
- // to get the right size.
- bytesNeeded = 0;
- QueryServiceConfig2W(hService, SERVICE_CONFIG_DESCRIPTION, NULL, 0,
- &bytesNeeded);
- if (GetLastError() == ERROR_MUI_FILE_NOT_FOUND) {
- // Also services.msc fails in the same manner, so we return an
+ QueryServiceConfig2W(hService, SERVICE_CONFIG_DESCRIPTION, NULL, 0, &bytesNeeded);
+
+ if ((GetLastError() == ERROR_NOT_FOUND) ||
+ (GetLastError() == ERROR_MUI_FILE_NOT_FOUND))
+ {
+ // E.g. services.msc fails in this manner, so we return an
// empty string.
+ psutil_debug("set empty string for NOT_FOUND service description");
CloseServiceHandle(hService);
+ PyMem_Free(service_name);
return Py_BuildValue("s", "");
}
+
if (GetLastError() != ERROR_INSUFFICIENT_BUFFER) {
psutil_PyErr_SetFromOSErrnoWithSyscall("QueryServiceConfig2W");
goto error;
}
scd = (SERVICE_DESCRIPTIONW *)malloc(bytesNeeded);
+ if (scd == NULL) {
+ PyErr_NoMemory();
+ goto error;
+ }
+
ok = QueryServiceConfig2W(hService, SERVICE_CONFIG_DESCRIPTION,
(LPBYTE)scd, bytesNeeded, &bytesNeeded);
- if (ok == 0) {
+ if (!ok) {
psutil_PyErr_SetFromOSErrnoWithSyscall("QueryServiceConfig2W");
goto error;
}
@@ -392,20 +453,24 @@ psutil_winservice_query_descr(PyObject *self, PyObject *args) {
}
else {
py_retstr = PyUnicode_FromWideChar(
- scd->lpDescription, wcslen(scd->lpDescription));
+ scd->lpDescription, wcslen(scd->lpDescription));
}
+
if (!py_retstr)
goto error;
free(scd);
CloseServiceHandle(hService);
+ PyMem_Free(service_name);
return py_retstr;
error:
- if (hService != NULL)
+ if (hService)
CloseServiceHandle(hService);
- if (lpService != NULL)
- free(lpService);
+ if (scd)
+ free(scd);
+ if (service_name)
+ PyMem_Free(service_name);
return NULL;
}
@@ -416,29 +481,34 @@ error:
*/
PyObject *
psutil_winservice_start(PyObject *self, PyObject *args) {
- char *service_name;
BOOL ok;
SC_HANDLE hService = NULL;
+ wchar_t *service_name = NULL;
- if (!PyArg_ParseTuple(args, "s", &service_name))
+ hService = psutil_get_service_from_args(
+ args,
+ SC_MANAGER_ALL_ACCESS,
+ SERVICE_START,
+ &service_name
+ );
+ if (hService == NULL)
return NULL;
- hService = psutil_get_service_handler(
- service_name, SC_MANAGER_ALL_ACCESS, SERVICE_START);
- if (hService == NULL) {
- goto error;
- }
+
ok = StartService(hService, 0, NULL);
- if (ok == 0) {
+ if (!ok) {
psutil_PyErr_SetFromOSErrnoWithSyscall("StartService");
goto error;
}
CloseServiceHandle(hService);
+ PyMem_Free(service_name);
Py_RETURN_NONE;
error:
- if (hService != NULL)
+ if (hService)
CloseServiceHandle(hService);
+ if (service_name)
+ PyMem_Free(service_name);
return NULL;
}
@@ -449,32 +519,37 @@ error:
*/
PyObject *
psutil_winservice_stop(PyObject *self, PyObject *args) {
- char *service_name;
+ wchar_t *service_name = NULL;
BOOL ok;
SC_HANDLE hService = NULL;
SERVICE_STATUS ssp;
- if (!PyArg_ParseTuple(args, "s", &service_name))
- return NULL;
- hService = psutil_get_service_handler(
- service_name, SC_MANAGER_ALL_ACCESS, SERVICE_STOP);
+ hService = psutil_get_service_from_args(
+ args,
+ SC_MANAGER_ALL_ACCESS,
+ SERVICE_STOP,
+ &service_name
+ );
if (hService == NULL)
- goto error;
+ return NULL;
// Note: this can hang for 30 secs.
Py_BEGIN_ALLOW_THREADS
ok = ControlService(hService, SERVICE_CONTROL_STOP, &ssp);
Py_END_ALLOW_THREADS
- if (ok == 0) {
+ if (!ok) {
psutil_PyErr_SetFromOSErrnoWithSyscall("ControlService");
goto error;
}
CloseServiceHandle(hService);
+ PyMem_Free(service_name);
Py_RETURN_NONE;
error:
- if (hService != NULL)
+ if (hService)
CloseServiceHandle(hService);
+ if (service_name)
+ PyMem_Free(service_name);
return NULL;
}
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/services.h b/contrib/python/psutil/py3/psutil/arch/windows/services.h
deleted file mode 100644
index ebcfa5ef590..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/services.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-#include <Winsvc.h>
-
-SC_HANDLE psutil_get_service_handle(
- char service_name, DWORD scm_access, DWORD access);
-PyObject *psutil_winservice_enumerate(PyObject *self, PyObject *args);
-PyObject *psutil_winservice_query_config(PyObject *self, PyObject *args);
-PyObject *psutil_winservice_query_status(PyObject *self, PyObject *args);
-PyObject *psutil_winservice_query_descr(PyObject *self, PyObject *args);
-PyObject *psutil_winservice_start(PyObject *self, PyObject *args);
-PyObject *psutil_winservice_stop(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/socks.c b/contrib/python/psutil/py3/psutil/arch/windows/socks.c
index 0dc77f2d9de..09bee6820b3 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/socks.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/socks.c
@@ -11,40 +11,29 @@
#include <windows.h>
#include <ws2tcpip.h>
-#include "../../_psutil_common.h"
-#include "proc_utils.h"
+#include "../../arch/all/init.h"
#define BYTESWAP_USHORT(x) ((((USHORT)(x) << 8) | ((USHORT)(x) >> 8)) & 0xffff)
#define STATUS_UNSUCCESSFUL 0xC0000001
-ULONG g_TcpTableSize = 0;
-ULONG g_UdpTableSize = 0;
-
-
// Note about GetExtended[Tcp|Udp]Table syscalls: due to other processes
// being active on the machine, it's possible that the size of the table
// increases between the moment we query the size and the moment we query
// the data. Therefore we retry if that happens. See:
// https://github.com/giampaolo/psutil/pull/1335
// https://github.com/giampaolo/psutil/issues/1294
-// A global and ever increasing size is used in order to avoid calling
-// GetExtended[Tcp|Udp]Table twice per call (faster).
static PVOID __GetExtendedTcpTable(ULONG family) {
DWORD err;
PVOID table;
- ULONG size;
+ ULONG size = 0;
TCP_TABLE_CLASS class = TCP_TABLE_OWNER_PID_ALL;
- size = g_TcpTableSize;
- if (size == 0) {
- GetExtendedTcpTable(NULL, &size, FALSE, family, class, 0);
- // reserve 25% more space
- size = size + (size / 2 / 2);
- g_TcpTableSize = size;
- }
+ GetExtendedTcpTable(NULL, &size, FALSE, family, class, 0);
+ // reserve 25% more space to be sure
+ size = size + (size / 2 / 2);
table = malloc(size);
if (table == NULL) {
@@ -59,7 +48,6 @@ static PVOID __GetExtendedTcpTable(ULONG family) {
free(table);
if (err == ERROR_INSUFFICIENT_BUFFER || err == STATUS_UNSUCCESSFUL) {
psutil_debug("GetExtendedTcpTable: retry with different bufsize");
- g_TcpTableSize = 0;
return __GetExtendedTcpTable(family);
}
@@ -71,16 +59,12 @@ static PVOID __GetExtendedTcpTable(ULONG family) {
static PVOID __GetExtendedUdpTable(ULONG family) {
DWORD err;
PVOID table;
- ULONG size;
+ ULONG size = 0;
UDP_TABLE_CLASS class = UDP_TABLE_OWNER_PID;
- size = g_UdpTableSize;
- if (size == 0) {
- GetExtendedUdpTable(NULL, &size, FALSE, family, class, 0);
- // reserve 25% more space
- size = size + (size / 2 / 2);
- g_UdpTableSize = size;
- }
+ GetExtendedUdpTable(NULL, &size, FALSE, family, class, 0);
+ // reserve 25% more space
+ size = size + (size / 2 / 2);
table = malloc(size);
if (table == NULL) {
@@ -95,7 +79,6 @@ static PVOID __GetExtendedUdpTable(ULONG family) {
free(table);
if (err == ERROR_INSUFFICIENT_BUFFER || err == STATUS_UNSUCCESSFUL) {
psutil_debug("GetExtendedUdpTable: retry with different bufsize");
- g_UdpTableSize = 0;
return __GetExtendedUdpTable(family);
}
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/socks.h b/contrib/python/psutil/py3/psutil/arch/windows/socks.h
deleted file mode 100644
index cd9ba58dcbc..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/socks.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright (c) 2009, Giampaolo Rodola', Jeff Tang. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_net_connections(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/sys.c b/contrib/python/psutil/py3/psutil/arch/windows/sys.c
index ada684f6f91..597b78d0b0e 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/sys.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/sys.c
@@ -17,20 +17,27 @@ history before the move:
#include <windows.h>
#include "ntextapi.h"
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
-// Return a Python float representing the system uptime expressed in
-// seconds since the epoch.
+// The number of seconds passed since boot. This is a monotonic timer,
+// not affected by system clock updates. On Windows 7+ it also includes
+// the time spent during suspend / hybernate.
PyObject *
-psutil_boot_time(PyObject *self, PyObject *args) {
- ULONGLONG upTime;
- FILETIME fileTime;
-
- GetSystemTimeAsFileTime(&fileTime);
- // Number of milliseconds that have elapsed since the system was started.
- upTime = GetTickCount64() / 1000ull;
- return Py_BuildValue("d", psutil_FiletimeToUnixTime(fileTime) - upTime);
+psutil_uptime(PyObject *self, PyObject *args) {
+ double uptimeSeconds;
+ ULONGLONG interruptTime100ns = 0;
+
+ if (QueryInterruptTime) { // Windows 7+
+ QueryInterruptTime(&interruptTime100ns);
+ // Convert from 100-nanosecond to seconds.
+ uptimeSeconds = interruptTime100ns / 10000000.0;
+ }
+ else {
+ // Convert from milliseconds to seconds.
+ uptimeSeconds = (double)GetTickCount64() / 1000.0;
+ }
+ return Py_BuildValue("d", uptimeSeconds);
}
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/sys.h b/contrib/python/psutil/py3/psutil/arch/windows/sys.h
deleted file mode 100644
index 344ca21d42c..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/sys.h
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- * Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject *psutil_boot_time(PyObject *self, PyObject *args);
-PyObject *psutil_users(PyObject *self, PyObject *args);
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/wmi.c b/contrib/python/psutil/py3/psutil/arch/windows/wmi.c
index 2cf7e8a59b0..04ba3ee4c59 100644
--- a/contrib/python/psutil/py3/psutil/arch/windows/wmi.c
+++ b/contrib/python/psutil/py3/psutil/arch/windows/wmi.c
@@ -10,7 +10,7 @@
#include <windows.h>
#include <pdh.h>
-#include "../../_psutil_common.h"
+#include "../../arch/all/init.h"
// We use an exponentially weighted moving average, just like Unix systems do
@@ -31,6 +31,15 @@ double load_avg_1m = 0;
double load_avg_5m = 0;
double load_avg_15m = 0;
+#ifdef Py_GIL_DISABLED
+ static PyMutex mutex;
+ #define MUTEX_LOCK(m) PyMutex_Lock(m)
+ #define MUTEX_UNLOCK(m) PyMutex_Unlock(m)
+#else
+ #define MUTEX_LOCK(m)
+ #define MUTEX_UNLOCK(m)
+#endif
+
VOID CALLBACK LoadAvgCallback(PVOID hCounter, BOOLEAN timedOut) {
PDH_FMT_COUNTERVALUE displayValue;
@@ -45,12 +54,14 @@ VOID CALLBACK LoadAvgCallback(PVOID hCounter, BOOLEAN timedOut) {
}
currentLoad = displayValue.doubleValue;
+ MUTEX_LOCK(&mutex);
load_avg_1m = load_avg_1m * LOADAVG_FACTOR_1F + currentLoad * \
(1.0 - LOADAVG_FACTOR_1F);
load_avg_5m = load_avg_5m * LOADAVG_FACTOR_5F + currentLoad * \
(1.0 - LOADAVG_FACTOR_5F);
load_avg_15m = load_avg_15m * LOADAVG_FACTOR_15F + currentLoad * \
(1.0 - LOADAVG_FACTOR_15F);
+ MUTEX_UNLOCK(&mutex);
}
@@ -116,5 +127,10 @@ psutil_init_loadavg_counter(PyObject *self, PyObject *args) {
*/
PyObject *
psutil_get_loadavg(PyObject *self, PyObject *args) {
- return Py_BuildValue("(ddd)", load_avg_1m, load_avg_5m, load_avg_15m);
+ MUTEX_LOCK(&mutex);
+ double load_avg_1m_l = load_avg_1m;
+ double load_avg_5m_l = load_avg_5m;
+ double load_avg_15m_l = load_avg_15m;
+ MUTEX_UNLOCK(&mutex);
+ return Py_BuildValue("(ddd)", load_avg_1m_l, load_avg_5m_l, load_avg_15m_l);
}
diff --git a/contrib/python/psutil/py3/psutil/arch/windows/wmi.h b/contrib/python/psutil/py3/psutil/arch/windows/wmi.h
deleted file mode 100644
index 311242a393d..00000000000
--- a/contrib/python/psutil/py3/psutil/arch/windows/wmi.h
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- * Copyright (c) 2009 Giampaolo Rodola'. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <Python.h>
-
-PyObject* psutil_init_loadavg_counter();
-PyObject* psutil_get_loadavg();
diff --git a/contrib/python/psutil/py3/ya.make b/contrib/python/psutil/py3/ya.make
index fd48170ac2b..972033716ab 100644
--- a/contrib/python/psutil/py3/ya.make
+++ b/contrib/python/psutil/py3/ya.make
@@ -2,7 +2,7 @@
PY3_LIBRARY()
-VERSION(7.0.0)
+VERSION(7.1.2)
LICENSE(BSD-3-Clause)
@@ -27,11 +27,12 @@ NO_CHECK_IMPORTS(
NO_UTIL()
CFLAGS(
- -DPSUTIL_VERSION=700
+ -DPSUTIL_VERSION=712
)
SRCS(
- psutil/_psutil_common.c
+ psutil/arch/all/init.c
+ psutil/arch/all/pids.c
)
IF (OS_LINUX)
@@ -42,17 +43,19 @@ IF (OS_LINUX)
SRCS(
psutil/_psutil_linux.c
- psutil/_psutil_posix.c
psutil/arch/linux/disk.c
psutil/arch/linux/mem.c
psutil/arch/linux/net.c
psutil/arch/linux/proc.c
- psutil/arch/linux/users.c
+ psutil/arch/posix/init.c
+ psutil/arch/posix/net.c
+ psutil/arch/posix/proc.c
+ psutil/arch/posix/sysctl.c
+ psutil/arch/posix/users.c
)
PY_REGISTER(
psutil._psutil_linux
- psutil._psutil_posix
)
ENDIF()
@@ -69,19 +72,24 @@ IF (OS_DARWIN)
SRCS(
psutil/_psutil_osx.c
- psutil/_psutil_posix.c
psutil/arch/osx/cpu.c
psutil/arch/osx/disk.c
+ psutil/arch/osx/init.c
psutil/arch/osx/mem.c
psutil/arch/osx/net.c
+ psutil/arch/osx/pids.c
psutil/arch/osx/proc.c
psutil/arch/osx/sensors.c
psutil/arch/osx/sys.c
+ psutil/arch/posix/init.c
+ psutil/arch/posix/net.c
+ psutil/arch/posix/proc.c
+ psutil/arch/posix/sysctl.c
+ psutil/arch/posix/users.c
)
PY_REGISTER(
psutil._psutil_osx
- psutil._psutil_posix
)
ENDIF()
@@ -89,6 +97,7 @@ IF (OS_WINDOWS)
CFLAGS(
-DPSUTIL_WINDOWS=1
-DPSUTIL_SIZEOF_PID_T=4
+ -DPSUTIL_MAYBE_EXTERN=extern
)
LDFLAGS(
@@ -102,8 +111,10 @@ IF (OS_WINDOWS)
psutil/_psutil_windows.c
psutil/arch/windows/cpu.c
psutil/arch/windows/disk.c
+ psutil/arch/windows/init.c
psutil/arch/windows/mem.c
psutil/arch/windows/net.c
+ psutil/arch/windows/pids.c
psutil/arch/windows/proc.c
psutil/arch/windows/proc_handles.c
psutil/arch/windows/proc_info.c