Your IP : 216.73.216.85


Current Path : /opt/alt/python35/lib64/python3.5/test/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/test/__pycache__/test_threading_local.cpython-35.opt-2.pyc



���]��@s�ddlZddlmZddlmZddlZddlZejd�Zejd�Z	ddl
Z
Gdd�de�Zdd	�Z
Gd
d�d�ZGdd
�d
eje�ZGdd�deje�Zdd�Zedkr�e�dS)�N)�DocTestSuite)�support�_thread�	threadingc@seZdZdS)�WeakN)�__name__�
__module__�__qualname__�r
r
�9/opt/alt/python35/lib64/python3.5/test_threading_local.pyr
srcCs,t�}||_|jtj|��dS)N)r�weak�append�weakref�ref)�local�weaklistrr
r
r�targets		rc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS)�
BaseLocalTestcCs+|jd�|jd�|jd�dS)N��2�d)�_local_refs)�selfr
r
r�test_local_refss

zBaseLocalTest.test_local_refscCs
|j�}g}xFt|�D]8}tjdtd||f�}|j�|j�qW~tj�|j	t
|�|�dd�|D�}|jt
|�|d|f�d|_tj�dd�|D�}|jt
|�|d|f|t
|�f�dS)Nr�argscSs%g|]}|�dkr|�qS)Nr
)�.0rr
r
r�
<listcomp>*s	z-BaseLocalTest._local_refs.<locals>.<listcomp>�cSs%g|]}|�dkr|�qS)Nr
)rrr
r
rr0s	)
�_local�ranger�Threadr�start�join�gc�collect�assertEqual�lenZassertInZsomeothervar)r�nrr�i�tZdeadlistr
r
rrs

 	
zBaseLocalTest._local_refsc	s}ddl�G�fdd�d�j�}|����fdd��tj�fdd�td�D���WdQRXdS)	Nrcs"eZdZ�fdd�ZdS)z)BaseLocalTest.test_derived.<locals>.Localcs�jd�dS)Ng{�G�z�?)�sleep)r)�timer
r�__init__:sz2BaseLocalTest.test_derived.<locals>.Local.__init__N)rrr	r,r
)r+r
r�Local9sr-cs |�_�j�j|�dS)N)�xr%)r()rrr
r�f>s	z%BaseLocalTest.test_derived.<locals>.fc3s*|] }tjd�d|f�VqdS)rrN)rr )rr()r/r
r�	<genexpr>Csz-BaseLocalTest.test_derived.<locals>.<genexpr>�
)r+rrZ
start_threadsr)rr-r
)r/rrr+r�test_derived3s	zBaseLocalTest.test_derivedcs�Gdd�d|j��d�d�tj��tj�������fdd�}tjd|�}|j��j��fdd�td	�D���j�|j�|j	��dS)
Nc@seZdZdS)z7BaseLocalTest.test_derived_cycle_dealloc.<locals>.LocalN)rrr	r
r
r
rr-Isr-Fcsd��g}|j|�d|d_~tj��j��j�tdd��D���dS)N�barrcss|]}t|d�VqdS)�fooN)�hasattr)rrr
r
rr0_szFBaseLocalTest.test_derived_cycle_dealloc.<locals>.f.<locals>.<genexpr>)r
r4r#r$�set�wait�all)�cycle)r-�e1�e2�locals�passedr
rr/Ps




z3BaseLocalTest.test_derived_cycle_dealloc.<locals>.frcsg|]}���qSr
r
)rr()r-r
rrhs	z<BaseLocalTest.test_derived_cycle_dealloc.<locals>.<listcomp>r1)
rr�Eventr r!r7rr6r"Z
assertTrue)rr/r)r
)r-r:r;r<r=r�test_derived_cycle_deallocGs



