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.opt-1.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�}|��}dd�|D�}|�|�qt|�D]"\}}|�|�d}|�||�d��|jrC|�||�|�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�cr@rr�xmlcharnamereplaceYs
z>TestBase.test_customreplace_encode.<locals>.xmlcharnamereplaceztest.xmlcharnamereplaceu«ℜ» = 〈ሴ〉s*&laquo;&real;&raquo; = &lang;&#4660;&rang;)	r<r=Z
html.entitiesrAr
�register_error�xmlcharnametestr$r
)rrLZsinZsoutrr@r�test_customreplace_encodeSs 

���z"TestBase.test_customreplace_encodecCs>dd�}t�d|�|�d|jdd�d}|�|d�dS)NcS�
d|jfS)Ns1234�rF�rIrrr�	myreplaceo�
z7TestBase.test_callback_returns_bytes.<locals>.myreplace�test.cjktest�abc�defrs
abc1234def)r
rMr
�unmappedunicoder$)rrS�encrrr�test_callback_returns_bytesnsz$TestBase.test_callback_returns_bytescsH�fdd�}t�d|�gd�gdt�fD]�|�t|j|jd�qdS)Ncs
�|jfSrrQrR�ZretrrrSvrTz7TestBase.test_callback_wrong_objects.<locals>.myreplacerU)r��)r
rMrDr3rCr
rX�rrSrr[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)�intrFrRrrrrS�z4TestBase.test_callback_long_index.<locals>.myreplacerU�abcd�efgh)s	abcdxefgh�	cSsdtjdfS)Nr`r)�sys�maxsizerRrrrrS�rb)r
rMr$r
rXr3�
IndexErrorr^rrr�test_callback_long_index~s���z!TestBase.test_callback_long_indexcC�,dd�}t�d|�|�t|j|jd�dS)NcS�dS)N)r`NrrRrrrrS��z4TestBase.test_callback_None_index.<locals>.myreplacerU)r
rMr3rCr
rXr^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)�limitrFrR�rSrrrS�s

z8TestBase.test_callback_backward_index.<locals>.myreplacer]rUrcrd)s4abcdREPLACEDabcdREPLACEDabcdREPLACEDabcdTERMINALefghre)rpr
rMr$r
rXrrrqr�test_callback_backward_index�s��z%TestBase.test_callback_backward_indexcCs6dd�}t�d|�|�|�d|jdd�d�dS)NcSsd|jdfS)Nror\rQrRrrrrS�rbz7TestBase.test_callback_forward_index.<locals>.myreplacerUrcrd)sabcdREPLACEDghre)r
rMr$r
rXr^rrr�test_callback_forward_index�s��z$TestBase.test_callback_forward_indexcCrj)NcSrk)N)ZTERM�drrRrrrrS�rlz:TestBase.test_callback_index_outofbound.<locals>.myreplacerU)r
rMr3rhr
rXr^rrr�test_callback_index_outofbound�rnz'TestBase.test_callback_index_outofboundcCs�t�d�}dgttdd��gd�D]:}|t|jd��}t�}|��}	|dur0|�|�}n|��}|s7n|�|�}|�	|�q&|�
|��|jd�qdS)Nrr�!��@��iir)r
�	getreader�list�rangerrr�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���rrvrwr)r
�	getwriterr|r}rrrr~rrr$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�ignore�cSrP)NZcalledrQrRrrr�tempreplace�rTzDTestBase.test_incrementalencoder_error_callback.<locals>.tempreplaceztest.incremental_error_callbackscalled)
rXrr3rBr
�errorsr$�resetr
rM)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�rrvrwrr�)r
r�r|r}rrr�getattr�
writelinesrr$r�)rr��namer�r�r�r7r�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�rrrvrwr�r)r
r{r|r}rrrr�r�rr$r�)	rZ	readfuncsr�r�r�r�r�r7r�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)rr3�AttributeErrorr�)rr�rrr�$test_incrementalencoder_del_segfaults"�z-TestBase.test_incrementalencoder_del_segfault)�__name__�
__module__�__qualname__rr	rr-r%r<rNrXrr*r9r?rOrZr_rirmrrrsrur�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)�chrra)rr`rrr�	<genexpr>5s�zMTestBase_Mapping._test_mapping_file_plain.<locals>.unichrs.<locals>.<genexpr>�+)rHr )r>rrr�unichrs4sz:TestBase_Mapping._test_mapping_file_plain.<locals>.unichrs�#rr\Z0xzInvalid line: rryi��)r�r �lenZfailr/�fromhexrG�
_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�rar/r�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_dectestr2)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.r/rr
rr0r1r2r$r3r4r5rrrr9as4


���
����z!TestBase_Mapping.test_errorhandleN)r�r�r�r�r�r�r-rr�r�r�r�r�r�r9rrrrr�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�pathrH�dirname�__file__�openr~)r��dirr�Zencodedr(rrr�load_teststringys
�

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