403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.202
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Python313/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Python313/Lib/test/__pycache__/lock_tests.cpython-313.opt-2.pyc
�

��iK����SSKrSSKrSSKrSSKJrJr SSKrSSKrSSKrSSK	J
r
 SSKJr \R"\
RS5rSr"SS\5r"S	S
\R&5r"SS\5r"S
S\5r"SS\5r"SS\5r"SS\5r"SS\5r"SS\5r"SS\5r"SS\5rg)�N)�start_new_thread�TIMEOUT_MAX)�support)�threading_helperz9platform doesn't support fork (no _at_fork_reinit method)c�6�[R"SU-5 g)N�{�G�z�?)�time�sleep)�nthreads �$C:\Python313\\Lib\test\lock_tests.py�wait_threads_blockedr
s��	�J�J�u�w���c�6�\rSrSrS	SjrSrSrSrSrSr	g)
�Bunch�c�l�XlX l/Ul/Ul/UlU(+UlSUlg�N)�funcr�started�finished�
exceptions�	_can_exit�_wait_thread)�selfrr�wait_before_exits    r�__init__�Bunch.__init__ s5���	��������
����-�-��� ��rc�X�[R"5nURRU5 UR	5 URRU5 [R"[R5HnUR(dM g g![
a%nURRU5 SnAN�SnAff=f!URRU5 [R"[R5HnUR(dM f f=fr)�	threading�	get_identr�appendr�
BaseExceptionrrr�sleeping_retry�
SHORT_TIMEOUTr)r�tid�exc�_s    r�task�
Bunch.task.s����!�!�#�������C� �	��I�I�K�
�M�M� � ��%��+�+�G�,A�,A�B���>�>�>��C��	�	(��O�O�"�"�3�'�'��	(��
�M�M� � ��%��+�+�G�,A�,A�B���>�>�>��C�s0�B�
C�&C�C�C�C�AD)�$D)c��[R"[R5UlURR5 [
UR5Hn[URS5 M [R"[R5H)n[UR5UR:�dM( U$ U$! SUl
e=f)N�T)r�wait_threads_exitrr$r�	__enter__�rangerrr(rr#�lenr)rr's  rr-�Bunch.__enter__;s���,�>�>�w�?T�?T�U������#�#�%�	��4�<�<�(�� ����B�/�)��'�'��(=�(=�>�A��4�<�<� �D�L�L�0����	?����	�!�D�N��s�2C
�

Cc�D�[R"[R5H(n[UR5UR
:�dM( O URRSSS5 URnSUlU(a[URS3U5eg)Nz threads raised exceptions)rr#r$r/rrr�__exit__r�ExceptionGroupr)r�exc_type�	exc_value�	tracebackr'rs      rr2�Bunch.__exit__Ls����'�'��(=�(=�>�A��4�=�=�!�T�\�\�1��?�
	
���"�"�4��t�4��_�_�
����� �D�I�I�;�.H�!I�!+�-�
-�rc��SUlg�NT)r�rs r�	do_finish�Bunch.do_finish[s	����r)rrrrrrrN)F)
�__name__�
__module__�__qualname__�__firstlineno__rr(r-r2r;�__static_attributes__r+rrrrs��!���"
-�rrc�&�\rSrSrSrSrSrSrg)�BaseTestCase�_c�8�[R"5Ulgr)r�threading_setup�_threadsr:s r�setUp�BaseTestCase.setUp`s��(�8�8�:��
rc�h�[R"UR6 [R"5 gr)r�threading_cleanuprGr�
reap_childrenr:s r�tearDown�BaseTestCase.tearDowncs ���*�*�D�M�M�:����rc�T�URXS-5 URXS-5 g)Ng333333�?g$@)�assertGreaterEqual�
assertLess)r�actual�expecteds   r�
assertTimeout�BaseTestCase.assertTimeoutgs&��	
����3��7�����4��0r)rGN)r=r>r?r@rHrMrTrAr+rrrCrC_s��;� �1rrCc�h�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrSrg)�
BaseLockTests�pc��[R"[R5Hn[U5U:�dM O UR	[U5U5 gr)rr#r$r/�assertEqual)r�phaserSr's    r�
wait_phase�BaseLockTests.wait_phaseusB���'�'��(=�(=�>�A��5�z�X�%��?�	
����U��X�.rc�&�UR5nAgr)�locktype�r�locks  r�test_constructor�BaseLockTests.test_constructor{s���}�}���rc�\�UR5nUR[U5S5 Ag)Nz<unlocked .* object (.*)?at .*>)r_�assertRegex�reprr`s  r�	test_repr�BaseLockTests.test_reprs%���}�}�������d��%F�G�rc�|�UR5nUR5 UR[U5S5 Ag)Nz<locked .* object (.*)?at .*>)r_�acquirererfr`s  r�test_locked_repr�BaseLockTests.test_locked_repr�s.���}�}�����������d��%D�E�rc�F�UR5nUR5 Agr)r_rjr`s  r�test_acquire_destroy�"BaseLockTests.test_acquire_destroy�s���}�}�������rc�f�UR5nUR5 UR5 Agr�r_rj�releaser`s  r�test_acquire_release�"BaseLockTests.test_acquire_release�s"���}�}�����������rc��UR5nURURS55 UR5 g�NF)r_�
assertTruerjrrr`s  r�test_try_acquire�BaseLockTests.test_try_acquire�s+���}�}���������U�+�,����rc��^^�UR5mTR5 /mUU4Sjn[US5 SSS5 URTS5 TR	5 g!,(df   N3=f)Nc�F>�TRTRS55 grv�r!rj�ra�results��r�f�3BaseLockTests.test_try_acquire_contended.<locals>.f�s����M�M�$�,�,�u�-�.r�r)r_rjr�assertFalserr�rrrar~s  @@r�test_try_acquire_contended�(BaseLockTests.test_try_acquire_contended�sU����}�}���������	/�
�1�a�[���������#������[�s�A'�'
A5c�j^�UR5mTR5 U4SjnSn[X5n[U5 UR	[UR5S5 TR5 SSS5 UR	[WR5U5 g!,(df   N4=f)Nc�F>�TR5 TR5 gr�rjrr�ras�rr�/BaseLockTests.test_acquire_contended.<locals>.f������L�L�N��L�L�Nr�r)r_rjrr
rZr/rrr)rr�N�bunchras    @r�test_acquire_contended�$BaseLockTests.test_acquire_contended�s�����}�}�������	�
��
�1�[�E� ��#����S����0�!�4�
�L�L�N�
�	
����U�^�^�,�a�0��[�s�AB$�$
B2c�^�UR5mU4SjnSU4SjjnT SSS5 [US5 SSS5 UR[5 T [e!,(df   NC=f!,(df   N>=f!,(df   O=fSSS5 O!,(df   O=f[US5 SSS5 g!,(df   g=f)Nc�F>�TR5 TR5 grr�r�s�rr�"BaseLockTests.test_with.<locals>.f�r�rc�J>�T UbUeSSS5 g!,(df   g=frr+)�errras �r�	with_lock�*BaseLockTests.test_with.<locals>.with_lock�s�����?��I�#����s��
"r�r)r_r�assertRaises�	TypeError)rrr�ras   @r�	test_with�BaseLockTests.test_with�s�����}�}���	�	�����1�a�[����
�
�y�
)�����T���[��
����*�
)�
)���1�a�[���[�[�s@�A!�A2�B�B�!
A/�2
B�
B	�
B�
B,�;C�
Cc�^�UR5mU4Sjn[US5 SSS5 g!,(df   g=f)Nc�F>�TR5 TR5 grr�r�s�rr�)BaseLockTests.test_thread_leak.<locals>.f�r�r�)r_r�rrras  @r�test_thread_leak�BaseLockTests.test_thread_leak�s-����}�}���	��1�b�\���\�\�s�/�
=c��^^�UR5mUR[TRSS5 UR[TRSS9 UR[TRSS9 UR[TR[
S-S9 TR[
S9 TR
5 [R"5nURTRSS95 [R"5nURX!-
S5 /mUU4Sjn[US5 SSS5 URTS5 URTSS	5 g!,(df   N8=f)
NFr�i������timeoutg}Ô%�I�Tr�c�>�[R"5nTRTRSS95 [R"5nTRX-
5 g)N��?r�)r	�	monotonicr!rj)�t1�t2ra�resultss  ��rr�%BaseLockTests.test_timeout.<locals>.f�s@������!�B��N�N�4�<�<��<�4�5����!�B��N�N�2�7�#rrr�)r_r��
ValueErrorrj�
OverflowErrorrrrr	r�rwrQrr�rT)rr�r�rrar�s    @@r�test_timeout�BaseLockTests.test_timeout�s����}�}������*�d�l�l�E�1�=����*�d�l�l�D��A����-����u��E����-����{�Q���O����[��)�����
�^�^�
��������Q��/�0�
�^�^�
��������#���	$�
�1�a�[���������$����7�1�:�s�+��[�s�-E!�!
E/c�|�UR5n[R"U5nURU"55 gr)r_�weakref�ref�assertIsNotNone�rrar�s   r�test_weakref_exists�!BaseLockTests.test_weakref_exists�s+���}�}����k�k�$������S�U�#rc��UR5n[R"U5nA[R"5 URU"55 gr)r_r�r��gc�collect�assertIsNoner�s   r�test_weakref_deleted�"BaseLockTests.test_weakref_deleteds7���}�}����k�k�$����
�
�
�����#�%� rr+N)r=r>r?r@r\rbrgrkrnrsrxr�r�r�r�r�r�r�rAr+rrrWrWpsH��
/���
��
��
	�1�$�:�,�6$�
!rrWc�6�\rSrSrSrSrSr\S5rSr	g)�	LockTestsi	c�^^�UR5m/mUU4Sjn[R"5 [US5 UR	TS5 TR5 UR	TS5 SSS5 g!,(df   g=f)Nc�>�TR5 TRS5 TR5 TRS5 gr�rjr!)rar[s��rr�#LockTests.test_reacquire.<locals>.fs-����L�L�N��L�L����L�L�N��L�L��rr+r��)r_rr,rr\rr�rrrar[s  @@r�test_reacquire�LockTests.test_reacquiresc����}�}�����	��
/�
/�
1��Q��#��O�O�E�1�%�
�L�L�N��O�O�E�1�%�2�
1�
1�s�AA;�;
B	c��^�UR5mTR5 U4Sjn[US5 SSS5 TR5 TR5 g!,(df   N/=f)Nc�&>�TR5 gr)rrr�s�rr�*LockTests.test_different_thread.<locals>.f&�����L�L�Nrr�)r_rjrrrr�s  @r�test_different_thread�LockTests.test_different_thread"sG����}�}�������	�
�1�a�[������������[�s�A�
A-c��UR5nUR5 URURSS95 UR5 URUR	55 URURSS95 g)Nrr�F)�blocking)r_rjr�rr�lockedrwr`s  r�test_state_after_timeout�"LockTests.test_state_after_timeout-se���}�}�������������d��3�4������������'�������e��4�5rc���SnUR5nUR5 U"U5 UR5nUR5 UR5 U"U5 g)Nc�D�UR5 UR5 grr�r�s r�use_lock�/LockTests.test_at_fork_reinit.<locals>.use_lock9s��
�L�L�N��L�L�Nr)r_�_at_fork_reinitrj)rr�ra�lock2s    r�test_at_fork_reinit�LockTests.test_at_fork_reinit7sP��	��}�}�����������
�
���
�
�
��
������rr+N)
r=r>r?r@r�r�r��
requires_forkr�rAr+rrr�r�	s%��
&�(	�6����rr�c�8�\rSrSrSrSrSrSrSrSr	Sr
g	)
�
RLockTestsiKc���UR5nUR5 UR5 UR5 UR5 UR5 UR5 grrqr`s  rr��RLockTests.test_reacquireOsC���}�}��������������������������rc�d�UR5nUR[UR5 UR	5 UR	5 UR5 UR	5 UR5 UR5 UR[UR5 gr)r_r��RuntimeErrorrrrjr`s  r�test_release_unacquired�"RLockTests.test_release_unacquiredXsk���}�}������,����5����������������������������,����5rc�d�UR5nUR[UR5 UR	5 UR	5 UR5 UR	5 UR5 UR5 UR[UR5 gr)r_r�r��
_release_saverjrrr`s  r�test_release_save_unacquired�'RLockTests.test_release_save_unacquireddso���}�}������,��(:�(:�;����������������������������,��(:�(:�;rc�^^^�TR5mTRSTR55 TR5 TRSTR55 TR5 TR5 TRSTR55 TR	5 TRSTR55 TR	5 TR	5 TRSTR55 /mUUU4Sjn[
R"5 [US5 TRTS5 TRSTR55 TRS5 TRTS5 TRSTR55 SSS5 g!,(df   g=f)Nrr��r�c�>�TR5 TRS5 TRTS5 TR5 TRS5 g)Nr�)rjr!r\rr)rar[rs���rr�*RLockTests.test_recursion_count.<locals>.f�s;����L�L�N��L�L����O�O�E�1�%��L�L�N��L�L��rr+)
r_rZ�_recursion_countrjrrrr,rr\r!r�s` @@r�test_recursion_count�RLockTests.test_recursion_countpsK����}�}�������D�1�1�3�4���������D�1�1�3�4�������������D�1�1�3�4���������D�1�1�3�4�������������D�1�1�3�4���	��
/�
/�
1��Q��#��O�O�E�1�%����Q�� 5� 5� 7�8�
�L�L����O�O�E�1�%����Q�� 5� 5� 7�8�2�
1�
1�s
�3BF>�>
Gc�^�UR5mU4Sjn[USS5nUR[TR5 UR5 SSS5 g!UR5 f=f!,(df   g=f)Nc�&>�TR5 gr)rjr�s�rr�+RLockTests.test_different_thread.<locals>.f�r�rr�T)r_rr�r�rrr;)rrr�ras   @rr�� RLockTests.test_different_thread�se����}�}���	��1�a��
�%�
"��!�!�,����=����!�	�
�����!��	�
�s"�A6� A!�A6�!A3�3A6�6
Bc�f^^�UR5mURTR55 TR5 UR	TR55 TR5 UR	TR55 /mUU4Sjn[US5 SSS5 URTS5 TR
5 UR	TR55 TR
5 URTR55 g!,(df   N�=f)Nc�D>�TRTR55 gr)r!�	_is_ownedr}s��rr�$RLockTests.test__is_owned.<locals>.f�s����M�M�$�.�.�*�+rr�r)r_r�r�rjrwrrrr�s  @@r�test__is_owned�RLockTests.test__is_owned�s�����}�}���������)�*�����������(�)�����������(�)���	,�
�1�a�[���������#�����������(�)�����������)�*�
�[�s�%D"�"
D0r+N)r=r>r?r@r�r�r�r�r�r�rAr+rrr�r�Ks!���
6�
<�!9�F
"�+rr�c�H�\rSrSrSrSrSrSrSr\	S5r
SrS	rg
)�
EventTestsi�c���UR5nURUR55 UR5 UR	UR55 UR5 UR	UR55 UR5 URUR55 UR5 URUR55 gr)�	eventtyper��is_set�setrw�clear�r�evts  r�test_is_set�EventTests.test_is_set�s����n�n����������&����	�����
�
��%����	�����
�
��%��	�	���������&��	�	���������&rc�4^^^�Sn/m/mUUU4Sjn[X25 [U5 UR[T5S5 TR	5 SSS5 URTS/U-5 URTS/U-5 g!,(df   N;=f)Nr�c�>�TRTR55 TRTR55 gr)r!�wait)r�results1�results2s���rr�#EventTests._check_notify.<locals>.f�s'����O�O�C�H�H�J�'��O�O�C�H�H�J�'rrT)rr
rZr/r�)rrr�rrrs `  @@r�
_check_notify�EventTests._check_notify�s����
������	(��1�[� ��#����S��]�A�.�
�G�G�I�
�	
����D�6�A�:�.�����D�6�A�:�.��[�s�7B	�	
Bc��UR5nURU5 UR5 UR5 URU5 gr)r�r
r�r�rs  r�test_notify�EventTests.test_notify�s<���n�n������3�����	��	�	�����3�rc��^^^�UR5m/m/mSnUUU4Sjn[X!5 SSS5 URTS/U-5 TH(up4URU5 UR	US5 M* /m/mTR5 [X!5 SSS5 URTS/U-5 THup4UR
U5 M g!,(df   N�=f!,(df   NR=f)Nr�c��>�TRTRS55 [R"5nTRS5n[R"5nTRXU-
45 g)Ngr�)r!rr	r�)r��rr�rrrs   ���rr�"EventTests.test_timeout.<locals>.f�sN����O�O�C�H�H�S�M�*����!�B�����
�A����!�B��O�O�Q�R��L�)rFr�T)r�rrZr�rTr�rw)rr�rr�dtrrrs     @@@rr��EventTests.test_timeout�s�����n�n�������
��	*��1�[���	
����E�7�Q�;�/��E�A����Q�����r�3�'��
�������	�
�1�[���	
����D�6�A�:�.��E�A��O�O�A���!�[���[�s�C�C(�
C%�(
C6c�
^^�UR5m/mUU4SjnSn[X5 [U5 TR5 TR	5 SSS5 URTS/U-5 g!,(df   N%=f)Nc�b>�TRTR[R55 gr)r!rr�LONG_TIMEOUT)�eventr�s��rr�(EventTests.test_set_and_clear.<locals>.fs����N�N�5�:�:�g�&:�&:�;�<rr�T)r�rr
r�r�rZ)rrr�rr�s   @@r�test_set_and_clear�EventTests.test_set_and_clear�sj������ ����	=�
��
�1�[� ��#�
�I�I�K��K�K�M�
�	
����4�&�1�*�-��[�s�,A4�4
Bc��UR5nUR URURRS55 SSS5 UR	5 UR URURRS55 SSS5 g!,(df   N^=f!,(df   g=frv)r��_condr�rjr�rs  rr��EventTests.test_at_fork_reinits����n�n���
�Y�Y����S�Y�Y�.�.�u�5�6������
�Y�Y����S�Y�Y�.�.�u�5�6��Y��Y���Y�s�+B �,+B1� 
B.�1
B?c��UR5nUR[U5S5 UR5 UR[U5S5 g)Nz<\w+\.Event at .*: unset>z<\w+\.Event at .*: set>)r�rerfr�rs  rrg�EventTests.test_reprsA���n�n�������c��$@�A����	�����c��$>�?rr+N)
r=r>r?r@rr
r
r�rr�r�rgrAr+rrr�r��s5��

'�/�( ��>.�&�7��7�@rr�c�D�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rg)�ConditionTestsi"c��UR5nUR5 UR5 UR5 UR5 [R"5nURU5nUR5 URURS55 UR5 UR
URS55 URURS55 UR5 U URURS55 SSS5 g!,(df   g=frv)�condtyperjrrr�Lockr�rw)r�condras   r�test_acquire�ConditionTests.test_acquire's����}�}���	
�����������������~�~����}�}�T�"������������e�,�-�����������U�+�,�������e�,�-�����
����T�\�\�%�0�1��T�T�s�	!D3�3
Ec�d�UR5nUR[UR5 gr)r$r�r�r�rr&s  r�test_unacquired_wait�#ConditionTests.test_unacquired_wait:s!���}�}������,��	�	�2rc�d�UR5nUR[UR5 gr)r$r�r��notifyr*s  r�test_unacquired_notify�%ConditionTests.test_unacquired_notify>s!���}�}������,����4rc�X^^^^	^
�/m/m	/m
SmUUUU	U
4SjnSn[X#5 [R"[R5Hn[	T5U:�dM O TR5 UR
T	/5 SnTR5 TRU5 [U5 SmTR5 [R"[R5Hn[	T	5U:�dM O UR
T	S/U-5 UR
T
/5 [R"[R5Hn[	T5U:�dM O TR5 TRS5 [U5 SmTR5 [R"[R5H"n[	T	5[	T
5-X5-:�dM" O X5-
nUR
T	S/U-S/U--5 UR
T
S/U-5 [R"[R5Hn[	T5U:�dM O TR5 TR5 [U5 SmTR5 [R"[R5Hn[	T
5U:�dM O UR
T	S/U-S/U--5 UR
T
S/U-S	/U--5 SSS5 g!,(df   g=f)
Nrc�V>�TR5 TRT5 TR5nTR5 TRUT45 TR5 TRT5 TR5nTR5 TRUT45 gr)rjr!rrr)r~r&�	phase_num�readyrrs �����rr�'ConditionTests._check_notify.<locals>.fRsw����L�L�N��L�L��#��Y�Y�[�F��L�L�N��O�O�V�Y�/�0��L�L�N��L�L��#��Y�Y�[�F��L�L�N��O�O�V�Y�/�0rr�r�r�)Tr�r�)Tr�)Tr�)rrr#r$r/r�rZrjr.r
rr�
notify_all)rr&rr�r'�count1�count2r3r4rrs `     @@@@rr
�ConditionTests._check_notifyBs�����������	�
	1�
	1�
