Sindbad~EG File Manager

Current Path : /proc/2568807/root/usr/local/lib/python3.12/test/__pycache__/
Upload File :
Current File : //proc/2568807/root/usr/local/lib/python3.12/test/__pycache__/test_bdb.cpython-312.opt-2.pyc

�

&Μg���`�	ddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
mZmZddl
mZddl
mZddl
mZGd�de�ZGd	�d
e�ZGd�de�ZGd
�de�ZdZd�Zd�ZGd�dej2�ZGd�de�ZGd�d�Zd.d�Ze	d��Zeddfd�ZdZ e dzZ!d�Z"d�Z#d�Z$d �Z%Gd!�d"ejL�Z'Gd#�d$e'�Z(Gd%�d&e'�Z)Gd'�d(e'�Z*Gd)�d*e'�Z+Gd+�d,ejL�Z,e-d-k(rej\�yy)/�N)�contextmanager)�islice�repeat)�
import_helper)�	os_helper)�
patch_listc��eZdZy)�BdbExceptionN��__name__�
__module__�__qualname__���*/usr/local/lib/python3.12/test/test_bdb.pyr
r
A��rr
c��eZdZy)�BdbErrorNrrrrrrBrrrc��eZdZy)�BdbSyntaxErrorNrrrrrrCrrrc��eZdZy)�BdbNotExpectedErrorNrrrrrrDrrrc�@�tjj�y�N)�_bdb�
Breakpoint�clearBreakpointsrrr�reset_BreakpointrLs���O�O�$�$�&rc���tjjD�cgc]}|s�|��	}}|syd}|D]�}|sd}d}|jrdnd}|jrdnd}d	|j
|||j|jtjj|j�|jfzz
}|jr|d
|j��z
}|dz
}��Scc}w)N�Fz!BpNum Temp Enb Hits Ignore Where
Tzyes zno  �yeszno z%-5d %s %s %-4d %-6d at %s:%dz
	stop only if �
)rr�
bpbynumber�	temporary�enabled�number�hits�ignore�os�path�basename�file�line�cond)�bp�bp_list�header_added�info�disp�enabs      r�info_breakpointsr5Os���!�_�_�7�7�>�7�r�2�r�7�G�>����L����7�D��L����v�6���
�
�u����0��Y�Y��d�B�G�G�R�Y�Y��W�W�%�%�b�g�g�.����9�9�	:���7�7��R�W�W�6�6�D�������K��%?s
�C �C c�^��eZdZ	�fd�Z		d
�fd�	Z�fd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Z�xZS)�Bdbc�4��d|_t�|�	|||�Sr)�	currentbp�super�trace_dispatch)�self�frame�event�arg�	__class__s    �rr;zBdb.trace_dispatchgs�������w�%�e�U�C�8�8rc�n��t|t�rt|tk(rt�}n$t	j
|dd�}|j}t||�}|j}	|	j}|	j}|	j}t�|�5|||||��}
t|
t�rt|
��|
S)N���)r$r.�funcname)�
isinstance�str�__file__�globals�	importlib�
import_module�__dict__�eval�__code__�co_filename�co_firstlineno�co_namer:�	set_breakr)r<�filename�linenor$r.rC�globals_�module�func�code�resr@s           �rrPz
Bdb.set_breakks�����h��$��8�#�"�9��"�0�0��#�2��?��!�?�?����(�+�D��=�=�D��'�'�H��(�(�F��|�|�H��g���&�I�&*�X� �?���c�3���3�-���
rc���t�|�||�\|_|_|j|jd|_|j|jfS�Nr)r:�	get_stack�stack�indexr=)r<�f�tr@s   �rrZz
Bdb.get_stacksI���!&��!2�1�a�!8���
�D�J��Z�Z��
�
�+�A�.��
��z�z�4�:�:�%�%rc�R�	|j|�}|xjdz
c_y�N�)�get_bpbynumberr(�r<�bpnumr/s   r�
set_ignorezBdb.set_ignore�s"��F�
�
 �
 ��
'��
�	�	�Q��	rc�4�|j|�}d|_y)NT�rbr%rcs   r�
set_enablezBdb.set_enable�s��
�
 �
 ��
'����
rc�4�|j|�}d|_y)NFrgrcs   r�set_disablezBdb.set_disable�s��
�
 �
 ��
'����
rc�B�|j||�}|rt|��yr)�clear_breakr)r<�fnamerR�errs    r�	set_clearz
Bdb.set_clear�s&�����u�f�-����3�-��rc��	|jstd��|xjdzc_|j|jd|_y)NzOldest framerar)r\rr[r=�r<s r�set_upz
Bdb.set_up�s=��)��z�z��>�*�*��
�
�a��
��Z�Z��
�
�+�A�.��
rc���	|jdzt|j�k(rtd��|xjdz
c_|j|jd|_y)NrazNewest framer)r\�lenr[rr=rqs r�set_downzBdb.set_down�sN��+��:�:��>�S����_�,��>�*�*��
�
�a��
��Z�Z��
�
�+�A�.��
r)FNN)
rr
rr;rPrZrerhrjrorrru�
__classcell__�r@s@rr7r7ds=���.�9�AE���(&�
�
�� �
/�/rr7c���eZdZ	d�fd�	Zd�Z�fd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zdd�Zd�Zd�Z�xZS)�Tracerc�~��t�|�|��||_||_|�d|znd|_|j�y)N��skipzDry-run results for %s:)r:�__init__�
expect_set�dry_run�header�	init_test)r<r~r|r�	test_caser@s     �rr}zTracer.__init__�sE���
���d��#�$������ �,�1�9�<�26�	
�����rc���d|_d|_d|_tt	|j
ddd��|_tt	|j
ddd��|_y)Nr�ra)�
cur_except�
expect_set_no�breakpoint_hits�listrr~�
expected_list�set_listrqs rr�zTracer.init_test�sP��������#���!�&����!�T�1�"E�F����V�D�O�O�Q��a�@�A��
rc����|j�|j�|dk(r	t�|�	|||�}|St�|�	|||�S#t$r}||_|jcYd}~Sd}~wwxYw�N�	exception)r�r:r;r
)r<r=r>r?rW�er@s      �rr;zTracer.trace_dispatch�sy���
�?�?�&��/�/�!��K��
+��g�,�U�E�3�?���
�
�7�)�%���<�<��	 �
+�"#����*�*�*��
+�s�A�	A*�
A%�A*�%A*c�n�|j|�sy|jd||�|j�y)N�call)�	stop_here�
process_event�next_set_method)r<r=�
argument_lists   r�	user_callzTracer.user_call�s1���~�~�e�$�����6�5�-�8����rc� �|jd|�|jrI|jr=t�j	d�}|jd�D]}t
d|z��|j�d|_|j�y)Nr-r"z  )	r�rr�r5�strip�split�print�delete_temporariesr�)r<r=r2r-s    r�	user_linezTracer.user_line�ss�����6�5�)��<�<�D�0�0�#�%�+�+�D�1�D��
�
�4�(���d�T�k�"�)����!�#������rc�J�|jd||�|j�y)N�return)r�r�)r<r=�return_values   r�user_returnzTracer.user_return�s �����8�U�L�9����rc�V�||_|jd|�|j�yr�)�exc_infor�r�)r<r=r�s   r�user_exceptionzTracer.user_exception�s%�� ��
����;��.����rc�0�|jg}||f|_yr)r9r�)r<r?r0s   r�do_clearzTracer.do_clear�s���>�>�"�� '��1��rc�h�|jr&|jdD]}|j|��yyr`)r��clear_bpbynumber)r<�ns  rr�zTracer.delete_temporaries�s3������)�)�!�,���%�%�a�(�-� rc��|xjdz
c_	|jjd�|_|jjd�|_y#t$rtd|jz��wxYw)Nrarz-expect_set list exhausted, cannot pop item %d)r�r��pop�expect�
IndexErrorrr��	set_tuplerqs r�pop_nextzTracer.pop_next�sw�����a���	$��,�,�0�0��3�D�K�
���*�*�1�-����	�	$�%�?��"�"�#�$�
$�	$�s� A�"A:c	��d}|dk(r|jd}|j||�|j�"|js|jg}|gf|_||_|j�|jr|j|j�y|jr0|j|jd|d�|j�|dvr|jd�yt|j�dkD�rT|dk(r�|jd\}}t|j��}|js|j!d|j"z�|j||jdd	�|j|D�	cgc]}	||	��	c}	|jdD�	cgc]}	|j%|	�j&��c}	d
�|jt|�|jdd�y|dk(rRt)|jd|jd�s+|j!d
|j"|jfz�yyyycc}	wcc}	w)Nr�r�rzWrong event type)r�r��r-z(No breakpoints hit at expect_set item %dzBreakpoint numbers do not matchzWrong breakpoint hit countrazWrong temporary breakpointsz/Wrong exception at expect_set item %d, got '%s')r�rZr9r�r>r�r�print_stater�r��check_equal�check_lno_name�check_expect_max_sizert�sorted�keys�raise_not_expectedr�rbr'rD)
r<r>r=�args�tbr0�bps�temporaries�bpnumsr�s
          rr�zTracer.process_event�s=�����K�����q�!�B����u�b�!��>�>�%�d�.B�.B��~�~�&�G�$+�R�=�D� ���
��
�
���<�<����T�[�[�)���;�;����T�[�[��^�U�4F�G����!��&�&��&�&�q�)�
����
��
!����#'�;�;�q�>� ��[�����
�+���+�+��+�+�B��*�*�+�,�� � ���)=�)=�a�)@�5�7�� � �&�!9�&�Q�#�a�&�&�!9�!�1�1�!�4�6�4���(�(��+�0�0�4�6�0�2�� � ���!4�d�6J�6J�1�6M�1�3��+�%�!�$�-�-��"2�D�K�K��N�C��+�+�I��+�+�T�]�]�;�<�=�D�&�#"��":��6s�
I�)"I
c�R�||k(ry|jd||j|fz�y)Nz"%s at expect_set item %d, got '%s')r�r�)r<�expected�result�msgs    rr�zTracer.check_equal-s5���v������ D�!$�d�&8�&8�&� A�!B�	Crc�"�	t|j�}|dkDr0|j�}|j|jd|d�|dkDr?|j|jd|jj
jd�yy)NrazWrong line numberr�zWrong function name)rtr��lno_abs2relr�r=�f_coderO)r<�srRs   rr�zTracer.check_lno_name3s}��9��������q�5��%�%�'�F����T�[�[��^�V�5H�I��q�5����T�[�[��^�T�Z�Z�->�->�-F�-F�0E�
G�rc�~�t|j�|kDr%td|j�d|j����y)NzInvalid size of the z expect tuple: )rtr�rr>)r<�sizes  rr�zTracer.check_expect_max_size=s7���t�{�{��d�"� �"&�*�*�d�k�k�";�<�
<�#rc��|j|jjj�}|jj}||jt
�k(r&||jjjz
dzS|Sr`)�canonicr=r�rM�f_linenorFrN�r<rmrRs   rr�zTracer.lno_abs2relBsl�����T�Z�Z�.�.�:�:�;�����$�$������X�.�.��$�*�*�+�+�:�:�:�Q�>�	<�4:�	<rc��|rM|j|�|jt�k(r&|jjj|zdz
S|Sr`)r�rFr=r�rNr�s   r�lno_rel2abszTracer.lno_rel2absHsJ���4�<�<��.�$�,�,�x�2H�H��
�
�!�!�0�0�6�9�A�=�	��	rc�B�|j�}|jjj}d|j||fz}|j
rud}|j
dD]/}|dk7r|dz
}||�d|j
|�j��z
}�1|dz
}d|zdzt|j
d�zd	z}|d|zz
}n.|jd
k(r|d|jdjzz
}|dz
}|jd�t|j�zd
zS)Nz('%s', %d, '%s'�{rz, z: �}�(ra�)r�z), � �,)
r�r=r�rOr>r�rbr'rEr�r�ljustr�)r<rRrO�stater�r�s      r�	get_statezTracer.get_stateMs"���!�!�#���*�*�#�#�+�+��!�T�Z�Z���$A�A������C��)�)�!�,���#�:��4�K�C��1�d�&9�&9�!�&<�&A�&A�B�B��-�
�3�J�C���)�d�"�S��)=�)=�a�)@�%A�A�C�G�C��T�C�Z��E�
�Z�Z�;�
&��T�D�M�M�!�,�5�5�5�5�E�
�����{�{�2���T�^�^�!4�4�s�:�:rc��|�$|jdk(rt�t|�td|j|j�fz�y)Nraz%d: %s)r�r�r�)r<r�s  rr�zTracer.print_state_s@����$�"4�"4��"9��G��&�M�
�h�$�,�,�d�n�n�.>�?�?�@rc��|dz
}|dt|j�zz
}|d|j�zz
}t|��)Nr"z  Expected: %s
z  Got:      )rEr�r�r�r<r�s  rr�zTracer.raise_not_expectedesE���t����!�C����$4�4�4���~���� 0�0�0��!�#�&�&rc�4�|jd}t|j�dk(r|jdnd}t|d|z�}|dvr|�y|dvr||j�y|dk(rKd}|r3|j	|jj
j|d�}||j|�y|r|dvs|d	vr�|d
vr2|^}}}|j	||�}||g}|j|�||�n|dvr||�n|d	vr|�d|_|j�|jr|j�n-|jr|j�|jd�|j�yt!d
|jz��)Nrr�ra�set_)�step�continue�quit)�nextr��until)�break�clearr(�enable�disable)�up�down)r�r�)r(r�r�r�z"%s" is an invalid set_tuple)r�rt�getattrr=r�r�rM�extendr>r�rr�r�r�r�r�r)r<�set_typer��
set_methodrRrm�remains       rr�zTracer.next_set_methodks����>�>�!�$��$'����$7�1�$<�t�~�~�a� �$���T�6�H�#4�5�
��3�3��L��
�+�
+��t�z�z�"��
��
 ��F���)�)�$�*�*�*;�*;�*G�*G�*.�q�'�3���t�z�z�6�*��
