Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test_ucn.cpython-311.opt-1.pyc
�

�Ke&����dZddlZddlZddlZddlmZddlmZ	ddlm	Z	m
Z
mZn#e$r	dxZ	xZ
ZYnwxYwGd�dej
��Zed	krej��dSdS)
z� Test script for the Unicode implementation.

Written by Bill Tutt.
Modified for Python 2.0 by Fredrik Lundh (fredrik@pythonware.com)

(c) Copyright CNRI, All Rights Reserved. NO WARRANTY.

�N)�support)�
HTTPException)�INT_MAX�PY_SSIZE_T_MAX�UINT_MAXl����c���eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zejejeekd��ejedzdd���d�������ZdS)�UnicodeNamesTestc�`�tjd|z��}|�||��|S)Nz"\N{%s}")�ast�literal_eval�assertEqual)�self�name�code�ress    �7/usr/local/apps/python3/lib/python3.11/test/test_ucn.py�checkletterzUnicodeNamesTest.checkletters4����{�T�1�2�2������d�#�#�#��
�c	���gd�}d}��d��fd�t||��D����|��dS)N)zLATIN CAPITAL LETTER T�LATIN SMALL LETTER H�LATIN SMALL LETTER E�SPACEzLATIN SMALL LETTER RzLATIN CAPITAL LETTER EzLATIN SMALL LETTER DrzLATIN SMALL LETTER fzLATIN CAPITAL LeTtEr ozLATIN SMaLl LETTER xrzLATIN SMALL LETTER A�LATIN SMALL LETTER Trrrrr�SpAcEzLATIN SMALL LETTER Sr�LATIN small LETTER erzLATIN SMALL LETTER Pz	FULL STOPzThe rEd fOx ate the sheep.�c�$��g|]}�j|���
S��r)�.0�argsrs  �r�
<listcomp>z1UnicodeNamesTest.test_general.<locals>.<listcomp>As$���L�L�L��%�T�%�t�,�L�L�Lr)r
�join�zip)r�chars�strings`  r�test_generalzUnicodeNamesTest.test_general sn���
�
�
��8.������G�G�L�L�L�L��U�F�9K�9K�L�L�L�M�M��	
�	
�	
�	
�	
rc�R�d�tttt	d��t	d��������D]U}d|���z}t
j|��}|�t
j	|��|���VdS)Nr�a�zzLATIN SMALL LETTER %s)
r#�map�chr�range�ord�upper�unicodedata�lookupr
r)r�charrrs    r�test_ascii_lettersz#UnicodeNamesTest.test_ascii_lettersEs����G�G�C��U�3�s�8�8�S��X�X�%>�%>�?�?�@�@�	;�	;�D�*�T�Z�Z�\�\�9�D��%�d�+�+�D����[�-�d�3�3�T�:�:�:�:�	;�	;rc��|�dd��|�dd��|�dd��|�dd��|�d	d
��|�dd��|�d
d��|�dd��|�dd��|�dd��|�dd��|�dd��|�dd��|�ttjd��dS)NzHANGUL SYLLABLE GAu가zHANGUL SYLLABLE GGWEOSSu꿨zHANGUL SYLLABLE DOLSu돐zHANGUL SYLLABLE RYANu랸zHANGUL SYLLABLE MWIKu뮠zHANGUL SYLLABLE BBWAEMu뾈zHANGUL SYLLABLE SSEOLu썰zHANGUL SYLLABLE YIu의zHANGUL SYLLABLE JJYOSSu쭀zHANGUL SYLLABLE KYEOLSu켨zHANGUL SYLLABLE PANu판zHANGUL SYLLABLE HWEOKu훸zHANGUL SYLLABLE HIHu힣u힤)r�assertRaises�
ValueErrorr0r�rs r�test_hangul_syllablesz&UnicodeNamesTest.test_hangul_syllablesKsN�����-�x�8�8�8����2�H�=�=�=����/��:�:�:����/��:�:�:����/��:�:�:����1�8�<�<�<����0�(�;�;�;����-�x�8�8�8����1�8�<�<�<����1�8�<�<�<����.��9�9�9����0�(�;�;�;����.��9�9�9����*�k�&6��A�A�A�A�Arc���|�dd��|�dd��|�dd��|�dd��|�d	d
��|�dd��|�d
d��|�dd��|�dd��|�dd��|�dd��dS)NzCJK UNIFIED IDEOGRAPH-3400u㐀zCJK UNIFIED IDEOGRAPH-4DB5u䶵zCJK UNIFIED IDEOGRAPH-4E00u一zCJK UNIFIED IDEOGRAPH-9FCBu鿋zCJK UNIFIED IDEOGRAPH-20000u𠀀zCJK UNIFIED IDEOGRAPH-2A6D6u𪛖zCJK UNIFIED IDEOGRAPH-2A700u𪜀zCJK UNIFIED IDEOGRAPH-2B734u𫜴zCJK UNIFIED IDEOGRAPH-2B740u𫝀zCJK UNIFIED IDEOGRAPH-2B81Du𫠝zCJK UNIFIED IDEOGRAPH-3134Au𱍊rr7s r�test_cjk_unified_ideographsz,UnicodeNamesTest.test_cjk_unified_ideographs\s�����5�x�@�@�@����5�x�@�@�@����5�x�@�@�@����5�x�@�@�@����6��E�E�E����6��E�E�E����6��E�E�E����6��E�E�E����6��E�E�E����6��E�E�E����6��E�E�E�E�Erc���td��D]P}t|��}tj|d��}|�(|�tj|��|���QdS)Ni)r-r,r0rr
r1)rrr2rs    r�test_bmp_charactersz$UnicodeNamesTest.test_bmp_charactersisj���'�N�N�	A�	A�D��t�9�9�D��#�D�$�/�/�D���� � ��!3�D�!9�!9�4�@�@�@��		A�	Arc��|�dd��|�dd��|�dd��|�dd��dS)	NzPILCROW SIGN�¶zREPLACEMENT CHARACTERu�z)HALFWIDTH KATAKANA SEMI-VOICED SOUND MARKu゚zFULLWIDTH LATIN SMALL LETTER Auarr7s r�test_misc_symbolsz"UnicodeNamesTest.test_misc_symbolspsc�������2�2�2����0�(�;�;�;����D�h�O�O�O����9�8�D�D�D�D�Drc���gd�}|D]�\}}|�|t|����tjt|����}|�||��|�tj|��tj|����|�t��5tj	�|��ddd��n#1swxYwY��dS)N))zLATIN CAPITAL LETTER GHAi�)zLATIN SMALL LETTER GHAi�)zKANNADA LETTER LLLAi�)zLAO LETTER FO FONi�)zLAO LETTER FO FAYi�)z
LAO LETTER ROi�)z
LAO LETTER LOi�)z#TIBETAN MARK BKA- SHOG GI MGO RGYANi�)zYI SYLLABLE ITERATION MARKi�)z=PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRACKETi�)z4BYZANTINE MUSICAL SYMBOL FTHORA SKLIRON CHROMA VASISi��)
rr,r0r�assertNotEqualr
r1r5�KeyError�	ucd_3_2_0)r�aliases�alias�	codepointrs     r�test_aliaseszUnicodeNamesTest.test_aliasesvs/��
�
�
��!(�	4�	4��E�9����U�C�	�N�N�3�3�3��#�C�	�N�N�3�3�D�����e�,�,�,����[�/��6�6�(�/��5�5�
7�
7�
7��"�"�8�,�,�
4�
4��%�,�,�U�3�3�3�
4�
4�
4�
4�
4�
4�
4�
4�
4�
4�
4����
4�
4�
4�
4��
	4�	4s�: C&�&C*	�-C*	c�"�tdd��D]}}|�t��5}tjt|����ddd��n#1swxYwY|�t|j��d���~dS)Ni��no such name�	r-r5r6r0rr,r
�str�	exception�r�cp�cms   r�test_aliases_names_in_pua_rangez0UnicodeNamesTest.test_aliases_names_in_pua_range��������)�)�	@�	@�B��"�"�:�.�.�
*�"�� ��R���)�)�)�
*�
*�
*�
*�
*�
*�
*�
*�
*�
*�
*����
*�
*�
*�
*����S���.�.��?�?�?�?�	@�	@��"A�A	�"A	c�"�tdd��D]}}|�t��5}tjt|����ddd��n#1swxYwY|�t|j��d���~dS)NrIi�rJrKrNs   r�'test_named_sequences_names_in_pua_rangez8UnicodeNamesTest.test_named_sequences_names_in_pua_range�rRrSc��gd�}|D]�\}}|�tj|��|��|�t��5|�|d��ddd��n#1swxYwY|�t��5tj�|��ddd��n#1swxYwY��dS)N))zLATIN SMALL LETTER R WITH TILDEur̃)zTAMIL SYLLABLE SAIuஸை)zTAMIL SYLLABLE MOOuமோ)zTAMIL SYLLABLE NNOOuணோ)zTAMIL CONSONANT KSSuக்ஷ்)r
r0r1r5�SyntaxErrorrrBrC)r�	sequences�seqname�
codepointss    r�test_named_sequences_samplez,UnicodeNamesTest.test_named_sequences_sample�sT��
�
�
�	�$-�	6�	6��G�Z����[�/��8�8�*�E�E�E��"�"�;�/�/�
0�
0�� � ��$�/�/�/�
0�
0�
0�
0�
0�
0�
0�
0�
0�
0�
0����
0�
0�
0�
0��"�"�8�,�,�
6�
6��%�,�,�W�5�5�5�
6�
6�
6�
6�
6�
6�
6�
6�
6�
6�
6����
6�
6�
6�
6��		6�	6s$�A1�1A5	�8A5	� C�C	�	C	c�h�d�}dtjz}	tj|d|���}n/#tt
f$r|�d|z��YnwxYw|�|j��|D�]9}|�	��}|r|�
d��r�/|�d��\}}d�d	�|���D����}|�
tj|��|��|�t ��5|�|d��ddd��n#1swxYwY|�t$��5tj�|��ddd��n#1swxYwY��;dS)
Nc�F�|���}tj|vS)N)�readliner0�unidata_version)�testfile�hdrs  r�
check_versionzAUnicodeNamesTest.test_named_sequences_full.<locals>.check_version�s!���#�#�%�%�C��.�#�5�5rz7http://www.pythontest.net/unicode/%s/NamedSequences.txtzutf-8)�encoding�checkzCould not retrieve �#�;rc3�PK�|]!}tt|d����V��"dS)�N)r,�int)r rOs  r�	<genexpr>z=UnicodeNamesTest.test_named_sequences_full.<locals>.<genexpr>�s2���� O� O�b��S��R�[�[�!1�!1� O� O� O� O� O� Or)r0r_r�open_urlresource�OSErrorr�skipTest�
addCleanup�close�strip�
startswith�splitr#r
r1r5rWrrBrC)rrb�url�testdata�linerYrZs       r�test_named_sequences_fullz*UnicodeNamesTest.test_named_sequences_full�sC��	6�	6�	6�I��*�+��	7��/��g�6C�E�E�E�H�H����'�	7�	7�	7��M�M�/�#�5�6�6�6�6�6�	7���������'�'�'��
	6�
	6�D��:�:�<�<�D��
�4�?�?�3�/�/�
��"&�*�*�S�/�/��G�Z���� O� O�J�<L�<L�<N�<N� O� O� O�O�O�J����[�/��8�8�*�E�E�E��"�"�;�/�/�
0�
0�� � ��$�/�/�/�
0�
0�
0�
0�
0�
0�
0�
0�
0�
0�
0����
0�
0�
0�
0��"�"�8�,�,�
6�
6��%�,�,�W�5�5�5�
6�
6�
6�
6�
6�
6�
6�
6�
6�
6�
6����
6�
6�
6�
6��
	6�
	6s3�,�)A�A�1E�E	�E	�9 F%�%F)	�,F)	c�2�|�ttj��|�ttjd��|�ttj��|�t
tjd��dS)N�xx�unknown)r5�	TypeErrorr0rr1rBr7s r�test_errorszUnicodeNamesTest.test_errors�sp�����)�[�%5�6�6�6����)�[�%5�t�<�<�<����)�[�%7�8�8�8����(�K�$6�	�B�B�B�B�Brc	�F�|�ttddd��|�tttdddzzd��dd��|�ttddd��|�ttd	dd��dS)
Ns\N{blah}�unicode-escape�strictz\N{%s}�xi���ascii�\N{SPACEs\NSPACE)r5�UnicodeErrorrL�bytesr7s r�test_strict_error_handlingz+UnicodeNamesTest.test_strict_error_handling�s���������/��	
�	
�	
�
	
������y�C�&�L�1�7�;�;�=M�x�	
�	
�	
�
	
������/��	
�	
�	
�
	
������.��	
�	
�	
�	
�	
rzneeds UINT_MAX < SIZE_MAX��F)�size�memuse�dry_runc���ddtdzzzdz}|�t|��td��tdzz��|�td|jd��dS)Nr��xr��}s	\N{SPACE}zunknown Unicode character namer})rr
�len�assertRaisesRegexr��decode)rr�rs   r�test_issue16335z UnicodeNamesTest.test_issue16335�sx��

�4�8�a�<�0�0�4�7������Q����]�!3�!3�x�!�|�!D�E�E�E����|�,�
�H�&�	
�	
�	
�	
�	
rN)�__name__�
__module__�__qualname__rr'r3r8r:r<r?rGrQrUr[rvr{r�r�cpython_only�unittest�
skipUnlessrr�
bigmemtestrr�rrrr	r	s`���������#
�#
�#
�J;�;�;�B�B�B�"F�F�F�A�A�A�E�E�E�4�4�4�4@�@�@�@�@�@�6�6�6� 6�6�6�2C�C�C�
�
�
�,
���X���>�1�3N�O�O��W��X��\�%��G�G�G�
�
�H�G�P�O���
�
�
rr	�__main__)�__doc__rr�r0�testr�http.clientr�	_testcapirrr�ImportError�TestCaser	r��mainrrr�<module>r�s�����
�
�
���������������%�%�%�%�%�%�4�;�;�;�;�;�;�;�;�;�;�;���4�4�4�*3�3�G�3�n�x�x�x�4����W
�W
�W
�W
�W
�x�(�W
�W
�W
�t�z����H�M�O�O�O�O�O��s�
'�5�5