Your IP : 216.73.216.213


Current Path : /opt/alt/python33/lib64/python3.3/test/__pycache__/
Upload File :
Current File : //opt/alt/python33/lib64/python3.3/test/__pycache__/test_thread.cpython-33.pyc

�
��fj c@sKddlZddlZddlZddlmZejd�ZddlZddlZddl	Z	ddlm
Z
dZdZej
�Zdd�ZGd	d
�d
ej�ZGdd�de�ZGd
d�d�ZGdd�de�ZGdd�de
j�ZGdd�dej�Zdd�ZedkrGe�ndS(iN(usupportu_thread(u
lock_testsi
ic	Cs'tjr#t�t|�WdQXndS(u2Helper function for printing out debugging output.N(usupportuverboseu_print_mutexuprint(uarg((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyu
verbose_prints	u
verbose_printcBs |EeZdZdd�ZdS(uBasicThreadTestcCsYtj�|_|jj�tj�|_tj�|_d|_d|_d|_dS(Ni(	uthreadu
allocate_locku
done_mutexuacquireu
running_mutexurandom_mutexucreatedurunningu
next_ident(uself((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyusetUps
		uBasicThreadTest.setUpN(u__name__u
__module__u__qualname__usetUp(u
__locals__((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyuBasicThreadTestsuBasicThreadTestcBs�|EeZdZdd�Zdd�Zdd�Zdd�Zeje	j
dkd�d
d��Zdd�Zdd�Z
dS(uThreadRunningTestsc
Csk|j�\|jd7_td|j�tj|j|jf�|jd7_|jd7_WdQXdS(Niucreating task %s(u
running_mutexu
next_identu
verbose_printuthreadustart_new_threadutaskucreatedurunning(uself((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyunewtask%s
uThreadRunningTests.newtaskcCs�|j�tj�d}WdQXtd|t|d�f�tj|�td|�|j�B|jd8_|jt	kr�|jdkr�|j
j�nWdQXdS(Ng��@utask %s will run for %susg��.Autask %s doneii(urandom_mutexurandomu
verbose_printuroundutimeusleepu
running_mutexurunningucreateduNUMTASKSu
done_mutexurelease(uselfuidentudelay((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutask-s


uThreadRunningTests.taskcCsFxtt�D]}|j�q
Wtd�|jj�td�dS(Nu waiting for tasks to complete...uall tasks done(urangeuNUMTASKSunewtasku
verbose_printu
done_mutexuacquire(uselfui((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutest_starting_threads8s


u(ThreadRunningTests.test_starting_threadscCsC|jtj�dd�tjd�|jtj�dd�dS(Niuinitial stack size is not 0ustack_size not reset to default(uassertEqualuthreadu
stack_size(uself((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutest_stack_size@s
u"ThreadRunningTests.test_stack_sizeuntuos2uposixu!test meant for nt, os2, and posixcCs$ytjd�Wn=tk
r/td�Yn"tjk
rP|jd�YnXd}xFdD]>}tj|�|jtj�|||�td|�q^Wxpd
D]h}td	|�d|_d|_xt	t
�D]}|j�q�Wtd
�|jj
�td�q�Wtjd�dS(Niu3caught expected ValueError setting stack_size(4096)u4platform does not support changing thread stack sizeu&stack_size(%d) failed - should succeediiiusuccessfully set stack_size(%d)utrying stack_size = (%d)u!waiting for all tasks to completeuall tasks done(iii(ii(uthreadu
stack_sizeu
ValueErroru
verbose_printuerroruskipTestuassertEqualu
next_identucreatedurangeuNUMTASKSunewtasku
done_mutexuacquire(uselfufail_msgutssui((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutest_nt_and_posix_stack_sizeGs*



		

u/ThreadRunningTests.test_nt_and_posix_stack_sizecs�tj�}tj���j�g���fdd�}tj|f�x�sftjd�qPW|jtj�|d��j�g�t	j
|�fdd��}~x�s�tjd�q�W|jtj�|�dS(Ncs%�jd��j��j�dS(N(uappenduNoneuacquireurelease((umutustarted(u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutaskks

u,ThreadRunningTests.test__count.<locals>.taskg{�G�z�?ics
�jd�S(N(uappenduNone(u_(udone(u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyu<lambda>ysu0ThreadRunningTests.test__count.<locals>.<lambda>(uthreadu_countu
allocate_lockuacquireustart_new_threadutimeusleepuassertEqualureleaseuweakrefuref(uselfuorigutaskuwr((udoneumutustartedu5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutest__countes 
	
	uThreadRunningTests.test__countc
s��fdd�}�fdd�}tj�}tj��tjd��c}|j�||_�j�tj|f��j�x#tj�|kr�tj	d�q�WWdQX|j
d|j��dS(Ncs�j�t�dS(N(ureleaseuSyntaxError((ustarted(u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutask�s
uCThreadRunningTests.test_save_exception_state_on_error.<locals>.taskcs0y
t�Wntk
rYnX�||�dS(N(u
ValueError(uselfuargs(u
real_write(u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyumywrite�s


uFThreadRunningTests.test_save_exception_state_on_error.<locals>.mywriteustderrg{�G�z�?u	Traceback(uthreadu_countu
allocate_lockusupportucaptured_outputuwriteuacquireustart_new_threadutimeusleepuassertInugetvalue(uselfutaskumywriteucustderr((u
real_writeustartedu5/opt/alt/python33/lib64/python3.3/test/test_thread.pyu"test_save_exception_state_on_errors		

u5ThreadRunningTests.test_save_exception_state_on_errorN(untuos2uposix(u__name__u
__module__u__qualname__unewtaskutaskutest_starting_threadsutest_stack_sizeuunittestuskipIfuosunameutest_nt_and_posix_stack_sizeutest__countu"test_save_exception_state_on_error(u
__locals__((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyuThreadRunningTests#s'uThreadRunningTestscBs,|EeZdZdd�Zdd�ZdS(uBarriercCsA||_d|_tj�|_tj�|_|jj�dS(Ni(unum_threadsuwaitinguthreadu
allocate_locku
checkin_mutexucheckout_mutexuacquire(uselfunum_threads((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyu__init__�s
		uBarrier.__init__cCs�|jj�|jd|_|j|jkrP|jd|_|jj�dS|jj�|jj�|jd|_|jdkr�|jj�dS|jj�dS(Nii(u
checkin_mutexuacquireuwaitingunum_threadsucheckout_mutexurelease(uself((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyuenter�s




u
Barrier.enterN(u__name__u
__module__u__qualname__u__init__uenter(u
__locals__((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyuBarrier�suBarriercBs,|EeZdZdd�Zdd�ZdS(uBarrierTestcCsjtt�|_t|_x*tt�D]}tj|j|f�q%Wtd�|j	j
�td�dS(Nuwaiting for tasks to endu
tasks done(uBarrieruNUMTASKSubarurunningurangeuthreadustart_new_threadutask2u
verbose_printu
done_mutexuacquire(uselfui((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutest_barrier�s	

uBarrierTest.test_barrierc
Cs�x�tt�D]�}|dkr(d}n |j�tj�d}WdQXtd|t|d�f�tj|�td||f�|jj	�td|�q
W|j
�#|jd8_|jdk}WdQX|r�|jj
�ndS(Nig��@utask %s will run for %susg��.Autask %s entering %sutask %s leaving barrieri(urangeuNUMTRIPSurandom_mutexurandomu
verbose_printuroundutimeusleepubaruenteru
running_mutexurunningu
done_mutexurelease(uselfuidentuiudelayufinished((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutask2�s 	



uBarrierTest.task2N(u__name__u
__module__u__qualname__utest_barrierutask2(u
__locals__((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyuBarrierTest�s	uBarrierTestcBs|EeZdZejZdS(u	LockTestsN(u__name__u
__module__u__qualname__uthreadu
allocate_lockulocktype(u
__locals__((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyu	LockTests�su	LockTestscBs_|EeZdZdd�Zejejjd�d�e	j
dd���Zdd�Zd	S(
uTestForkInThreadcCstj�\|_|_dS(N(uosupipeuread_fduwrite_fd(uself((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyusetUp�suTestForkInThread.setUpuwinu5This test is only appropriate for POSIX-like systems.csH�fdd�}tj|f��jtj�jd�dd�dS(Ncs�ytj�}Wntk
r1tjd�YnX|dkryz'tj�j�tj�jd�Wdtjd�Xntj�j�dS(NiisOK(uosuforkuRuntimeErroru_exitucloseuread_fduwriteuwrite_fd(upid(uself(u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyuthread1�s
u3TestForkInThread.test_forkinthread.<locals>.thread1isOKuUnable to fork() in thread(uthreadustart_new_threaduassertEqualuosureaduread_fd(uselfuthread1((uselfu5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutest_forkinthread�su"TestForkInThread.test_forkinthreadcCsVytj|j�Wntk
r(YnXytj|j�Wntk
rQYnXdS(N(uosucloseuread_fduOSErroruwrite_fd(uself((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyutearDown�s

uTestForkInThread.tearDownN(
u__name__u
__module__u__qualname__usetUpuunittestuskipIfusysuplatformu
startswithusupportureap_threadsutest_forkinthreadutearDown(u
__locals__((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyuTestForkInThread�s
uTestForkInThreadcCstjtttt�dS(N(usupporturun_unittestuThreadRunningTestsuBarrierTestu	LockTestsuTestForkInThread(((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyu	test_main�su	test_mainu__main__(uosuunittesturandomutestusupportu
import_moduleuthreadutimeusysuweakrefu
lock_testsuNUMTASKSuNUMTRIPSu
allocate_locku_print_mutexu
verbose_printuTestCaseuBasicThreadTestuThreadRunningTestsuBarrieruBarrierTestu	LockTestsuTestForkInThreadu	test_mainu__name__(((u5/opt/alt/python33/lib64/python3.3/test/test_thread.pyu<module>s*t$'