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

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python312/Lib/test/__pycache__/test_tracemalloc.cpython-312.pyc
�

���gU���L�ddlZddlZddlZddlZddlZddlZddlmZddlm	Z	m
Z
mZddlm
Z
ddlmZddlmZ	ddlZdZej(d�ZdZd	�Zd
�Zd�Zd�Zd
�Zd�Zd�ZGd�dej<�ZGd�dej<�Z Gd�dej<�Z!Gd�dej<�Z"Gd�dej<�Z#ejHedud�Gd�dej<��Z%e&dk(rejN�yy#e$rdZY��wxYw)�N)�patch)�assert_python_ok�assert_python_failure� interpreter_requires_environment)�support)�	os_helper)�threading_helper�)���i@c��g}tjd�}t|�D]V}|j}|j|z}|j|j|f�d}|j}|��Lt|�St|�S)N�r)	�sys�	_getframe�range�f_code�f_lineno�append�co_filename�f_back�tuple)�nframe�lineno_delta�frames�frame�index�code�linenos       �*C:\Python312\\Lib\test\test_tracemalloc.py�
get_framesrs}��
�F��M�M�!��E��v����|�|�����,�.���
�
�t�'�'��0�1��������=����=�����=�r
c	��tj�}|tz
}t|d�}d|z}|tj|tt
|�|��fS)Nr
�x)�tracemalloc�get_traceback_limit�EMPTY_STRING_SIZEr�	Traceback�min�len)�sizer�	bytes_lenr�datas     r�allocate_bytesr+&sT��
�
,�
,�
.�F��)�)�I�
���
"�F��)��D���&�&�v�s�3�v�;��/G�H�H�Hr
c�v�d}gd�}tj||�}gd�}tj||�}||fS)N�)�r�
)��a.pyr-��b.py��r.r.�r
r-��r1�r2r5�r-�B)�r3r
r
�r5����	<unknown>rr
)r.r.r.)r-r-r7r5)r-�r7r5)r4�)��c.py�Br
)r"�Snapshot)�traceback_limit�
raw_traces�snapshot�raw_traces2�	snapshot2s     r�create_snapshotsrM-sH���O�

�J��#�#�J��@�H�	�K��$�$�[�/�B�I��i� � r
c�0�tj||f�S�N)r"�_Frame��filenamers  rrrNs�����x��0�1�1r
c�,�tj|�SrO)r"r%)rs r�	tracebackrTQs��� � ��(�(r
c��t||f�SrO)rTrQs  r�traceback_linenorVTs���h��'�(�(r
c��t|d�S�Nr)rV)rRs r�traceback_filenamerYWs���H�a�(�(r
c��eZdZd�Zy)�
TestTracebackc���dtfd�}|j|d�d�|j|dd�d�d}d}|j||�d	|�d
��|j||d�d	|�d��y)
N�returnc�8�ttj|��SrO)�reprr"r%)�argss r�get_reprz)TestTraceback.test_repr.<locals>.get_repr]s����-�-�t�4�5�5r
�z<Traceback ()>rz<Traceback () total_nframe=0>))�f1r
)�f2r-z@(<Frame filename='f2' lineno=2>, <Frame filename='f1' lineno=1>)z<Traceback �>r-z total_nframe=2>)�str�assertEqual)�selfrar�exp_repr_framess    r�	test_reprzTestTraceback.test_repr\s���	6�s�	6�	
����"��'7�8�����"�a��*I�J�'��
/�	�	
����&�)�&��&7�q�9�	;�����&�!�,�&��&7�7G�H�	Jr
N)�__name__�
__module__�__qualname__rjrbr
rr[r[[s��Jr
r[c��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zej(�d��Zd�Zy)�TestTracemallocEnabledc�x�tj�r|jd�tjd�y)N�+tracemalloc must be stopped before the testr
)r"�
is_tracing�skipTest�start�rhs r�setUpzTestTracemallocEnabled.setUpos)���!�!�#��M�M�G�H����!�r
c�,�tj�yrO�r"�stoprus r�tearDownzTestTracemallocEnabled.tearDownu������r
c�4�td�D�cgc]
}td���}}tj�}|j	|d�tj
�tj�}|j	|d�|j
||�ycc}w)Ni��{r)rr+r"�get_tracemalloc_memory�assertGreaterEqual�clear_traces�assertLessEqual)rh�countr*r(�size2s     r�test_get_tracemalloc_memoryz2TestTracemallocEnabled.test_get_tracemalloc_memoryxs|��16�t��=����s�#���=��1�1�3������a�(�� � �"��2�2�4������q�)����U�D�)��>s�Bc��tj�d}t|�\}}tj|�}|j	||�y�N�90)r"r�r+�get_object_tracebackrg�rh�obj_size�obj�
obj_tracebackrTs     r�test_get_object_tracebackz0TestTracemallocEnabled.test_get_object_traceback�sB��� � �"���+�H�5���]��4�4�S�9�	�����M�2r
c�b�tj�tj�g}d}g}tj�}t|d�}tj|tt|�|��}tj|�}|j|�|j||�y)N���)r"r�r�
gc_collectr#rr%r&r'r��assertIsNotNonerg)rhr�rrr�rTs      r�test_new_referencez)TestTracemallocEnabled.test_new_reference�s���� � �"������������0�0�2���F�B�'��#�-�-�f�c�#�f�+�v�6N�O�
��4�4�S�9�	����Y�'�����M�2r
c�^�d}tj�|jttjd�tj�tjd�t|�\}}tj|�}|jt|�d�|j||�tj�tjd�t|�\}}tj|�}|jt|�d�|j||�y)Nr/rr
)	r"ry�assertRaises�
ValueErrorrtr+r�rgr')rhr��obj2�obj2_tracebackrTr�r�s       r�test_set_traceback_limitz/TestTracemallocEnabled.test_set_traceback_limit�s������������*�k�&7�&7��<��������"��-�h�7���n��4�4�T�:�	�����Y���,�����N�3��������!��+�H�5���]��4�4�S�9�	�����Y���+�����M�2r
c�`�|D]}|d|jk(s�|cS|jd�y)Nr-ztrace not found)�_frames�fail)rh�tracesrT�traces    r�
find_tracez!TestTracemallocEnabled.find_trace�s2���E��Q�x�9�,�,�,����	
�	�	�#�$r
c��tj�d}t|�\}}tj�}|j	||�}|j|t�|\}}}}	|j||�|j||j�tj�|jtj�g�yr�)
r"r�r+�_get_tracesr��assertIsInstancerrgr�ry)
rhr�r�r�r�r��domainr(rT�lengths
          r�test_get_tracesz&TestTracemallocEnabled.test_get_traces�s���� � �"���+�H�5���]��(�(�*������
�6�����e�U�+�*/�'���i������x�(�����M�$9�$9�:���������0�0�2�B�7r
c�����d���fd���fd�}tj�tjd�d}||�\}}||�\}}tj�}t	t|j��|_t	t|j��|_|j||�}|j||�}	|\}
}}}
|	\}}}}|j||�y)Nc��t|�SrO)r+�r(s r�allocate_bytes2zPTestTracemallocEnabled.test_get_traces_intern_traceback.<locals>.allocate_bytes2�s
��!�$�'�'r
c����|�SrOrb)r(r�s �r�allocate_bytes3zPTestTracemallocEnabled.test_get_traces_intern_traceback.<locals>.allocate_bytes3�����"�4�(�(r
c����|�SrOrb)r(r�s �r�allocate_bytes4zPTestTracemallocEnabled.test_get_traces_intern_traceback.<locals>.allocate_bytes4�r�r
r4r})	r"ryrtr�r�reversedr�r��assertIs)rhr�r��obj1�obj1_tracebackr�r�r��trace1�trace2�domain1�size1�
traceback1�length1�domain2r��
traceback2�length2r�r�s                  @@r� test_get_traces_intern_tracebackz7TestTracemallocEnabled.test_get_traces_intern_traceback�s����	(�	)�	)�	�������!����.�x�8���n�.�x�8���n��(�(�*��!&�x��0F�0F�'G�!H���!&�x��0F�0F�'G�!H��������8�������8��.4�+���
�G�.4�+���
�G��
�
�j�*�-r
c��d}d}tj�t|�\}}tj�\}}|j	||�|j	||�|j||z
|�|j||z
|�d}tj�\}}|j
||�|j	||z
||z
�|j	||�tj�|jtj�d�t|�\}}tj�\}}|j	||�tj�|jtj�d�y)N��)rr)	r"r�r+�get_traced_memoryrr��
assertLessrgry)	rh�	max_errorr�r�r�r(�	peak_sizer��
peak_size2s	         r�test_get_traced_memoryz-TestTracemallocEnabled.test_get_traced_memory�sX���	���� � �"�+�H�5���]�%�7�7�9���i�����h�/����	�4�0����T�H�_�i�8����Y��-�y�9���'�9�9�;���z�����t�$�����u��h��.B�C����
�I�6�	� � �"�����6�6�8�&�A�,�H�5���]�%�7�7�9���i�����h�/�	��������6�6�8�&�Ar
c���td�\}}tj|�}|j|�tj�tj|�}|j|�y)Nr})r+r"r�r�r��assertIsNone)rhr�r�rTr�s     r�test_clear_tracesz(TestTracemallocEnabled.test_clear_tracessY��+�C�0���]��4�4�S�9�	����Y�'�� � �"� �5�5�c�:�
����*�%r
c���tj�ttt	d���}tj
�\}}tj�tj
�\}}|j||�|j||�d}t|�\}}tj
�\}	}
|j|
|	�|j|
|�|j|
|z
|�y)Ni��r�)r"r��sum�listrr��
reset_peakrr�r+�
assertGreater)rh�	large_sumr��peak1r��peak2r�r�r��size3�peak3s           r�test_reset_peakz&TestTracemallocEnabled.test_reset_peaks���	� � �"���U�6�]�+�,�	�"�4�4�6���u�	��� �"�4�4�6���u�����u�-�����u�%���+�H�5���]�"�4�4�6���u�����u�-����5�%�(������
�x�8r
c���tj�|jtj��tj�|jtj��yrO)r"ry�assertFalserrrt�
assertTruerus r�test_is_tracingz&TestTracemallocEnabled.test_is_tracing(sF����������/�/�1�2���������.�.�0�1r
c���td�\}}tj�}|j|jdj
jd�|jtj�|jtjtj�tjjtj�}|j|j|j�tj�|j!t"�5}tj�ddd�|jt%j&�d�y#1swY�/xYw)Nr}r
r/zLthe tracemalloc module must be tracing memory allocations to take a snapshot)r+r"�
take_snapshotr�r�rT�total_nframe�dumpr�TESTFN�
addCleanup�unlinkrG�loadrgryr��RuntimeErrorrf�	exception)rhr��sourcerJrL�cms      r�
test_snapshotz$TestTracemallocEnabled.test_snapshot/s��$�S�)���V��,�,�.��	
���8�?�?�1�-�7�7�D�D�b�I�	�
�
�i�&�&�'����	�(�(�)�*:�*:�;� �(�(�-�-�i�.>�.>�?�	�����)�)�8�?�?�;�	����
�
�
�|�
,���%�%�'�-�����R�\�\�*�:�	;�-�
,�s�E"�"E+c�f�tj�}d|_|jtj
�|j
tjtj
�tjjtj
�}|j|jd�y)N�new)r"r��	test_attrr�rr�r�r�rGr�rg)rhrJrLs   r�test_snapshot_save_attrz.TestTracemallocEnabled.test_snapshot_save_attrHsx���,�,�.��"����
�
�i�&�&�'����	�(�(�)�*:�*:�;� �(�(�-�-�i�.>�.>�?�	�����,�,�e�4r
c�~�tj�syd}t|�\}}tj|�}|�yy)Nr-r�r5r)r"rrr+r�r�s     r�
fork_childz!TestTracemallocEnabled.fork_childSsC���%�%�'����+�H�5���]��4�4�S�9�	����r
c���tj�}|s)d}	|j�}tj|�yt	j
|d��y#tj|�wxYw)Nr
r)�exitcode)�os�forkr��_exitr�wait_process)rh�pidr�s   r�	test_forkz TestTracemallocEnabled.test_fork`sT���g�g�i����H�
#��?�?�,������"�� � ��q�1������"�s�A�A/c�,�tj�tjd�d�}|d�jd}tj|�}|jd|dj�|jd|dj�y)N�c����fd�}|S)Nc����SrOrb)�xs�r�gzFTestTracemallocEnabled.test_no_incomplete_frames.<locals>.f.<locals>.gss����r
rb)r�r�s` r�fz;TestTracemallocEnabled.test_no_incomplete_frames.<locals>.frs
���
��Hr
r�test_tracemallocr���)r"ryrt�__closure__r��assertInrR�assertNotIn)rhr�r�rTs    r�test_no_incomplete_framesz0TestTracemallocEnabled.test_no_incomplete_framesns{���������!��	�
��d���q�!���4�4�S�9�	��
�
�(�)�B�-�*@�*@�A����+�Y�r�]�-C�-C�Dr
N)rkrlrmrvrzr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�
requires_forkr�r�rbr
rroronsy����*�3�3�(3�(%�8� .�6"B�H&�9�02�;�2	5���W����2��2�Er
roc�^�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zy)�TestSnapshoti�c��dg}tj�5}|jtjt
dd���|jtjt
dd���|jtjt
d|���tj�}|j|jd�|jt|j�d�|jd	}|j|jd�|j|jjd
�|jt|j�d�|j|jd	jd�|j|jd	jd�ddd�y#1swYyxYw)
N)rr9)r0r/rrT)�return_valuer#r9r�r
rr/r1r-)�
contextlib�	ExitStack�
enter_contextr�objectr"r�rgrHr'r�r(rTr�rRr)rhrI�stackrJr�s     r�test_create_snapshotz!TestSnapshot.test_create_snapshot�s[��0�1�
�
�
!�
!�
#�u�������[�,�:>�!@�
A�������[�:O�:;�!=�
>�������[�-�:D�!F�
G�#�0�0�2�H����X�5�5�q�9����S����1�1�5��O�O�A�&�E����U�Z�Z��+����U�_�_�9�9�2�>����S����1�1�5����U�_�_�Q�/�8�8�&�A����U�_�_�Q�/�6�6��:�!$�
#�
#�s�FG�G	c�:�t�\}}tjdd�}tjddd�}tjddd�}t|jj
�}|j
|f�}|j|jj
gd��|j|jj
|�|j
||f�}|j|jj
gd��|j
d	�}	|j|	|�|j|	j|j�|j|	j|j�|jt|j|�y)
NFr3Tr1r-r9)r.r.r.r6r=)r.r.r.r6rb)rMr"�Filterr�r��_traces�
filter_tracesrg�assertIsNotr��	TypeError)
rhrJrL�filter1�filter2�filter3�original_traces�	snapshot3�	snapshot4�	snapshot5s
          r�test_filter_traceszTestSnapshot.test_filter_traces�sT��.�0���)��$�$�U�F�3���$�$�T�6�1�5���$�$�T�6�1�5���x���6�6�7���*�*�G�:�6�	�����)�)�1�1�4
�	�	
������0�0�/�B��+�+�W�g�,>�?�	�����)�)�1�1�4
�	��*�*�2�.�	�����H�-�����)�)�8�?�?�;�����)�)�8�?�?�;����)�X�%;�%;�W�Er
c��t�\}}tjddd��}tjddd��}t|jj
�}|j
|f�}|j|jj
gd��|j
|f�}|j|jj
gd��y)NFr1r
�r�T)r.r.r.r:r=)rMr"rr�r�rr
rg)rhrJrLrrrrs       r�test_filter_traces_domainz&TestSnapshot.test_filter_traces_domain�s���.�0���)��$�$�U�F�1�=���$�$�T�6�!�<���x���6�6�7���*�*�G�:�6�	�����)�)�1�1�4
�	��*�*�G�:�6�	�����)�)�1�1�4
�	r
c�`�t�\}}tjdd��}tjdd��}|j|f�}|j	|j
jgd��|j|f�}|j	|j
jdg�y)NFr5rT)r.r.r.r6r:r=)rMr"�DomainFilterr
rgr�r)rhrJrLrrrs      r� test_filter_traces_domain_filterz-TestSnapshot.test_filter_traces_domain_filter�s���.�0���)��*�*�5��;���*�*�4��:���*�*�G�:�6�	�����)�)�1�1�4
�	��*�*�G�:�6�	�����)�)�1�1�*�4
�	r
c��t�\}}tdd�}tdd�}tdd�}tdd�}tdd	�}|jd
�}|j|t	j
|dd�t	j
|dd
�t	j
|dd�t	j
|dd�g�|jd
�}	|j|	t	j
|dd�t	j
|dd�t	j
|dd
�g�|j
|d
�}
|j|
t	j|dddd�t	j|dddd�t	j|dddd�t	j|dddd�t	j|ddd
d�g�y)NrArr1r-r9r3r
rErFrr;�r5r>�rCrB���r���)rMrV�
statisticsrgr"�	Statistic�
compare_to�
StatisticDiff)rhrJrL�tb_0�tb_a_2�tb_a_5�tb_b_1�tb_c_578�stats1�stats2r#s           r�test_snapshot_group_by_linez(TestSnapshot.test_snapshot_group_by_line�s���.�0���)���Q�/��!�&�!�,��!�&�!�,��!�&�!�,��#�F�C�0���$�$�X�.�������!�!�&�"�a�0��!�!�&�"�a�0��!�!�$��1�-��!�!�&�!�Q�/�	"
�	��%�%�h�/�������!�!�&�$��2��!�!�(�C��3��!�!�&�"�a�0�"
�	��)�)�(�H�=�
������%�%�f�d�D�!�Q�?��%�%�h��S�!�Q�?��%�%�f�a��a��<��%�%�d�A�r�1�b�9��%�%�f�b�!�Q��:�&
�	r
c
���t�\}}td�}td�}td�}td�}|jd�}|j|t	j
|dd�t	j
|dd	�t	j
|d
d�g�|jd�}|j|t	j
|dd�t	j
|d
d�g�|j
|d�}	|j|	t	j|dddd�t	j|d
d
dd�t	j|dddd�t	j|dddd�g�y)NrAr1r3rErRr;r
� r4r>i�r9rCrBrr!rr")rMrYr#rgr"r$r%r&)
rhrJrLr'�tb_a�tb_b�tb_cr,r-�diffs
          r�test_snapshot_group_by_filez(TestSnapshot.test_snapshot_group_by_files`��.�0���)�!�+�.��!�&�)��!�&�)��!�&�)���$�$�Z�0�������!�!�$��A�.��!�!�$��A�.��!�!�$��1�-�"
�	��%�%�j�1�������!�!�$��a�0��!�!�$��Q�/�"
�	��#�#�H�j�9�������%�%�d�D�$��1�=��%�%�d�C��a��;��%�%�d�A�s�A�r�:��%�%�d�A�r�1�b�9�	 
�	r
c���t�\}}tdd�}tdd�}td�}td�}|jd�}|j|t	j
|dd�t	j
|d	d
�t	j
|dd�t	j
|dd�g�td
�}|jd�}	|j|	t	j
|dd�t	j
|dd�t	j
|d	d
�g�|j
|d�}
|j|
t	j|dddd�t	j|dddd�t	j|dddd�t	j|dddd�t	j|d	dd
d�g�|jt|jdd��y)Nr0r2r8r<r@rTr;r
rr5r>r-rDr rCrBrr!rr"T)�
cumulative)
rMrTr#rgr"r$r%r&r�r�)rhrJrL�tb1�tb2�tb3�tb4r,�tb5r-r4s           r� test_snapshot_group_by_tracebackz-TestSnapshot.test_snapshot_group_by_traceback-s���.�0���)���[�1����[�1����$���(�)���$�$�[�1�������!�!�#�r�1�-��!�!�#�r�1�-��!�!�#�q�!�,��!�!�#�q�!�,�	"
�	��
�&���%�%�k�2�������!�!�#�t�Q�/��!�!�#�s�A�.��!�!�#�r�1�-�"
�	��#�#�H�k�:�������%�%�c�4��q�!�<��%�%�c�3��Q��:��%�%�c�1�c�1�b�9��%�%�c�1�b�!�R�8��%�%�c�2�q�!�Q�7� 
�	�	
���*�"�-�-�{�t�	�	Mr
c��t�\}}td�}td�}td�}tdd�}tdd�}tdd�}tdd�}	|jdd	�}
|j	|
tj|d
d�tj|dd�tj|dd�g�|jd
d	�}
|j	|
tj|dd�tj|	dd�tj|dd�tj|dd�tj|dd�g�y)NrAr1r3r-r9r
r4rRT�br0r>rr;rr5)rMrYrVr#rgr"r$)rhrJrLr'r1r2r(r)r*�tb_b_4�statss           r�!test_snapshot_group_by_cumulativez.TestSnapshot.test_snapshot_group_by_cumulativeSs?��.�0���)�!�+�.��!�&�)��!�&�)��!�&�!�,��!�&�!�,��!�&�!�,��!�&�!�,���#�#�J��5�������!�!�$��A�.��!�!�$��A�.��!�!�$��1�-�!
�	��#�#�H�d�3�������!�!�&�"�a�0��!�!�&�"�a�0��!�!�&�"�a�0��!�!�$��1�-��!�!�&�!�Q�/�!
�	r
c��t�\}}|jd}|jt|�d�|j}|jt|�d�|d}|jt|�d�y)Nrzb.py:4: 10 Bzb.py:4)rMr�rgrfrT)rhrJrLr�rTrs      r�test_trace_formatzTestSnapshot.test_trace_formatosk��.�0���)�����"������U��^�4��O�O�	�����Y���2��!�������U��X�.r
c��t�\}}|jd�}|d}|jt|�d�y)Nrrz(b.py:1: size=66 B, count=1, average=66 B)rMr#rgrf�rhrJrLrA�stats     r�test_statistic_formatz"TestSnapshot.test_statistic_formatxs@��.�0���)��#�#�H�-���Q�x������T��C�	Er
c��t�\}}|j|d�}|d}|jt|�d�y)Nrrz;a.py:5: size=5002 B (+5000 B), count=2 (+1), average=2501 B)rMr%rgrfrFs     r�test_statistic_diff_formatz'TestSnapshot.test_statistic_diff_formatsB��.�0���)��$�$�X�x�8���Q�x������T��V�	Xr
c��t�\}}|j|jdd|jd|jdf�|jdj}|j|dd|d|df�y)Nr-rr
)rMrgr�rT)rhrJrLrTs    r�test_sliceszTestSnapshot.test_slices�s���.�0���)��������!�,�"�/�/�!�,�h�o�o�a�.@�A�	C��O�O�A�&�0�0�	�����2�A��#�A�,�	�!��5�	7r
c�r�t�\}}d�}tjjd|��5|jdj
}|j
|j�gd��|j
|jd��dd	g�|j
|jd
��ddg�|j
|jd
��gd��|j
|jdd
��dd	g�|j
|jd
d
��ddg�ddd�y#1swYyxYw)Nc��d|�d|�d�S)Nz  <z, rerbrQs  r�getlinez3TestSnapshot.test_format_traceback.<locals>.getline�s
��#+�V�4�4r
ztracemalloc.linecache.getline)�side_effectr)�  File "b.py", line 4�
    <b.py, 4>�  File "a.py", line 2�
    <a.py, 2>r
)�limitrSrTrrQrRT)�most_recent_first)rSrTrQrR)rUrV)rM�unittest�mockrr�rTrg�format)rhrJrLrO�tbs     r�test_format_tracebackz"TestSnapshot.test_format_traceback�s6��.�0���)�	5�
�]�]�
 �
 �!@�-4�!�6�����#�-�-�B����R�Y�Y�[�/�
0�
���R�Y�Y�Q�Y�/�5�-�/�
0�
���R�Y�Y�R�Y�0�5�-�/�
0�
���R�Y�Y��Y�>�/�
0�
���R�Y�Y�Q�$�Y�G�5�-�/�
0�
���R�Y�Y�R�4�Y�H�5�-�/�
0�76�6�6�s�C2D-�-D6N)rkrlrm�maxDiffr	rrrr.r5r=rBrDrHrJrLr[rbr
rrr}sO���G�;�*$F�L�6�*!�F�>$M�L�8/�E�X�7�!0r
rc�.�eZdZdZd�Zd�Zd�Zd�Zd�Zy)�TestFiltersr�c�j�tjdd�}|j|jd�|j|jd�|j|j�|j|jd�tjdddd�}|j|jd�|j|jd�|j|jd�|j|jd�tjdddd��}|j|jd�|j|jd�|j|jd�|j|jd�|jtt|dd�y)NT�abcFztest.pyr})�	inclusive�filename_patternr�
all_framesrb)r"rrgrarbr�rrcr��AttributeError�setattr�rhr�s  r�test_filter_attributesz"TestFilters.test_filter_attributes�sS�����t�U�+��������d�+�����+�+�U�3����!�(�(�#�������u�-�
���u�i��d�;��������e�,�����+�+�Y�7�������3�'�������t�,�
�����SV�cg�h��������e�,�����+�+�Y�7�������3�'�������t�,�	
���.�'�1�6H�%�Pr
c�\
�tjdd�}|j|jdd��|j|jdd��|j|jdd��|j	|jdd��|j	|jdd��|j	|jdd��tjdd�}|j	|jdd��|j	|jdd��|j	|jdd��|j|jdd��|j|jdd��|j|jdd��tjddd�}|j	|jdd��|j|jdd��|j	|jdd��|j	|jdd��|j	|jdd��|j	|jdd��tjddd�}|j|jdd��|j	|jdd��|j|jdd��|j|jdd��|j|jdd��|j|jdd��tjddd�}|j|jdd��|j	|jdd��|j	|jdd��|j	|jdd��|j	|jdd��|j	|jdd��tjddd�}|j	|jdd��|j|jdd��|j|jdd��|j|jdd��|j|jdd��|j|jdd��y)NTr`rr9r/�12356F)r"rr��_match_framer�rfs  r�test_filter_matchzTestFilters.test_filter_match�s������t�U�+��������u�a�0�1�������u�a�0�1�������u�b�1�2���������3�4���������3�4���������4�5����u�e�,���������q�1�2��������q�1�2��������r�2�3�������w��2�3�������w��2�3�������w��3�4�
���t�U�A�.���������q�1�2�������u�a�0�1��������r�2�3���������3�4���������3�4���������4�5����u�e�Q�/��������u�a�0�1��������q�1�2�������u�b�1�2�������w��2�3�������w��2�3�������w��3�4�
���t�U�A�.��������u�a�0�1��������q�1�2��������r�2�3���������3�4���������3�4���������4�5����u�e�Q�/���������q�1�2�������u�a�0�1�������u�b�1�2�������w��2�3�������w��2�3�������w��3�4r
c�6�d�}|j|ddd��|j|ddd��|j|ddd��|j|ddd��|j|ddd��|j|ddd��y)Nc�R�tj||�}|j|d�SrX�r"rrj)rarR�patternr�s    r�fnmatchz7TestFilters.test_filter_match_filename.<locals>.fnmatchs%���"�"�9�g�6�A��>�>�(�A�.�.r
Tr`rirAF)r�r��rhrps  r�test_filter_match_filenamez&TestFilters.test_filter_match_filenames���	/�	
�����e�U�3�4������w��6�7������{�E�:�;�������u�5�6������w��6�7������{�E�:�;r
c�z�d�}|j|dd��|j|dd��|j|dd��|j|dd��|j|dd��|j|dd��|j|dd��|j|dd��|j|dd��|j|dd	��|j|dd
��|j|dd��|j|dd
��|j|dd��|j|dd
��|j|dd��|j|dd��|j|dd��|j|dd��|j|dd��|j|dd��tjdk(ra|j|dd��|j|dd��|j|dd��|j|dd��n`|j|dd��|j|dd��|j|dd��|j|dd��tjdk(ra|j|dd ��|j|d d��|j|d!d"��|j|d#d$��n`|j|dd ��|j|d d��|j|d!d"��|j|d#d$��|j|d%d��y)&Nc�R�tjd|�}|j|d�S)NTrrn)rRro�filters   rrpz=TestFilters.test_filter_match_filename_joker.<locals>.fnmatchs'�� �'�'��g�6�F��&�&�x��3�3r
r`��*�abcd�defza*zabc*zb*zabcd*za*c�abcdcxza*cx�abb�abcdce�abcdeza*c*e�	abcbdefegza*bd*eg�abcdd�	abcbdefefza.pycr1�nt�aBC�ABc�aBcDezAb*dEza.PYza.PYCza/bza\bza/b\cza\b/cza/b/cza\b\cza.pyo)r�r�r��namerqs  r� test_filter_match_filename_jokerz,TestFilters.test_filter_match_filename_jokers&��	4�
	
������+�,������U�+�,������B��(������C�(�)�	
�����u�-�.�������/�0�������.�/�	
�����t�,�-������v�.�/�������-�.�������0�1�	
�����u�-�.������&�1�2�������.�/������6�2�3�	
������1�2������Y�7�8������'�2�3������i�8�9�	
������0�1�������0�1�
�7�7�d�?��O�O�G�E�5�1�2��O�O�G�G�W�5�6��O�O�G�G�V�4�5��O�O�G�F�G�4�5�
���W�U�E�2�3����W�W�g�6�7����W�W�f�5�6����W�V�W�5�6�
�7�7�d�?��O�O�G�F�F�3�4��O�O�G�F�F�3�4��O�O�G�H�h�7�8��O�O�G�H�h�7�8�
���W�V�V�4�5����W�V�V�4�5����W�X�x�8�9����W�X�x�8�9�	
�����&�1�2r
c�d�d}d}d}d}tjddd��}|j|j|��|j|j|��|j	|j|��|j	|j|��tjddd��}|j	|j|��|j|j|��|j	|j|��|j	|j|��tjddd��}|j	|j|��|j	|j|��|j|j|��|j|j|��tjddd��}|j|j|��|j	|j|��|j|j|��|j|j|��tjdd	d��}|j|j|��|j|j|��|j|j|��|j	|j|��tjdd	d��}|j	|j|��|j	|j|��|j|j|��|j|j|��tjdd	d��}|j|j|��|j|j|��|j	|j|��|j	|j|��y)
N)r0)r3r5)r2)r3r9))rEr9r@r?Tr3)rcFrA)r"rr��_match_tracebackr�)rh�t1�t2�t3�unknownr�s      r�test_filter_match_tracez#TestFilters.test_filter_match_traceUs@��
'��
'��
,��%�����t�V��=������*�*�2�.�/�����*�*�2�.�/�����+�+�B�/�0�����+�+�G�4�5����t�V��>������+�+�B�/�0�����*�*�2�.�/�����+�+�B�/�0�����+�+�G�4�5����u�f��>������+�+�B�/�0�����+�+�B�/�0�����*�*�2�.�/�����*�*�7�3�4����u�f��?������*�*�2�.�/�����+�+�B�/�0�����*�*�2�.�/�����*�*�7�3�4����u�k�e�D������*�*�2�.�/�����*�*�2�.�/�����*�*�2�.�/�����+�+�G�4�5����t�[�T�B������+�+�B�/�0�����+�+�B�/�0�����*�*�2�.�/�����*�*�7�3�4����u�k�d�C������*�*�2�.�/�����*�*�2�.�/�����+�+�B�/�0�����+�+�G�4�5r
N)	rkrlrmr\rgrkrrr�r�rbr
rr^r^�s$���G�Q�225�h<�C3�J.6r
r^c��eZdZd�Zej
e�d�d��Zd�Zd�Z	d�Z
d�Zd�Zd	�Z
d
�Zd�Zej
edud
�d��Zy)�TestCommandLinec�l�d}td|�\}}}|j�}|j|d�y)N�3import tracemalloc; print(tracemalloc.is_tracing())�-c�False�r�rstriprg�rhr�ok�stdout�stderrs     r� test_env_var_disabled_by_defaultz0TestCommandLine.test_env_var_disabled_by_default�s5��D��-�d�D�9���F�F�����������*r
z6Cannot run -E tests when PYTHON env vars are required.c�r�d}tdd|d��\}}}|j�}|j|d�y)zAPYTHON* environment variables must be ignored when -E is present.r�z-Er��1��PYTHONTRACEMALLOCr�Nr�r�s     r�test_env_var_ignored_with_Ez+TestCommandLine.test_env_var_ignored_with_E�s=��E��-�d�D�$�RU�V���F�F�����������*r
c�p�d}td|d��\}}}|j�}|j|d�y)Nr�r��0r�r�r�r�s     r�test_env_var_disabledz%TestCommandLine.test_env_var_disabled�s7��D��-�d�D�C�P���F�F�����������*r
c�p�d}td|d��\}}}|j�}|j|d�y)Nr�r�r�r�sTruer�r�s     r�test_env_var_enabled_at_startupz/TestCommandLine.test_env_var_enabled_at_startup�s7��D��-�d�D�C�P���F�F�����������)r
c�p�d}td|d��\}}}|j�}|j|d�y)N�<import tracemalloc; print(tracemalloc.get_traceback_limit())r��10r�s10r�r�s     r�test_env_limitzTestCommandLine.test_env_limit�s7��M��-�d�D�D�Q���F�F�����������'r
c���tj�5tddt|���\}}}ddd�dvryd|vry|j	d|���y#1swY�(xYw)Nr��passr��1ValueError: the number of frames must be in ranges+PYTHONTRACEMALLOC: invalid number of frames�unexpected output: )r�SuppressCrashReportrrfr�)rhrr�r�r�s     r�check_env_var_invalidz%TestCommandLine.check_env_var_invalid�sf��
�
(�
(�
*�!6��f�"%�f�+�"/��B���+�
@�6�I��9�V�C���	�	�'��z�2�3�+�
*�s�A�A!c��tD].}|j|��5|j|�ddd��0y#1swY�;xYw�N�r)�INVALID_NFRAME�subTestr��rhrs  r�test_env_var_invalidz$TestCommandLine.test_env_var_invalid�s7��$�F����V��,��*�*�6�2�-�,�%�,�,��	�9�A	c��dD]o\}}|j||��5d}td|d|�\}}}|j�}|j|t	|�jd��ddd��qy#1swY�|xYw)N))r"r
)z
tracemalloc=1r
)ztracemalloc=15�)�xoptionsrr��-Xr��ascii)r�rr�rgrf�encode)rhr�rrr�r�r�s       r�test_sys_xoptionsz!TestCommandLine.test_sys_xoptions�s~��!
��H�f�
���x���?�U��%5�d�H�d�D�%Q�"��F�F������� � ���V��);�);�G�)D�E�	@�?�!
�
@�?�s�AA6�6A?	c��dd|zddf}tj�5t|�\}}}ddd�dvryd|vry|jd|���y#1swY�(xYw)Nr�ztracemalloc=%sr�r�r�s/-X tracemalloc=NFRAME: invalid number of framesr�)rr�rr�)rhrr`r�r�r�s      r�check_sys_xoptions_invalidz*TestCommandLine.check_sys_xoptions_invalid�sn���&��/��v�>��
�
(�
(�
*�!6��!=��B���+�@�6�I��=��G���	�	�'��z�2�3�+�
*�s�
A�Ac��tD].}|j|��5|j|�ddd��0y#1swY�;xYwr�)r�r�r�r�s  r�test_sys_xoptions_invalidz)TestCommandLine.test_sys_xoptions_invalid�s7��$�F����V��,��/�/��7�-�,�%�,�,�r�N�need _testcapic�$�d}tddd|�y)Nz2import _testcapi; _testcapi.test_pymem_alloc0(); 1r�r"r�)r�rhrs  r�test_pymem_alloc0z!TestCommandLine.test_pymem_alloc0�s��D����}�d�D�9r
)rkrlrmr�rW�skipIfrr�r�r�r�r�r�r�r�r��	_testcapir�rbr
rr�r��s���+��X�_�_�5�7�M�O�+�O�+�+�*�(�
4�3�

F�	4�8�
�X�_�_�Y�$�&�(8�9�:�:�:r
r�r�c��eZdZdZd�Zd�Zd�Zdd�Zdd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zej(edud�ej.�ej(ej2d�d����Zd�Zy)�TestCAPIi@c���tj�r|jd�d|_d|_t|j�d|_t|j�|_y)Nrqr9r}r)	r"rrrsr�r(r+r��id�ptrrus rrvzTestCAPI.setUp�sO���!�!�#��M�M�G�H������	�!�$�)�)�,�Q�/����d�h�h�<��r
c�,�tj�yrOrxrus rrzzTestCAPI.tearDown�r{r
c��tj|j|j�}|�t	j
|�SyrO)r��tracemalloc_get_tracebackr�r�r"r%)rhrs  r�
get_tracebackzTestCAPI.get_traceback�s6���4�4�T�[�[�$�(�(�K�����(�(��0�0�r
c��t|d�}tj|j|j|j
|�|S)Nr
)rr��tracemalloc_trackr�r�r()rh�release_gilrrs    r�trackzTestCAPI.track�s6���F�A�&���#�#�D�K�K����4�9�9�$/�	1��
r
c�Z�tj|j|j|�yrO)r��tracemalloc_untrackr�r��rhr�s  r�untrackzTestCAPI.untracks���%�%�d�k�k�4�8�8�[�Ir
c���tj�}tjd|j�}|j	|g�}td�|jD��S)NTc3�4K�|]}|j���y�wrOr�)�.0r�s  r�	<genexpr>z-TestCAPI.get_traced_memory.<locals>.<genexpr>	s����;�?�%�5�:�:�?�s�)r"r�rr�r
r�r�)rhrJ�
domain_filters   rr�zTestCAPI.get_traced_memorysM���,�,�.��#�0�0��t�{�{�C�
��)�)�=�/�:���;�8�?�?�;�;�;r
c�>�d}tj|�tj�d}|j||�}|j	|j�tj|��|j	|j�|j�y)Nr9r)r"rtr�r�rgr�r%r()rhr�rr(rs     r�check_trackzTestCAPI.check_tracks~�������&�!��,�,�.�q�1�����K��0������+�+�-�$�.�.�v�6�	8�	
����/�/�1�4�9�9�=r
c�&�|jd�y�NF�r�rus r�
test_trackzTestCAPI.test_tracks������r
c�&�|jd�y�NTr�rus r�test_track_without_gilzTestCAPI.test_track_without_gils��	
����r
c���d}tj|�|j�|j|��}|j|j	�tj
|��y)Nr9r�)r"rtr�rgr�r%)rhrrs   r�test_track_already_trackedz#TestCAPI.test_track_already_trackedsY�������&�!�	
�
�
�����6��*������+�+�-�$�.�.�v�6�	8r
c���tj�|j�|j|j	��|j|j
�|j�|j|�|j|j	��|j|j
�d�|j|�|j|�yrX)
r"rtr�r�r�rgr�r(r�r�r�s  r�
check_untrackzTestCAPI.check_untrack,s��������
�
�����T�/�/�1�2�����/�/�1�4�9�9�=�	
���[�!����$�,�,�.�/�����/�/�1�1�5�	
���[�!����[�!r
c�&�|jd�yr��r�rus r�test_untrackzTestCAPI.test_untrack<s�����5�!r
c�&�|jd�yr�r�rus r�test_untrack_without_gilz!TestCAPI.test_untrack_without_gil?s�����4� r
c��tj�tj�|jt�5|j�ddd�|j
|j��y#1swY�)xYwrO)r"rtryr�r�r�r�r�rus r�test_stop_trackzTestCAPI.test_stop_trackBsV����������
�
�
�|�
,��J�J�L�-����$�,�,�.�/�-�
,�s�A7�7Bc���tj�|j�tj�|j	t
�5|j
�ddd�y#1swYyxYwrO)r"rtr�ryr�r�r�rus r�test_stop_untrackzTestCAPI.test_stop_untrackJsF�������
�
������
�
�
�|�
,��L�L�N�-�
,�
,�s�A(�(A1Nr�zneed release buildc�,�tj�yrO)r��tracemalloc_track_racerus r�test_tracemalloc_track_racez$TestCAPI.test_tracemalloc_track_raceRs��	�(�(�*r
c�V�tjdt�d��}td|�y)Na
            from test import support
            import tracemalloc
            import _testcapi

            class Tracked:
                def __init__(self, domain, size):
                    self.domain = domain
                    self.ptr = id(self)
                    self.size = size
                    _testcapi.tracemalloc_track(self.domain, self.ptr, self.size)

                def __del__(self, untrack=_testcapi.tracemalloc_untrack):
                    untrack(self.domain, self.ptr, 1)

            domain = z
            tracemalloc.start()
            obj = Tracked(domain, 1024 * 1024)
            support.late_deletion(obj)
        r�)�textwrap�dedent�DEFAULT_DOMAINrr�s  r�test_late_untrackzTestCAPI.test_late_untrackZs3�����$�%�%�&	� �
��(	��t�$r
)Fr
)F)rkrlrmr\rvrzr�r�r�r�r�r�r�r�r�r�r�r�r�rWr�r�r	�requires_working_threadingr�Py_DEBUGr�r�rbr
rr�r��s����G�
 ����J�<�
>� ��
8�"� "�!�0���X�_�_�Y�$�&�(8�9�0��0�0�2��X�_�_�W�%�%�';�<�+�=�3�:�+�%r
r��__main__)(rr�rr�r"rW�
unittest.mockr�test.support.script_helperrrr�testr�test.supportrr	r��ImportErrorr��	getsizeofr$r�rr+rMrrTrVrY�TestCaser[rorr^r�r�r�rk�mainrbr
r�<module>rsL���	�
�����J�J��"�)���
��!�C�M�M�#�&�����I�!�B2�)�)�)�J�H�%�%�J�&LE�X�.�.�LE�^s0�8�$�$�s0�l	P6�(�#�#�P6�fX:�h�'�'�X:�v�����d�"�$4�5�M%�x� � �M%�6�M%�`�z���H�M�M�O���E#���I��s�D�D#�"D#

Youez - 2016 - github.com/yon3zu
LinuXploit