Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.9/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.9/test/__pycache__/test_dict.cpython-39.opt-1.pyc

a

��g
��@s�ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	m
Z
Gdd�dej�ZGdd�dej�Z
ddl	mZGdd	�d	ej�ZGd
d�de�ZGdd
�d
ej�Zedkr�e��dS)�N)�supportc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�Z d=d>�Z!d?d@�Z"dAdB�Z#dCdD�Z$dEdF�Z%dGdH�Z&dIdJ�Z'dKdL�Z(dMdN�Z)dOdP�Z*dQdR�Z+dSdT�Z,dUdV�Z-dWdX�Z.dYdZ�Z/d[d\�Z0d]d^�Z1e2j3d_d`��Z4e2j3dadb��Z5e2j3dcdd��Z6dedf�Z7e2j3dgdh��Z8e2j3didj��Z9e2j3dkdl��Z:e2j3dmdn��Z;e2j3dodp��Z<e2j3dqdr��Z=dsdt�Z>dudv�Z?dwdx�Z@dydz�ZAd{d|�ZBd}d~�ZCdd��ZDd�d��ZEd�d��ZFd�d��ZGd�d��ZHd�d��ZId�d��ZJd�d��ZKd�d��ZLd�d��ZMd�d��ZNd�d��ZOd�d��ZPd�d��ZQd�d��ZRd�d��ZSd�d��ZTe2j3d�d���ZUe2j3d�d���ZVd�S)��DictTestc	Cs�Gdd�dt�}ddi|ddi�fD]v}|�t��tfi|��Wd�n1sV0Y|�t�� ijfi|��Wd�q$1s�0Yq$dS)Nc@seZdZdS)z7DictTest.test_invalid_keyword_arguments.<locals>.CustomN��__name__�
__module__�__qualname__�rr�*/usr/local/lib/python3.9/test/test_dict.py�Customsr
��)�dict�assertRaises�	TypeError�update)�selfr
�invalidrrr	�test_invalid_keyword_argumentss,z'DictTest.test_invalid_keyword_argumentscCs |�t�i�|�t�i�dS�N)�assertEqualr
�assertIsNot�rrrr	�test_constructorszDictTest.test_constructorcCs^dD]T}dd�t|�D�}t�|�dd�|D�}dd�|�d}|�t|�t|��qdS)	N)rr��i�cSs$g|]}d�t�tjd��|f�qS)��)�join�random�sample�string�
ascii_letters��.0�irrr	�
<listcomp>!s�z5DictTest.test_literal_constructor.<locals>.<listcomp>css|]\}}d�||�VqdS)z
{!r}: {:d}N)�format)r#�k�vrrr	�	<genexpr>$�z4DictTest.test_literal_constructor.<locals>.<genexpr>�{z, �})�ranger�shufflerr�evalr
)r�n�itemsZformatted_itemsZdictliteralrrr	�test_literal_constructors�
z!DictTest.test_literal_constructorcCsbdddd�}dddd�}|��}||O}|�||Bddddd��|�|ddddd��|��}||O}|�||Bddddd��|�|ddddd��|��}|gd	�O}|�|ddddd��|�|�d�t�|�|�d
�t�|�|�d�t�|�|�d�t�|�t|jd�|�|�d
�dddd��|�t|jd�|�|�d�dddd��dS)
Nrr)rrrr��rrr3)rrrr3)rrr3r)�rr�rr�r3r3rZBADr)	�copyr�assertIs�__or__�NotImplementedrr�__ior__�
ValueError)r�a�b�crrr	�test_merge_operator(s*zDictTest.test_merge_operatorcCsD|�id�|�ddi�|�ti�d�|�tddi�d�dS)NTrrF)r9�
assertTrue�boolrrrr	�	test_boolHszDictTest.test_boolcCs�i}|�t|���t��ddd�}|��}|�t|�ddh�|�d|�|�d|�|�d|�|�d|�|�t|jd�|�ttdd����d�dS)Nrr�r>r?r>r?�r>zdict_keys(['a']))r�set�keys�assertInrr�reprr
)r�dr'rrr	�	test_keysNs
zDictTest.test_keyscCsfi}|�t|���t��ddi}|�t|���dh�|�t|jd�|�ttdd����d�dS)NrrrFzdict_values([1]))rrG�valuesrrrJr
�rrKrrr	�test_values[szDictTest.test_valuescCsfi}|�t|���t��ddi}|�t|���dh�|�t|jd�|�ttdd����d�dS)Nrr�rrrFzdict_items([('a', 1)]))rrGr1rrrJr
rNrrr	�
test_itemscszDictTest.test_itemscCsli}|�d|�|�d|v�|�d|v�ddd�}|�d|�|�d|�|�d|�|�t|j�dS)Nr>rrrEr?r@)�assertNotIn�assertFalserBrIrr�__contains__rNrrr	�
test_containsls
zDictTest.test_containscCs2i}|�t|�d�ddd�}|�t|�d�dS)NrrrrE)r�lenrNrrr	�test_lenxs
zDictTest.test_lencs�ddd�}|�|dd�|�|dd�d|d<d|d<|�|dd�|�|dd�|d=|�|ddd	��|�t|j�G�fd
d�dt�}i}d||�<|�t|jd
�Gdd�dt��G�fdd�dt�}|�}d||<d|_|��|j|�dS)NrrrEr>r?r3r@�)r>r@cs eZdZ�fdd�Zdd�ZdS)z$DictTest.test_getitem.<locals>.BadEqcs
���dSrr�r�other��Excrr	�__eq__�sz+DictTest.test_getitem.<locals>.BadEq.__eq__cSsdS)N�rrrrr	�__hash__�sz-DictTest.test_getitem.<locals>.BadEq.__hash__N�rrrr]r_rr[rr	�BadEq�sra�*�c@seZdZdS)z"DictTest.test_getitem.<locals>.ExcNrrrrr	r\�r*r\cseZdZdZ�fdd�ZdS)z&DictTest.test_getitem.<locals>.BadHashFcs|jr���ndSdS�Nrb��failrr[rr	r_�sz/DictTest.test_getitem.<locals>.BadHash.__hash__N�rrrrfr_rr[rr	�BadHash�srhT)rrr�__getitem__�object�KeyError�	Exceptionrf)rrKrarh�xrr[r	�test_getitem~s(

zDictTest.test_getitemcCs4dddd�}|��|�|i�|�t|jd�dS�Nrrr3r4)�clearrrrrNrrr	�
test_clear�szDictTest.test_clearcsli}|�ddi�|�ddi�|�dddd��|�|dddd��|��|�|dddd��|�ttf|jd�Gdd�d�}|��|�|��|�|dddd��Gd	d
�d
t��|��G�fdd�d�}|��|j|��G�fd
d�d�}|��|j|��G�fdd�d�}|��|j|��G�fdd�dt�}|��ij|��|�tijdg�dS)Nr�dr�r3r4c@s$eZdZdd�Zdd�Zdd�ZdS)z,DictTest.test_update.<locals>.SimpleUserDictcSsdddd�|_dSro�rKrrrr	�__init__�sz5DictTest.test_update.<locals>.SimpleUserDict.__init__cSs
|j��Sr)rKrHrrrr	rH�sz1DictTest.test_update.<locals>.SimpleUserDict.keyscSs
|j|Srrt)rr$rrr	ri�sz8DictTest.test_update.<locals>.SimpleUserDict.__getitem__N)rrrrurHrirrrr	�SimpleUserDict�srvc@seZdZdS)z!DictTest.test_update.<locals>.ExcNrrrrr	r\�r*r\cseZdZ�fdd�ZdS)�-DictTest.test_update.<locals>.FailingUserDictcs��dSrrrr[rr	rH�s�2DictTest.test_update.<locals>.FailingUserDict.keysN)rrrrHrr[rr	�FailingUserDict�srycs eZdZ�fdd�Zdd�ZdS)rwcsG�fdd�d�}|�S)Ncs(eZdZdd�Zdd�Z�fdd�ZdS)�EDictTest.test_update.<locals>.FailingUserDict.keys.<locals>.BogonItercSs
d|_dS�Nr�r$rrrr	ru�s�NDictTest.test_update.<locals>.FailingUserDict.keys.<locals>.BogonIter.__init__cSs|Srrrrrr	�__iter__�s�NDictTest.test_update.<locals>.FailingUserDict.keys.<locals>.BogonIter.__iter__cs|jrd|_dS��dS)Nrr>r|rr[rr	�__next__�s�NDictTest.test_update.<locals>.FailingUserDict.keys.<locals>.BogonIter.__next__N�rrrrur~r�rr[rr	�	BogonIter�sr�r�rr�r[rr	rH�s
rxcSs|Srr�r�keyrrr	ri�s�9DictTest.test_update.<locals>.FailingUserDict.__getitem__N�rrrrHrirr[rr	ry�scs eZdZdd�Z�fdd�ZdS)rwcSsGdd�d�}|�S)Nc@s$eZdZdd�Zdd�Zdd�ZdS)rzcSstd�|_dS)Nr>)�ordr$rrrr	ru�sr}cSs|Srrrrrr	r~�srcSs2|jtd�kr*t|j�}|jd7_|St�dS)N�zr)r$r��chr�
StopIteration)rZrtnrrr	r��s

r�Nr�rrrr	r��sr�rr�rrr	rH�srxcs��dSrrr�r[rr	ri�sr�Nr�rr[rr	ry�s
cs eZdZdd�Z�fdd�ZdS)z$DictTest.test_update.<locals>.badseqcSs|Srrrrrr	r~�sz-DictTest.test_update.<locals>.badseq.__iter__cs
���dSrrrr[rr	r��sz-DictTest.test_update.<locals>.badseq.__next__N�rrrr~r�rr[rr	�badseq�sr�)	rrrr�AttributeErrorrprlrjr=)rrKrvryr�rr[r	�test_update�s.zDictTest.test_updatec
sj|�t�d�dddd��i�|���d���|���d�dddd��|���dd�ddd��|���g�i�dd�}|���|��ddi�|�tijd�Gd	d
�d
t�}|�|�d�ddi�|�|��d�ddi�|�|�d�|�|�|��d�|�Gdd
�d
t�}|�d�}|�|ddd��|�|tj�|�ttj�Gdd�dt	��G�fdd�dt�}|��|jdg�G�fdd�dt
�}|��tj|��G�fdd�dt�}|��|jdg�tttd�td����|�t��d�tttd�dgd���G�fdd�dt�}dd�td�D����
�}	|	jdddd�|�|�hd��|	�dS)N�abc)r>r?r@)rX�rcss
dVdSr{rrrrr	�g�sz!DictTest.test_fromkeys.<locals>.grr3c@seZdZdS)z(DictTest.test_fromkeys.<locals>.dictlikeNrrrrr	�dictliker*r�r>c@seZdZdd�ZdS)z&DictTest.test_fromkeys.<locals>.mydictcSst��Sr)�collections�UserDict��clsrrr	�__new__sz.DictTest.test_fromkeys.<locals>.mydict.__new__N�rrrr�rrrr	�mydictsr��abrEc@seZdZdS)z#DictTest.test_fromkeys.<locals>.ExcNrrrrr	r\r*r\cseZdZ�fdd�ZdS)z(DictTest.test_fromkeys.<locals>.baddict1cs
���dSrrrr[rr	rusz1DictTest.test_fromkeys.<locals>.baddict1.__init__N�rrrrurr[rr	�baddict1sr�cs eZdZdd�Z�fdd�ZdS)z&DictTest.test_fromkeys.<locals>.BadSeqcSs|Srrrrrr	r~sz/DictTest.test_fromkeys.<locals>.BadSeq.__iter__cs
���dSrrrr[rr	r�sz/DictTest.test_fromkeys.<locals>.BadSeq.__next__Nr�rr[rr	�BadSeqsr�cseZdZ�fdd�ZdS)z(DictTest.test_fromkeys.<locals>.baddict2cs
���dSrr)rr��valuer[rr	�__setitem__ sz4DictTest.test_fromkeys.<locals>.baddict2.__setitem__N)rrrr�rr[rr	�baddict2sr�rcseZdZ�fdd�ZdS)z(DictTest.test_fromkeys.<locals>.baddict3cs�Srrr�rtrr	r�*sz0DictTest.test_fromkeys.<locals>.baddict3.__new__Nr�rrtrr	�baddict3)sr�cSsi|]
}||�qSrrr"rrr	�
<dictcomp>,r*z*DictTest.test_fromkeys.<locals>.<dictcomp>�
>r>r@r?)rr
�fromkeysrrr�assertIsInstancer�r�rlrj�zipr-r8r)
rr�r�r�Zudr�r�r�r��resr)r\rKr	�
test_fromkeys�sB
(zDictTest.test_fromkeyscCs�dddd�}|�|��|�|�|��|�|�|��dddd��|��}d|d<|�||�|�i��i�|�t|jd�dS)Nrrr3r4rX)rr8r�assertNotEqualrr)rrKr8rrr	�	test_copy1szDictTest.test_copyc	Cs�dD]�}t�|d||d�}|j|d��vi}t|�D]}|||<q:|��}|�||�|�||�d|d<|�||�|�t|�t|�d�Wd�q1s�0YqdS)N)r�rr��i'i��r)�	dict_sizer�r�r)	r�	randrangeZsubTestr-r8rrr�rV)rr�rKr$�d2rrr	�test_copy_fuzz>s�
zDictTest.test_copy_fuzzcCsPGdd�d�}|�}iddi|difD]$}|��}|�t�|�t�|��q&dS)Nc@seZdZdS)z0DictTest.test_copy_maintains_tracking.<locals>.ANrrrrr	�AOsr�r>r�val)r8r�gc�
is_tracked)rr�r�rKr�rrr	�test_copy_maintains_trackingNs
z%DictTest.test_copy_maintains_trackingcCs>dd�td�D�}td�D]
}||=q|��}|�||�dS)NcSsi|]
}||�qSrr�r#r'rrr	r�_r*z1DictTest.test_copy_noncompact.<locals>.<dictcomp>r�i�)r-r8r)rrKr'r�rrr	�test_copy_noncompactXs
zDictTest.test_copy_noncompactcCs�i}|�|�d�d�|�|�dd�d�ddd�}|�|�d�d�|�|�dd�d�|�|�d�d�|�|�dd�d�|�t|j�|�t|jddd�dS)Nr@r3rrrEr>)r9�getrrrrNrrr	�test_getes
zDictTest.test_getcs�i}|�|�d�d�|�dg�|�|�d�d�|�dg��d�|�|ddd�|�dg��d�|�t|d�d�|�t|j�Gdd�dt��G�fd	d
�d
t�}|�}d||<d|_	|��|j|g�dS)
NZkey0r�r3rrXrc@seZdZdS)z%DictTest.test_setdefault.<locals>.ExcNrrrrr	r\}r*r\cseZdZdZ�fdd�ZdS)z)DictTest.test_setdefault.<locals>.BadHashFcs|jr���ndSdSrdrerr[rr	r_�sz2DictTest.test_setdefault.<locals>.BadHash.__hash__Nrgrr[rr	rhsrhrbT)
r9�
setdefault�appendrrVrrrlrjrf)rrKrhrmrr[r	�test_setdefaultqszDictTest.test_setdefaultcCsdGdd�dt�}|�}|di}|�}|�|g�|�|jd�|�|jd�|�|j|jd�dS)Nc@s$eZdZdd�Zdd�Zdd�ZdS)z/DictTest.test_setdefault_atomic.<locals>.HashedcSsd|_d|_dS�Nr��
hash_count�eq_countrrrr	ru�sz8DictTest.test_setdefault_atomic.<locals>.Hashed.__init__cSs|jd7_dS�Nrrb�r�rrrr	r_�sz8DictTest.test_setdefault_atomic.<locals>.Hashed.__hash__cSs|jd7_t|�t|�kSr{�r��idrYrrr	r]�sz6DictTest.test_setdefault_atomic.<locals>.Hashed.__eq__N�rrrrur_r]rrrr	�Hashed�sr�r�r)rjr�rr�r��rr�Zhashed1�yZhashed2rrr	�test_setdefault_atomic�s
zDictTest.test_setdefault_atomicc
CspGdd�dt�}|�}|dddddddddi}|�}g||<|�|jd�|�|jd�|�|j|jd�dS)Nc@s$eZdZdd�Zdd�Zdd�ZdS)z6DictTest.test_setitem_atomic_at_resize.<locals>.HashedcSsd|_d|_dSr�r�rrrr	ru�sz?DictTest.test_setitem_atomic_at_resize.<locals>.Hashed.__init__cSs|jd7_dSr�r�rrrr	r_�sz?DictTest.test_setitem_atomic_at_resize.<locals>.Hashed.__hash__cSs|jd7_t|�t|�kSr{r�rYrrr	r]�sz=DictTest.test_setitem_atomic_at_resize.<locals>.Hashed.__eq__Nr�rrrr	r��sr�r�rrrr3)rjrr�r�r�rrr	�test_setitem_atomic_at_resize�s
z&DictTest.test_setitem_atomic_at_resizecCs�dD]�}td�D]�}d|}i}i}t|�D]$}||t|�<|dkr,||t|�<q,|dkrb|��}t|�D]Z}|��\}}}	|�|t|��|��\}
}}|�|t|
��|�|dko�|	|k�qj|�|�|�|�qqi}
|�t|
j�dS)N)���r�rr)	r-rJr8�popitemr�intrSrrk)r�copymodeZlog2size�sizer>r?r$�ka�va�taZkbZvb�tbrKrrr	�test_popitem�s*
zDictTest.test_popitemcs�i}d\}}|||<|�t|jd�|�|�|�|�|�t|�d�|�t|j|�|�|�||�|�|||<|�|�|d�|�|�t|j�Gdd�dt��G�fdd�dt�}|�}d	||<d
|_|��|j|�dS)N)r��defZghirrc@seZdZdS)zDictTest.test_pop.<locals>.ExcNrrrrr	r\�r*r\cseZdZdZ�fdd�ZdS)z"DictTest.test_pop.<locals>.BadHashFcs|jr���ndSdSrdrerr[rr	r_�sz+DictTest.test_pop.<locals>.BadHash.__hash__Nrgrr[rr	rh�srhrbT)	rrk�poprrVrrlrjrf)rrKr'r(rhrmrr[r	�test_pop�s"zDictTest.test_popcCsPi}d|d<|�t��&|D]}d||d<qWd�n1sB0YdSr{�r�RuntimeError�rrKr$rrr	�test_mutating_iteration�s
z DictTest.test_mutating_iterationcCsRi}d|d<|�t��(|D]}|d=d|d<qWd�n1sD0YdSr�r�r�rrr	�test_mutating_iteration_delete�sz'DictTest.test_mutating_iteration_deletecCsVi}d|d<|�t��,|��D]}|d=d|d<q Wd�n1sH0YdSr�)rr�rMr�rrr	�*test_mutating_iteration_delete_over_valuessz3DictTest.test_mutating_iteration_delete_over_valuescCsVi}d|d<|�t��,|��D]}|d=d|d<q Wd�n1sH0YdSr��rr�r1r�rrr	�)test_mutating_iteration_delete_over_itemssz2DictTest.test_mutating_iteration_delete_over_itemscsPG�fdd�d���d�}�d�}|di}||f�_d||<|�||di�dS)Ncs,eZdZdZdd�Zdd�Z�fdd�ZdS)z/DictTest.test_mutating_lookup.<locals>.NastyKeyNcSs
||_dSr)r�)rr�rrr	rusz8DictTest.test_mutating_lookup.<locals>.NastyKey.__init__cSsdSr{rrrrr	r_sz8DictTest.test_mutating_lookup.<locals>.NastyKey.__hash__cs(�jr�j\}}d�_||=|j|jkSr)�mutate_dictr�)rrZr�r���NastyKeyrr	r] s

z6DictTest.test_mutating_lookup.<locals>.NastyKey.__eq__)rrrr�rur_r]rr�rr	r�sr�rr)r�r)rZkey1Zkey2rKrr�r	�test_mutating_lookups
zDictTest.test_mutating_lookupcs�i}|�t|�d�d|d<|�t|�d�i}||d<|�t|�d�Gdd�dt��G�fdd	�d	t�}d|�i}|��t|�dS)
Nz{}rrz{1: 2}z
{1: {...}}c@seZdZdS)zDictTest.test_repr.<locals>.ExcNrrrrr	r\7r*r\cseZdZ�fdd�ZdS)z#DictTest.test_repr.<locals>.BadReprcs
���dSrrrr[rr	�__repr__:sz,DictTest.test_repr.<locals>.BadRepr.__repr__N)rrrr�rr[rr	�BadRepr9sr�)rrJrlrjr)rrKr�rr[r	�	test_repr.s
zDictTest.test_reprcCs4i}tt��d�D]}d|i}q|�tt|�dS)Nrrr)r-�sys�getrecursionlimitr�RecursionErrorrJr�rrr	�test_repr_deep@s
zDictTest.test_repr_deepcs�|�ii�|�ddiddi�Gdd�dt��G�fdd�dt�}|�di}ddi}|����||kWd�n1s~0YdS)Nrrc@seZdZdS)zDictTest.test_eq.<locals>.ExcNrrrrr	r\Jr*r\cs eZdZ�fdd�Zdd�ZdS)z DictTest.test_eq.<locals>.BadCmpcs
���dSrrrYr[rr	r]Msz'DictTest.test_eq.<locals>.BadCmp.__eq__cSsdSr{rrrrr	r_Osz)DictTest.test_eq.<locals>.BadCmp.__hash__Nr`rr[rr	�BadCmpLsr�)rrlrjr)rr��d1r�rr[r	�test_eqFs
zDictTest.test_eqcCs |�dd��|�dd��dS)NcSs|��Sr)rH�rmrrr	�<lambda>Yr*z.DictTest.test_keys_contained.<locals>.<lambda>cSs|��Sr�r1r�rrr	r�Zr*)�helper_keys_containedrrrr	�test_keys_containedXszDictTest.test_keys_containedcCs�|t��}|t��}|ddd��}|dddd��}|dddd��}|dddd��}|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�|�||k�dS)NrrrPr3r4)rXrr3)r
rBrS)r�fn�emptyZempty2ZsmallerZlargerZlarger2Zlarger3rrr	r�\s<

zDictTest.helper_keys_containedcCs�Gdd�d�}d|�i}d|�i}|�t�� |��|��kWd�n1sR0Y|�t�� |��|��kWd�n1s�0Y|�t�� |��|��kWd�n1s�0Y|�t�� |��|��kWd�n1�s0Y|�|�d�}|�t�� |��|��kWd�n1�sL0Y|�t�� |��|��kWd�n1�s�0YdS)Nc@seZdZdd�ZdS)z9DictTest.test_errors_in_view_containment_check.<locals>.CcSst�dSr�r�rYrrr	r]�sz@DictTest.test_errors_in_view_containment_check.<locals>.C.__eq__N�rrrr]rrrr	�C�sr�rrPr�)rr�r�r�Zd3rrr	�%test_errors_in_view_containment_check�s 

...00z.DictTest.test_errors_in_view_containment_checkcCs�ddd���}dddd���}ddi��}|�||t��|�||ddh�|�||dh�|�||dh�|�||@ddh�|�||@t��|�||Bhd��|�||Adh�|�||Ahd��dS)	NrrrPr3r4rX>rrr3>rrrX)rHrrG�r�k1�k2Zk3rrr	�$test_dictview_set_operations_on_keys�sz-DictTest.test_dictview_set_operations_on_keyscCs�ddd���}dddd���}ddi��}|�||t��|�||ddh�|�||d	h�|�||d
h�|�||@ddh�|�||@t��|�||Bhd��|�||Ad	h�|�||Ahd��dS)
NrrrPr3r4rXr5r6r7�rXrX>r5r7r6>r�r5r6)r1rrGr�rrr	�%test_dictview_set_operations_on_items�sz.DictTest.test_dictview_set_operations_on_itemscCs�|�ddi��dhk�|�dhddi��k�|�ddi��dhBddh�|�dhddi��Bddh�|�ddi��dhk�|�dhddi��k�|�ddi��dhBddh�|�dhddi��Bddh�dS)Nrrr5)rBrHrr1rrrr	�"test_dictview_mixed_set_operations�sz+DictTest.test_dictview_mixed_set_operationsc
Cs�|�ttd��|�tid��Gdd�dt�}|ddd��}|�|dd�|�|dd�|�d|�|�d|���|�|dd	�Gd
d�dt�}|�}|�t��}|d	Wd�n1s�0Y|�|jj	d�Gd
d�dt�}|�}|�t
��}|d	Wd�n1�s"0Y|�|jj	d�Gdd�dt�}|�}	|�t
��}|	d	Wd�n1�s|0Y|�|jj	d�dS)N�__missing__c@seZdZdd�ZdS)z DictTest.test_missing.<locals>.DcSsdSrdrr�rrr	r�sz,DictTest.test_missing.<locals>.D.__missing__N�rrrrrrrr	�D�srrrX)rr3rr3rbc@seZdZdd�ZdS)z DictTest.test_missing.<locals>.EcSst|��dSrr�r�rrr	r�sz,DictTest.test_missing.<locals>.E.__missing__Nrrrrr	�E�sr)rbc@seZdZdd�ZdS)z DictTest.test_missing.<locals>.FcSsdd�|_dS)NcSsdSrr)r�rrr	r��r*z;DictTest.test_missing.<locals>.F.__init__.<locals>.<lambda>)rrrrr	ru�sz)DictTest.test_missing.<locals>.F.__init__Nr�rrrr	�F�src@seZdZdS)z DictTest.test_missing.<locals>.GNrrrrr	�G�sr)rS�hasattrr
rrRrHrr��	exception�argsrk)
rrrKr�er@r�frr�rrr	�test_missing�s0&((zDictTest.test_missingcCsJi}|�t��}|dWd�n1s,0Y|�|jjd�dS)N�r)r)rrkrr	r
)rrKr@rrr	�test_tuple_keyerror�s&zDictTest.test_tuple_keyerrorc	s~Gdd�dt��G�fdd�d�}i}|�}|�}d||<dD]:}|����t|t��Wd�q>1sn0Yq>dS)Nc@seZdZdS)z.DictTest.test_bad_key.<locals>.CustomExceptionNrrrrr	�CustomException�srcs eZdZdd�Z�fdd�ZdS)z)DictTest.test_bad_key.<locals>.BadDictKeycSs
t|j�Sr)�hash�	__class__rrrr	r_sz2DictTest.test_bad_key.<locals>.BadDictKey.__hash__cst||j�r��|Sr)�
isinstancerrY�rrr	r]sz0DictTest.test_bad_key.<locals>.BadDictKey.__eq__N�rrrr_r]rrrr	�
BadDictKey�srr)z	d[x2] = 2z	z = d[x2]zx2 in dz	d.get(x2)zd.setdefault(x2, 42)z	d.pop(x2)zd.update({x2: 2}))rlr�exec�locals)rrrKZx1Zx2Zstmtrrr	�test_bad_key�s	zDictTest.test_bad_keycCsJi}td�D]}|||<qtd�D]
}||=q"tdd�D]}|||<q8dS)Nr��	)r-r�rrr	�test_resize1s
zDictTest.test_resize1cs`G��fdd�dt�}i�d�d�|�<d�|�<d�|�<d�|�<d�|�<d	�d
�d<dS)Ncs"eZdZdd�Z��fdd�ZdS)z DictTest.test_resize2.<locals>.XcSsdS)Nr�rrrrr	r_+sz)DictTest.test_resize2.<locals>.X.__hash__cs�r���dS�NF�rprY�rKZresizingrr	r]-sz'DictTest.test_resize2.<locals>.X.__eq__Nrrrrr	�X*srFrrr3rXr�Trr)rj�rrrrr	�test_resize2&s




zDictTest.test_resize2c
CsL|�t��*dddddddddd�}Wd�n1s:0Yi}dS)Nrr)r>r?r@rKrrr��h)r�ZeroDivisionErrorrNrrr	�$test_empty_presized_dict_in_freelist<s
�$z-DictTest.test_empty_presized_dict_in_freelistcCsxGdd�dt�}tjtjtjf}|D]N}|�}t�|�}|di}||�|_t|j�|_	~~t
��|�|�dd�q$dS)Nc@seZdZdS)z+DictTest.test_container_iterator.<locals>.CNrrrrr	r�Gsr�rzCycle was not collected)
rjr
r1rMrH�weakref�refr(�iterrmr��collectr9)rr�Zviewsr(�objr&�	containerrrr	�test_container_iteratorDs

z DictTest.test_container_iteratorcCs&t��t��|�t�|�|�dSr)r�r(rSr��r�trrr	�_not_trackedTszDictTest._not_trackedcCs8|�t�|�|�t��t��|�t�|�|�dSr)rBr�r�r(r,rrr	�_trackedZszDictTest._trackedcCs�dddgf\}}}}|�i�|�|d|||di�|�ddd��|�dtd��|�dt�i�|�dgi�|�dgfi�|�dii�|�dt�i�dS)	N��?r>)rNrrr)rr?)r)NTFr)r.r�rjr/rG)rrmr�r��wrrr	�test_track_literals`s
zDictTest.test_track_literalsc	CsVGdd�dt�}dddt�fg|�f\}}}}}t�}|�|�d|d<|�|�d||<|�|�d||<|�|�|�|���||d<|�|�|�|���d|d<|�|�|�|���t�}t�}||d<|�|�|�|�||d<|�|�t�|||g�}|�|�t�}|�|�|�|�t�||||g�}|�|�t�}|�|�|�|�t|||d	�}|�|�t||||d
�}|�|�t�}|j|||d	�|�|�|j|d�|�|�t||f|dfg�}|�|�t||f||fg�}|�|�t�}|�||f|dfg�|�|�|�||f||fg�|�|�dS)Nc@seZdZdS)z-DictTest.test_track_dynamic.<locals>.MyObjectNrrrrr	�MyObjectusr3r0r>rrr3rX�rmr�r�)rmr�r�r1)r1)rjr
r.r8r/r�r)	rr3rmr�r�r1�orK�ddrrr	�test_track_dynamicrsh 





















zDictTest.test_track_dynamiccCs Gdd�dt�}|�|��dS)Nc@seZdZdS)z,DictTest.test_track_subtypes.<locals>.MyDictNrrrrr	�MyDict�sr8)r
r/)rr8rrr	�test_track_subtypes�szDictTest.test_track_subtypescCsFGdd�d�}g}t|�D]&}|�}d\|_|_|_|�|j�q|S)Nc@seZdZdS)z(DictTest.make_shared_key_dict.<locals>.CNrrrrr	r��sr�r4)r-rmr�r�r��__dict__)rr0r�Zdictsr$r>rrr	�make_shared_key_dict�szDictTest.make_shared_key_dictcCs~|�d�\}}d|d<t�|�}d|d<|�dd�t�|�}d|d<|�||�|�t|�gd��|�t|�gd��dS)zMsplit table must be combined when setdefault()
        breaks insertion orderrrr>r?)rmr�r�r>r?)rmr�r�r?r>N)r;r��	getsizeofr��
assertGreaterr�list)rr>r?Zsize_aZsize_brrr	�test_splittable_setdefault�s

z#DictTest.test_splittable_setdefaultcCs�|�d�\}}t�|�}|d=|�t��|d=Wd�n1sD0Y|�t�|�|�|�t|�ddg�|�t|�gd��d|d<|�t|�gd��|�t|�gd��dS)	z*split table must be combined when del d[k]rr�Nrmr�r4rb�rmr�r�)r;r�r<rrkr=rr>�rr>r?�	orig_sizerrr	�test_splittable_del�s
$zDictTest.test_splittable_delcCs�|�d�\}}t�|�}|�d�|�t��|�d�Wd�n1sL0Y|�t�|�|�|�t|�ddg�|�t|�gd��d|d<|�t|�gd��|�t|�gd��dS)	z*split table must be combined when d.pop(k)rr�Nrmr�r4rbr@)	r;r�r<r�rrkr=rr>rArrr	�test_splittable_pop�s

(zDictTest.test_splittable_popcCsN|�d�\}}d|d<|�t��|�d�Wd�n1s@0YdS)z3pop a pending key in a split table should not crashrrXr>N)r;rrkr�)rr>r?rrr	�test_splittable_pop_pending�sz$DictTest.test_splittable_pop_pendingcCs�|�d�\}}t�|�}|��}|�|d�|�t��|d=Wd�n1sR0Y|�t�|�|�|�t|�ddg�|�t|�gd��dS)z-split table must be combined when d.popitem()r)r�r3r�Nrmr�r4)	r;r�r<r�rrrkr=r>)rr>r?rB�itemrrr	�test_splittable_popitems
$z DictTest.test_splittable_popitemcCs�ddl}Gdd�d�}|�}d|_|�|�|j��|j�d�|�|�|j��d|_|�|�|j��|�}d|_|�|�|j��|j��|�|�|j��d|_|�|�|j��dS)	z;setattr() must not convert combined table into split table.rNc@seZdZdS)z5DictTest.test_splittable_setattr_after_pop.<locals>.CNrrrrr	r�sr�rr>rr3)�	_testcapir>rBZdict_hassplittabler:r�rSr�)rrHr�r>rrr	�!test_splittable_setattr_after_pops 
z*DictTest.test_splittable_setattr_after_popc	Cs�ttjd�D]�}dddd�}t|�}t�||�}t�|�}|�t|�t|��t�|�}zt|�}Wnt	y|YqYn0t�||�}t�|�}||=|�t|�t|��qdS�Nrr>r?r@r4)
r-�pickle�HIGHEST_PROTOCOLr'�dumps�loadsrr>�nextr��r�proto�data�itrK�droprrr	�test_iterator_pickling5s



zDictTest.test_iterator_picklingcCs�ttjd�D]�}dddd�}t|���}t�||�}t�|�}|�|tj	j
�|�t|�|�t�|�}t
|�}t�||�}t�|�}||d=|�t|�|�qdS�Nrr>r?r@r4r)r-rKrLr'r1rMrNr�r�r��Iteratorrr
rO�rrQrRZitorgrKrSrTrrr	�test_itemiterator_picklingGs



z#DictTest.test_itemiterator_picklingcCs�ttjd�D]�}dddd�}t|���}t�||�}t�|�}|�t|�t|����t�|�}t	|�}t�||�}t�|�}t|�|g}|�t
|�t
t|�����qdSrJ)r-rKrLr'rMrMrNrr>rO�sorted�rrQrRrSrKrTrMrrr	�test_valuesiterator_pickling]s


z%DictTest.test_valuesiterator_picklingc	Cs�ttjd�D]�}dddd�}t|�}t�||�}t�|�}|�t|�tt|���t�|�}zt|�}Wnt	y�YqYn0t�||�}t�|�}||=|�t|�tt|���qdSrJ)
r-rKrL�reversedrMrNrr>rOr�rPrrr	�test_reverseiterator_picklingms



z&DictTest.test_reverseiterator_picklingcCs�ttjd�D]�}dddd�}t|���}t�||�}t�|�}|�|tj	j
�|�t|�|�t�|�}t
|�}t�||�}t�|�}||d=|�t|�|�qdSrV)r-rKrLr]r1rMrNr�r�r�rWrr
rOrXrrr	�!test_reverseitemiterator_picklings



z*DictTest.test_reverseitemiterator_picklingcCs�ttjd�D]�}dddd�}t|���}t�||�}t�|�}|�t|�tt|�����t�|�}t	|�}t�||�}t�|�}t|�|g}|�t
|�t
|����qdSrJ)r-rKrLr]rMrMrNrr>rOrZr[rrr	�#test_reversevaluesiterator_pickling�s


z,DictTest.test_reversevaluesiterator_picklingcCsZGdd�d�}|d�}Gdd�dt�}|�|jt||d���|�|j|j|d��dS)Nc@seZdZdd�ZdS)z=DictTest.test_instance_dict_getattr_str_subclass.<locals>.FoocSs
||_dSr)�msg)rrarrr	ru�szFDictTest.test_instance_dict_getattr_str_subclass.<locals>.Foo.__init__Nr�rrrr	�Foo�srbZ123c@seZdZdS)z>DictTest.test_instance_dict_getattr_str_subclass.<locals>._strNrrrrr	�_str�srcra)�strrra�getattrr:)rrbrrcrrr	�'test_instance_dict_getattr_str_subclass�s
z0DictTest.test_instance_dict_getattr_str_subclasscCs<Gdd�d�}|�}d|jd<d|_|�|jddd��dS)Nc@seZdZdS)zFDictTest.test_object_set_item_single_instance_non_str_key.<locals>.FooNrrrrr	rb�r*rbrr>)rr>)r:r>r)rrbrrrr	�0test_object_set_item_single_instance_non_str_key�s

z9DictTest.test_object_set_item_single_instance_non_str_keycs@G��fdd�d���fdd�dD��t��D]}|�|<q.dS)NcseZdZ��fdd�ZdS)z4DictTest.check_reentrant_insertion.<locals>.Mutatingcs���dSrrr�rK�mutaterr	�__del__�sz<DictTest.check_reentrant_insertion.<locals>.Mutating.__del__N�rrrrjrrhrr	�Mutating�srlcsi|]}|���qSrrr�)rlrr	r��r*z6DictTest.check_reentrant_insertion.<locals>.<dictcomp>Zabcdefghijklmnopqr)r>)rrir'r)rlrKrir	�check_reentrant_insertion�sz"DictTest.check_reentrant_insertioncs>dd�}��|��fdd�}��|�dd�}��|�dS)NcSsd|d<dS)Nr�r?rrtrrr	ri�sz1DictTest.test_reentrant_insertion.<locals>.mutatecs|��j�|��dSr)rr:rprtrrr	ri�scSs|r|��qdSr)r�rtrrr	ri�s)rm)rrirrr	�test_reentrant_insertion�s

z!DictTest.test_reentrant_insertioncsZG�fdd�d�}dd�tdd�D�}t|��d�|�<|�dddi}|�t|j��dS)Ncs eZdZdd�Z�fdd�ZdS)z)DictTest.test_merge_and_mutate.<locals>.XcSsdSr�rrrrr	r_�sz2DictTest.test_merge_and_mutate.<locals>.X.__hash__cs���dSrr)rr5�rZrr	r]�sz0DictTest.test_merge_and_mutate.<locals>.X.__eq__Nrrrorr	r�srcSsg|]}|df�qS)rrr"rrr	r%�r*z2DictTest.test_merge_and_mutate.<locals>.<listcomp>ri9r)r-r
rr�r)rr�lrKrror	�test_merge_and_mutate�s
zDictTest.test_merge_and_mutatecCsHt�|tt�t�|dd�t�t�|dd�t�t�|dd�t�dS)NcSst|���Sr)r'rHrtrrr	r��r*z4DictTest.test_free_after_iterating.<locals>.<lambda>cSst|���Sr)r'rMrtrrr	r��r*cSst|���Sr)r'r1rtrrr	r��r*)rZcheck_free_after_iteratingr'r
rrrr	�test_free_after_iterating�sz"DictTest.test_free_after_iteratingcspG��fdd�d�}|�di�|�|�i�|���k�G�fdd�d�}d|�i}dt�i�|�|�k�dS)Ncs,eZdZ�fdd�Z�fdd�Zdd�ZdS)z9DictTest.test_equal_operator_modifying_operand.<locals>.Xcs���dSrrr)�dict_brr	rj�szADictTest.test_equal_operator_modifying_operand.<locals>.X.__del__cs���dS�NTrrY)�dict_arr	r]�sz@DictTest.test_equal_operator_modifying_operand.<locals>.X.__eq__cSsdS�N�
rrrrr	r_�szBDictTest.test_equal_operator_modifying_operand.<locals>.X.__hash__N)rrrrjr]r_r)rursrr	r�srrcseZdZ�fdd�ZdS)z9DictTest.test_equal_operator_modifying_operand.<locals>.Ycs���dSrtrrY��dict_drr	r]�sz@DictTest.test_equal_operator_modifying_operand.<locals>.Y.__eq__Nr�rrxrr	�Y�srz)rBrG)rrrzZdict_cr)rursryr	�%test_equal_operator_modifying_operand�s


z.DictTest.test_equal_operator_modifying_operandcsRG�fdd�dt�}i�|d�d|d�di�zt���WntyLYn0dS)Ncs eZdZdd�Z�fdd�ZdS)zADictTest.test_fromkeys_operator_modifying_dict_operand.<locals>.XcSsdSrvrrrrr	r_szJDictTest.test_fromkeys_operator_modifying_dict_operand.<locals>.X.__hash__cst��dkr���dS�NrF�rVrprYrtrr	r]szHDictTest.test_fromkeys_operator_modifying_dict_operand.<locals>.X.__eq__Nrrrtrr	rsrrr�r�r
r�r�r rrtr	�-test_fromkeys_operator_modifying_dict_operands	z6DictTest.test_fromkeys_operator_modifying_dict_operandcsNG�fdd�dt�}i�|d�|d�h�zt���WntyHYn0dS)Ncs eZdZdd�Z�fdd�ZdS)z@DictTest.test_fromkeys_operator_modifying_set_operand.<locals>.XcSsdSrvrrrrr	r_szIDictTest.test_fromkeys_operator_modifying_set_operand.<locals>.X.__hash__cst��dkr���dSr|r}rYrtrr	r]szGDictTest.test_fromkeys_operator_modifying_set_operand.<locals>.X.__eq__Nrrrtrr	rsrrrr~r rrtr	�,test_fromkeys_operator_modifying_set_operands	z5DictTest.test_fromkeys_operator_modifying_set_operandcs2G�fdd�d�}dt�i�d|�f���vdS)NcseZdZ�fdd�ZdS)z:DictTest.test_dictitems_contains_use_after_free.<locals>.Xcs���tSr�rpr;rYrtrr	r](szADictTest.test_dictitems_contains_use_after_free.<locals>.X.__eq__Nr�rrtrr	r'srr)rGr1r rrtr	�&test_dictitems_contains_use_after_free&s
z/DictTest.test_dictitems_contains_use_after_freecs0G�fdd�dt�}|�di�|�d�v�dS)Ncs eZdZ�fdd�Zdd�ZdS)z4DictTest.test_dict_contain_use_after_free.<locals>.Scs���tSrr�rYrtrr	r]2sz;DictTest.test_dict_contain_use_after_free.<locals>.S.__eq__cSstd�S)N�test)rrrrr	r_6sz=DictTest.test_dict_contain_use_after_free.<locals>.S.__hash__Nr`rrtrr	�S1sr�r�r�)rdrS)rr�rrtr	� test_dict_contain_use_after_free/s
z)DictTest.test_dict_contain_use_after_freecs*G�fdd�d�}|�dg�t�g�dS)NcseZdZ�fdd�ZdS)z,DictTest.test_init_use_after_free.<locals>.Xcsg�dd�<dSrvrr�Zpairrr	r_>sz5DictTest.test_init_use_after_free.<locals>.X.__hash__N)rrrr_rr�rr	r=sr�{)r
r rr�r	�test_init_use_after_free<s
z!DictTest.test_init_use_after_freecsFG�fdd�dt���fdd�td�D���fdd�}|�t|�dS)NcseZdZ�fdd�ZdS)z;DictTest.test_oob_indexing_dictiter_iternextitem.<locals>.Xcs���dSrrrrtrr	rjGszCDictTest.test_oob_indexing_dictiter_iternextitem.<locals>.X.__del__Nrkrrtrr	rFsrcsi|]}|�|��qSrrr")rrr	r�Jr*zDDictTest.test_oob_indexing_dictiter_iternextitem.<locals>.<dictcomp>rcs&���D]}|ddkrd�d<qdS)Nrrr�)�resultrtrr	�iter_and_mutateLszIDictTest.test_oob_indexing_dictiter_iternextitem.<locals>.iter_and_mutate)r�r-rr�)rr�r)rrKr	�'test_oob_indexing_dictiter_iternextitemEsz0DictTest.test_oob_indexing_dictiter_iternextitemcCsDdddddd�}|d=t|�}|�t|�td��|�tt|�dS)	Nrrrr3rX)r>r?�foor@rKr�Zdcba)r]rr>rr�rO)rrK�rrrr	�
test_reversedSs
zDictTest.test_reversedcCs�|�tti��g�|�tti����g�|�tti����g�|�tti����g�|�ttt���g�|�ttt�����g�|�ttt�����g�|�ttt�����g�dSr)rr>r]r1rMrHr
rrrr	�$test_reverse_iterator_for_empty_dictZsz-DictTest.test_reverse_iterator_for_empty_dictcCsnGdd�d�}|�tt|dd�j��ddg�|�tt|dd�j��dg�|�tt|dd�j��dg�dS)Nc@seZdZdd�ZdS)zADictTest.test_reverse_iterator_for_shared_shared_dicts.<locals>.AcSs|r
||_|r||_dSr)rmr�)rrmr�rrr	ruks
zJDictTest.test_reverse_iterator_for_shared_shared_dicts.<locals>.A.__init__Nr�rrrr	r�jsr�rrr�rmr)rr>r]r:)rr�rrr	�-test_reverse_iterator_for_shared_shared_dictsis z6DictTest.test_reverse_iterator_for_shared_shared_dictscCs�t�ddg�}|�d�t|���}t|�}|�t|���|�Gdd�dt�}gd�}||�}|�|tt|�����Gdd�dt�}||�}|�|ddd	�tt|�����dS)
N�r>r�r?rr>c@seZdZdS)z1DictTest.test_dict_copy_order.<locals>.CustomDictNrrrrr	�
CustomDict}sr�)r�r�)r@r3c@s eZdZdd�ZeZdd�ZdS)z9DictTest.test_dict_copy_order.<locals>.CustomReversedDictcSsttt�|���Sr)r]r>r
rHrrrr	rH�sz>DictTest.test_dict_copy_order.<locals>.CustomReversedDict.keyscSstt�|��Sr)r]r
r1rrrr	r1�sz?DictTest.test_dict_copy_order.<locals>.CustomReversedDict.itemsN)rrrrHr~r1rrrr	�CustomReversedDict�sr�r�)r��OrderedDict�move_to_endr>r1r
r)rZodZexpectedr8r��pairsrKr�rrr	�test_dict_copy_orderss
	zDictTest.test_dict_copy_ordercCs0tdgi���}t��|�t�t|���dSr)r'r1r�r(rBr�rO�rrSrrr	�test_dict_items_result_gc�sz"DictTest.test_dict_items_result_gccCs0tdgi���}t��|�t�t|���dSr)r]r1r�r(rBr�rOr�rrr	�"test_dict_items_result_gc_reversed�sz+DictTest.test_dict_items_result_gc_reversedN)Wrrrrrr2rArDrLrOrQrUrWrnrqr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrr
rrrr!r$r+r.r/r�cpython_onlyr2r7r9r;r?rCrDrErGrIrUrYr\r^r_r`rfrgrmrnrqrrr{rr�r�r�r�r�r�r�r�r�r�r�rrrr	r
s�	 
	&L:


!			,+

?







	
	

rc@seZdZejdd��ZdS)�CAPITestcs�ddlm}dddd�}|�||dtd��d�|�||dtd��d�|�||d	td	��d�|�t|gdtd��|�t|idtd��Gd
d�dt��G�fdd
�d
�}|�|�}}|di}|�|||t|��d�|��|||t|��dS)Nr)�dict_getitem_knownhashrrr3r4rmr�r�c@seZdZdS)z,CAPITest.test_getitem_knownhash.<locals>.ExcNrrrrr	r\�r*r\cs eZdZ�fdd�Zdd�ZdS)z.CAPITest.test_getitem_knownhash.<locals>.BadEqcs��dSrrrYr[rr	r]�sz5CAPITest.test_getitem_knownhash.<locals>.BadEq.__eq__cSsdS)N�rrrrr	r_�sz7CAPITest.test_getitem_knownhash.<locals>.BadEq.__hash__Nr`rr[rr	ra�sra)rHr�rrr�SystemErrorrkrl)rr�rKrar�r�rr[r	�test_getitem_knownhash�szCAPITest.test_getitem_knownhashN)rrrrr�r�rrrr	r��sr�)�
mapping_testsc@seZdZeZdS)�GeneralMappingTestsN)rrrr
�	type2testrrrr	r��sr�c@seZdZdS)�DictNrrrrr	r��sr�c@seZdZeZdS)�SubclassMappingTestsN)rrrr�r�rrrr	r��sr��__main__)r��collections.abcr�rKrr r�Zunittestr%r�rZTestCaserr�r�ZBasicTestMappingProtocolr�r
r�r�r�mainrrrr	�<module>s8#

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists