Your IP : 216.73.216.196


Current Path : /opt/alt/python310/lib64/python3.10/test/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/test/__pycache__/multibytecodec_support.cpython-310.pyc

o

0�i�8�@sxddlZddlZddlZddlZddlZddlmZddlmZddl	m
Z
Gdd�d�ZGdd�dej�Z
d	d
�ZdS)�N)�
HTTPException)�support)�BytesIOc@s�eZdZdZdZdZdZdZdZdZ	dZ
dd�Zdd	�Zd
d�Z
dd
�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�ZdS),�TestBase�N�ru�cCsX|jdurt�|j�|_|jj|_|jj|_|jj|_|jj|_	|jj
|_
|jj|_dS�N)�codec�codecs�lookup�encoding�encode�decode�streamreader�reader�streamwriter�writer�incrementalencoder�incrementaldecoder��self�r�B/opt/alt/python310/lib64/python3.10/test/multibytecodec_support.py�setUps





zTestBase.setUpcCs�g}|jD]}|�d�}|��}|dksJ�dd�|D�}|�|�qt|�D]"\}}|�|�d}|�||�d��|jrI|�||�|�d�q'dS)N�
�cSsg|]}|d�qS)rr)�.0�linerrr�
<listcomp>*sz-TestBase.test_chunkcoding.<locals>.<listcomp>r�utf-8)	�tstring�split�pop�append�zipr�assertEqual�
roundtriptestr
)rZ
tstring_lines�b�linesZlastZnative�utf8�urrr�test_chunkcoding$s

��zTestBase.test_chunkcodingcCs�|jD]_\}}}t|t�r|j}n|j}|rZ|||�d}||jur>|�t|�tut|��|�||d||j	|||f�q|�t|�tut|��|�||d||j	|||f�q|�
t|||�qdS)Nr�%a.decode(%r, %r)=%a != %a�%a.encode(%r, %r)=%a != %a)�
codectests�
isinstance�bytesrr
�
assertTrue�type�strr%r�assertRaises�UnicodeError�r�sourceZschemeZexpected�func�resultrrr�test_errorhandle2s2


���
����zTestBase.test_errorhandlecCs0|jr|�d�d}|�|�|d�dd�dS)N�$encoding contains full ISO 10646 mapuଓଣୠ nd eggs�xmlcharrefreplacers&#2835;&#2851;&#2912; nd eggs)�has_iso10646�skipTestr%r
)r�srrr�test_xmlcharrefreplaceIs
�zTestBase.test_xmlcharrefreplacecsj|jr|�d�ddlm��fdd�}t�d|�|jr#|j\}}nd}d}|�|�|d�d|�dS)	Nr;r��codepoint2namecsxt|t�std|��g}|j|j|j�D]}t|��vr*|�d�t|��q|�dt|��qd�|�|jfS)Nzdon't know how to handle %rz&%s;z&#%d;r)	r/�UnicodeEncodeError�	TypeError�object�start�end�ordr#�join)�exc�l�crArr�xmlcharnamereplaceYs
z>TestBase.test_customreplace_encode.<locals>.xmlcharnamereplaceztest.xmlcharnamereplaceu«ℜ» = 〈ሴ〉s*&laquo;&real;&raquo; = &lang;&#4660;&rang;)	r=r>Z
html.entitiesrBr
�register_error�xmlcharnametestr%r
)rrMZsinZsoutrrAr�test_customreplace_encodeSs 

���z"TestBase.test_customreplace_encodecCs>dd�}t�d|�|�d|jdd�d}|�|d�dS)NcS�
d|jfS)Ns1234�rG�rJrrr�	myreplaceo�
z7TestBase.test_callback_returns_bytes.<locals>.myreplace�test.cjktest�abc�defrs
abc1234def)r
rNr
�unmappedunicoder%)rrT�encrrr�test_callback_returns_bytesnsz$TestBase.test_callback_returns_bytescsH�fdd�}t�d|�gd�gdt�fD]�|�t|j|jd�qdS)Ncs
�|jfSrrRrS�ZretrrrTvrUz7TestBase.test_callback_wrong_objects.<locals>.myreplacerV)r��)r
rNrEr4rDr
rY�rrTrr\r�test_callback_wrong_objectsus��z$TestBase.test_callback_wrong_objectscCs^dd�}t�d|�|�|�d|jdd�d�dd�}t�d|�|�t|j|jd�dS)NcSsdt|j�fS)N�x)�intrGrSrrrrT�z4TestBase.test_callback_long_index.<locals>.myreplacerV�abcd�efgh)s	abcdxefgh�	cSsdtjdfS)Nrar)�sys�maxsizerSrrrrT�rc)r
rNr%r
rYr4�
IndexErrorr_rrr�test_callback_long_index~s���z!TestBase.test_callback_long_indexcC�,dd�}t�d|�|�t|j|jd�dS)NcS�dS)N)raNrrSrrrrT��z4TestBase.test_callback_None_index.<locals>.myreplacerV)r
rNr4rDr
rYr_rrr�test_callback_None_index��
�z!TestBase.test_callback_None_indexcs@�fdd��d�_t�d��|�|�d|jdd�d�dS)Ncs&�jdkr�jd8_dSd|jfS)Nrr)�REPLACEDrZTERMINAL)�limitrGrS�rTrrrT�s

z8TestBase.test_callback_backward_index.<locals>.myreplacer^rVrdre)s4abcdREPLACEDabcdREPLACEDabcdREPLACEDabcdTERMINALefghrf)rqr
rNr%r
rYrrrrr�test_callback_backward_index�s��z%TestBase.test_callback_backward_indexcCs6dd�}t�d|�|�|�d|jdd�d�dS)NcSsd|jdfS)Nrpr]rRrSrrrrT�rcz7TestBase.test_callback_forward_index.<locals>.myreplacerVrdre)sabcdREPLACEDghrf)r
rNr%r
rYr_rrr�test_callback_forward_index�s��z$TestBase.test_callback_forward_indexcCrk)NcSrl)N)ZTERM�drrSrrrrT�rmz:TestBase.test_callback_index_outofbound.<locals>.myreplacerV)r
rNr4rir
rYr_rrr�test_callback_index_outofbound�roz'TestBase.test_callback_index_outofboundcCs�t�d�}dgttdd��gd�D]:}|t|jd��}t�}|��}	|dur0|�|�}n|��}|s7n|�|�}|�	|�q&|�
|��|jd�qdS)Nrr�!��@��iir)r
�	getreader�list�rangerr r�readr
�writer%�getvalue)r�
UTF8Reader�sizehint�istream�ostream�encoder�data�errr�test_incrementalencoder�s$
�

��z TestBase.test_incrementalencodercCs�t�d�}ddgttdd��gd�D]1}t|jd�}|t��}|��}	|�|�}|s/n|�|�}|�	|�q'|�
|��|jd�qdS)Nr���rrwrxr)r
�	getwriterr}r~rr rrrr�r%r�)r�
UTF8Writerr�r�r��decoderr�r*rrr�test_incrementaldecoder�s 
�



��z TestBase.test_incrementaldecodercCs�|j}|��}|�t|j|d�d|_|�|�|d�d�|��dd�}t�	d|�d|_|�|�|d�d�d|_|�|�|d�d�dS)NT�ignorercSrQ)NZcalledrRrSrrr�tempreplace�rUzDTestBase.test_incrementalencoder_error_callback.<locals>.tempreplaceztest.incremental_error_callbackscalled)
rYrr4rCr
�errorsr%�resetr
rN)r�invr�r�rrr�&test_incrementalencoder_error_callback�sz/TestBase.test_incrementalencoder_error_callbackcCs�t�d�}dD]K}ddgttdd��gd�D]9}|�t|jd��}|t��}t||�}	||�}|s6n|dkr@|�|�n|�	|�q/|�
|��|jd�qqdS)	Nr�r�readline�	readlinesr�rrwrxrr�)r
r�r}r~rrr �getattr�
writelinesr�r%r�)rr��namer�r�r�r8r�rrr�test_streamreader�s&
�


�	��zTestBase.test_streamreaderc	Cs�d}t�d�}|D]R}dgttdd��gd�D]A}|t|jd��}|�t��}t||�}	|dur9||�}n|�}|s?n|dkrI|�|�n|�	|�q0|�
|��|jd�qq	dS)Nr�rrrwrxr�r)r
r|r}r~rr rr�r�r�r%r�)	rZ	readfuncsr�r�r�r�r�r8r�rrr�test_streamwriter�s,
�


�
��zTestBase.test_streamwritercCst�}|�|�}|��dSr)rrr�)r�streamrrrr�"test_streamwriter_reset_no_pendings
z+TestBase.test_streamwriter_reset_no_pendingcCs<|��}|�t��|`Wd�dS1swYdSr)rr4�AttributeErrorr�)rr�rrr�$test_incrementalencoder_del_segfaults"�z-TestBase.test_incrementalencoder_del_segfault)�__name__�
__module__�__qualname__rr	r r.r&r=rOrYrr+r:r@rPr[r`rjrnrsrtrvr�r�r�r�r�r�r�rrrrrs8

	

rc@s\eZdZgZgZgZgZdd�Zdd�Zdd�Z	dd�Z
d	d
�Zdd�Zd
d�Z
dd�ZdS)�TestBase_Mappingc	Cs<z	|����WdSttfy|�d|j�YdSw)NzCould not retrieve )�open_mapping_file�close�OSErrorrr>�
mapfileurlrrrrr$s
�zTestBase_Mapping.setUpcCstj|jdd�S)Nr)r)rZopen_urlresourcer�rrrrr�*sz"TestBase_Mapping.open_mapping_filecCs$|j�d�r|��dS|��dS)Nz.xml)r��endswith�_test_mapping_file_ucm�_test_mapping_file_plainrrrr�test_mapping_file-sz"TestBase_Mapping.test_mapping_filecCsdd�}i}|���o}|D][}|sn^|�d�d��}t|�dkr#q
|ddd�dkr5|�d|���t�|ddd��}t|�dkrMd	|dkrMq
||d�}t|�d
ks]||vr^q
|||<|�||�q
Wd�dSWd�dS1s|wYdS)NcSsd�dd�|�d�D��S)Nrcss�|]
}tt|d��VqdS)�N)�chrrb)rrarrr�	<genexpr>5s�zMTestBase_Mapping._test_mapping_file_plain.<locals>.unichrs.<locals>.<genexpr>�+)rIr!)r?rrr�unichrs4sz:TestBase_Mapping._test_mapping_file_plain.<locals>.unichrs�#rr]Z0xzInvalid line: rrzi��)r�r!�lenZfailr0�fromhexrH�
_testpoint)rr�Zurt_wa�frr��csetch�unichrrrr�3s.
��"�z)TestBase_Mapping._test_mapping_file_plaincCsr|���}|��}Wd�n1swYt�d|�}|D]\}}tt|d��}t�|�}|�||�q dS)Nz'<a u="([A-F0-9]{4})" b="([0-9A-F ]+)"/>r�)	r�r�re�findallr�rbr0r�r�)rr�ZucmdataZucZuniZcodedr�Zcodechrrrr�Ns

�
�z'TestBase_Mapping._test_mapping_file_ucmcCs|jD]}|j|�qdSr)�supmapsr�)r�mappingrrr�test_mapping_supplementalWs
�z*TestBase_Mapping.test_mapping_supplementalcCsL||f|jvr|�|�|j�|�||f|jvr$|�t||j�|�dSdSr)�pass_enctestr%r
r�pass_dectestr3)rr�r�rrrr�[s
�zTestBase_Mapping._testpointcCs�|jD]e\}}}t|t�r|j}n|j}|r_t|t�r=||j|�}|�t|�tut|��|�	||d||j|||f�q||j|�}|�t|�tut|��|�	||d||j|||f�q|�
t||j|�qdS)Nr,r-)r.r/r0rr
rr1r2r3r%r4r5r6rrrr:as4


���
����z!TestBase_Mapping.test_errorhandleN)r�r�r�r�r�r�r.rr�r�r�r�r�r�r:rrrrr�s	r�cCs�tj�tj�t�d�}ttj�||d�d��}|��}Wd�n1s&wYttj�||d�d��}|��}Wd�||fS1sIwY||fS)NZcjkencodingsz.txt�rbz	-utf8.txt)�os�pathrI�dirname�__file__�openr)r��dirr�Zencodedr)rrr�load_teststringys
�

��r�)r
r�r�rgZunittestZhttp.clientr�testr�iorrZTestCaser�r�rrrr�<module>s[