Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 52.15.85.225
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : test_weakset.cpython-310.pyc
o

ab�=�@s�ddlZddlmZddlZddlmZddlmZm	Z	ddl
Z
ddlZddlm
Z
Gdd�d�ZGdd	�d	�ZGd
d�dej�ZedkrKe��dSdS)
�N)�WeakSet)�
UserString)�Set�
MutableSet)�supportc@seZdZdS)�FooN)�__name__�
__module__�__qualname__�rr�:/usr/local/python-3.10/lib/python3.10/test/test_weakset.pyrsrc@�eZdZdd�ZdS)�RefCyclecCs
||_dS�N)�cycle��selfrrr�__init__s
zRefCycle.__init__N)rr	r
rrrrrr�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)^�TestWeakSetcCs�dd�dD�|_dd�dD�|_dd�dD�|_dd�d	D�|_d
d�dD�|_t|j�|_t|j�|_t|j�|_dd�t	j
D�|_t|j�|_t
�|j�|_td
�|_t|jg�|_dS)NcS�g|]}t|��qSr��ustr��.0�crrr�
<listcomp>�z%TestWeakSet.setUp.<locals>.<listcomp>��a�brcSrrrrrrrrr)�x�y�zcSrrrrrrrrr�abcSrrrrrrrrrZabcdecSrrrrrrrrr�defcSrrrrrrrrr�F)�items�items2Zab_itemsZabcde_itemsZ	def_itemsr�
ab_weakset�
abcde_weakset�def_weakset�string�
ascii_letters�letters�s�dict�fromkeys�dr�obj�fsrrrr�setUps
zTestWeakSet.setUpcCs@tt�}tt�D]}|dks|�d�rq|�||d|�qdS)NZ
test_c_api�_zWeakSet missing method )�dirr�set�
startswith�assertIn)rZweaksetmethods�methodrrr�test_methods%s��zTestWeakSet.test_methodscCs|�ttgd�dS)N�)�assertRaises�	TypeErrorrrrrr�test_new_or_init-�zTestWeakSet.test_new_or_initcCsL|�t|j�t|j��|�t|j�d�|`t��|�t|j�d�dS)N�r)�assertEqual�lenr/r2r4r3r�
gc_collectrrrr�test_len0s
zTestWeakSet.test_lencCsd|jD]}|�||jv||jv�q|�d|j�|�|j|j�|`t�	�|�t
d�|j�dS)NrBr&)r.rCr/r2�assertNotInr:r3r4rrEr�rrrrr�
test_contains7s
zTestWeakSet.test_containscCs|j�|j�}|jD]}|�||v||jvp||jv�q
|�|jt|j��|�t|�t�|�	t
|jjgg�ttt
jttfD]}t|j|j�}||j�}|�|j�|�|�~qA|�t|�t|j�t|j��|j��t��|�t|�t|j�t|j��dSr)r/�unionr(r.rCr2rr'�typer>r?r8�	frozensetr0r1�list�tuplerD�pop�gc�collect)r�ur�Cr!rrr�
test_unionAs
"
 
$zTestWeakSet.test_unioncCsB|j�|j�}|�|jt|j�B|�|�|jt|j�B|�dSr)r/rJr(rCr8rL�r�irrr�test_orR�zTestWeakSet.test_orcCs�t|j�}|�|j�}|jD]}|�||v||jvo||jv�q|�|t|j��|�t|�t�tttj	t
tfD]}tg�}|�|�||j��|�q:|�t
|�t
|j��|j��t��|�t
|�t
|j��dSr)rr.�intersectionr(rCrKr8rLr0r1rMrNr'rDrOrPrQ)rr/rVrrSr!rrr�test_intersectionWs

"
zTestWeakSet.test_intersectioncCs6|�|j�t|j���|�|j�t|j���dSr)�
assertTruer/�
isdisjointrr(r.rrrr�test_isdisjointfszTestWeakSet.test_isdisjointcCsB|j�|j�}|�|jt|j�@|�|�|jt|j�@|�dSr)r/rYr(rCr8rLrUrrr�test_andjrXzTestWeakSet.test_andcCsv|j�|j�}|jD]}|�||v||jvo||jv�q
|�|jt|j��|�t|�t�|�	t
|jjgg�dSr)r/�
differencer(r.rCr2rr'rKr>r?�rrVrrrr�test_differenceos
"zTestWeakSet.test_differencecCsB|j�|j�}|�|jt|j�|�|�|jt|j�|�dSr)r/r_r(rCr8rLrUrrr�test_subwrXzTestWeakSet.test_subcCs�|j�|j�}|jD]}|�||v||jv||jvA�q
|�|jt|j��|�t|�t�|�	t
|jjgg�|�t|�t|j�t|j��|j��t
��|�t|�t|j�t|j��dSr)r/�symmetric_differencer(r.rCr2rr'rKr>r?rDrOrPrQr`rrr�test_symmetric_difference|s
" 
$z%TestWeakSet.test_symmetric_differencecCsB|j�|j�}|�|jt|j�A|�|�|jt|j�A|�dSr)r/rcr(rCr8rLrUrrr�test_xor�rXzTestWeakSet.test_xorcCs�|�|j|jk�|�|j|jk�|�|j|jk�|�|j|jk�|�|j|jk�|�td��d��|�td��d��|�td��d��|�td��d��dS)Nr�abcZcbs)r[r)r*�assertFalser+r8�issubset�
issupersetrrrr�test_sub_and_super�szTestWeakSet.test_sub_and_supercCsL|�|j|jk�|�|j|jk�|�|j|jk�|�t�t�k�dSr)r[r)r*rgr+rrrrr�test_lt��zTestWeakSet.test_ltcCsL|�|j|jk�|�|j|jk�|�|j|jk�|�t�t�k�dSr)r[r*r)rgr+rrrrr�test_gt�rlzTestWeakSet.test_gtcCs<tdd�td�D��}|D]}||_||_t|g�|_q
dS)Ncss�|]}t�VqdSr)r�rrVrrr�	<genexpr>�s�z&TestWeakSet.test_gc.<locals>.<genexpr>i�)r�ranger�subr8)rr/�elemrrr�test_gc�s�zTestWeakSet.test_gccCsTGdd�dt�}|�}t�}|�|�|�||�|�|�|�|�|�|�dS)Nc@r
)z5TestWeakSet.test_subclass_with_custom_hash.<locals>.HcSstt|�d@�S)Ni���)�int�idrrrr�__hash__�sz>TestWeakSet.test_subclass_with_custom_hash.<locals>.H.__hash__N)rr	r
rvrrrr�H�rrw)rr8�addr:�remove�discard)rrwr/�frrr�test_subclass_with_custom_hash�s