�X�"/�/�3;�~�3M��-�-�)-�&��v���)�)�%��8���v������F�#��D�!��<�<��D�!��^�+����D�J��M�M�O��|�|�� � �"��;�;��'�'�)��*�*�1�-�� � �"� �!?�!%���"0�1�
1r)NFNr)rr
rr}r�r;r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rvrws@rryry�so���.��B�=�$����
2�
)�
.�0=�dC�G�<�
<��
;�$A�'�01rryc�$�eZdZ	dd�Zd�Zdd�Zy)�	TracerRunNc��||_|j|_t|j||j|j	���|_d|_y)N)r|rr�)r�rryr~�id�tracer�_original_tracer)r<r�r|s   rr}zTracerRun.__init__�sD��"��� �(�(����Y�1�1��%)�\�\�Y�\�\�^�M��� $��rc�`�t�tj�|_|jSr)r�sys�gettracer�r�rqs r�	__enter__zTracerRun.__enter__�s ���� #�������{�{�rc�n�t�tj|j�d}|jj
rC|dz
}|d|jjzz
}|t|jj
�z
}|�ytt|�rit|t�rY|jrM|jd}|r|d|zz
}|jrt|�y|jj!|�	|r4|jrt|�y|jj!|�yy)Nr z+All paired tuples have not been processed, zthe last one was number %d
rr"T)rr��settracer�r�r�r��repr�
issubclassrrD�
BaseExceptionr�rr�r��fail)r<�type_�value�	traceback�	not_empty�err_msgs      r�__exit__zTracerRun.__exit__�s��������T�*�*�+��	��;�;����F�F�I��8��+�+�3�3�4�
5�I���d�k�k�2�2�3�3�I����,?��!G��%��/�E�J�J��*�*�Q�-����t�i�/�/�G��<�<��'�N���N�N�'�'��0���|�|��i� ����#�#�I�.�	rr)NNN)rr
rr}r�rrrrr�r��s��K�%��/rr�c�h�	d�}ddg}|j|�t�}d|_d�|_t	|td�t
|���|_t|�5t||��5}|jt�ddd�ddd�y#1swY�xYw#1swYyxYw)Nc3�jK�		t|�}t|�}|��|���#t$rYywxYw�wr)r��
StopIteration)�a�b�x�ys    r�genzrun_test.<locals>.gen�sB����	����G����G������	��
�	��	�s�3� $�	0�3�0�3�r��r�Tc��yrrrrr�<lambda>zrun_test.<locals>.<lambda>s��trrr{)r��BaseTestCaserr�r�r�iterr~�create_modulesr��runcall�tfunc_import)�modulesr�r|r�sl�testr�s       r�run_testr�s���1�d��j�	!�B��I�I�h���>�D��D�L��D�G��3�v�b�z�4��8�4�5�D�O�	��	 �
�t�$�
'�6��N�N�<�(�(�
!�	 �
'�
'��
!�	 �s$�'B(�5B�B(�B%	�!B(�(B1c	#�K�tj�5tjj	tj��	|D]Z}|dz}t|dd��5}|jtj||��ddd�tj|��\tj�d��|D]}tj |��tjj#�	ddd�y#1swY�|xYw#|D]}tj |��tjj#�wxYw#1swYyxYw�w)N�.py�wzutf-8)�encoding)r�temp_cwdr�r*�appendr)�getcwd�open�write�textwrap�dedent�	linecache�
checkcacherH�invalidate_cachesr�forgetr�)r�mrmr]s    rrrs�����	�	�	�	�������	�	��$�	����E�	���%��w�7�1��G�G�H�O�O�G�A�J�7�8�8��$�$�U�+�	�

�'�'�)�����$�$�Q�'���H�H�L�L�N�
�	�
8�7�����$�$�Q�'���H�H�L�L�N��
�	�sL�E�2E�
D�"(D�
7D�:E�<	E�D�
D�<E
�
E�E�EFc��d|d|||ffS)Nr�r)rCrmr$r.s    r�
break_in_funcr''s���U�D�)�T�8�<�<�<r�test_module_for_bdbrc�,�ddl}|j�yrY)r(�main)r(s rrr,s������rc�<�d}t�t�d}d}d}y)Nr����)�tfunc_first�tfunc_second��lnos r�
tfunc_mainr30s ��
�C��M��N�
�C�
�C�
�Crc��d}d}d}y)Nr�r��rr1s rr/r/8s��
�C�
�C�
�Crc��d}y)Nr�rr1s rr0r0=s��
�Crc��eZdZ	eZdd�Zy)r
Nc�&�|j|�d�r)�failureExceptionr�s  rr�zBaseTestCase.failEs���#�#�C�(�d�2rr)rr
rrr�rrrr
r
@s��#��G�3rr
c��eZdZ	d�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
eej �d��Zd
�Zd�Zd�Zy)�
StateTestCasec��gd�|_t|�5}|jt�ddd�y#1swYyxYw)N)�r-r�r3r
�r-r�r3r
�r�rar/r
�r-r�r/�r��r~r�rr3�r<r�s  r�	test_stepzStateTestCase.test_stepM�,��
����t�_���N�N�:�&��_�_���4�=c��dD]j}|j|��5ddddddtdffd	d
dddd
d
igff|fddg|_t|�5}|j	t
�ddd�ddd��ly#1swY�xYw#1swY��xYw)N)r�r��r�r=r
r>r?r�r�)�Nonerar/�r�r-r/ra�r-r5r/rA)�subTestrFr~r�rr3)r<r�r�s   r� test_step_next_on_last_statementz.StateTestCase.test_step_next_on_last_statementWs���(�H����x��0�-�Z�-�Z�.�g��RS�}�=U�.�^��Q�
��1��r�{�;�h�\�.�Z�
#����t�_���N�N�:�.�%�1�0�)�%�_��1�0�s#�0A=�A1�A=�1A:�6A=�=B	c��gd�|_t|�5}|jt�ddd�y#1swYyxYw)N)
r=r
r>r	�r-r5r3r
)r�rar0r
)r-r�r0rArBrCs  r�	test_nextzStateTestCase.test_nexte�,��
����t�_���N�N�:�&��_�_�rFc���d}t|i}t|�5gd�|_t|�5}|j	t
�ddd�ddd�y#1swY�xYw#1swYyxYw)N�9
            def main():
                lno = 3
        )�r-r�rr	�r-r�rrA)�TEST_MODULErr~r�rr�r<rVrr�s    r�test_next_over_importz#StateTestCase.test_next_over_importps[���� ��'��
�G�
$��D�O��4��F����|�,�!�%�
$�
!���%�
$�s"�A�A�A�A	�A�A'c��gd�|_t|�5}|jt�ddd�y#1swYyxYw)N)r=r
r>r
r?r	r@rArBrCs  r�test_next_on_plain_statementz*StateTestCase.test_next_on_plain_statement~s,��
����t�_���N�N�:�&��_�_�rFc��gd�|_t|�5}|jt�ddd�y#1swYyxYw)N)
r=r
r>r
r?�r��rIr�r3r	rOrArBrCs  r�test_next_in_caller_framez'StateTestCase.test_next_in_caller_frame�s,��
����t�_���N�N�:�&��_�_�rFc��gd�|_t|�5}|jt�ddd�y#1swYyxYw)N)r=r
r>r
r?r
r@�r��r�r5r/r
rOrArBrCs  r�test_returnzStateTestCase.test_return�s,��
����t�_���N�N�:�&��_�_�rFc��gd�|_t|�5}|jt�ddd�y#1swYyxYw)N)
r=r
r>r
r?r\r]r`)r�r.r3rArBrCs  r�test_return_in_caller_framez)StateTestCase.test_return_in_caller_frame�rQrFc��gd�|_t|�5}|jt�ddd�y#1swYyxYw)N)
r=r
r>r
r?r
r@)r�)r5rKrArBrCs  r�
test_untilzStateTestCase.test_until�rQrFc	��dtd�dddddddigffdd	d
g|_t|�5}|jt�ddd�y#1swYyxYw)Nr=r/)rIr�r3rJr-r�ra)r�)i'rarA)r'r~r�rr3rCs  r�test_until_with_too_large_countz-StateTestCase.test_until_with_too_large_count�sW��%�]�=�5Q�%�^�
�Q�
��1��r�{�3�5H�(�Z�	
����t�_���N�N�:�&��_�_�s�A�Ac��gd�|_t|�5}|jt�ddd�y#1swYyxYw)N)
r=r
r>r
r?r\r])r�)r-)r-r-r3rArBrCs  r�test_until_in_caller_framez(StateTestCase.test_until_in_caller_frame�rQrFc�<�d�tjD�tjddd}t|i}t|�5gd�|_dddtf}t||��5}|j
t�ddd�ddd�y#1swY�xYw#1swYyxYw)Nc3�VK�|]!}|jjd�r|���#y�w)�_frozen_importlibN)r
�
startswith)�.0�items  r�	<genexpr>z*StateTestCase.test_skip.<locals>.<genexpr>�s+����
�%�����)�)�*=�>�
�%�s�')rS)rTr
rUrAz
importlib*�	zipimportzencodings.*r{)r��	meta_pathrVrr~r�rr)r<rVrr|r�s     r�	test_skipzStateTestCase.test_skip�s���
��
�
�
��
�
�a���� ��'��
�G�
$��D�O�!�+�}�k�J�D��4�d�+�v����|�,�,�
%�
$�,�+��
%�
$�s#�!B�B�5B�B	�B�Bc�`�tdg��}|j|jd�d�y)Nz	anything*r{F)r7�assertIs�is_skipped_module)r<�bdbs  r�test_skip_with_no_name_modulez+StateTestCase.test_skip_with_no_name_module�s)����}�%���
�
�c�+�+�D�1�5�9rc��ddg|_t|�5}|jt|jt
�ddd�y#1swYyxYw)Nr=)r�)r~r��assertRaisesrrr3rCs  r�	test_downzStateTestCase.test_down�s=��
&�z�
����t�_�����h����
�C��_�_���&A�A
c��gd�|_t|�5}|jt�ddd�y#1swYyxYw)N)r=r
r>r
r?r\r]rArBrCs  r�test_upzStateTestCase.test_up�rErFN)rr
rrDrMrPrXrZr^rbrdrfrhrjrr�rsrtryr|rrrrr;r;Jsi��E�'�/�	'�-�
'�'�
'�	'�	'�'�	'���
�
��-��-�2:�D�'rr;c�P�eZdZ	d�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
y)
�BreakpointTestCasec��ddg|_t|�5}|jt|jt
�ddd�y#1swYyxYw)NrT)r�)z/non/existent/module.pyra)r~r�r{rrrrCs  r�test_bp_on_non_existent_modulez1BreakpointTestCase.test_bp_on_non_existent_modules<��'�)R�
����t�_�����h�����E��_�_�r}c��d}t|i}t|�5ddtdffg|_t	|�5}|jt|jt�ddd�ddd�y#1swY�xYw#1swYyxYw)NrSrTr�r5)	rVr�TEST_MODULE_FNAMEr~r�r{rrrrWs    r�test_bp_after_last_statementz/BreakpointTestCase.test_bp_after_last_statementsu���� ��'��
�G�
$�+�g�8I�1�7M�-N��D�O��4��F��!�!�(�F�N�N�L�I�!�	%�
$�!���	%�
$�s"�A6�&A*�A6�*A3	�/A6�6A?c�D�d}t|i}t|�5dtdtd�dtdtd�dddddd	d	id	gffddddd
d	id
gffdg
|_t|�5}|j
t�ddd�ddd�y#1swY�xYw#1swYyxYw)N��
            def func():
                lno = 3

            def main():
                for i in range(2):
                    func()
        rTrUT�rIr�rrJr-r�rar�rA�rVrr'r�r~r�rrrWs    r�test_temporary_bpz$BreakpointTestCase.test_temporary_bps����� ��'��
�G�
$�+�!�&�*;�T�B�+�!�&�*;�T�B�+�>���F�a��U�Q�C�L�1�>���F�a��U�Q�C�L�1�:��D�O��4��F����|�,�!�%�
$�!���%�
$�s$�A
B�#B
�9B�
B	�B�Bc�d�d}t|i}t|�5dtdt�dtdtd�dddddd	dd
d
igffddd
dddd	ddd
idgffddddd	dd
digffdg|_t|�5}|j
t�ddd�ddd�y#1swY�xYw#1swYyxYw)N��
            def func():
                lno = 3

            def main():
                for i in range(3):
                    func()
        rTrUr�T)r��r�rJr-r�ra)r�r��rIr�rU�r��rar��r�r�rAr�rWs    r�test_disabled_temporary_bpz-BreakpointTestCase.test_disabled_temporary_bp/s����� ��'��
�G�
$�+�!�&�*;�<�+�!�&�*;�T�B�+�3E�+�>���F�a��U�B�K�0�3D�#�3E�#�>���F�a��U�Q�C�L�1�3D�#�>���F�a��U�B�K�0�:�
�D�O��4��F����|�,�!�%�
$�!���%�
$�s$�AB&�3B�	B&�B#	�B&�&B/c
��d}t|i}t|�5dtdtdd�dddd	dd
d	igffdg|_t|�5}|j
t�ddd�ddd�y#1swY�xYw#1swYyxYw)Nz�
            def func(a):
                lno = 3

            def main():
                for i in range(3):
                    func(i)
        rTrUFza == 2r�rJr-r�rarAr�rWs    r�test_bp_conditionz$BreakpointTestCase.test_bp_conditionKs����� ��'��
�G�
$�+�!�&�*;�U�H�M�+�>���F�a��U�B�K�0�:�	�D�O��4��F����|�,�!�%�
$�!���%�
$��#�1A:�A.�A:�.A7	�3A:�:Bc
��d}t|i}t|�5dtdtdd�dddd	dd
d
igffdg|_t|�5}|j
t�ddd�ddd�y#1swY�xYw#1swYyxYw)Nzk
            def func(a):
                lno = 3

            def main():
                func(0)
        rTrUFz1 / 0r�rJr-r�rarAr�rWs    r�)test_bp_exception_on_condition_evaluationz<BreakpointTestCase.test_bp_exception_on_condition_evaluation_s����� ��'��
�G�
$�+�!�&�*;�U�G�L�+�>���F�a��U�B�K�0�:�	�D�O��4��F����|�,�!�%�
$�!���%�
$�r�c��d}t|i}t|�5dtdt�dddddddd	d
igffdg|_t|�5}|j
t�ddd�ddd�y#1swY�xYw#1swYyxYw)Nr�rTrUr��r(r�rJr-r�rar�rAr�rWs    r�test_bp_ignore_countz'BreakpointTestCase.test_bp_ignore_countrs����� ��'��
�G�
$�+�!�&�*;�<�+�2C�+�.���F�a��U�B�K�0�*��D�O��4��F����|�,�!�%�
$�!���%�
$�r�c�\�d}t|i}t|�5dtdt�dtdt�dddddddd	dd
digffdd
ddd	dd
d
igffddd	ddd
igffdg|_t|�5}|j
t�ddd�ddd�y#1swY�xYw#1swYyxYw)Nr�rTrUr�r�r�rJr-r�r�rar�r�rAr�rWs    r� test_ignore_count_on_disabled_bpz3BreakpointTestCase.test_ignore_count_on_disabled_bp�s����� ��'��
�G�
$�+�!�&�*;�<�+�!�&�*;�<�+�2C�+�2D�+�.���F�a��U�B�K�0�2C�#�.���F�a��U�B�K�0�.���F�a��U�B�K�0�*��D�O��4��F����|�,�!�%�
$�!���%�
$�s$�AB"�/B�B"�B	�B"�"B+c�`�d}t|i}t|�5ddtdffddtdffddtdffddddd	d
d
igffdddd	dd
igffdtdffddddd	dd
igffdg|_t	|�5}|jt�ddd�ddd�y#1swY�xYw#1swYyxYw)Nz�
            def func():
                lno = 3
                lno = 4

            def main():
                for i in range(3):
                    func()
        rTr�r�r�r5rJr-rUrar�)rIr5rUr�rA)rVrr�r~r�rrrWs    r�test_clear_two_bp_on_same_linez1BreakpointTestCase.test_clear_two_bp_on_same_line�s����� ��'��
�G�
$�+�7�=N�PQ�<R�2S�+�7�=N�PQ�<R�2S�+�7�=N�PQ�<R�2S�+�.���F�a��U�B�K�0�.���F�a��U�B�K�0�7�=N�PQ�<R�2S�#�.���F�a��U�B�K�0�*�	�D�O��4��F����|�,�!�%�
$�!���%�
$�s$�AB$�1B�B$�B!	�B$�$B-c��ddtdffg|_t|�5}|jt|j
t�ddd�y#1swYyxYw)NrTr�ra)rFr~r�r{rrrrCs  r�test_clear_at_no_bpz&BreakpointTestCase.test_clear_at_no_bp�sD��'�'�H�a�=�)A�
����t�_�����h�����E��_�_�s�&A�Ac��t�t�}|jt�}|j	td�|j|j
�|dgi�t�}|j	td�|j	td�|j	td�|j|j
�|dgi�|j|j
�|gd�i�|jtd�|j|j
�|dgi�|j|j
�|gd�i�t�}|j|j
�|dgi�|j|j
�|gd�i�|j|j
�|gd�i�|jtd�|j|j
�|dgi�|j|j
�|ddgi�|j|j
�|gd�i�t�}|j	td�|j|j
�|dgi�|j|j
�|ddgi�|j|j
�|gd�i�|j|j
�|gd�i�t�t�}|j	td	�|j|j
�|dgi�|j|j
�|ddgi�|j|j
�|gd�i�|j|j
�|gd�i�|j|j
�|d	gi�y)
Nrar�r�r5)rar�r�r5)r�r�r5r,)r�r5r,r-)rr7r�rFrP�assertEqual�get_all_breaksrl)r<�db1rm�db2�db3�db4�db5s       r�(test_load_bps_from_previous_Bdb_instancez;BreakpointTestCase.test_load_bps_from_previous_Bdb_instance�s�����e�����H�%���
�
�h��"�����+�+�-���s�|�<��e���
�
�h��"��
�
�h��"��
�
�h��"�����+�+�-���s�|�<�����+�+�-��|�/D�E�����!�$�����+�+�-���s�|�<�����+�+�-��y�/A�B��e������+�+�-���s�|�<�����+�+�-��y�/A�B�����+�+�-��y�/A�B�����!�$�����+�+�-���s�|�<�����+�+�-���1�v��?�����+�+�-��y�/A�B��e���
�
�h��"�����+�+�-���s�|�<�����+�+�-���1�v��?�����+�+�-��y�/A�B�����+�+�-��y�/A�B����e���
�
�h��"�����+�+�-���s�|�<�����+�+�-���1�v��?�����+�+�-��y�/A�B�����+�+�-��y�/A�B�����+�+�-���s�|�<rN)rr
rr�r�r�r�r�r�r�r�r�r�r�rrrr�r�s?��)�F�J�-�.-�8-�(-�&-�*-�6-�2F�(=rr�c��eZdZ	d�Zd�Zy)�RunTestCasec��d}gd�|_t|�5}|jtt	j
|�dd��ddd�y#1swYyxYw)Nz
            lno = 2
        ))r-r��<module>r
)r�r�r�rAz<string>�exec)r~r��run�compilerr )r<rVr�s   r�
test_run_stepzRunTestCase.test_run_step�sE����
����t�_���J�J�w�x���t�4�j�&�I�J��_�_�s�0A�Ac��d}t|i}t|�5gd�|_ddl}t	|�5}|jdt
�t��ddd�ddd�y#1swY�xYw#1swYyxYw)NrS)
)r-rar�r
)r�r�r*r
)r-r�r*r
)r�r�r*r
)r�rar�rArztest_module_for_bdb.main())rVrr~r(r��runevalrG�locals)r<rVrr(r�s     r�test_runeval_stepzRunTestCase.test_runeval_step�sg���� ��'��
�G�
$��D�O�
'��4��F����;�W�Y���Q�!�%�
$�!���%�
$�s"�A0�$A$�A0�$A-	�)A0�0A9N)rr
rr�r�rrrr�r��s��*�
K�Rrr�c�,�eZdZ	d�Zd�Zd�Zd�Zd�Zy)�IssuesTestCasec��d}d}t|d|i}t|�5dtdd�ddd	d
dddigffdd
dddg
|_t	|�5}|jt�ddd�ddd�y#1swY�xYw#1swYyxYw)Nz�
            from test_module_for_bdb_2 import func
            def main():
                func()
                lno = 5
        z9
            def func():
                lno = 3
        �test_module_for_bdb_2rTrUztest_module_for_bdb_2.pyr�rJr-r�rar
)r�r�rU)r-r,r*rA)rVrr'r~r�rr)r<�code_1�code_2rr�s     r�+test_step_at_return_with_no_trace_in_callerz:IssuesTestCase.test_step_at_return_with_no_trace_in_callers�������

��#�V�
���G�
$�+�!�&�*D�E�+�.���F�a��U�B�K�0�*�%�*�#�*�
�D�O��4��F����|�,�!�%�
$�!���%�
$�s#�/A<�	A0�A<�0A9	�5A<�<Bc��d}t|i}dD]�}|j|��5t|�5dtdt�dddd	dd
d
igff|fg|_|dk(r(|j
j
dd
dtfdddg�n|j
j
ddg�t|�5}|jt�ddd�ddd�ddd���y#1swY�xYw#1swY� xYw#1swY��xYw)Nz�
            def test_gen():
                yield 0
                lno = 4
                return 123

            def main():
                it = test_gen()
                next(it)
                next(it)
                lno = 11
        )r�r�r�rHrT�test_genr�rJr-r�rar�r��
r*r
)r�r�r*rA�r-r5r�)rVrLrr'r�r~r�rr�rr)r<rVrr�r�s     r�#test_next_until_return_in_generatorz2IssuesTestCase.test_next_until_return_in_generator0s���
�� ��'��3�H����x��0�#�G�,�3�)�*�6G�H�3�n���J�!�A����<�x�l�	'�D�O� �8�+����.�.�)�2�v�}�E�y�3�z������.�.�4�j�B��#�4��F����|�4�)�%-�1�0�4�()���%-�,��1�0�s;�C1�A:C%�(C	�>C%�C1�C"
�C%�%C.�*C1�1C:	c�,�d}t|i}t|�5dtdt�dddddddigffd	d
d	dd	dd	d
ddtfdddg|_t
|�5}|jt�ddd�ddd�y#1swY�xYw#1swYyxYw)Nz�
            def test_gen():
                yield 0
                lno = 4
                yield 1
                return 123

            def main():
                for i in test_gen():
                    lno = 10
                lno = 11
        rTr�r�rJr-r�rar	r�)r-r,r�)r-r-r�r��	r*r
)r-�r*rA�	rVrr'r�rr~r�rrrWs    r�'test_next_command_in_generator_for_loopz6IssuesTestCase.test_next_command_in_generator_for_loopYs����� ��'��
�G�
$�+�!�*�.?�@�+����J�!�A����4��'��'��'���a���7��$���D�O��4��F����|�,�!�%�
$�!���%�
$�s$�AB
�A>�-B
�>B	�B
�
Bc
�$�d}t|i}t|�5dtdt�dddddddigffd	d
d	ddd
tfdddg|_t
|�5}|jt�ddd�ddd�y#1swY�xYw#1swYyxYw)N�4
            def test_subgen():
                yield 0
                return 123

            def test_gen():
                x = yield from test_subgen()
                return 456

            def main():
                for i in test_gen():
                    lno = 12
                lno = 13
        rTr�r�rJr-r.rar	)r-�r�r�r�r*r
�r-�
r*rAr�rWs    r�/test_next_command_in_generator_with_subiteratorz>IssuesTestCase.test_next_command_in_generator_with_subiteratorxs���
�� ��'��
�G�
$�+�!�*�.?�@�+�.���J�!�A����4�*�'�*��b�&�-�8�*�$�*�	�D�O��4��F����|�,�!�%�
$�!���%�
$�s#�=B�A:�)B�:B	�?B�Bc
�4�d}t|i}t|�5dtdt�dddddddigffd	d
ddtfd	d
d
dtfdddg|_t
|�5}|jt�ddd�ddd�y#1swY�xYw#1swYyxYw)Nr�rT�test_subgenr�rJr-r�rar`r�r.r�r�r*r
r�rAr�rWs    r�1test_return_command_in_generator_with_subiteratorz@IssuesTestCase.test_return_command_in_generator_with_subiterator�s���
�� ��'��
�G�
$�+�!�-�1B�C�+�n���M�Q�q�E�2�;�7�l��a��]�;�l��b�&�-�8�j�$�j�	�D�O��4��F����|�,�!�%�
$�!���%�
$�s$�AB�B�1B�B	�B�BN)rr
rr�r�r�r�r�rrrr�r�s�� �-�<'5�R-�>-�>-rr�c��eZdZd�Zy)�TestRegressionsc�~�|jdt�jtj�df��y)NzWarning: lineno is None)�assertInr7�format_stack_entryr��	_getframerqs r�!test_format_stack_entry_no_linenoz1TestRegressions.test_format_stack_entry_no_lineno�s-���
�
�/��e�.�.��
�
���/F�G�	IrN)rr
rr�rrrr�r��s��Irr��__main__r)/rxrr�r)�unittestrrHr!�
contextlibr�	itertoolsrr�test.supportrrr�	Exceptionr
rrrrrr5r7ryr�rrrFr'rVr�rr3r/r0�TestCaser
r;r�r�r�r�rr*rrr�<module>r�sZ��0�d�
�	�����%�$�&�"�#�$�9�#�E�|�E�H�\�H�A�,�A���'��*>/�$�(�(�>/�@w1�S�w1�r-/�-/�^H)�T���� #+�e�$�=�$���%�'�����
�3�8�$�$�3�u'�L�u'�ni=��i=�X R�,� R�De-�\�e-�PI�h�'�'�I��z���H�M�M�O�r

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists