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 :  C:/Python313/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

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

��i�����SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSK	J
r
 SSKJr SSK
Jr Sr"SS\R"5r"SS	5r"S
S\5r"SS
5r"SS\5r"SS\5r\R4"\SLS5"SS\R"55r\S:Xa\R:"5 gg!\a SrN�f=f)�N)�support)�threading_helper��hamtc�F^�[R"T5U4Sj5nU$)Nc�Z>�[R"5nUR"T/UQ70UD6$�N��contextvars�Context�run)�args�kwargs�ctx�funcs   ��&C:\Python313\\Lib\test\test_context.py�wrapper�!isolated_context.<locals>.wrappers*����!�!�#���w�w�t�-�d�-�f�-�-�)�	functools�wraps)rrs` r�isolated_contextrs%����_�_�T��.��.��Nrc��\rSrSrSr\S5rSrSrSr	Sr
SrS	rS
r
Sr\S5rS
rSrSr\S5r\S5r\S5r\S5r\S5rSr\\R4"5S55rSrSrSrg)�ContextTest�c�2�UR[S5 [R"5 SSS5 UR[S5 [R"S5 SSS5 [R"S5nUR	UR
S5 UR
[5 SUlSSS5 UR[U5[S55 g!,(df   N�=f!,(df   N�=f!,(df   NU=f)Nztakes exactly 1z
must be a str��aaa�bbb)
�assertRaisesRegex�	TypeErrorr�
ContextVar�assertEqual�name�assertRaises�AttributeError�assertNotEqual�hash)�self�cs  r�test_context_var_new_1�"ContextTest.test_context_var_new_1s���
�
#�
#�I�/@�
A��"�"�$�B��
#�
#�I��
?��"�"�1�%�@�
�"�"�5�)���������'�
�
�
�~�
.��A�F�/�	
���D��G�T�%�[�1�B�
A��@�
?��/�
.�s#�C&�C7�1D�&
C4�7
D�
Dc�z�[R"S5nURS[U55 [R"SSS9nURS[U55 /n[R"SUS9nUR	U5 URS[U55 URS[U55 URS5nUR[U5[U55 UR
S[U55 URU5 URS[U55 g)N�a�{��default�123z...rz used )rr"�assertIn�repr�append�set�assertNotIn�reset)r)r*�lst�ts    r�test_context_var_repr_1�#ContextTest.test_context_var_repr_1+s����"�"�3�'���
�
�c�4��7�#��"�"�3��4���
�
�e�T�!�W�%����"�"�3��4���
�
�1�
��
�
�e�T�!�W�%��
�
�e�T�#�Y�'�
�E�E�!�H���
�
�d�1�g�t�A�w�'�����4��7�+�	����
��
�
�h��Q��(rc��UR[S5 "SS[R5nSSS5 UR[S5 "SS[R5nSSS5 UR[S5 "SS[R
5nSSS5 g!,(df   N=f!,(df   NX=f!,(df   g=f)Nznot an acceptable base typec��\rSrSrSrg)�<ContextTest.test_context_subclassing_1.<locals>.MyContextVar�A�N��__name__�
__module__�__qualname__�__firstlineno__�__static_attributes__rArr�MyContextVarr?As��rrHc��\rSrSrSrg)�9ContextTest.test_context_subclassing_1.<locals>.MyContext�FrANrBrArr�	MyContextrJF���rrLc��\rSrSrSrg)�7ContextTest.test_context_subclassing_1.<locals>.MyToken�JrANrBrArr�MyTokenrOJrMrrQ)r r!rr"r�Token)r)rHrLrQs    r�test_context_subclassing_1�&ContextTest.test_context_subclassing_1?s���
�
#�
#�I�/L�
M�
�{�5�5�
�N�
�
#�
#�I�/L�
M�
�K�/�/�
�N��
#�
#�I�/L�
M�
�+�+�+�
�N�
M�N�
M��
N�
M��N�
M�s#�B*�B;�C�*
B8�;
C	�
Cc���UR[S5 [R"S5 SSS5 UR[S5 [R"SSS9 SSS5 UR[S5 [R"SS9 SSS5 [R"S00D6 g!,(df   N�=f!,(df   Ni=f!,(df   NG=f)Nz
any argumentsr�r.rA)r r!rr�r)s r�test_context_new_1�ContextTest.test_context_new_1Ms���
�
#�
#�I��
?�����"�@�
�
#�
#�I��
?�����Q�'�@�
�
#�
#�I��
?����!�$�@����!�b�!�
@�
?��
?�
?��
?�
?�s#�B4�C�C�4
C�
C�
C$c��"SS[5nUR[S5 [R"U"55 SSS5 g!,(df   g=f)Nc��\rSrSrSrSrg)�GContextTest.test_context_new_unhashable_str_subclass.<locals>.weird_str�Xc��gr	rA�r)�others  r�__eq__�NContextTest.test_context_new_unhashable_str_subclass.<locals>.weird_str.__eq__Ys��rrAN�rCrDrErFrarGrArr�	weird_strr\Xs��
rrdzunhashable type)�strr r!rr")r)rds  r�(test_context_new_unhashable_str_subclass�4ContextTest.test_context_new_unhashable_str_subclassVs>��	��	��
#�
#�I�/@�
A��"�"�9�;�/�B�
A�
A�s�A�
Ac��[R"5nUR[S5 US SSS5 UR[S5 SU; SSS5 UR[S5 UR	S5 SSS5 g!,(df   Nc=f!,(df   NP=f!,(df   g=f)NzContextVar key was expectedr)rrr r!�get�r)rs  r�test_context_typerrors_1�$ContextTest.test_context_typerrors_1_s����!�!�#��
�
#�
#�I�/L�
M���F�N�
�
#�
#�I�/L�
M�
��H�N�
�
#�
#�I�/L�
M��G�G�A�J�N�
M�	N�
M��
M�
M��
M�
M�s#�B�B �4B1�
B� 
B.�1
B?c�n�[R"5nURU[R5 gr	)r�copy_context�assertIsInstancerrjs  r�test_context_get_context_1�&ContextTest.test_context_get_context_1is&���&�&�(�����c�;�#6�#6�7rc��[R"5nUR[S5 UR	5 SSS5 g!,(df   g=f)Nzmissing 1 required)rrr r!r
rjs  r�test_context_run_1�ContextTest.test_context_run_1ms7���!�!�#��
�
#�
#�I�/C�
D��G�G�I�E�
D�
D�s�A�
Ac	��[R"5nSnU[R"U54H�nUR	URU5SSS045 UR	URUS5SSS045 UR	URUSS9SSSS	.45 UR	URUS
SS9SSSS	.45 0nUR	UR
"US
40UD6SSS045 UR	U05 M� g)Nc��SUS'US-
nX4$)N�foo�spam��barrA�rrs  rr�,ContextTest.test_context_run_2.<locals>.funcvs��"�F�6�N��H��D��<�rryrxrwr)rrz�rV)r.rx�)r~rz)rrr�partialr#r
)r)rr�fr.s     r�test_context_run_2�ContextTest.test_context_run_2ss���!�!�#��	 �
�	�)�)�$�/�0�A�
���S�W�W�Q�Z�(�V�U�O�)D�E����S�W�W�Q��]�Z�&�%��,I�J��������Q�����E�2�3�
5�
�������2���#��A�u�5�6�
8��A��������2�#��#��v�u�o�.�
0�
���Q��#�%1rc��[R"5nSnUR[5 UR	U5 SSS5 UR[5 UR	USS5 SSS5 UR[5 UR	USSSS9 SSS5 g!,(df   Np=f!,(df   NP=f!,(df   g=f)Nc��SS- g)NrrrAr{s  rr�,ContextTest.test_context_run_3.<locals>.func�s	��
��Errr}r/rV)rrr%�ZeroDivisionErrorr
)r)rrs   r�test_context_run_3�ContextTest.test_context_run_3�s����!�!�#��	��
�
�0�
1��G�G�D�M�2�
�
�
�0�
1��G�G�D�!�Q��2�
�
�
�0�
1��G�G�D�!�Q�#�G�&�2�
1�	2�
1��
1�
1��
1�
1�s#�B*�B;�C�*
B8�;
C	�
Cc�>^^^^�[R"5n[R"5m[R"S5mUU4SjmUUUU4SjnURU5nTR	X5 TR	UTS5 TRTU5 g)N�varc�F>�TRTRS55 gr	)�assertIsNoneri�r)r�s��r�func2�-ContextTest.test_context_run_4.<locals>.func2�s������c�g�g�d�m�,rc�X>�TRTRS55 TRS5 TRT5 TR	TRS5S5 [
R"5nTR	[U5S5 TR	UTS5 U$)Nrxr)r�rir6r
r#rrn�len)�cur�ctx2r�r)r�s ����r�func1�-ContextTest.test_context_run_4.<locals>.func1�s�������c�g�g�d�m�,��G�G�F�O��H�H�U�O����S�W�W�T�]�F�3��*�*�,�C����S��X�q�)����S��X�v�.��Jrrx)rrr"r
r#r3)r)�ctx1r��returned_ctxr�r�r�s`   @@@r�test_context_run_4�ContextTest.test_context_run_4�s~����"�"�$���"�"�$���$�$�U�+��	-�		�		��x�x��������,�����c�*�F�3��
�
�c�<�(rc�,^^�[R"5n[R"S5mUU4SjnTR[5 URU5 SSS5 TR
TRS55 g!,(df   N/=f)Nr�c�r>�TRTRS55 TRS5 SS- g)Nrxrr)r�rir6r�s��rr�,ContextTest.test_context_run_5.<locals>.func�s+������c�g�g�d�m�,��G�G�F�O�
��Er)rrr"r%r�r
r�ri)r)rrr�s`  @r�test_context_run_5�ContextTest.test_context_run_5�sh����!�!�#���$�$�U�+��	�
�
�
�0�
1��G�G�D�M�2�	
���#�'�'�$�-�(�2�
1�s�
B�
Bc�^^^�[R"5m[R"SSS9mUUU4SjnTRU5 g)Nr.rr0c�*>�TRTR5S5 TRTRT55 TRS5 TRTR5S5 TRTRT5S5 g)Nr�*)r#rir�r6)r*rr)s���r�fun�+ContextTest.test_context_run_6.<locals>.fun�sh������Q�U�U�W�a�(����c�g�g�a�j�)�
�E�E�"�I����Q�U�U�W�b�)����S�W�W�Q�Z��,r�rrr"r
�r)r�r*rs` @@r�test_context_run_6�ContextTest.test_context_run_6�s5����!�!�#���"�"�3��2��	-�	����rc�f^^^�[R"5mUUU4SjmTRT5 g)Nc�>�TR[S5 TRT5 SSS5 g!,(df   g=f)Nzis already entered)r �RuntimeErrorr
)rr�r)s���rr��+ContextTest.test_context_run_7.<locals>.fun�s,����'�'��6J�K������L�K�K�s	�3�
Ar
)r)rr�s`@@r�test_context_run_7�ContextTest.test_context_run_7�s#����!�!�#��	�	����rc�v	�[R"S5nUR[5 UR	5 SSS5 URUR	S55 UR
S5nURUR	5S5 URUR	S5S5 URURUR5 URUR[RR5 URURU5 UR
S5nURUR	5S5 URUR	S5S5 URURS5 URU5 URUR	5S5 URUR	S5S5 UR
S5 UR[S5 URU5 SSS5 URUR	5S5 [R "5nUR#X5 URU5 UR[S5 URU5 SSS5 URUR	S55 UR#X5 URXAS5 URUR	US5S5 UR[%U5S5 UR['UR)55US4/5 UR['UR+55S/5 UR['UR-55U/5 UR['U5U/5 [R "5nUR/X5 UR[05 XQ SSS5 URUR	US5S5 UR[%U5S5 UR['U5/5 g!,(df   GN>=f!,(df   GNg=f!,(df   GN�=f!,(df   N�=f)	Nr*r�rx�spam2zhas already been used�aarr)rr"r%�LookupErrorrir�r6r#�assertIs�	old_value�MISSINGrRr�r8r r�rnr3r��list�items�values�keysr7�KeyError)r)r*�t0r:r�r�s      r�test_context_getset_1�!ContextTest.test_context_getset_1�sK���"�"�3�'��
�
�
�{�
+�
�E�E�G�,�	
���!�%�%��+�&�
�U�U�2�Y���������"�%�������t��b�)��
�
�b�l�l�B�J�J�/��
�
�b�l�l�K�$5�$5�$=�$=�>��
�
�b�f�f�a� �
�E�E�&�M���������&�)�������t��f�-�������b�)�	����
��������"�%�������t��b�)�	���g��
�
#�
#�L�2I�
J�
�G�G�A�J�K��������'�*��'�'�)���
�
�a��	�����
�
#�
#�L�2I�
J�
�G�G�B�K�K����!�%�%��+�&��
�
�a�������'�*�������!�T�*�G�4�����T��A�&�����d�j�j�l�+�q�'�l�^�<�����d�k�k�m�,�w�i�8�����d�i�i�k�*�Q�C�0�����d��a�S�)��'�'�)������!�
�
�
�x�
(��G�)�������!�T�*�D�1�����T��A�&�����d��R�(�c,�
+��,K�
J��K�
J��)�
(�s/�Q4�R�R�R*�4
R�
R�
R'�*
R8c��[R"S5n[R"S5nURS5nUR[S5 URU5 SSS5 g!,(df   g=f)N�v1�v2r�zby a different)rr"r6r �
ValueErrorr8)r)r�r��t1s    r�test_context_getset_2�!ContextTest.test_context_getset_2sX��
�
#�
#�D�
)��
�
#�
#�D�
)��
�V�V�B�Z��
�
#�
#�J�0@�
A��H�H�R�L�B�
A�
A�s�A/�/
A=c�^^^�[R"SSS9m[R"5mUUU4SjnTRU5 g)Nr*r�r0c�&>�TRTR5S5 TR[5 TT SSS5 TR	TRT55 TRTRTS5S5 TRTT5 TR[
TR55/5 TRS5nTR[
TR55T/5 TRTTS5 TRU5 TR[
TR55/5 TR[5 TT SSS5 g!,(df   GN:=f!,(df   g=f)Nr�rxr)
r#rir%r�r�r7r�r�r6r8)r:r*rr)s ���rr��.ContextTest.test_context_getset_3.<locals>.funs"������Q�U�U�W�b�)��"�"�8�,��A��-����c�g�g�a�j�)����S�W�W�Q��/��8����Q��$����T�#�(�(�*�-�r�2����a��A����T�#�(�(�*�-��s�3����S��V�Q�'�
�G�G�A�J����T�#�(�(�*�-�r�2��"�"�8�,��A��-�,�-�,��-�,�s�E0�!F�0
E?�
F)rr"rr
r�s` @@r�test_context_getset_3�!ContextTest.test_context_getset_3s5����"�"�3��3���!�!�#��	�$	����rc��[R"SSS9n[R"5nURURS5nUR[S5 URU5 SSS5 g!,(df   g=f)Nr*r�r0rzdifferent Context)rr"rr
r6r r�r8)r)r*r�toks    r�test_context_getset_4�!ContextTest.test_context_getset_42s_���"�"�3��3���!�!�#���g�g�a�e�e�Q���
�
#�
#�J�0C�
D�
�G�G�C�L�E�
D�
D�s�A8�8
Bc��^^�[R"SSS9mTR/5 UU4Sjn[R"5R	U5 TRTR
5/5 g)Nr*r�r0c�>�TR/5 TR5RS5 TRTR5S/5 g)Nr�)r6rir5r#�r*r)s��rr��.ContextTest.test_context_getset_5.<locals>.funAs8���
�E�E�"�I�
�E�E�G�N�N�2�����Q�U�U�W�r�d�+r)rr"r6rnr
r#ri)r)r�r*s` @r�test_context_getset_5�!ContextTest.test_context_getset_5<sT����"�"�3��3��	���b�	�	,�
	� � �"�&�&�s�+��������"�%rc�^^^^�[R"5m[R"SSS9mUUUU4SjnUU4SjmTRU5 g)Nr*r�r0c�^>�TRS5 TR5nTRUTS5 TRS5 TRTTS5 TRUTS5 URT5 TRTTS5 TRUTS5 g)N�
��)r6�copyr#r
)r�r*r��ctx2_funr)s ����r�ctx1_fun�1ContextTest.test_context_copy_1.<locals>.ctx1_funMs����
�E�E�"�I��9�9�;�D����T�!�W�b�)�
�E�E�"�I����T�!�W�b�)����T�!�W�b�)��H�H�X�����T�!�W�b�)����T�!�W�b�)rc�>�TRTR5S5 TRS5 TRTR5S5 g)Nr�r�)r#rir6r�s��rr��1ContextTest.test_context_copy_1.<locals>.ctx2_fun[s:������Q�U�U�W�b�)�
�E�E�"�I����Q�U�U�W�b�)rr�)r)r�r*r�r�s` @@@r�test_context_copy_1�ContextTest.test_context_copy_1Is@����"�"�$���"�"�3��3��	*�	*�	*�
	
����rc�X^^�[R"S5mUU4Sjn[RR	SS9n[UR
U[S555nUR5 TRU[[S555 g!UR5 f=f)N�cvarc��>�[S5HcnTRX-5 [R"[R
"SS55 TR
TR5X-5 Me U$)Nr�g����MbP?g�������?)�ranger6�time�sleep�random�uniformr#ri)�num�ir�r)s  ��r�sub�/ContextTest.test_context_threads_1.<locals>.subgsU����2�Y�������!��
�
�6�>�>�%��6�7�� � �����S�W�5���Jrr�)�max_workers)
rr"�
concurrent�futures�ThreadPoolExecutorr��mapr��shutdownr#)r)r��tp�resultsr�s`   @r�test_context_threads_1�"ContextTest.test_context_threads_1bs�����%�%�f�-��	��
�
�
2�
2�r�
2�
B��	��2�6�6�#�u�R�y�1�2�G��K�K�M�����$�u�R�y�/�2��
�K�K�M�s�$B�B)c�8^^�[R"S5m[R"5m[R"5n"UU4SjS5nTRTRU"55 URTR[55 TU:H g)N�vc�$>�\rSrSrUU4SjrSrg)�IContextTest.test_context_eq_reentrant_contextvar_set.<locals>.ReentrantEqizc�0>�TRU4Sj5 g)Nc�6>�TR[55$r	�r6�object�r�s�r�<lambda>�bContextTest.test_context_eq_reentrant_contextvar_set.<locals>.ReentrantEq.__eq__.<locals>.<lambda>|���������!2rT�r
)r)r`r�r�s  ��rra�PContextTest.test_context_eq_reentrant_contextvar_set.<locals>.ReentrantEq.__eq__{s������2�3�rrANrc)r�r�s��r�ReentrantEqr�zs
���
�
rr)rr"rr
r6r�)r)r�rr�r�s   @@r�(test_context_eq_reentrant_contextvar_set�4ContextTest.test_context_eq_reentrant_contextvar_setusj����$�$�S�)���"�"�$���"�"�$��	�	�
	
������+�-�(�������&�(�#���rc�6^^^�[R"S5m[R"5m[R"5n"UUU4SjS5mTRTRT"55 URTRT"55 TU:H g)Nr�c�0>�\rSrSrUU4SjrU4SjrSrg)�SContextTest.test_context_eq_reentrant_contextvar_set_in_hash.<locals>.ReentrantHashi�c�0>�TRU4Sj5 g)Nc�6>�TR[55$r	r�r�s�rr��nContextTest.test_context_eq_reentrant_contextvar_set_in_hash.<locals>.ReentrantHash.__hash__.<locals>.<lambda>�rrrr)r)r�r�s ��r�__hash__�\ContextTest.test_context_eq_reentrant_contextvar_set_in_hash.<locals>.ReentrantHash.__hash__�s������2�3�rc�>�[UT5$r	)�
isinstance)r)r`�
ReentrantHashs  �rra�ZContextTest.test_context_eq_reentrant_contextvar_set_in_hash.<locals>.ReentrantHash.__eq__�s���!�%��7�7rrAN)rCrDrErFr
rarG)rr�r�s���rrr	�s���
�
8�
8rr)rr"rr
r6)r)r�rr�r�s  @@@r�0test_context_eq_reentrant_contextvar_set_in_hash�<ContextTest.test_context_eq_reentrant_contextvar_set_in_hash�sj����$�$�S�)���"�"�$���"�"�$��	8�	8�	
������-�/�*�������-�/�*���rrAN)rCrDrErFr+rr;rSrXrfrkrprsr�r�r�r�r�r�r�r�r�r�r�r�r�requires_working_threadingr�rrrGrArrrrs���
2��)��)�&�"�0��8��$�8'��)��)�0)����3)��3)�j��������0�����
&��
&��2��0�0�2�3�3��3�"�rrc�8�\rSrSrSrSS.SjrSrSrSrSr	g)	�HashKeyi�N��error_on_eq_toc�(�X lXlX0lgr	)r$r(r)r)r(r$rs    r�__init__�HashKey.__init__�s���	��	�,�rc�<�SURSURS3$)Nz
<Key name:z hash:�>)r$r(rWs r�__repr__�HashKey.__repr__�s���D�I�I�;�f�T�Y�Y�K�q�9�9rc�v�URb!URR(a[eUR$r	)�_crasher�
error_on_hash�HashingErrorr(rWs rr
�HashKey.__hash__�s(���=�=�$����)D�)D����y�y�rc��[U[5(d[$URb!URR(a[
eURb"URULa[SU<SU<35eURb"URULa[SU<SU<35eURUR4URUR4:H$)Nzcannot compare z to )
rr�NotImplementedr"�error_on_eq�EqErrorrr�r$r(r_s  rra�HashKey.__eq__�s����%��)�)�!�!��=�=�$����)B�)B��M����*�t�/B�/B�e�/K���t�h�d�5�)�D�E�E����+��0D�0D��0L���u�i�t�D�8�D�E�E��	�	�4�9�9�%�%�*�*�e�j�j�)A�A�Ar)rr(r$)
rCrDrErFr"rrr
rarGrArrrr�s���H�59�-�:��Brrc�4^�\rSrSrU4SjrU4SjrSrU=r$)�KeyStri�c�>�[Rb%[RR(a[e[TU]5$r	)rr"r#r$�superr
)r)�	__class__s �rr
�KeyStr.__hash__�s1������'�G�,<�,<�,J�,J����w��!�!rc�>�[Rb%[RR(a[e[TU]U5$r	)rr"r(r)r.ra)r)r`r/s  �rra�
KeyStr.__eq__�s1������'�G�,<�,<�,H�,H��M��w�~�e�$�$rrA)rCrDrErFr
rarG�
__classcell__)r/s@rr,r,�s���"�
%�%rr,c�0�\rSrSrSSS.SjrSrSrSrg)	�HaskKeyCrasheri�F�r#r(c��XlX lgr	r6)r)r#r(s   rr�HaskKeyCrasher.__init__�s��*��&�rc�R�[Rb[S5eU[lg)Nzcannot nest crashers)rr"r�rWs r�	__enter__�HaskKeyCrasher.__enter__�s"�����'��5�6�6���rc��S[lgr	)rr")r)�excs  r�__exit__�HaskKeyCrasher.__exit__�s
����r)r(r#N)rCrDrErFrr:r>rGrArrr5r5�s��(-�5�'� �
 rr5c��\rSrSrSrg)r$i�rANrBrArrr$r$����rr$c��\rSrSrSrg)r)i�rANrBrArrr)r)�rArr)z&_testinternalcapi.hamt() not availablec���\rSrSrSrSrSrSrSrSr	Sr
\R"S	5S
5r
SrSrS
rSrSrSrSrSrSrSrSrSrSrSrSrSrg)�HamtTesti�c��[SS5n[SS5nURX5 UR[U5[U55 [	5nSX1'SX2'URX1S5 URX2S5 g)Nr�rrr.�b)rr'r#r(�dict)r)�k1�k2�ds    r�test_hashkey_helper_1�HamtTest.test_hashkey_helper_1�sy��
�R��
��
�R��
�����B�#�����b��4��8�,��F��������������$�������$rc��[5nSngr	r�r)�hs  r�test_hamt_basics_1�HamtTest.test_hamt_basics_1�s���F���rc�>�[5nUR[U5S5 URSS5nUR	X5 UR[U5S5 UR[U5S5 URUR
S55 URUR
SS5S5 URUR
S5S5 URSS5nUR	X#5 UR[U5S5 UR[U5S5 UR[U5S5 URUR
S5S5 URUR
S5S5 URUR
S55 URUR
S55 URUR
S55 URUR
S5S5 S=n=p#g)Nrr.rFrr�r�r})rr#r�r6�assertIsNotr�ri)r)rO�h2�h3s    r�test_hamt_basics_2�HamtTest.test_hamt_basics_2�s����F������Q���#�
�U�U�3��_�����������Q���#�����R��!�$����!�%�%��*�%�������s�B���,���������c�*�
�V�V�C��_������ �����Q���#�����R��!�$�����R��!�$���������c�*���������b�)����!�%�%��*�%����"�&�&��+�&����!�%�%��*�%���������c�*�����B�rc��[5n[5nURSU5nURSU5nURX45 g)N�1)rr�r6r�)r)rO�o�h1rTs     r�test_hamt_basics_3�HamtTest.test_hamt_basics_3
s:���F���H��
�U�U�3��]��
�V�V�C��^���
�
�b�rc�N�[5nURS/5nURS/5nURX#5 UR[	U5S5 UR[	U5S5 URURS5URS55 g)N�keyr)rr6rSr#r�ri)r)rOr[rTs    r�test_hamt_basics_4�HamtTest.test_hamt_basics_4s���F��
�U�U�5�"�
��
�V�V�E�2�
������ �����R��!�$�����R��!�$������������u�
�6rc���[SS5n[SS5n[SS5n[5nURUS5nURUS5nURUR	U5S5 URUR	U5S5 URUR	U5S5 URUR	U5S5 URUR	U5S5 URUR	U5S5 URUS5nURUS5nURUR	U5S5 URUR	U5S5 URUR	U5S5 URUR	U5S5 URUR	U5S5 URUR	U5S5 URUR	U5S5 URUR	U5S5 URUR	U5S5 UR[U5S	5 UR[U5S
5 UR[U5S5 UR[U5S5 UR[U5S5 g)
Nr�rr�cccr.rF�ccr�rrr}�)rrr6r#rir�)	r)rHrI�k3rOrTrU�h4�h5s	         r�test_hamt_collision_1�HamtTest.test_hamt_collision_1s7��
�R��
��
�R��
��
�R��
���F��
�U�U�2�s�^��
�V�V�B��_��������r��D�)�������r��D�)���������S�)���������T�*���������S�)���������S�)�
�V�V�B��
��
�V�V�B��
����������S�)���������S�)���������S�)���������T�*���������T�*���������S�)���������T�*���������T�*���������T�*�����Q���#�����R��!�$�����R��!�$�����R��!�$�����R��!�$rc�N�[SS5n[SS5n[SS5n[5nURUS5nURUS5nURUS5nURUR	5Vs1sHoUR
iM sn1Sk5 gs snf)Nl�C�Dr�E>rlrmrn)rrr6r#r�r$)r)rlrmrnrO�ks      r�test_hamt_collision_3�HamtTest.test_hamt_collision_3Bs���
�9�3�?���9�3�?���9�3�?���F��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��*	
���!�&�&�(�3�(�Q�&�&�(�3�_�E��3s�B"�cpuc	�,
�SnSnSnSnSn[U5GH�n[5n[5n[U5GHpn	[U	5n
X�-(dA[	SS9 UR[5 URX�5 SSS5 SSS5 URX�5nX�-(dJ[	SS9 UR[5 UR[U	55 SSS5 SSS5 X�U
'UR[U5[U55 X�-(aM�UR[UR55[UR555 UR[UR55[UR555 GMs UR[U5U5 [U5H.n
URUR[U
5S	5U
5 M0 [[U55n[R"U5 [!U5GH�up�[U	5n
X�-(dA[	SS9 UR[5 UR#U
5 SSS5 SSS5 X�-(dJ[	SS9 UR[5 UR#[U	55 SSS5 SSS5 UR#U
5nURURU
S	5S	5 X�	UR[U5[U55 X�S
-:XaUn
UR%5nX�-(aGM-UR[UR'55[UR'555 UR[UR'55[UR'555 GM� UR[U5S5 UR[U5S5 WH/n
URW
R[)U
55X�5 M1 UR[U5[W
55 [!U5GHup�U
R#[)U
55n
URU
R[)U
5S	5S	5 UR+[)U
5S5 UR[U5[U55 X�-(aM�UR[UR-55[UR-555 UR[UR-55[UR-555 GM UR[U5S5 UR[U5S5 UR[UR55/5 GM� g!,(df   GN�=f!,(df   GN�=f!,(df   GNK=f!,(df   GNU=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f)NiXi��ar~reT�r#�r(z	not foundr}r)r�rrGr,r5r%r$r6r)rir#r�r�r�r��shuffle�	enumerate�deleter�r�re�popr�)r)�COLLECTION_SIZE�TEST_ITERS_EVERY�CRASH_HASH_EVERY�CRASH_EQ_EVERY�
RUN_XTIMES�_rOrJr�r_�keys_to_delete�iter_i�hm�dms               r�test_hamt_stress�HamtTest.test_hamt_stresses������������
��z�"�A���A���A��?�+���Q�i���,�'�d�;�!�.�.�|�<��E�E�#�M�=�<��E�E�#�M���*�'�D�9�!�.�.�w�7��E�E�&��)�,�8�:��#��� � ��Q���Q��0��,�,��$�$�S�����^�S�����^�D��$�$�S�����^�S�����^�D�),�,
���S��V�_�5��_�-��� � ����v�c�{�K�!@�#�F�.�"�%��"8�9�N��N�N�>�*�&�~�6�	���Q�i���1�'�d�;�!�.�.�|�<��H�H�S�M�=�<��/�'�D�9�!�.�.�w�7��H�H�V�A�Y�/�8�:��H�H�S�M��� � ����s�K�!8�+�F��F�� � ��Q���Q��0���1�1��B�����B��1�1��$�$�S�����]�C�����M�B��$�$�S�����]�C�����M�B�17�4
���S��V�Q�'����S��V�Q�'���� � �����C��!1�2�7�;�����S��W�c�"�g�.�#�N�3����Y�Y�s�3�x�(��� � �����C��+�!>��L����s�3�x��&�� � ��Q���Q��0��,�,��$�$�S�����_�c�!�(�(�*�o�F��$�$�S�����_�c�!�(�(�*�o�F�4�
���S��V�Q�'����S��V�Q�'����T�!�'�'�)�_�b�1�a#�=�<��<�;��8�7��:�9��.=�<��<�;��8�7��:�9�s��X�0X	�X�5X<�X*	�&X<�Y �4Y	�Y �(Z�>Y2	�Z�
X
�X�
X'�*
X9
�4X<�<
Y�
Y
�Y � 
Y/�2
Z
�<Z�
Zc�0�[SS5n[SS5n[SS5n[SS5n[S	S
5n[SS5n[SS
US9n[5nURUS5nURUS5nURUS5nURUS5nURUS5n[U5n	UR	U5nUR[U5U	S-
5 UR
[S5 UR	U5 SSS5 UR	U5nUR[U5U	S-
5 UR	U5n
URX�5 UR	U5nUR[U5U	S-
5 URURUS5S5 URURU5S5 URURU5S5 g!,(df   N�=f)N�d�A�e�B�frl�grm�hrn����Z�Errr.rFr*rJ�er�cannot comparer}rer�)
rrr6r�ryr#r r�r�ri)r)r�r�rlrmrnr�r�rO�orig_lenrTs           r�test_hamt_delete_1�HamtTest.test_hamt_delete_1�s����C�����C�����C�����C�����C�����D�#���
�S�$�q�
1���F��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M���q�6��
�H�H�Q�K������Q���A��.�
�
#�
#�J�0@�
A�
�H�H�R�L�B�
�H�H�Q�K������Q���A��.�
�X�X�a�[���
�
�b��
�H�H�Q�K������Q���A��.�������q�"��r�*�������q��3�'�������q��3�'�B�
A�s�H�
Hc��[SS5n[SS5n[SS5n[SS5n[S	S
5n[SS5n[SS
US9n[5nURUS5nURUS5nURUS5nURUS5nURUS5n[U5n	UR	[
S5 UR
U5 SSS5 UR
U5nUR[U5U	5 UR
U5nUR[U5U	S-
5 UR
U5nUR[U5U	S-
5 UR
U5nUR[U5U	S-
5 URURU5S5 URURU5S5 UR
U5nUR
U5nUR
U5nUR
U5nUR[U5S5 g!,(df   GNj=f)Nr�r��)r�鉊rlr�rmr�rnr�r�r�rr.rFr*rJr�r�rr}rer)	rrr6r�r r�ryr#ri)
r)r�r�rlrmrnr�r�rOr�s
          r�test_hamt_delete_2�HamtTest.test_hamt_delete_2�s����C�����F�C� ���F�C� ���C�����C�����D�#���
�V�T�!�
4���F��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M���q�6���
#�
#�J�0@�
A�
�H�H�R�L�B�
�H�H�Q�K������Q���*�
�H�H�Q�K������Q���A��.�
�H�H�Q�K������Q���A��.�
�H�H�Q�K������Q���A��.�������q��3�'�������q��3�'�
�H�H�Q�K��
�H�H�Q�K��
�H�H�Q�K��
�H�H�Q�K������Q���#�-B�
A�s�I�
Ic��[SS5n[SS5n[SS5n[SS5n[SS	5n[5nURUS
5nURUS5nURUS5nURUS
5nURUS5n[U5nUR	U5nUR[U5US-
5 UR	U5nUR[U5US-
5 URUR
U5S5 URUR
U5S5 g)Nr�r�r�r���rlrmr�rnr.rFr*rJr�rr})rrr6r�ryr#ri�r)r�r�rlrmrnrOr�s        r�test_hamt_delete_3�HamtTest.test_hamt_delete_3 s���C�����C�����F�C� ���F�C� ���C�����F��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M���q�6��
�H�H�Q�K������Q���A��.�
�H�H�Q�K������Q���A��.�������q��3�'�������q��3�'rc�*�[SS5n[SS5n[SS5n[SS5n[SS5n[5nURUS	5nURUS
5nURUS5nURUS5nURUS
5n[U5nUR	U5nUR[U5US-
5 UR	U5nUR[U5US-
5 UR	U5nUR[U5US-
5 UR	U5nUR[U5US-
5 UR	U5nUR[U5S5 g)Nr�r�r�r�r�rlrmrnr.rFr*rJr�rr}re�r)rrr6r�ryr#r�s        r�test_hamt_delete_4�HamtTest.test_hamt_delete_4DsP���C�����C�����F�C� ���F�C� ���F�C� ���F��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M���q�6��
�H�H�Q�K������Q���A��.�
�H�H�Q�K������Q���A��.�
�H�H�Q�K������Q���A��.�
�H�H�Q�K������Q���A��.�
�H�H�Q�K������Q���#rc�b�[5n/n[S5H>n[U[U55nUR	U5 URUSU35nM@ [SS5nURUS5nUR
[U5S5 URUS5nUR
[U5S5 URU5nUR
[U5S5 URUS5nUR
[U5S5 URUS	5nUR
[U5S
5 URUS	5nUR
[U5S
5 UHnURU5nM UR
[U5S5 g)N�zval-��18�	collision�r}�r�r)	rr�rrer5r6r#r�ry)r)rOr�r�r_�collision_key16s      r�test_hamt_delete_5�HamtTest.test_hamt_delete_5nsg���F�����r��A��!�S��V�$�C��K�K������c�T�!��:�&�A��
"�"�d�+��
�E�E�/�;�/��(	
����Q���$�
�H�H�T�!�W�������Q���$�
�H�H�_�%������Q���$�
�H�H�T�"�X�������Q���$�
�H�H�T�!�W�������Q���$�
�H�H�T�!�W�������Q���$��C�����
�A������Q���#rc
��[SS5n[SS5n[SS5n[SS5n[S	S
5n[SS5n[5nURUS
5nURUS5nURUS5nURUS5nURUS5nURUS5nUR5nUR	[[U55US
4US4US4US4US4US415 g)Nr�r�r�r�r�rlr�rmr�rn�n�Fr.rFr*rJr�r��rrr6r�r#r��	r)r�r�rlrmrnr�rO�its	         r�test_hamt_items_1�HamtTest.test_hamt_items_1�s����C�����F�C� ���F�C� ���C�����C�����C�����F��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�W�W�Y�������R��M���X��3�x�!�S��A�s�8�a��X��3�x�H�	Jrc
��[SS5n[SS5n[SS5n[SS5n[SS5n[S	S
5n[5nURUS5nURUS5nURUS
5nURUS5nURUS5nURUS5nUR5nUR	[[U55US4US4US
4US4US4US415 g�Nr�r�r�r�r�rlrmrnr�r�r.rFr*rJr�r�r�r�s	         r�test_hamt_items_2�HamtTest.test_hamt_items_2�s����C�����C�����F�C� ���F�C� ���F�C� ���C�����F��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�W�W�Y�������R��M���X��3�x�!�S��A�s�8�a��X��3�x�H�	Jrc	�8�[SS5n[SS5n[SS5n[SS5n[SS5n[S	S
5n[5nURUS5nURUS5nURUS
5nURUS5nURUS5nURUS5nUR[[	UR555XX4XV15 UR[[	U55XX4XV15 gr�)rrr6r#r�r�)r)r�r�rlrmrnr�rOs        r�test_hamt_keys_1�HamtTest.test_hamt_keys_1�s����C�����C�����F�C� ���F�C� ���F�C� ���C�����F��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M��
�E�E�!�S�M������T�!�&�&�(�^�,�q�Q�1�.@�A�����T�!�W���a�A�'9�:rc��[5nUR[UR55S5 UR[	UR55/5 g)Nr)rr#r�r�r�rNs  r�test_hamt_items_3�HamtTest.test_hamt_items_3�s=���F������Q�W�W�Y���+�����a�g�g�i��"�-rc��[SS5n[SS5n[SS5n[SS5n[SS	5n[5nURUS
5nURUS5nURUS5nURUS
5n[5nURUS
5nURXg:H5 UR	Xg:g5 URUS5nURXg:H5 UR	Xg:g5 URUS5nURXg:H5 UR	Xg:g5 URUS5nURXg:H5 UR	Xg:g5 URUS
5nUR	Xg:H5 URXg:g5 URUS5nURXg:H5 UR	Xg:g5 URU5nURXg:H5 UR	Xg:g5 URUS
5nURXg:H5 UR	Xg:g5 g)Nr�r�r�r�r�rlrm�xrnr.rFr*rJ�d2r�)rrr6�assertFalse�
assertTruery)r)r�r�rlrmrnr[rTs        r�test_hamt_eq_1�HamtTest.test_hamt_eq_1�s����C�����C�����F�C� ���F�C� ���C����
�V��
�V�V�A�s�^��
�V�V�A�s�^��
�V�V�A�s�^��
�V�V�A�s�^��
�V��
�V�V�A�s�^�������"������!�
�V�V�A�s�^�������"������!�
�V�V�A�s�^�������"������!�
�V�V�A�t�_�������"������!�
�V�V�A�s�^�������!������"�
�V�V�A�s�^�������"������!�
�Y�Y�q�\�������"������!�
�V�V�A�s�^�������"������!rc�r�[SS5n[SSUS9n[5nURUS5n[5nURUS5nUR[S5 X4:H SSS5 UR[S5 X4:g SSS5 g!,(df   N2=f!,(df   g=f)Nr�r�r�rr.r�)rrr6r r�)r)r�r�r[rTs     r�test_hamt_eq_2�HamtTest.test_hamt_eq_2s����C����
�S�$�q�
1��
�V��
�V�V�A�s�^��
�V��
�V�V�B��_��
�
#�
#�J�0@�
A��H�B��
#�
#�J�0@�
A��H�B�
A�B�
A��B�
A�s�&B�	B(�
B%�(
B6c���[SS5n[5nURSS5n[R"U5n/nURU5 URU5 /nURU5 URU5 URX5nAAA[R"5 [R"5 [R"5 URU"55 g)Nr�r�r)	rrr6�weakref�refr5�gc�collectr�)r)r�rOr�r.rFs      r�test_hamt_gc_1�HamtTest.test_hamt_gc_1 s����C�����F��
�E�E�!�Q�K���k�k�!�n����	�����	�������	�����	�����
�E�E�!�K��
�q�!�
�
�
��
�
�
��
�
�
�����#�%� rc��[SS5n[SS5n[5nURUS5nURX5n[R"U5nUR5n[
U5 AA[R"5 [R"5 [R"5 URU"55 g)Nr�r�r�r�r.)
rrr6r�r�r��nextr�r�r�)r)r�r�rOr��his      r�test_hamt_gc_2�HamtTest.test_hamt_gc_27s����C�����C�����F��
�E�E�!�S�M��
�E�E�!�K���k�k�!�n��
�W�W�Y���R��
�r�
�
�
��
�
�
��
�
�
�����#�%� rc�(�[SS5n[SS5n[SS5n[5nURUS5nURX;5 UR	X4;5 UR[5 [SS9 X$; SSS5 SSS5 UR[5 [SS9 X$; SSS5 SSS5 g!,(df   NK=f!,(df   NT=f!,(df   N9=f!,(df   g=f�	Nr�r�r�r�rTrvru)	rrr6r�r�r%r)r5r$�r)r��AAr�rOs     r�test_hamt_in_1�HamtTest.test_hamt_in_1Ks����C����
�S�#�
���C�����F��
�E�E�!�Q�K������������� �
�
�
�w�
'��D�1���2�(��
�
�|�
,��d�3���4�-�
,�2�1��(�
'��
4�3��-�
,�sH�<
C!�C�C!�0
D�:C2�?D�
C	�C!�!
C/�2
D	�<D�
Dc��[SS5n[SS5n[SS5n[5nURUS5nURXAS5 URXBS5 UR	[
5 XC SSS5 UR	[5 [SS9 XB SSS5 SSS5 UR	[5 [SS9 XB SSS5 SSS5 g!,(df   Nw=f!,(df   N\=f!,(df   Ne=f!,(df   NJ=f!,(df   g=fr�)	rrr6r#r%r�r)r5r$r�s     r�test_hamt_getitem_1�HamtTest.test_hamt_getitem_1_s����C����
�S�#�
���C�����F��
�E�E�!�Q�K�������q�!�������"�
�
�
�x�
(�
�D�)��
�
�w�
'��D�1���2�(��
�
�|�
,��d�3���4�-�
,�)�
(��2�1��(�
'��
4�3��-�
,�sT�>C4� 
D�*D�/D�
D8�D'�#D8�4
D�
D	�D�
D$�'
D5	�1D8�8
ErAN)rCrDrErFrKrPrVr\r`rirpr�requires_resourcer�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rGrArrrDrD�s���%���<�7�#%�J!F�F
���u�%�W2�&�W2�r+(�Z2$�h"(�H($�T/$�bJ�*J�*;�&.�
-"�^� !�.!�(�(rrD�__main__)�concurrent.futuresr�rrr�r�r��unittestr��testr�test.supportr�_testinternalcapir�ImportErrorr�TestCaserrrer,r5�	Exceptionr$r)�skipIfrDrC�mainrArr�<module>r�s������	�
�����)��&�
�v�(�#�#�v�xB�B�B	%�S�	%� � �	�9�	�	�i�	�
������G�H�Y
�x� � �Y
�I�Y
�x�z���M�M�O���S#���D��s�C�C�C

Youez - 2016 - github.com/yon3zu
LinuXploit