z*TestWeakSet.test_subclass_with_custom_hashcCsdt�}|�|j�|�||j�|�|j�|�|t|j��|�t|j|d�|�t|jd�dS)Nr=rB)rrr'rCr/r(r>r?)rr/rrr�	test_init�szTestWeakSet.test_initcCs*t|j�}t|�}|�t|�t|��dSr)rr'�assertNotEqualru)rr/�trrr�test_constructor_identity�s
z%TestWeakSet.test_constructor_identitycCs|�tt|j�dSr)r>r?�hashr/rrrr�	test_hash�rAzTestWeakSet.test_hashcCs2|j��|�|jtg��|�t|j�d�dS)Nr)r/�clearrCrrDrrrr�
test_clear�s
zTestWeakSet.test_clearcCs2|j��}|�|j|�|�t|j�t|��dSr)r/�copyrCr~ru)r�duprrr�	test_copy�s
zTestWeakSet.test_copycCs�td�}|j�|�|�||j�|j��}|j�|�|�|j|�|�t|jjg�|j�t	��t
��|�t
|j�dk�|j�|j�|�t
|j�dk�dS)N�QrB)rr/rxr:r�rCr>r?r4rrrEr[rDr3)rr!r�rrr�test_add�s
zTestWeakSet.test_addcCsJtd�}|j�|�|�||j�|�t|jj|�|�t|jjg�dS)Nr)rr/ryrGr>�KeyErrorr?)rr!rrr�test_remove�s
zTestWeakSet.test_removecCsNtd�td�}}|j�|�|�||j�|j�|�|�t|jjg�dS)Nrr�)rr/rzrGr>r?)rr�qrrr�test_discard�s
zTestWeakSet.test_discardcCs@tt|j��D]}|j��}|�||j�q|�t|jj�dSr)rprDr/rOrGr>r�)rrVrrrrr�test_pop�s
zTestWeakSet.test_popcCsR|j�|j�}|�|d�|j|jD]	}|�||j�q|�t|jjgg�dSr)r/�updater(rCr'r:r>r?�rZretvalrrrr�test_update�s
zTestWeakSet.test_updatecCs6|j�t|j��|j|jD]	}|�||j�qdSr)r/r�r8r(r'r:rHrrr�test_update_set�s�zTestWeakSet.test_update_setcCs8|jt|j�O_|j|jD]	}|�||j�qdSr)r/r8r(r'r:rHrrr�test_iors�zTestWeakSet.test_iorcCsv|j�|j�}|�|d�|j|jD]}||jvr'||jvr'|�||j�q|�||j�q|�t|jjgg�dSr)	r/�intersection_updater(rCr'r:rGr>r?r�rrr�test_intersection_update�z$TestWeakSet.test_intersection_updatecCs\|jt|j�M_|j|jD]}||jvr$||jvr$|�||j�q|�||j�qdSr�r/r8r(r'r:rGrHrrr�	test_iand��zTestWeakSet.test_iandcCs�|j�|j�}|�|d�|j|jD]}||jvr'||jvr'|�||j�q|�||j�q|�t|jjgg�|�t|jj	gg�dSr)
r/�difference_updater(rCr'r:rGr>r?�symmetric_difference_updater�rrr�test_difference_updatesz"TestWeakSet.test_difference_updatecCs\|jt|j�8_|j|jD]}||jvr$||jvr$|�||j�q|�||j�qdSrr�rHrrr�	test_isub$r�zTestWeakSet.test_isubcCsv|j�|j�}|�|d�|j|jD]}||jv||jvAr'|�||j�q|�||j�q|�t|jjgg�dSr)	r/r�r(rCr'r:rGr>r?r�rrr� test_symmetric_difference_update,r�z,TestWeakSet.test_symmetric_difference_updatecCs\|jt|j�N_|j|jD]}||jv||jvAr$|�||j�q|�||j�qdSrr�rHrrr�	test_ixor6r�zTestWeakSet.test_ixorcCsp|j��}||O}|�||j�||M}|�||j�||8}|�|t��|j��}||N}|�|t��dSr)r/r�rCr)rrrrr�test_inplace_on_self>s

z TestWeakSet.test_inplace_on_selfcCs�|�|j|jk�|�|jt|j�k�|�|jt|j�k�|�|jt|j�k�|�|jt|j�k�|�|jttg�k�|�|jdk�dS)NrB)	r[r/rr'rgr8rMrNrrrrr�test_eqJszTestWeakSet.test_eqcCs4|�|jt|j�k�t�}t�}|�||k�dSr)r[r/r8r'rrg)r�s1�s2rrr�test_neTszTestWeakSet.test_necCsrdd�dD�}t|�}t|�}t|�|d=t��|�tt|��t|�t|�dg�~|�t|�t|��dS)NcSrrrrrrrr]rzATestWeakSet.test_weak_destroy_while_iterating.<locals>.<listcomp>r���rB)	r�iter�nextrPrQr:rDrMrC)rr'r/�itrrr�!test_weak_destroy_while_iteratingZs$z-TestWeakSet.test_weak_destroy_while_iteratingcsjdd�tjD��t���tj��fdd��}|��}|�|��Wd�n1s*wY|��}|�t�j|�Wd�n1sEwY|�|��|��
}��	|�Wd�n1scwY|�
|�����}|��
}��|�Wd�n1s�wY|�
t��t|��|��}���Wd�n1s�wY|�
t��d�dS)NcSrrrrrrrrlrzLTestWeakSet.test_weak_destroy_and_mutate_while_iterating.<locals>.<listcomp>c3sZ�z(t��}ttt|���}tt�����}||krt|�t��|VWd}dSd}wr)r�r�strr�rOrPrQ)r��yieldedrR�r'r/rr�testcontextns�zMTestWeakSet.test_weak_destroy_and_mutate_while_iterating.<locals>.testcontextr)r,r-r�
contextlib�contextmanagerrGr>r�ryrxr:r�r�rCrDr�)rr�rRrrr�r�,test_weak_destroy_and_mutate_while_iteratingjs0����
�z8TestWeakSet.test_weak_destroy_and_mutate_while_iteratingcCs�d}dd�t|�D�}t|�}~t|�}zt|�Wn	ty#Ynwt��t|�}~t��t��t|�}|�|d�|�	|d�dS)N�cS�g|]}t��qSr�rrnrrrr��z/TestWeakSet.test_len_cycles.<locals>.<listcomp>)rrBr)
rprr�r��
StopIterationrPrQrDr:rC)r�Nr'r/r��n1�n2rrr�test_len_cycles�s$�zTestWeakSet.test_len_cyclesc	Cs�|jtjgt���R�tdd�D]S}d}t�d�t�|||�dd�t|�D�}t|�}~t|�}zt|�Wn	t	yBYnwt
|�}~t
|�}|�|d�|�||�|�|d�|�||�qdS)NrB�dr�rcSr�rr�rnrrrr�r�z-TestWeakSet.test_len_race.<locals>.<listcomp>)
Z
addCleanuprPZ
set_thresholdZ
get_thresholdrprQrr�r�r�rDZassertGreaterEqualZassertLessEqual)r�thr�r'r/r�r�r�rrr�
test_len_race�s,
��zTestWeakSet.test_len_racecCst|j�t|jj�ks
J�dSr)�reprr/�datarrrr�	test_repr�szTestWeakSet.test_reprcCs |�|jt�|�|jt�dSr)ZassertIsInstancer/rrrrrr�test_abc�szTestWeakSet.test_abcN)1rr	r
r5r<r@rFrIrTrWrZr]r^rarbrdrerjrkrmrsr|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�rrrrrs^

	


%r�__main__)Zunittest�weakrefrr,�collectionsrr�collections.abcrrrPr��testrrrZTestCaserr�mainrrrr�<module>s"3�
© 2025 GrazzMean