403Webshell
Server IP : 118.27.122.248  /  Your IP : 216.73.216.230
Web Server : Apache
System : Linux web0264.sh.tyo1 4.18.0-553.79.1.lve.el7h.x86_64 #1 SMP Wed Oct 15 16:34:46 UTC 2025 x86_64
User : c9415830 ( 11735)
PHP Version : 8.4.17
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/alt/python36/lib64/python3.6/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/alt/python36/lib64/python3.6/test/__pycache__/test_ordered_dict.cpython-36.pyc
3

�w2_�s�@s�ddlZddlZddlZddlZddlZddlmZmZddlZddl	Z	ddl
Z
ddlZddlm
Z
ddlmZmZejddgd�Zejddgd�Zejd	d
��ZGdd�d�ZGd
d�dee
j�ZGdd�de
j�Zx"d)j�D]Zeeeeee��q�W[e
jed�Gdd�dee
j��ZGdd�de�Z Gdd�de�Z!Gdd�dej"�Z#e
jed�Gdd �d ej"��Z$Gd!d"�d"ej"�Z%e
jed�Gd#d$�d$ej"��Z&e'd%k�r�e
j(�dS)*�N)�	randrange�shuffle)�MutableMapping)�
mapping_tests�support�collections�_collections)Zblocked)Zfreshccs0tj|}|tj|<z
dVWd|tj|<XdS)N)�sys�modules)�nameZreplacementZoriginal_module�r�;/opt/alt/python36/lib64/python3.6/test/test_ordered_dict.py�replaced_modules



rc@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]S)^�OrderedDictTestscCs`|j}|jt��|ddgd�WdQRXdddddg}|jt|t|��j��|�|jt|ft|��j��|�|jt||�j��|�|jt|d d!d"d#gdd
d�j��|�|jt|d
d�j��d$g�|jt|d
d�j��d%g�|jt|d
�|jt|ff�|jt|j�|d&d'd(d)d*g�}|jd+d,gddd�|jt|j��d-d.d/d0d1d2d3g�dS)4N�a��b��c��d��e��	)rr�*)�selfr)�otherr�,�7�f��)�grr#)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)r r!)rr)rr)rr)rr)rr)r r!)r#r")	�OrderedDict�assertRaises�	TypeError�assertEqual�sorted�dict�items�list�__init__)rr$�pairsrrrr
�	test_inits$zOrderedDictTests.test_initcCsJ|j}dddddddg}t|�||�}|f|�}|jt|j��|�dS)Nrrrrrrrrrrr r!r#r")rr)rr)rr)rr)rr)r r!)r#r")r$rr'r+r*)rr$r*Zargdictrrrr
�test_4687s
zOrderedDictTests.test_468cCs$|j}|jt��|�jddgd�WdQRXd d!d"d#d$g}|�}|jt|��|jt|j��|�|�}|jft|��|jt|j��|�|�}|j|�|jt|j��|�|�}|jd%d&d'd(gdd
d�|jt|j��|�|�}|jd
d�|jt|j��d)g�|�}|jid�|jt|j��difg�|�}|jd
dddd�|jtt|j���d*d+d,d-g�|d.d/d0d1d2g�}|jd3d4gddd�|jt|j��d5d6d7d8d9d:d;g�|jt|�jd�|jt|�jff�|jt|j�|jt|�jd�|jt|�jff�|jt|j�dS)<Nrrrrrrrrrrr)rr�)rr)rrr!r"�)�red�bluerrr3r2rrr )r#rr#r)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr)rr0)r3r!)rr")r2r)rr1)rr)rr)rr)rr)rr)rr)r r!)rr)rr)rr)rr)rr)r r!)r#r")	r$r%r&�updater)r'r(r*r+)rr$r-�odrrrr
�test_update?sH
zOrderedDictTests.test_updatecs4g�G�fdd�d�}|j|��|j�dg�dS)Ncs$eZdZ�fdd�Z�fdd�ZdS)z.OrderedDictTests.test_init_calls.<locals>.Spamcs�jd�fS)N�keys)�append)r)�callsrr
r7ps
z3OrderedDictTests.test_init_calls.<locals>.Spam.keyscs�jd�fS)Nr*)r8)r)r9rr
r*ss
z4OrderedDictTests.test_init_calls.<locals>.Spam.itemsN)�__name__�
__module__�__qualname__r7r*r)r9rr
�Spamosr=r7)r$r')rr=r)r9r
�test_init_callsmsz OrderedDictTests.test_init_callscCs�|j}|jd�}|jt|j��dd�dD��|jddd�}|jt|j��dd�dD��|jddd�}|jt|j��dd�dD��dS)N�abccSsg|]}|df�qS)Nr)�.0rrrr
�
<listcomp>}sz2OrderedDictTests.test_fromkeys.<locals>.<listcomp>)�valuecSsg|]}|df�qS)Nr)r@rrrr
rAsrcSsg|]}|df�qS)rr)r@rrrr
rA�s)r$�fromkeysr'r+r*)rr$r5rrr
�
test_fromkeyszs
zOrderedDictTests.test_fromkeyscCs(|j}|j|�t�|jt|t��dS)N)r$�assertIsInstancer�
assertTrue�
issubclass)rr$rrr
�test_abc�szOrderedDictTests.test_abccCsV|j}ddddddg}t|�||�}|jt|�t|��|j�|jt|�d
�dS)Nrrrrrrrrrrr r!r)rr)rr)rr)rr)rr)r r!)r$rr'�len�clear)rr$r-r5rrr
�
test_clear�szOrderedDictTests.test_clearc
Csx|j}d
dddddg}||�}|d=|jd|�|jt��|d=WdQRX|jt|j��|dd�|dd��dS)Nrrrrrrrrrrr r!)rr)rr)rr)rr)rr)r r!)r$�assertNotInr%�KeyErrorr'r+r*)rr$r-r5rrr
�test_delitem�szOrderedDictTests.test_delitemc	CsL|j}|dddddg�}d|d<d|d
<|jt|j��ddddddg�dS)Nrrrrrrrrrr�
�r )rr)rr)rr)rr)rr)rr)rr)rrO)rr)rr)r rP)r$r'r+r*)rr$r5rrr
�test_setitem�szOrderedDictTests.test_setitemcCs"|j}ddddddg}t|�||�}|jt|�d
d�|D��|jt|j��dd�|D��|jt|j��dd�|D��|jt|j��|�|jtt|��dd�t|�D��|jtt|j���dd�t|�D��|jtt|j���dd�t|�D��|jtt|j���tt|���dS)Nrrrrrrrrrrr r!cSsg|]}|d�qS)rr)r@�trrr
rA�sz3OrderedDictTests.test_iterators.<locals>.<listcomp>cSsg|]}|d�qS)rr)r@rRrrr
rA�scSsg|]}|d�qS)rr)r@rRrrr
rA�scSsg|]}|d�qS)rr)r@rRrrr
rA�scSsg|]}|d�qS)rr)r@rRrrr
rA�scSsg|]}|d�qS)rr)r@rRrrr
rA�s)rr)rr)rr)rr)rr)r r!)r$rr'r+r7�valuesr*�reversed)rr$r-r5rrr
�test_iterators�szOrderedDictTests.test_iteratorsc	CsH|j}|jd�}t|�}t|�}||=|jt��t|�WdQRXdS)Nr?)r$rC�iter�nextr%�	Exception)rr$r5�it�keyrrr
�%test_detect_deletion_during_iteration�s
z6OrderedDictTests.test_detect_deletion_during_iterationc
Cs�|j}|jt��|ddgd�WdQRXdddddg}||�}|jt|�dd�|D��|jt|j��d
d�|D��|jt|j��dd�|D��|jt|j��|�|jtt|��tdd�t|�D���dS)NrrrrrrrrrrcSsg|]}|d�qS)rr)r@rRrrr
rA�sz:OrderedDictTests.test_sorted_iterators.<locals>.<listcomp>cSsg|]}|d�qS)rr)r@rRrrr
rA�scSsg|]}|d�qS)rr)r@rRrrr
rA�scSsg|]}|d�qS)rr)r@rRrrr
rA�s)rr)rr)rr)rr)rr)rr)rr)	r$r%r&r'r(r7rSr*rT)rr$r-r5rrr
�test_sorted_iterators�sz&OrderedDictTests.test_sorted_iteratorscCs�|j}|�}g}|jt|�|�|jt|j��|�|jt|j��|�|jt|j��|�|jtt|��|�|jtt|j���|�|jtt|j���|�|jtt|j���|�dS)N)r$r'r+r7rSr*rT)rr$r5�emptyrrr
�test_iterators_empty�sz%OrderedDictTests.test_iterators_emptyc
Csv|j}ddddddg}t|�||�}x|rB|j|j�|j��q(W|jt��|j�WdQRX|jt|�d
�dS)Nrrrrrrrrrrr r!r)rr)rr)rr)rr)rr)r r!)r$rr'�popitem�popr%rMrI)rr$r-r5rrr
�test_popitem�szOrderedDictTests.test_popitemcCsf|j}dd�td�D�}||�}xtd�D]}|jd�q*W|jd�|jdd�|jt|�d�dS)NcSsg|]}||f�qSrr)r@�irrr
rA�sz6OrderedDictTests.test_popitem_last.<locals>.<listcomp>�r1T)�lastrP)r$�ranger_r'rI)rr$r-�objrbrrr
�test_popitem_last�s
z"OrderedDictTests.test_popitem_lastcCs*|j}ddddddg}t|�||�}t|�x&|rT|j�\}}|j|j|�|�q0W|jt��|jd
�WdQRX|jt|�d�|j|j|d�d�Gdd�d|�}|dd�}|j|jdd
�d
�|j|jdd�d�|j|jdd�d�|j|jddd�d�|jt��|jd�WdQRXdS)Nrrrrrrrrrrr r!Zxyzri90c@seZdZdd�ZdS)z*OrderedDictTests.test_pop.<locals>.MissingcSsdS)Nrr)rrZrrr
�__missing__�sz6OrderedDictTests.test_pop.<locals>.Missing.__missing__N)r:r;r<rhrrrr
�Missing�sri)r)�default)rr)rr)rr)rr)rr)r r!)r$rr`r'r%rMrI)rr$r-r5�k�vri�mrrr
�test_pop�s(
zOrderedDictTests.test_popcCs�|j}d
dddddg}t|�||�}||�}|j||�|dd�|dd�}||�}|j||�|j|t|��|jt|�|�|j|||dd���dS)Nrrrrrrrrrrr r!)rr)rr)rr)rr)rr)r r!���)r$rr'ZassertNotEqualr))rr$r-Zod1Zod2rrr
�
test_equality	szOrderedDictTests.test_equalitycs��j}ddddddg}||����fd
d�}|�j��|tj���|tj���td�j��LxDttjd�D]2}�j|d��|tj	tj
�|���WdQRXqrWWdQRX|tt����|�}|j
��||�||���dS)Nrrrrrrrrrrr r!csnd|�f}�j|�|��j|���jt|j��t�j����jt|�t����jt|�t���dS)Nz
copy: %s
od: %s)�assertIsNotr'r+r*rI�type)�dup�msg)r5rrr
�checksz,OrderedDictTests.test_copying.<locals>.checkr)�proto)rr)rr)rr)rr)rr)r r!)r$�copy�deepcopyr�modulere�pickle�HIGHEST_PROTOCOL�subTest�loads�dumps�eval�reprr4)rr$r-rurvZupdate_testr)r5rr
�test_copyings .
zOrderedDictTests.test_copyingcCsB|j}ddddddg}||�}|jtd
d�|j�dD���dS)Nrrrrrrrrrrr r!css|]}t|�tkVqdS)N)rrr+)r@Zpairrrr
�	<genexpr><sz5OrderedDictTests.test_yaml_linkage.<locals>.<genexpr>)rr)rr)rr)rr)rr)r r!)r$rF�all�
__reduce__)rr$r-r5rrr
�test_yaml_linkage4sz"OrderedDictTests.test_yaml_linkagecCsr|j}ddddddg}||�}|j|jt�|j|j�d�d
|_|j|jdd
�|j|j�ddd
i�dS)Nrrrrrrrrrrr r!rO�x)rr)rr)rr)rr)rr)r r!)r$rE�__dict__r)�assertIsNoner�r�r')rr$r-r5rrr
�test_reduce_not_too_fat>sz(OrderedDictTests.test_reduce_not_too_fatcCs�|j}|�}||d<td|j��dx\tdtjd�D]H}tjtj||��}|j||�|j	t
|j��dg�|j|d|�q4WWdQRXdS)Nrrro)
r$rryrerzr{r}r~rqr'r+r7ZassertIs)rr$r5rvrsrrr
�test_pickle_recursiveIsz&OrderedDictTests.test_pickle_recursivecCsT|j}|ddddddg�}|jt|�d
�|jtt|��|�|jt|��d�dS)Nrrrrrrrrrrr r!zIOrderedDict([('c', 1), ('b', 2), ('a', 3), ('d', 4), ('e', 5), ('f', 6)])z
OrderedDict())rr)rr)rr)rr)rr)r r!)r$r'r�r)rr$r5rrr
�	test_reprVs
zOrderedDictTests.test_reprcCs,|j}|jd�}||d<|jt|�d�dS)Nr?r�z@OrderedDict([('a', None), ('b', None), ('c', None), ('x', ...)]))r$rCr'r�)rr$r5rrr
�test_repr_recursive^s


z$OrderedDictTests.test_repr_recursivecCsP|j}|�}|j�|d<t|�}|j|t�|j�|d<t|�}|j|t�dS)Nr)r$rSr�rE�strr*)rr$r5�rrrr
�test_repr_recursive_valuesfsz+OrderedDictTests.test_repr_recursive_valuescCs�|j}ddddddg}t|�||�}t|j��}|j|jdd
�d�|jt|j��|�|j|jdd
�d
�|jt|j��dd�|j|jddd�d�Gdd�d|�}|j|�jd
d�d�dS)Nrrrrrrrrrrr r!rOr�r#r)rjc@seZdZdd�ZdS)z1OrderedDictTests.test_setdefault.<locals>.MissingcSsdS)Nrr)rrZrrr
rh�sz=OrderedDictTests.test_setdefault.<locals>.Missing.__missing__N)r:r;r<rhrrrr
ri�sri)rr)rr)rr)rr)rr)r r!ro)r�rO)r$rr+r*r'�
setdefault)rr$r-r5Z
pair_orderrirrr
�test_setdefaulttsz OrderedDictTests.test_setdefaultcCs\|j}|�}d|d<d|d<|d=|jt|j��dg�d|d<|jt|j��ddg�dS)Nrrrr)rr)rr)rr)r$r'r+r*)rr$r5rrr
�
test_reinsert�szOrderedDictTests.test_reinsertcCs|j}|jd�}|jt|�td��|jd�|jt|�td��|jdd�|jt|�td��|jdd�|jt|�td��|jd�|jt|�td��|jddd	�|jt|�td
��|jt��|jd�WdQRX|jt��|jdd�WdQRXdS)N�abcderZabdecrZcabderrF)rdZbcader�)r$rCr'r+�move_to_endr%rM)rr$r5rrr
�test_move_to_end�s"


z!OrderedDictTests.test_move_to_endcCs�|j}|jd�}|jddd�|jt|�td��|jddd�|jt|�td��|jd�}|jd�|jt|�td��|jd�|jt|�td	��dS)
Nr?rF)rdZcabrZacbZbcaZbac)r$rCr�r'r+)rr$r5rrr
�test_move_to_end_issue25406�s



z,OrderedDictTests.test_move_to_end_issue25406cCs6|j}tdd�}|f|�}|jtj|�tj|��dS)Nr)r)r$r)Z
assertGreaterr	�	getsizeof)rr$rr5rrr
�test_sizeof�s

zOrderedDictTests.test_sizeofcCsL|j}dj�}|j|�}|j|j�t|�j��|j|j�t|�j��dS)Nz@the quick brown fox jumped over a lazy dog yesterday before dawn)r$�splitrCr'r7r)r*)rr$�sr5rrr
�
test_views�s

zOrderedDictTests.test_viewscCs<|j}Gdd�d|�}d	d
dg}|jt||�j��|�dS)Nc@seZdZdd�ZdS)z3OrderedDictTests.test_override_update.<locals>.MyODc_s
t��dS)N)rX)r�args�kwdsrrr
r4�sz:OrderedDictTests.test_override_update.<locals>.MyOD.updateN)r:r;r<r4rrrr
�MyOD�sr�rrrrrr)rr)rr)rr)r$r'r+r*)rr$r�r*rrr
�test_override_update�s
z%OrderedDictTests.test_override_updatecCs8|j}d}xtd�D]}|d|fg�}qW~tj�dS)Ni�)r$rer�
gc_collect)rr$rf�_rrr
�test_highly_nested�sz#OrderedDictTests.test_highly_nestedcsn|j}g�G�fdd�d|�}d}x$td�D]}|d|fg�}||_q,W~tj�|j�tttd����dS)NcseZdZ�fdd�ZdS)z:OrderedDictTests.test_highly_nested_subclass.<locals>.MyODcs�j|j�dS)N)r8rb)r)�deletedrr
�__del__�szBOrderedDictTests.test_highly_nested_subclass.<locals>.MyOD.__del__N)r:r;r<r�r)r�rr
r��sr��d)r$rerbrr�r'r+rT)rr$r�rfrbr)r�r
�test_highly_nested_subclass�s
z,OrderedDictTests.test_highly_nested_subclassc	Cs�|j}Gdd�d�}dd�}d}||�}||�}|||��}|�}d||<d||<d||<d|d<||=||=|jt|j��|dfdg�dS)	Nc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
z9OrderedDictTests.test_delitem_hash_collision.<locals>.KeycSs||_tt|��|_dS)N)�_hashr��idrB)r�hashrrr
r,�szBOrderedDictTests.test_delitem_hash_collision.<locals>.Key.__init__cSs|jS)N)r�)rrrr
�__hash__�szBOrderedDictTests.test_delitem_hash_collision.<locals>.Key.__hash__cSs&y|j|jkStk
r dSXdS)NF)rB�AttributeError)rrrrr
�__eq__�sz@OrderedDictTests.test_delitem_hash_collision.<locals>.Key.__eq__cSs|jS)N)rB)rrrr
�__repr__�szBOrderedDictTests.test_delitem_hash_collision.<locals>.Key.__repr__N)r:r;r<r,r�r�r�rrrr
�Key�sr�cSs$d}||d@}|d>||dS)Nr1rrr)r�ZMINSIZErbrrr
�
blocking_hash�szCOrderedDictTests.test_delitem_hash_collision.<locals>.blocking_hashr.�after)r�.)r$r'r+r*)	rr$r�r�Z	COLLIDINGrZZ	collidingZblockingr5rrr
�test_delitem_hash_collision�sz,OrderedDictTests.test_delitem_hash_collisioncCs�|j}Gdd�d�}|�}xtd�D]}|�}|||<q$W|jt��t|j��WdQRX|jt��t|j��WdQRX|jt��t|�WdQRX|jt��|j�WdQRXdS)Nc@seZdZdd�ZdS)z-OrderedDictTests.test_issue24347.<locals>.KeycSstd�S)Ni��)r)rrrr
r�sz6OrderedDictTests.test_issue24347.<locals>.Key.__hash__N)r:r;r<r�rrrr
r�sr�r�)	r$rer%rMr+rSr*r�rw)rr$r�r5rbrZrrr
�test_issue24347sz OrderedDictTests.test_issue24347cCs0|j}Gdd�d�}|�}d||�<|j�dS)Nc@seZdZdd�ZdS)z-OrderedDictTests.test_issue24348.<locals>.KeycSsdS)Nrr)rrrr
r�&sz6OrderedDictTests.test_issue24348.<locals>.Key.__hash__N)r:r;r<r�rrrr
r�%sr�r)r$r_)rr$r�r5rrr
�test_issue24348"s

z OrderedDictTests.test_issue24348cCsT|j}|�}xBdD]:}x4dD],}t|�dkr8|jdd�||}|||<qWqWdS)a�
        dict resizes after a certain number of insertion operations,
        whether or not there were deletions that freed up slots in the
        hash table.  During fast node lookup, OrderedDict must correctly
        respond to all resizes, even if the current "size" is the same
        as the old one.  We verify that here by forcing a dict resize
        on a sparse odict and then perform an operation that should
        trigger an odict resize (e.g. popitem).  One key aspect here is
        that we will keep the size of the odict the same at each popitem
        call.  This verifies that we handled the dict resize properly.
        Z0123456789ABCDEFrF)rdN)r$rIr_)rr$r5Zc0Zc1rZrrr
�test_issue24667.s

z OrderedDictTests.test_issue24667cCs.|j}|�}tj|dd�|jdt|��dS)N�spamr�NULL)r$r)�__setitem__rLr�)rr$r5rrr
�test_dict_setitemGsz"OrderedDictTests.test_dict_setitemc	CsJ|j}|�}d|d<d|d<tj|d�|jt��t|�WdQRXdS)Nrr�r�ham)r$r)�__delitem__r%rMr�)rr$r5rrr
�test_dict_delitemMsz"OrderedDictTests.test_dict_delitemcCs:|j}|�}d|d<d|d<tj|�|jdt|��dS)Nrr�rr�r�)r$r)rJrLr�)rr$r5rrr
�test_dict_clearVs
z OrderedDictTests.test_dict_clearc	CsJ|j}|�}d|d<d|d<tj|d�|jt��t|�WdQRXdS)Nrr�rr�)r$r)r`r%rMr�)rr$r5rrr
�
test_dict_pop^szOrderedDictTests.test_dict_popc	CsH|j}|�}d|d<d|d<tj|�|jt��t|�WdQRXdS)Nrr�rr�)r$r)r_r%rMr�)rr$r5rrr
�test_dict_popitemgs
z"OrderedDictTests.test_dict_popitemcCs.|j}|�}tj|dd�|jdt|��dS)Nr�rr�)r$r)r�rLr�)rr$r5rrr
�test_dict_setdefaultpsz%OrderedDictTests.test_dict_setdefaultcCs.|j}|�}tj|dg�|jdt|��dS)Nr�rr�)r�r)r$r)r4rLr�)rr$r5rrr
�test_dict_updatevsz!OrderedDictTests.test_dict_updatecsF|j�G�fdd�d�}d|j|<tj|�}~tj�|j|��dS)NcseZdZ��ZdS)z/OrderedDictTests.test_reference_loop.<locals>.AN)r:r;r<r5r)r$rr
�Asr�)r$r5�weakref�ref�gcZcollectr�)rr�r�r)r$r
�test_reference_loop|s

z$OrderedDictTests.test_reference_loopcCsPtj|t|j�tj|dd�|j�tj|dd�|j�tj|dd�|j�dS)NcSst|j��S)N)rVr7)rrrr
�<lambda>�sz<OrderedDictTests.test_free_after_iterating.<locals>.<lambda>cSst|j��S)N)rVrS)rrrr
r��scSst|j��S)N)rVr*)rrrr
r��s)rZcheck_free_after_iteratingrVr$)rrrr
�test_free_after_iterating�sz*OrderedDictTests.test_free_after_iteratingN)1r:r;r<r.r/r6r>rDrHrKrNrQrUr[r\r^rargrnrpr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr
rs\.
		




		'			rc@seZdZeZejZdS)�PurePythonOrderedDictTestsN)r:r;r<�py_collryr$rrrr
r��sr�c@seZdZdZeZeZdS)�CPythonBuiltinDictTestszaBuiltin dict preserves insertion order.

    Reuse some of tests in OrderedDict selectively.
    N)r:r;r<�__doc__�builtinsryr)r$rrrr
r��sr�z7test_init test_update test_abc test_clear test_delitem z3test_setitem test_detect_deletion_during_iteration z0test_popitem test_reinsert test_override_update z/test_highly_nested test_highly_nested_subclass ztest_delitem_hash_collision z0requires the C version of the collections modulec@s:eZdZeZejZejZejdd��Z	dd�Z
dd�ZdS)�CPythonOrderedDictTestscCs||j}tj}tj}|j}|d�|d�}|d�}|d�}|d�}|�}	||	|dd|�d	|	_||	|dd|�|	jd
d�td�D��||	|d|dd|d|�|	jd
d�tdd�D��||	|d|dd|d|�||	j	�|d��||	j
�|d��||	j�|d��|d�}
|t|	�|
�|t|	j	��|
�|t|	j
��|
�|t|	j��|
�dS)NZnQ2PZ3PnPn2PZ2nP2nZn2P�PZPn2Pr1rrcSsg|]}||f�qSrr)r@rbrrr
rA�sz=CPythonOrderedDictTests.test_sizeof_exact.<locals>.<listcomp>rcSsg|]}||f�qSrr)r@rbrrr
rA�srO�ZiP2n2PZnQ2P3PnPn2P)
r$�struct�calcsizerZcalcobjsize�check_sizeofr�r4rer7r*rSrV)rr$r��sizeruZ	basicsizeZ	entrysize�pZnodesizer5Zitersizerrr
�test_sizeof_exact�s0&&z)CPythonOrderedDictTests.test_sizeof_exactcCs�|j}|jd�}|jt|�td��|jt��2x*t|�D]\}}|j|�|j|d�q:WWdQRX|jt��x|D]}d|d<qxWWdQRX|jt��x|D]
}|d=q�WWdQRX|jt|�td��dS)Nr�rr rZbdeaf)	r$rCr'r+r%�RuntimeError�	enumerater�Z
assertLess)rr$r5rbrkrrr
� test_key_change_during_iteration�s



z8CPythonOrderedDictTests.test_key_change_during_iterationcCs�|j}ddddddg}||�}x�dD]�}t||�}t|��dd�}xxttjd�D]f}|j||d��Nt|��}t|�tj	||�}	tj
|	�}
|jt|
�|�|jt|�|�WdQRXqTWq$WdS)Nrrrrrrrrrrr r!r7rSr*)�method_nameZprotocol)rr)rr)rr)rr)rr)r r!)r7rSr*)r$�getattrr+rerzr{r|rVrWr~r}r')rr$r-r5r��methZexpectedrbrYr�Z	unpickledrrr
�test_iterators_pickling�s



z/CPythonOrderedDictTests.test_iterators_picklingN)r:r;r<�c_collryr$rr�Zcpython_onlyr�r�r�rrrr
r��s r�c@s"eZdZeZGdd�dej�ZdS)�"PurePythonOrderedDictSubclassTestsc@seZdZdS)z.PurePythonOrderedDictSubclassTests.OrderedDictN)r:r;r<rrrr
r$�sr$N)r:r;r<r�ryr$rrrr
r��sr�c@s"eZdZeZGdd�dej�ZdS)�CPythonOrderedDictSubclassTestsc@seZdZdS)z+CPythonOrderedDictSubclassTests.OrderedDictN)r:r;r<rrrr
r$�sr$N)r:r;r<r�ryr$rrrr
r��sr�c@s eZdZedd��Zdd�ZdS)�PurePythonGeneralMappingTestscCstj|_dS)N)r�r$�	type2test)�clsrrr
�
setUpClasssz(PurePythonGeneralMappingTests.setUpClasscCs|j�}|jt|j�dS)N)�_empty_mappingr%rMr_)rrrrr
rasz*PurePythonGeneralMappingTests.test_popitemN)r:r;r<�classmethodr�rarrrr
r��sr�c@s eZdZedd��Zdd�ZdS)�CPythonGeneralMappingTestscCstj|_dS)N)r�r$r�)r�rrr
r�
sz%CPythonGeneralMappingTests.setUpClasscCs|j�}|jt|j�dS)N)r�r%rMr_)rrrrr
rasz'CPythonGeneralMappingTests.test_popitemN)r:r;r<r�r�rarrrr
r�
sr�c@s eZdZedd��Zdd�ZdS)�PurePythonSubclassMappingTestscCsGdd�dtj�}||_dS)Nc@seZdZdS)z@PurePythonSubclassMappingTests.setUpClass.<locals>.MyOrderedDictN)r:r;r<rrrr
�
MyOrderedDictsr�)r�r$r�)r�r�rrr
r�sz)PurePythonSubclassMappingTests.setUpClasscCs|j�}|jt|j�dS)N)r�r%rMr_)rrrrr
rasz+PurePythonSubclassMappingTests.test_popitemN)r:r;r<r�r�rarrrr
r�sr�c@s eZdZedd��Zdd�ZdS)�CPythonSubclassMappingTestscCsGdd�dtj�}||_dS)Nc@seZdZdS)z=CPythonSubclassMappingTests.setUpClass.<locals>.MyOrderedDictN)r:r;r<rrrr
r�(sr�)r�r$r�)r�r�rrr
r�&sz&CPythonSubclassMappingTests.setUpClasscCs|j�}|jt|j�dS)N)r�r%rMr_)rrrrr
ra,sz(CPythonSubclassMappingTests.test_popitemN)r:r;r<r�r�rarrrr
r�#sr��__main__zjtest_init test_update test_abc test_clear test_delitem test_setitem test_detect_deletion_during_iteration z�test_init test_update test_abc test_clear test_delitem test_setitem test_detect_deletion_during_iteration test_popitem test_reinsert test_override_update z�test_init test_update test_abc test_clear test_delitem test_setitem test_detect_deletion_during_iteration test_popitem test_reinsert test_override_update test_highly_nested test_highly_nested_subclass z�test_init test_update test_abc test_clear test_delitem test_setitem test_detect_deletion_during_iteration test_popitem test_reinsert test_override_update test_highly_nested test_highly_nested_subclass test_delitem_hash_collision ))r��
contextlibrwr�rzZrandomrrr�r	Zunittestr��collections.abcrZtestrrZimport_fresh_moduler�r��contextmanagerrrZTestCaser�r�r��method�setattrr�Z
skipUnlessr�r�r�ZBasicTestMappingProtocolr�r�r�r�r:�mainrrrr
�<module>sL
u	I





Youez - 2016 - github.com/yon3zu
LinuXploit