��
�1�[��+�+�G�,A�,A�B���u�:��?��C�
�K�K�M����X�r�*��F��L�L�N��K�K��� ��(��I��L�L�N��+�+�G�,A�,A�B���x�=�F�*��C�
���X�	�{�V�';�<����X�r�*��+�+�G�,A�,A�B���u�:��'��C�

�L�L�N��K�K��N� ��#��I��L�L�N��+�+�G�,A�,A�B���x�=�3�x�=�0�Q�Z�@��C��Z�F����X�	�{�V�';�y�k�F�>R�'R�S����X�	�{�V�';�<��+�+�G�,A�,A�B���u�:��?��C�

�L�L�N��O�O�� ��#��I��L�L�N��+�+�G�,A�,A�B���x�=�A�%��C�
���X�	�{�V�';�y�k�F�>R�'R�S����X�	�{�V�';�y�k�F�>R�'R�S�A�[�[�s4�5L�BL�<A L� BL�(A/L�A5L�>L�
L)c�h�UR5nURU5 URU5 gr)r$r
r*s  rr
�ConditionTests.test_notify�s)���}�}������4� ����4� rc�$^^^�UR5mSm/mUUU4SjnSn[X5 SSS5 UR[T5U5 TH(up4UR	UT5 URU5 M* g!,(df   NX=f)Nr�c��>�TR5 [R"5nTRT5n[R"5nTR	5 TRX -
U45 gr)rjr	r�rrrr!)r�r~r�r&r�r�s   ���rr�&ConditionTests.test_timeout.<locals>.f�sN����L�L�N����!�B��Y�Y�w�'�F����!�B��L�L�N��N�N�B�G�V�,�-rr�)r$rrZr/rTr�)rrr�rr~r&r�r�s     @@@rr��ConditionTests.test_timeout�s{����}�}�������	.�
��
�1�[�������W��q�)�!�J�B����r�7�+�
���V�$�"�	�[�s�B�
Bc�>^^^�TR5mSmUUU4Sjn[US5 [S5H9n[R"S5 T TS-
mTR5 SSS5 M; SSS5 g!,(df   MU=f!,(df   g=f)Nrc�>�T TRU4Sj5nTRU5 TRTS5 SSS5 g!,(df   g=f)Nc�>�TS:H$�N�r+��states�r�<lambda>�8ConditionTests.test_waitfor.<locals>.f.<locals>.<lambda>�s	���u��zrrD)�wait_forrwrZ)r~r&rrFs ���rr�&ConditionTests.test_waitfor.<locals>.f�s;�������'9�:������'�� � ���*����s�9A�
Ar�rDr)r$rr.r	r
r.)rr�ir&rFs`  @@r�test_waitfor�ConditionTests.test_waitfor�sp����}�}�����	+��1�a�[��1�X���
�
�5�!���Q�J�E��K�K�M��T���[��T���[�s#�'B�A<�'B�<
B�B�
Bc�|^^^^�TR5mSm/mUUUU4Sjn[US5 [S5H9n[R"S5 T TS-
mTR5 SSS5 M; SSS5 TR
[T5S5 g!,(df   Mp=f!,(df   N<=f)Nrc�(>�T [R"5nTRU4SjSS9n[R"5U-
nTRU5 TR	US5 TRS5 SSS5 g!,(df   g=f)Nc�>�TS:H$rCr+rEs�rrG�@ConditionTests.test_waitfor_timeout.<locals>.f.<locals>.<lambda>�s	����q�r皙�����?r�)r	r�rIr�rTr!)rr~r&rrF�successs  ����rr�.ConditionTests.test_waitfor_timeout.<locals>.f�sj�����^�^�%�����'8�#��F���^�^�%��*��� � ��(��"�"�2�s�+����t�$�
���s�A6B�
Br�r�r)r$rr.r	r
r.rZr/)rrrKr&rFrSs`  @@@r�test_waitfor_timeout�#ConditionTests.test_waitfor_timeout�s�����}�}�������	%�	%��1�a�[��1�X���
�
�5�!���Q�J�E��K�K�M��T���	
����W��q�)�	�T��	�[�s#�'B-�B�+B-�
B*�%B-�-
B;r+N)
r=r>r?r@r'r+r/r
r
r�rLrUrAr+rrr"r""s-��
2�&3�5�`T�D!�%�4"� *rr"c�P�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
Srg
)�BaseSemaphoreTestsi�c��UR[URSS9 UR[UR[R*S9 g)N���)�value)r�r��semtype�sys�maxsizer:s rrb�#BaseSemaphoreTests.test_constructor�s:�����*�d�l�l�B��?����*�d�l�l�S�[�[�L��Irc��URS5nUR5 UR5 URS5nUR5 UR5 UR5 UR5 g)Nr�r�)r\rjrr�r�sems  rr'�BaseSemaphoreTests.test_acquire�sR���l�l�1�o�����
����
��l�l�1�o�����
����
����
����
rc�F�UR5nUR5 Agr)r\rjras  rrn�'BaseSemaphoreTests.test_acquire_destroy�s���l�l�n�����
�rc�@^
^^^
^�SnURU5m
T
R5 /m/m/mSm
U
UUU
U4SjnUU4SjnSn[X$5 US-
nU"U5 URTT-S/U-5 Sm
[	U5HnT
R5 M UnU"XW-5 UR[
TT-5S/U-S/U--5 Sm
US-
n[	U5HnT
R5 M U"XW-U-5 UR[
TT-5S/U-S/U--S/U--5 URT
RS55 Sn	T
R5 SSS5 URTS	/WW-W-W	--5 g!,(df   N.=f)
N�rc��>�TRTR55 TRT5 TRTR55 TRT5 grr|)r3rrrb�sem_resultss�����rr�7BaseSemaphoreTests.test_acquire_contended.<locals>.funcsC������s�{�{�}�-��O�O�I�&����s�{�{�}�-��O�O�I�&rc�>�[R"[R5H n[T5[T5-U:�dM  g gr�rr#r$r/��countr'rrs  ��r�
wait_count�=BaseSemaphoreTests.test_acquire_contended.<locals>.wait_count�7����+�+�G�,A�,A�B���x�=�3�x�=�0�E�9��Cr�
r�r�FT)r\rjrrZr.rr�sortedr�)r�	sem_valuerror�r7rKr8�count3�count4r3rrrbris          @@@@@rr��)BaseSemaphoreTests.test_acquire_contendeds�����	��l�l�9�%�����
��������	�	'�	'�	�

��
�4�^���]�F��v�����X��0�1�#��,�?��I��9�%�����
�&��F��v��'����V�H�x�$7�8��S�6�\�Q�C�&�L�8�
:��I��!�m�F��6�]�����
�#��v���/�0����V�H�x�$7�8��S�6�\�Q�C�&�L�8�A�3��<�G�
I�
���S�[�[��/�0��F��K�K�M�9�<	
������6�F�?�V�#;�f�#D�E�	G�=�^�s
�DF�
Fc�^^^	^
�SnURU5m
T
R5 /m/m	SmUUU	U
4SjnUU	4Sjn[US5 US-
nU"U5 URTT	-S/U-5 SmUnT
R	U5 U"XE-5 UR[TT	-5S/U-S/U--5 SmUS-
nT
R	U5 U"XE-U-5 UR[TT	-5S/U-S/U--S/U--5 UR
T
RS55 T
R	5 SSS5 g!,(df   g=f)	Nrgrc�>�TR5 TRT5 TR5 TRT5 grr�)r3rrrbs����rr�2BaseSemaphoreTests.test_multirelease.<locals>.funcDs-����K�K�M��O�O�I�&��K�K�M��O�O�I�&rc�>�[R"[R5H n[T5[T5-U:�dM  g grrlrms  ��rro�8BaseSemaphoreTests.test_multirelease.<locals>.wait_countKrqrrrr�r�F)r\rjrrZrrrsr�)rrtrror7r8rur3rrrbs       @@@@r�test_multirelease�$BaseSemaphoreTests.test_multirelease<sW����	��l�l�9�%�����
������	�	'�	'�	�
�4��_���]�F��v�����X��0�1�#��,�?��I��F��K�K����v��'����V�H�x�$7�8��S�6�\�Q�C�&�L�8�
:��I���]�F��K�K����v���/�0����V�H�x�$7�8��S�6�\�Q�C�&�L�8�A�3��<�G�
I�
���S�[�[��/�0�
�K�K�M�3�_�_�s
�
C4E�
Ec�F�URS5nURURS55 URURS55 URURS55 UR	5 URURS55 g)Nr�F)r\rwrjr�rrras  rrx�#BaseSemaphoreTests.test_try_acquireksn���l�l�1�o��������E�*�+�������E�*�+�������U�+�,����
�������E�*�+rc�^^�URS5mTR5 /mUU4Sjn[US5 SSS5 UR[	T5S/S-S/S--5 g!,(df   N5=f)NrDc�>�TRTRS55 TRTRS55 grvr|)r�rbs��rr�8BaseSemaphoreTests.test_try_acquire_contended.<locals>.fws-����N�N�3�;�;�u�-�.��N�N�3�;�;�u�-�.rr�FrgTr�)r\rjrrZrs)rrr�rbs  @@rr��-BaseSemaphoreTests.test_try_acquire_contendedsse����l�l�1�o�����
���	/��1�a�[���
	
������5�'�A�+���!��*C�E��[�s�A*�*
A8c�0�URS5nUR[URSSS9 UR	URSS95 UR	URSS95 URURSS95 UR
5 UR	URSS95 [R"5nURURSS95 [R"5U-
nURUS5 g)Nr�Fg�?r�g{�G�zt?r�)
r\r�r�rjrwr�rrr	r�rT)rrb�trs    r�test_acquire_timeout�'BaseSemaphoreTests.test_acquire_timeout�s����l�l�1�o�����*�c�k�k�5�#��F�������E��2�3�������E��2�3�������U��3�4����
�������E��2�3��N�N���������S��1�2�
�^�^�
��
!�����2�s�#rc�
^�UR5mTR5 U4Sjn[US5n[S5 UR	UR
5 TR
5 SSS5 g!,(df   g=f)Nc�F>�TR5 TR5 grr�)rbs�rr�0BaseSemaphoreTests.test_default_value.<locals>.f�s����K�K�M��K�K�Mrr�)r\rjrr
r�rrr)rrr�rbs   @r�test_default_value�%BaseSemaphoreTests.test_default_value�sX����l�l�n�����
�	��1�a�[�E� ��#����U�^�^�,�
�K�K�M�
�[�[�s�7A4�4
Bc�@^^�TRS5mSUU4SjjnU"5 TRTRS55 TR5 TR	[
U[
5 TRTRS55 TR5 g)Nr�c�*>�T TRTRS55 TR5 T TRTRS55 U(aUeSSS5 SSS5 g!,(df   N=f!,(df   g=frv)rwrjrrr�)r�rrbs ��r�_with�+BaseSemaphoreTests.test_with.<locals>._with�sg����������E� 2�3����
���$�$�S�[�[��%7�8��!�	������S����s"�3B�*A3�"B�3
B	�=B�
BFr)r\rwrjrrr�r�)rr�rbs` @rr��BaseSemaphoreTests.test_with�so����l�l�1�o��	"�	"�	��������E�*�+����
����)�U�I�6�������E�*�+����
rr+N)r=r>r?r@rbr'rnr�r}rxr�r�r�r�rAr+rrrXrX�s9��
J���
6G�p-�^,�F�$�� rrXc� �\rSrSrSrSrSrg)�SemaphoreTestsi�c��URS5nUR5 UR5 UR5 UR5 g�Nr�)r\rrrjras  rr��&SemaphoreTests.test_release_unacquired�s3���l�l�1�o�����
����
����
����
rc�(�URS5nUR[U5S5 UR5 UR[U5S5 UR	5 UR	5 UR[U5S5 g)Nr�z<\w+\.Semaphore at .*: value=3>z<\w+\.Semaphore at .*: value=2>z<\w+\.Semaphore at .*: value=4>)r\rerfrjrrras  rrg�SemaphoreTests.test_repr�si���l�l�1�o������c��$F�G����
�����c��$F�G����
����
�����c��$F�Grr+N�r=r>r?r@r�rgrAr+rrr�r��s
��
�Hrr�c� �\rSrSrSrSrSrg)�BoundedSemaphoreTestsi�c���UR5nUR[UR5 UR	5 UR5 UR[UR5 gr)r\r�r�rrrjras  rr��-BoundedSemaphoreTests.test_release_unacquired�sG���l�l�n�����*�c�k�k�2����
����
����*�c�k�k�2rc��URS5nUR[U5S5 UR5 UR[U5S5 g)Nr�z(<\w+\.BoundedSemaphore at .*: value=3/3>z(<\w+\.BoundedSemaphore at .*: value=2/3>)r\rerfrjras  rrg�BoundedSemaphoreTests.test_repr�sB���l�l�1�o������c��$O�P����
�����c��$O�Prr+Nr�r+rrr�r��s
��
3�Qrr�c��\rSrSrSrSrSrSrSrSr	Sr
SS	jrS
rSr
SrS
rSrSrSrSrSrSrSrg)�BarrierTestsi�r�g@c�V�URURURS9Ulg)Nr�)�barriertyper��defaultTimeout�barrierr:s rrH�BarrierTests.setUp�s#���'�'�����8K�8K�'�L��rc�8�URR5 gr)r��abortr:s rrM�BarrierTests.tearDown�s�������rc�d�[XR5 SSS5 g!,(df   g=fr)rr��rrs  r�run_threads�BarrierTests.run_threads�s��
�1�f�f�
���
�
�s�!�
/c�`�URRnURX0R5 [	U5H�nUSRS5 UR[
US5XC-5 URR5 USRS5 UR[
US5US-U-5 URR5 M� URURRS5 URURR5 g)NrTr�)r��partiesrZr�r.r!r/r�	n_waitingr��broken)rr��n�mrKs     r�	multipass�BarrierTests.multipass�s����L�L� � ������F�F�#��q��A��A�J���d�#����S����_�a�e�4��L�L�����A�J���d�#����S����_�q�1�u��k�:��L�L����
�	
������/�/��3�������,�,�-rc��UR[URSS9 UR[URSS9 g)Nr)r�rZ)r�r�r�r:s rrb�BarrierTests.test_constructor�s8�����*�d�&6�&6���B����*�d�&6�&6���Crc�D^^^�///mUUU4SjnTRU5 g)Nc�*>�TRTT5 gr)r�)�passesr�rs���rr�$BarrierTests.test_barrier.<locals>.fs����N�N�7�F�+r�r�)rr�rr�s`` @r�test_barrier�BarrierTests.test_barrier�s!����b�'��	,�����rc�$�URS5$)Nrr)r�r:s r�test_barrier_10�BarrierTests.test_barrier_10s��� � ��$�$rc�^^�/mUU4SjnTRU5 TR[T5[[TR555 g)Nc�\>�TRR5nTRU5 gr)r�rr!)rr�rs ��rr�(BarrierTests.test_wait_return.<locals>.fs!������!�!�#�A��N�N�1�r)r�rZ�sumr.r�)rrr�s` @r�test_wait_return�BarrierTests.test_wait_returns@�����	�	
���������W��s�5����=�'9�:rc�^^^�/mU4SjnTRTRU5mUUU4SjnTRU5 g)Nc�(>�TRS5 gr9)r!)r�s�r�action�(BarrierTests.test_action.<locals>.actions����N�N�4� rc�\>�TR5 TR[T5S5 gr�)rrZr/)r�r�rs���rr�#BarrierTests.test_action.<locals>.fs ����L�L�N����S��\�1�-r)r�r�r�)rr�rr�r�s`  @@r�test_action�BarrierTests.test_actions:�����	!��"�"�4�6�6�6�2��	.�	
����rc�^^^�/m/mUUU4SjnTRU5 TR[T5S5 TR[T5TRS-
5 TR	TR
R5 g)Nc�d>�TRR5nUTRS-:Xa[eTRR5 TR	S5 g![
Ra TR	S5 g[a TRR5 gf=f�Nr�T)r�rr�r�r!r�BrokenBarrierErrorr�)rKrrrs ���rr�"BarrierTests.test_abort.<locals>.f+s����

��L�L�%�%�'�������	�>�&�&����!�!�#�����%���/�/�
&�����%��
����"�"�$��
�s�AA"�"%B/�	#B/�.B/rr�)r�rZr/r�rwr�r�)rrrrs` @@r�
test_abort�BarrierTests.test_abort%sj�������	�	
���������X���*�����X�����q��1�������+�+�,rc�^^^^�/m/m/mUUUU4SjnTRU5 TR[T5S5 TR[T5TRS-
5 TR[T5TR5 g)Nc�B>�TRR5nUTRS-:Xao[R"[R
5H,nTRRTRS-
:�dM, O TRR5 O,TRR5 TRS5 TRR5 TRS5 g![Ra TRS5 NSf=f)Nr�r�T)r�rr�rr#r$r��resetr!rr�)rKr'rr�results3rs  ����rr�"BarrierTests.test_reset.<locals>.fDs�������!�!�#�A��D�F�F�A�I�~� �/�/��0E�0E�F�A��|�|�-�-�$�&�&�1�*�=��G����"�"�$�*��L�L�%�%�'��O�O�D�)�
�L�L�����O�O�D�!��	!�3�3�*��O�O�D�)�*�s�+C6�6%D�Drr�)r�rZr/r�)rrrrr�s` @@@r�
test_reset�BarrierTests.test_reset=sv���������	"�	"�$	
���������X���*�����X�����q��1�����X�����/rc�V^^^^^�/m/m/mTRTR5mUUUUU4SjnTRU5 TR[	T5S5 TR[	T5TRS-
5 TR[	T5TR5 g)Nc�P>�TRR5nUTRS-:Xa[eTRR5 TR	S5 TR5TRS-:XaTRR5 TR5 TRR5 TR	S5 g![
Ra TR	S5 N�[a TRR5 N�f=fr�)	r�rr�r�r!rr�r�r�)rK�barrier2rrr�rs �����rr�,BarrierTests.test_abort_and_reset.<locals>.fds����

��L�L�%�%�'�������	�>�&�&����!�!�#�����%��}�}��$�&�&�!�)�+����"�"�$��M�M�O��L�L�����O�O�D�!���/�/�
&�����%��
����"�"�$��
�s�AC�%D%�?#D%�$D%rr�)r�r�r�rZr/)rrr�rrr�s` @@@@r�test_abort_and_reset�!BarrierTests.test_abort_and_reset\s�����������#�#�D�F�F�+��	"�	"�*	
���������X���*�����X�����q��1�����X�����/rc�4^�U4SjnTRU5 g)Nc�*>�TRR5nUTRS-:Xa#[R"TR
S-5 TR
[RTRRTR
S-5 g)Nr�rD)	r�rr�r	r
r�r�rr�)rKrs �rr�$BarrierTests.test_timeout.<locals>.f�sm������!�!�#�A��D�F�F�a�K���
�
�4�.�.��2�3����i�:�:�"�l�l�/�/��1D�1D�q�1H�
Jrr�r�s` rr��BarrierTests.test_timeout~s���	J�	
����rc�^^�SnTRSUS9mUU4Sjn[R"5n[US5 SSS5 [R"5U-
nTR	XA5 g!,(df   N8=f)NrRr�r�c�Z>�TR[RTR5 gr)r�rr�r)r�rs��rr�,BarrierTests.test_default_timeout.<locals>.f�s ������i�:�:�%�l�l�
,rr�)r�r	r�rrP)rr�r�
start_timerr�s`    @r�test_default_timeout�!BarrierTests.test_default_timeout�sj������"�"�1�g�"�6��	,��^�^�%�
�
�1�a�[���
�^�^�
�
�
*������,��[�s�A1�1
A?c�f�URS5nUR5 UR5 gr�)r�r)r�bs  r�test_single_thread�BarrierTests.test_single_thread�s$�����Q���	����	���rc�:^^�URS5m[RmUR[	T5S5 UU4SjnSn[X5 [R"[R5HnTRU:�dM O UR[	T5S5 TRT5 SSS5 UR[	T5S5 TR5 UR[	T5S5 g!,(df   NU=f)Nr�z!<\w+\.Barrier at .*: waiters=0/3>c�(>�TRT5 gr)r)r�r�s��rr�!BarrierTests.test_repr.<locals>.f�s����L�L��!rr�z!<\w+\.Barrier at .*: waiters=2/3>z<\w+\.Barrier at .*: broken>)r�rrrerfrr#r$r�rr�)rrr�r'r�r�s    @@rrg�BarrierTests.test_repr�s�����"�"�1�%���&�&������g��(L�M�	"�
��
�1�[��+�+�G�,A�,A�B���$�$��)��C�
���T�'�]�A�
C�
�L�L��!��	
����g��=�	?�	�
�
������g��8�	:�!�[�s�6D�
0D�
D)r�N)r�)r=r>r?r@r�r�rHrMr�r�rbr�r�r�r�r�r�r�r�r�r�rgrAr+rrr�r��sa��	
�A��N�M���.�D��%�
;��-�00�> 0�D�-� �
:rr�)r�r]r	�_threadrrr�unittestr��testr�test.supportr�
skipUnless�has_fork_supportr�r
�objectr�TestCaserCrWr�r�r�r"rXr�r�r�r+rr�<module>r�s���

�
��1�����)��#�#�G�$<�$<�%C�D�
�
 �@�F�@�F1�8�$�$�1�"V!�L�V!�r?�
�?�Dd+��d+�Nm@��m@�`G*�\�G*�TA��A�FH�'�H�.Q�.�Q�(`:�<�`:r

Youez - 2016 - github.com/yon3zu
LinuXploit