z(BaseLocalTest.test_derived_cycle_dealloccCscGdd�d|j�}|dd�|d�|jt|jdd�|jt|jd�dS)Nc@seZdZdd�ZdS)z-BaseLocalTest.test_arguments.<locals>.MyLocalc_sdS)Nr
)rr�kwargsr
r
rr,qsz6BaseLocalTest.test_arguments.<locals>.MyLocal.__init__N)rrr	r,r
r
r
r�MyLocalpsrA�ar)r�assertRaises�	TypeError)rrAr
r
r�test_argumentsns


zBaseLocalTest.test_argumentscs�d�_���tj��tj�����fdd�}���fdd�}tjd|�}|j��j�tjd|�}|j�|j��j�|j��j�j�j�dS)Nz No error message set or cleared.cs0d�_d�_�`�j��j�dS)Nr4r3)r.�yr6r7r
)r:r;�objr
r�f1s
		
z)BaseLocalTest._test_one_class.<locals>.f1csUy
�j}Wntk
r*d�_Yn'Xd|�f�_tjj�j�dS)N�z'Incorrectly got value %r from class %r
)r.�AttributeError�_failed�sys�stderr�write)r4)�crGrr
r�f2�s

z)BaseLocalTest._test_one_class.<locals>.f2r)	rKrr>r r!r7r"r6ZassertFalse)rrOrHrP�t1Zt2r
)rOr:r;rGrr�_test_one_classys		





zBaseLocalTest._test_one_classcCs|j|j�dS)N)rRr)rr
r
r�test_threading_local�sz"BaseLocalTest.test_threading_localcCs*Gdd�d|j�}|j|�dS)Nc@seZdZdS)zBBaseLocalTest.test_threading_local_subclass.<locals>.LocalSubclassN)rrr	r
r
r
r�
LocalSubclass�srT)rrR)rrTr
r
r�test_threading_local_subclass�sz+BaseLocalTest.test_threading_local_subclasscCsl|�}d|_|j|jddi�|jt��i|_WdQRX|jt��|`WdQRXdS)N�r.)r.r%�__dict__rCrJ)r�clsrGr
r
r�_test_dict_attribute�s		z"BaseLocalTest._test_dict_attributecCs|j|j�dS)N)rYr)rr
r
r�test_dict_attribute�sz!BaseLocalTest.test_dict_attributecCs*Gdd�d|j�}|j|�dS)Nc@seZdZdS)zABaseLocalTest.test_dict_attribute_subclass.<locals>.LocalSubclassN)rrr	r
r
r
rrT�srT)rrY)rrTr
r
r�test_dict_attribute_subclass�sz*BaseLocalTest.test_dict_attribute_subclasscCsgGdd�d�}|�}|j�|_||j_tj|�}~tj�|j|��dS)Nc@seZdZdS)z.BaseLocalTest.test_cycle_collection.<locals>.XN)rrr	r
r
r
r�X�sr\)rrr.rrr#r$ZassertIsNone)rr\r.�wrr
r
r�test_cycle_collection�s	
z#BaseLocalTest.test_cycle_collectionN)rrr	rrr2r?rErRrSrUrYrZr[r^r
r
r
rrs'$	rc@seZdZejZdS)�ThreadLocalTestN)rrr	rrr
r
r
rr_�sr_c@seZdZejZdS)�PyThreadingLocalTestN)rrr	�_threading_localrrr
r
r
rr`�sr`cs�tj�}|jtd��|jtjt��|jtjt��tj�dd�}�fdd�}|jtdd|d|��t	j
|�dS)NracSstjt_dS)N)rrrar)�testr
r
r�setUp�sztest_main.<locals>.setUpcs
�t_dS)N)rar)rb)�
local_origr
r�tearDown�sztest_main.<locals>.tearDownrcre)�unittestZ	TestSuiteZaddTestrZ	makeSuiter_r`rarrZrun_unittest)Zsuitercrer
)rdr�	test_main�s	rg�__main__)rf�doctestrrbrrr#�
import_modulerrra�objectrrrZTestCaser_r`rgrr
r
r
r�<module>s