403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.217.51
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:/Python315/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python315/Lib/test/__pycache__/test_pdb.cpython-315.opt-2.pyc
R
>lqj'�c�v�]PHs]PHs]PHs]PHs]PHs]PHs]PHs]PHs]PH s]PH$s	]PH(s
]PH,s]PH0s]PH4s
]PH8s]PH<s]QH@Gs]QHHGsGs]QHGs]QHXGs]QH`GsGs]QHlGs]QHtGsGs]QH�G!s!]Q	H�G#s#P
s$Q
Q\%2s&Qs'Q
s(Qs)Qs*Qs+Qs,Qs-Qs.Qs/Qs0Qs1Qs2Qs3Qs4Qs5Qs6Qs7Qs8Qs9Qs:Q s;\OxOz%fQ!s>Q"s?Q#s@Q$sAQ%sBQ&sCQ'sDQ(sEQ)sFQ*sGQ+sHQ,sIQ-sJ\O�Q.2sL\MQ/\LO�2Q0sOQ1sPQ2sQQ3sRQ4sSQ5sTQ6sU\$%f\%c
Q7sVQ8sWQ9sXQ:sYQ;sZQ<s[Q=s\\$%fQ>s]Q?s^\$%fQ@s_QAs`QBsaQCsbQDscQEsdQFse\O�sgQGshQHsiQIsjQJskQKslQLsmQMsnQNsoQOspQPsqQQsrQRssQSstQTsuQUsvQVswQWsxQXsy\O�\O�2QYQZ\
O�222s}Q[Q\\
O�2s~\O�2Q]Q^\
O�22s\COQ_Q`\
O�22s�\O�\O�2QaQb\
O�222s�\O�\O�2QcQd\
O�222s�\
CO\CO
2%(Qe2QfQg\�22s�Qhs�\�Qi6Xc\
CO2P!P!)j�)�_set_event_loop_policy)�	ExitStack�redirect_stdout)�StringIO)�support)�has_socket_support�	os_helper)�
import_module)�run_pty�	FakeInput)�kill_python)�patchc�4`�\sQs]!snQsQsQsQsUsP!)�PdbTestInputc��VmP!�N)�input)�selfrs&&�"C:\Python315\\Lib\test\test_pdb.py�__init__�PdbTestInput.__init__$s���
�c���[OUm[UO2[m[[Q2%c[O2UmP!PUmP!)�gettrace)�sys�stdin�
real_stdinrr�hasattrr�
orig_trace�rs&r�	__enter__�PdbTestInput.__enter__'s<���)�)����d�j�j�)��	�,3�C��,D�,D�#�,�,�.���$��rc��UO[mUO%c#[OUO2P!P!r)rrrr�settrace)r�excs&*r�__exit__�PdbTestInput.__exit__,s+���O�O��	��?�?�?��L�L����)�r)rrr)	�__name__�
__module__�__qualname__�__firstlineno__rr r%�__static_attributes__�__classdictcell__��
__classdict__s@rrr!s�����O�
*�*rrc��P!r�r0rr�test_pdb_displayhookr12���rc��P!rr0r0rr�test_pdb_basic_commandsr4Nr2rc��P!rr0r0rr�test_pdb_breakpoint_commandsr6�r2rc��P!rr0r0rr�(test_pdb_breakpoint_ignore_and_conditionr8kr2rc��P!rr0r0rr�-test_pdb_breakpoint_on_annotated_function_defr:�r2rc��P!rr0r0rr�test_pdb_commandsr<�r2rc��P!rr0r0rr�!test_pdb_breakpoint_with_filenamer>�r2rc��P!rr0r0rr�$test_pdb_breakpoint_on_disabled_liner@r2rc��P!rr0r0rr�:test_pdb_breakpoints_preserved_across_interactive_sessionsrB.r2rc��P!rr0r0rr�test_pdb_break_anywhererDpr2rc��P!rr0r0rr�test_pdb_pp_repr_excrF�r2rc��P!rr0r0rr�test_pdb_empty_linerH�r2rc��P!rr0r0rr�
do_nothingrJ�r2rc��[]*2P!)�*)�printr0rr�do_somethingrN�s	��	�"�Irc��P!rr0r0rr�test_list_commandsrP�r2rc��P!rr0r0rr�test_pdb_whatis_commandrR7r2rc��P!rr0r0rr�test_pdb_display_commandrT`r2rc��P!rr0r0rr�test_pdb_alias_commandrV�r2rc��P!rr0r0rr�test_pdb_where_commandrX�r2rc��P!rr0r0rr�test_pdb_restart_commandrZCr2rc��P!rr0r0rr� test_pdb_commands_with_set_tracer\Xr2rc��P!rr0r0rr�test_pdb_interact_commandr^g���rc��P!rr0r0rr�test_convenience_variablesra�r2rc��P!rr0r0rr�test_post_mortem_chainedrc�r2rc��P!rr0r0rr�!test_post_mortem_cause_no_contextreHr2rc��P!rr0r0rr�%test_post_mortem_context_of_the_causerg�r2rc��P!rr0r0rr�test_post_mortem_from_noneri�r2rc��P!rr0r0rr�test_post_mortem_from_no_stackrk�r2rc��P!rr0r0rr� test_post_mortem_single_no_stackrmr2rc��P!rr0r0rr�test_post_mortem_complexro)r2rc��P!rr0r0rr�test_post_mortemrq�r2rc��P!rr0r0rr�!test_pdb_return_to_different_filers�r2rc��P!rr0r0rr�test_pdb_skip_modulesrur2rc��P!rr0r0rr�test_pdb_invalid_argrwr2r�module_to_skipz6def foo_pony(callback): x = 1; callback(); return Nonec��P!rr0r0rr�#test_pdb_skip_modules_with_callbackrzFr2rc��P!rr0r0rr� test_pdb_continue_in_bottomframer|ur2rc�X�[[OP	P
Q5U2U2P!)T)�nosigint�readrc)�getattr�pdb�Pdb)�method�args&&r�
pdb_invoker��s���C�G�G�T�%�0�&�9�#�>rc��P!rr0r0rr�$test_pdb_run_with_incorrect_argumentr��r2rc��P!rr0r0rr�test_pdb_run_with_code_objectr��r2rc��P!rr0r0rr�&test_next_until_return_at_return_eventr��r2rc��P!rr0r0rr�#test_pdb_next_command_for_generatorr�
r2rc��P!rr0r0rr�test_pdb_asynctaskr�N���rc��P!rr0r0rr�test_pdb_await_supportr�er�rc��P!rr0r0rr�test_pdb_await_with_breakpointr��r�rc��P!rr0r0rr�test_pdb_await_contextvarr��r�rc��P!rr0r0rr�#test_pdb_next_command_for_coroutiner�	r_rc��P!rr0r0rr�"test_pdb_next_command_for_asyncgenr�K	r_rc��P!rr0r0rr�%test_pdb_return_command_for_generatorr��	r2rc��P!rr0r0rr�%test_pdb_return_command_for_coroutiner��	r_rc��P!rr0r0rr�$test_pdb_until_command_for_generatorr��	r2rc��P!rr0r0rr�$test_pdb_until_command_for_coroutiner�!
r_rc��P!rr0r0rr�+test_pdb_next_command_in_generator_for_loopr�Q
r2rc��P!rr0r0rr�!test_pdb_next_command_subiteratorr�z
r2rc��P!rr0r0rr�test_pdb_breakpoint_with_throwr��
r2rc��P!rr0r0rr�test_pdb_multiline_statementr��
r2rc��P!rr0r0rr�test_pdb_closurer��
r2rc��P!rr0r0rr� test_pdb_show_attribute_and_itemr�/r2rc��P!rr0r0rr�test_pdb_with_inline_breakpointr�[r2rc��P!rr0r0rr�test_pdb_issue_20766r��r2rc��P!rr0r0rr�test_pdb_issue_43318r��r2rc��P!rr0r0rr�test_pdb_issue_gh_91742r��r2rc��P!rr0r0rr�test_pdb_issue_gh_94215r��r2rc��P!rr0r0rr�test_pdb_issue_gh_101673r�+r2rc��P!rr0r0rr�test_pdb_issue_gh_103225r�Ur2rc��P!rr0r0rr�test_pdb_issue_gh_101517r�nr2rc��P!rr0r0rr�test_pdb_issue_gh_108976r��r2rc��P!rr0r0rr�test_pdb_issue_gh_127321r��r2rc��P!rr0r0rr�test_pdb_issue_gh_136057r��r2rc��P!rr0r0rr�test_pdb_issue_gh_80731r��r2rc��P!rr0r0rr�test_pdb_ambiguous_statementsr��r2rc��P!rr0r0rr�test_pdb_f_trace_linesr��r2rc��P!rr0r0rr�test_pdb_frame_refleakr�
r2rc��P!rr0r0rr�test_pdb_function_breakr�>
r2rc��P!rr0r0rr�test_pdb_issue_gh_65052r�g
r2rc��P!rr0r0rr�!test_pdb_commands_last_breakpointr��
r2rc�r`�\sQsQsnQs\O\OOQ2QLQk2s
QMQksQsQs
QsQ	sQ
sQsQsQ
sQsQsQsQsQsQsQsQsQsQsQsQsQs Qs!Qs"Qs#Qs$Qs%Q s&Q!s'Q"s(Q#s)Q$s*Q%s+Q&s,Q's-Q(s.Q)s/Q*s0Q+s1Q,s2Q-s3Q.s4Q/s5Q0s6Q1s7Q2s8Q3s9Q4s:Q5s;Q6s<Q7s=Q8s>Q9s?Q:s@Q;sAQ<sB\CO�Q=2sEQ>sFQ?sGQ@sHQAsIQBsJQCsKQDsLQEsMQFsN\O\OQG2QH2sPQIsQQJsRQKsSUsTP!)N�PdbTestCasei�
c�P�[O[O2P!r�r�unlink�TESTFNrs&r�tearDown�PdbTestCase.tearDown�
�������)�)�*r�'PYTHONSAFEPATH changes default sys.pathc	��UO[OQ2[OQQ,U*oUd[
OU*oL[
Oo[OU[O[O[O-UAQQ-AQ59^tt^2oUO[OU22vq�PPP2[W[2%c[OU2LSo[W	[2%c[OU	2LS	o	UO!WO"UQUQU	02V�1!)%fhK�9h)�__pycache__�-mr��PYTHONIOENCODING�utf-8��stdoutr�stderr�env�Unexpected return code
stdout: �	
stderr: )�
addCleanupr�rmtreer�
executable�os�environ�
subprocess�Popen�PIPE�communicate�str�encode�
isinstance�bytes�decode�assertEqual�
returncode)
r�pdb_args�commands�expected_returncode�	extra_env�cmdr��procr�r�s
&&&&&     r�_run_pdb�PdbTestCase._run_pdb�
s!��
	
���	�(�(�-�8��~�~�t�U�+�h�6��� ��*�*�y�(�C��*�*�C�
�
�
��!��� �o�o�!���:��:�0�'�:�
�
��!�-�-�c�j�j��.B�C�N�F�
�*4�F�E�)B�)B����f�%���)3�F�E�)B�)B����f�%�������O�O��.�v�h�j���I�	
�
�~��
�
�s�;'E*�*E:	�3E:	c���Qo[UQ29^tt^2o	U	O[OU22PPP2Udc[QQ29^tt^2o	U	O[OU22PPP2UO	[
OQ2UO	[
OU2[
O29^tt^2o
U%cU
OQ2Ue,oUOU,U*V#U2vq�PPP2V�1!)%fhK�9h)%fhK�9h)%fhWW1!9h)�main.py�w�.pdbrc�HOME)
�open�write�textwrap�dedentr�rr��EnvironmentVarGuard�unsetr�)
r�scriptr�r�r��script_args�pdbrc�remove_home�filename�fr�r�r�s
&&&&&&&&     r�run_pdb_script�PdbTestCase.run_pdb_script�
s����
�(�C�
 �
 �A�
�G�G�H�O�O�F�+�,�!����h��$�$���������.�/�%��O�O�I�,�,�h�7����	�(�(�(�3�
�
*�
*�
,�
,����	�	�&�!��"� ��!�]�]�H�:��+C�X�dm�n�N�F�-��~��!�
 ��%�$��
-�
,��v�~��sA�&D1�&E�)E�2E�E�1E	�:E	�E	�
E	�E*	� E*	c�z�QUm[OUO2UOQ*oUOQ*o[OUO2[UQ29^tt^2oPPP2[UQ29^tt^2oUO
[OU22PPP2UO[OUO2UOQUO,U2!)%fhK�9h)%fhKk9h)�t_main�/__main__.py�/__init__.pyrr�)�module_namerr�r��mkdirrrrrr�r�)rrr��	main_file�	init_filers&&&   r�run_pdb_module�PdbTestCase.run_pdb_modules���#�������)�)�*��$�$�~�5�	��$�$�~�5�	�
����!�!�"�
�)�S�
!�
!�Q��"�
�)�S�
!�
!�Q�
�G�G�H�O�O�F�+�,�"����	�(�(�$�*:�*:�;��}�}�d�D�$4�$4�5�x�@�@�"�
!��
!�
!�s$�D�!&D*�D'	� D'	�*D:	�3D:	c�f�[[OQ29^tt^2oUOU2PPP2U%fPL U]*[OU]*1oUO	U[
OU[O22P!)%fhKr9h)�wb)rrr�rr�r��
find_function)r�file_content�	func_name�expectedrs&&&& r�_assert_find_function�!PdbTestCase._assert_find_functions{��
�)�"�"�D�
)�
)�Q�
�G�G�L�!�*� (�4��Q�K��)�)�8�A�;�.8������c�'�'�	�9�3C�3C�D�	F�*�
)�s�B � B0	�)B0	c�T�UO29%fUO2!r)�_proc_fd_dir�_dev_fd_dirrs&r�_fd_dir_for_pipe_targets�$PdbTestCase._fd_dir_for_pipe_targetss"��� � �"�8�8�d�&6�&6�&8�8rc�.�[OOQ2%cP!Qo[OOU2%cF[OO
[OOUQ22%cU!P!)�sunosz
/proc/self/fd�0)r�platform�
startswithr��path�isdir�exists�join)r�proc_fds& rr&�PdbTestCase._proc_fd_dirs]���<�<�"�"�7�+�+��!��
�7�7�=�=��!�!�b�g�g�n�n�R�W�W�\�\�'�3�5O�&P�&P��N�rc���Qo[OOU2%c�[OO[OO	UQ22%cq[
OOQ2%cJ[OQ2O[OU2O6XcP!U!U!P![cP!h9h)z/dev/fdr,�freebsdz/dev)r�r/r0r1r2rr-r.�stat�st_dev�FileNotFoundError)r�dev_fds& rr'�PdbTestCase._dev_fd_dir(s�����
�7�7�=�=�� � �R�W�W�^�^�B�G�G�L�L���4M�%N�%N��|�|�&�&�y�1�1� ��w�w�v��-�-������1G�1G�G�#�H��M�6�M���)� �� �s�AC�	C-�(C-�,C-c�.�UOQQP2P!)r�foo)r#rs&r�test_find_function_empty_file�)PdbTestCase.test_find_function_empty_file5s���"�"�3��t�4rc�J�UOQO2QQ2P!)u@def foo():
    pass

def bœr():
    pass

def quux():
    pass
�bœr)rA��r#r�rs&r�test_find_function_found�$PdbTestCase.test_find_function_found8s$���"�"�	
��F�H���
	
rc��[O2o[OUQ5o[O
2o[O[QQ29^tt^2UOV3O12PPP2UOQUO22P!)%fhK29h)�r��line_prefixzCUSTOM_PREFIX> )�iorr�r�r�	_getframer�	swap_attr�print_stack_entry�f_lineno�assertIn�getvalue)rr��p�frames&   r�/test_print_stack_entry_uses_dynamic_line_prefix�;PdbTestCase.test_print_stack_entry_uses_dynamic_line_prefixHs{��������G�G�6�"���
�
���
�
�
�s�M�3D�
E�
E�
������ 7�8�F�	
�
�
�'����):�;�	F�
E�s�'B.�.B>	�7B>	c�L�UOQOQ2QQ2P!)uV# coding: iso-8859-15
def foo():
    pass

def bœr():
    pass

def quux():
    pass
ziso-8859-15rA)rA�rCrs&r�-test_find_function_found_with_encoding_cookie�9PdbTestCase.test_find_function_found_with_encoding_cookieVs'���"�"�

��F�=����	
rc�t�UO[OQO2*QQ2P!)udef bœr():
    pass
rA)rA�)r#�codecs�BOM_UTF8r�rs&r�!test_find_function_found_with_bom�-PdbTestCase.test_find_function_found_with_bomgs2���"�"��O�O���F�H�

�
��
	
rc�Z�QoQoUOV2vq4UOQU2P!)zJ
            import __main__
            print(__main__.__spec__)
        �continue�None�rrN�rrr�r��_s&    r�	test_spec�PdbTestCase.test_specqs0����
���'�'��9�	���
�
�f�f�%rc��UO2oUeUOQ2[O2vq#QoUO	VB2UO	VC2[O
O
U[U22o[O
OU2%fUOQ2Qo[OV6OQ22[OU2[O
]*oUO	[O
O]U2[OU2oUO o	UO"o
[%V�2UO'U
Q*Q2UO'U
Q*UO(2UO+U
Q	*2P!)
Nz7anonymous pipe targets require /proc/self/fd or /dev/fdc�Z�[OU2P![cP!h9hr)r��close�OSError)�fds&r�
safe_close�APdbTestCase.test_script_target_anonymous_pipe.<locals>.safe_close�s$��
��������
��
�s��	*�*�*z,fd directory does not expose anonymous pipeszmarker = "via_pipe"
r��marker�via_pipe�__file__�__spec__)r(�skipTestr��piper�r/r2r�r1rr�rhr�__setitem__r��
_ScriptTarget�code�	namespace�execr�r�assertIsNone)r�fd_dir�read_fd�write_fdrk�	pipe_path�
script_source�original_path0�target�	code_textrvs&          r�!test_script_target_anonymous_pipe�-PdbTestCase.test_script_target_anonymous_pipe}sE���.�.�0���>��M�M�S�T��G�G�I���	�	
���
�,����
�-��G�G�L�L���W��6�	��w�w�~�~�i�(�(��M�M�H�I�/�
�
����/�/��8�9�
��������!���������,�,�a��@��"�"�9�-���K�K�	��$�$�	��Y�"�����8�,�j�9�����:�.����@����)�J�/�0rc���[OQ2O2oUOUQQ2UOUQQ2UOUQQ2UOUQQ2P!)	a�            def foo(): pass

            def bar():
                pass  # line 4

            def baz():
                # comment
                pass  # line 8

            def mul():
                # code on multiple lines
                code = compile(   # line 12
                    'def f()',
                    '<string>',
                    'exec',
                )
        r=�bar�baz�mul)r=�)r��)r��)r��)rrr�r#)rrus& r�(test_find_function_first_executable_line�4PdbTestCase.test_find_function_first_executable_line�sk����� �
�"�V�X�#	
�&	
�"�"�4��
�;��"�"�4��
�;��"�"�4��
�;��"�"�4���<rc��[[OQ29^tt^2oUOQ2PPP2[O
QQ[O,o[OU[O[O[OQ5oUOUOO2UOQ2vqEUOQUQ2P!)%fhK�9h)rsprint("testing my pdb")
r�r�)r�rr�squit
sSyntaxErrorz0Got a syntax error running test script under PDB)rrr�rrr�r�r�r�r�r�rhr��assertNotIn�rrr�r�r�r�s&     r�test_issue7964�PdbTestCase.test_issue7964�s���
�)�"�"�D�
)�
)�Q�
�G�G�2�3�*��~�~�t�U�I�,<�,<�=�������?�?��/�/��?�?���
	
������)�)�*��)�)�)�4��������K�	M�*�
)�s�C1�1D	�:D	c��QoQoUOV2vq4S9%fPS9%fP*oUOQUQ2UOQUQ2P!)z�
            def do_testcmdwithnodocs(self, arg):
                pass

            import pdb
            pdb.Pdb.do_testcmdwithnodocs = do_testcmdwithnodocs
        zA
            continue
            help testcmdwithnodocs
        �AttributeErrorzCCalling help on a command with no docs should be handled gracefullyz;*** No help for 'testcmdwithnodocs'; __doc__ string missingz<Calling help on a command with no docs should print an error)rr�rN)rrr�r�r��outputs&     r�test_issue46434�PdbTestCase.test_issue46434�sg�������,�,�V�>����,�,�B�6�<�<�R�0�����)�6�^�	`��
�
�S�U[�T�	Vrc���QoQoQo[QQ29^tt^2oUO[OU22PPP2UO	[
OQ2UOV2vqVSO[9PIc*QUO22D%fJP	L	P
LQUO222Q2P!)%fhK�9h)z�
            from bar import bar

            def foo():
                bar()

            def nope():
                pass

            def foobar():
                foo()
                nope()

            foobar()
        z�
            from bar import bar
            break bar
            continue
            step
            step
            quit
        z5
            def bar():
                pass
        �bar.pyrc3�8�SF �DoQU7w�	J
	P!3h)zmain.py(5)foo()->Noner0��.0�ls& r�	<genexpr>�.PdbTestCase.test_issue13183.<locals>.<genexpr>s��6I���6I��'�1�,�6I���z+Fail to step into the caller after a return)rrrrr�rr�r�
assertTrue�any�
splitlines)rrr�r�rr�r�s&      r�test_issue13183�PdbTestCase.test_issue13183�s����������(�C�
 �
 �A�
�G�G�H�O�O�C�(�)�!����	�(�(�(�3��,�,�V�>�������C�J�f�6G�6G�6I�J�C�C�C�J�f�6G�6G�6I�J�J�9�	;�	!�
 �s�&C�C.	�'C.	c	�v�[[OQ29^tt^2oUO[O
Q2O
Q22PPP2[OQ[O,o[OU[O[O[O-[OAQQ-AQ5oUOUOO 2UO#Q2vqEUO%QUQ	2P!)%fhK�9h)
ra
                import threading
                import pdb

                def start_pdb():
                    pdb.Pdb(readrc=False).set_trace()
                    x = 1
                    y = 1

                t = threading.Thread(target=start_pdb)
                t.start()�ascii�-ur�r�r�scont
�Error�*Got an error running test script under PDB�rrr�rrrr�rr�r�r�r�r�r�r�r�rhr�r�r�s&     r�test_issue13120�PdbTestCase.test_issue13120s����)�"�"�D�
)�
)�Q�
�G�G�H�O�O�
%�
�%�f�W�o�

/�*��~�~�t�Y�%5�%5�6�������?�?��/�/��?�?�;�2�:�:�;�1�7�;�	��	
������)�)�*��)�)�)�4�������6�E�	G�+*�
)���5D(�(D8	�1D8	c	�v�[[OQ29^tt^2oUO[O
Q2O
Q22PPP2[OQ[O,o[OU[O[O[O-[OAQQ-AQ5oUOUOO 2UO#Q2vqEUO%QUQ	2P!)%fhK�9h)
ra�
                import threading
                import pdb

                evt = threading.Event()

                def start_pdb():
                    evt.wait()
                    pdb.Pdb(readrc=False).set_trace()

                t = threading.Thread(target=start_pdb)
                t.start()
                pdb.Pdb(readrc=False).set_trace()
                evt.set()
                t.join()r�r�r�r�r�s
cont
cont
r�r�r�r�s&     r�test_issue36250�PdbTestCase.test_issue36250#s���
�)�"�"�D�
)�
)�Q�
�G�G�H�O�O�%��$�V�G�_�
.�*� �~�~�t�Y�%5�%5�6�������?�?��/�/��?�?�=�R�Z�Z�=�!3�W�=�	��	
������)�)�*��)�)�/�:�������6�E�	G�3*�
)�r�c�|�QoPoQoUOV2vqEUOV5QOV522P!)zdef f: pass
zSyntaxError:zE

Expected:
{}
Got:
{}
Fail to handle a syntax error in the debuggee.)rrN�format)rrr�r"r�r�s&     r�test_issue16180�PdbTestCase.test_issue16180AsE�� ����!���,�,��
���	
�
�
�h�
=�
�V�H�
%�	'rc��QoQoUOV2vq4UOUOQ2]2UOUOQ2]2P!)z!import ast; ast.literal_eval('')
zA
            continue
            where
            quit
        zast.literal_eval(''))rr��count�rrr�r�r�s&    r�test_issue84583�PdbTestCase.test_issue84583NsX��5����
�,�,�V�>���
	
������&<�=�q�A�������&<�=�q�Arc��QoQoUOV2vq4QOUO2Tt,tFDpUO2MJ	to2oUO	UQ2UO	UQ2P!ttoh)zprint('hello')z[
            continue
            run a b c
            run d e f
            quit
        �
z#Restarting .* with arguments:
a b cz#Restarting .* with arguments:
d e f)rr2r��strip�assertRegex)rrr�r�r��x�ress&      r�test_issue26053�PdbTestCase.test_issue26053^sv��!�����,�,�V�>����i�i�F�,=�,=�,?�@�,?�q����,?�@�A������D�E�����D�E��As�A<c��QoQoQo[QQ29^tt^2oUO[OU22PPP2UO	[
OQ2UOV2vqVUO2oUOQU2UOQU2P!)%fhKy9h)z~
            import bar
            def foo():
                ret = bar.bar()
                pass
            foo()
        zv
            b bar.bar
            c
            b main.py:5
            c
            p ret
            quit
        z:
            def bar():
                return 42
        r�r�-> passz(Pdb) 42)
rrrrr�rr�rr�rN)rrr�r�rr�r��liness&       r�test_issue58956�PdbTestCase.test_issue58956ls����������(�C�
 �
 �A�
�G�G�H�O�O�C�(�)�!����	�(�(�(�3��,�,�V�>����!�!�#���
�
�i��'��
�
�j�%�(�
!�
 �s�&B3�3C	�<C	c�~�QoQoUOV2vq4UOQU2UOQU2P!)zx = 1zM
            step
            step
            step
            quit
        zThe program finishedzbdb.py�rrNr�rbs&    r�test_step_into_botframe�#PdbTestCase.test_step_into_botframe�sC�������'�'��9�	���
�
�,�f�5�����6�*rc��[OQ2o[OQ2oUOUQUP	Q5vq4UOQU2UO	QU2UO	QU2P!)z-
            a = 1
            b = 2
        zU
            # Comments should be fine
            n
            p f"{a+8=}"
        �q
�r
r�SyntaxErrorza+8=9�-> b = 2)rrrr�rN�rrr
r�r�s&    r�test_pdbrc_basic�PdbTestCase.test_pdbrc_basic�st�����"�
��
���!�
���,�,�V�U�%�UY�,�Z��������/��
�
�g�v�&��
�
�j�&�)rc���[OQ2o[OQ2oUOUQUP	Q5vq4UOQU2UO	QU2P!)z?
            a = 1
            b = 2
            c = 3
        z
            n

        r�r�zb = 2zc = 3)rrrrNr�r�s&    r�test_pdbrc_empty_line�!PdbTestCase.test_pdbrc_empty_line�sh�����"�
�����!�
��
�,�,�V�U�%�UY�,�Z����
�
�g�v�&�����&�)rc��[OQ2o[OQ2oUOUQUP	Q5vq4UOQU2P!)��
            class A:
                def __init__(self):
                    self.attr = 1
            a = A()
            b = 2
        z�
            alias pi for k in %1.__dict__.keys(): print(f"%1.{k} = {%1.__dict__[k]}")
            until 6
            pi a
        r�r�z
a.attr = 1�rrrrNr�s&    r�test_pdbrc_alias�PdbTestCase.test_pdbrc_alias�sV�����"�
�����!�
���,�,�V�U�%�UY�,�Z����
�
�l�F�+rc��[OQ2o[OQ2oUOUQUP	Q5vq4UOQU2P!)r�z
            b 5;;c;;n
        r�r�r�r�r�s&    r�test_pdbrc_semicolon� PdbTestCase.test_pdbrc_semicolon�sV�����"�
�����!�
���,�,�V�U�%�UY�,�Z����
�
�j�&�)rc��[OQ2o[OQ2oUOUQUP	Q5vq4UOQU2P!)r�zK
            b 6
            commands 1 ;; p a;; end
            c
        r�r�z<__main__.A object atr�r�s&    r�test_pdbrc_commands�PdbTestCase.test_pdbrc_commands�sW�����"�
�����!�
���,�,�V�U�%�UY�,�Z����
�
�-�v�6rc��[OQ2oUOUQQP	Q5vq#UOQU2P!)z$
            print('hello')
        r��invalidr�z(NameError: name 'invalid' is not definedr�)rrr�r�s&   r�test_readrc_kwarg�PdbTestCase.test_readrc_kwarg�sB�����"�
���,�,�V�U�)�Y]�,�^����
�
�@�&�Irc
���[O29^tt^2oUOQ2[O29^tt^2o[	Q29^tt^2[
OOUQ2oU[
OOm	[UQ29^tt^2oUOQ2PPP2UO[O2O]*Q2PPP2PPP2PPP2P!)%fhK`9h)%fhK59h)%fhK@9h)%fhP!9h�rzos.path.expanduserrrr�)rr	r
�temp_dirr
r�r/r2�
expanduser�return_valuerrr�r�r��rcLines)rr�r��rc_pathrs&    r�test_readrc_homedir�PdbTestCase.test_readrc_homedir�s���
�
*�
*�
,�
,���I�I�f���#�#�%�%��5�9M�3N�3N��'�'�,�,�x��:��29����"�"�/��'�3�'�'�1��G�G�I�&�(�� � �����!2�!2�1�!5�y�A�4O�%�-�
,�
(�'��4O�3N��%�%��-�
,�
,�sl�/E�E	�"AD3
�6D �>D3
�E	�E� D0�)D0�+D3
�3E�<E�>E	�E
�E
�E�E*	�"E*	c	��[O29^tt^2o[OO	UQ2o[UQ29^tt^2oUO
Q2PPP2UO[O2OP*Q2PPP2P!)%fhKP9h)%fhP!9h)rrr�)r�temp_cwdr�r/r2rrr�r�r�r�)r�cwdr�rs&   r�test_readrc_current_dir�#PdbTestCase.test_readrc_current_dirs���
�
�
�
!�
!�S��g�g�l�l�3��1�G��g�s�#�#�q����	�"�$����S�W�W�Y�.�.�r�2�I�>�	"�
!�#�#��"�
!�
!�s/�5C�B.	�&>C�.B>
�7B>
�9C�C	�
C	c
���[O29^tt^2oUOQ2[O29^tt^2o[	Q29^tt^2[
OOUQ2oU[
OOm	[UQ29^tt^2oUOQ2PPP2UO[O2OQ,2PPP2PPP2PPP2P!)%fhKZ9h)%fhK59h)%fhK@9h)%fhP!9hr�)rr	r
r�r
r�r/r2r�r�rrr�r�r�r�)rr�r�r�rs&    r�test_readrc_cwd_is_home�#PdbTestCase.test_readrc_cwd_is_homes���
�
*�
*�
,�
,���I�I�f���#�#�%�%��e�4H�.I�.I��'�'�,�,�s�H�5��29����"�"�/��'�3�'�'�1��G�G�I�&�(�� � �����!2�!2�Y�K�@�/J�%�-�
,�
(�'��/J�.I��%�%��-�
,�
,�sl�/E�E	�"AD-
�6D�8D-
�E	�E�D*�#D*�%D-
�-D=�6D=�8E	�E
�	E
�E�E$	�E$	c��[2oQo[29^tt^2oUO[QU22UO[O[
OQ22P[
Om[
OUQ5PPP2UOUO2UQ*2P!)%fhK99h)z"Nobody expects... blah, blah, blahz
sys.stdout�	set_trace)�headerr�)rr�
enter_contextr
�objectr�r��_last_pdb_instancer�r�rO)rr�r��	resourcess&   r�test_header�PdbTestCase.test_headers������5��
�[�[�I��#�#�E�,��$?�@��#�#�E�L�L����+�$F�G�*.�C�G�G�&��M�M��(��	
������*�F�T�M�:��[�s�A<C
�
C	�C	c���QoQoUOV2vq4SO[9PIc*QUO22D%fJP	L	P
LQUO222U2P!)zprint("SUCCESS")�/
            continue
            quit
        c3�8�SF �DoQU7w�	J
	P!3h��SUCCESSr0r�s& rr��.PdbTestCase.test_run_module.<locals>.<genexpr>'���4G���4G�q�I��N�4G�r��rr�r�r�r�s&    r�test_run_module�PdbTestCase.test_run_module s]��'�����,�,�V�>��������H�F�4E�4E�4G�H����H�F�4E�4E�4G�H�H�&�Qrc���QoQoUOV2vq4SO[9PIc*QUO22D%fJP	L	P
LQUO222U2P!)zQ
            if __name__ == '__main__':
                print("SUCCESS")
        rc3�8�SF �DoQU7w�	J
	P!3hrr0r�s& rr��9PdbTestCase.test_module_is_run_as_main.<locals>.<genexpr>3rr�rr�s&    r�test_module_is_run_as_main�&PdbTestCase.test_module_is_run_as_main)s_�������,�,�V�>��������H�F�4E�4E�4G�H����H�F�4E�4E�4G�H�H�&�Qrc�(�QoUOQQ,U]Q5UO,QNU2vq#UOQU2UO,QNU2vqBUOQU2UO,QNU2vqBUOQU2P!)	z
            continue
        �calendarr��r�zunrecognized arguments: -p�December)r�rz-p�1)r�rr)r�rz--type�text)r�rN)rr�rcr�r�s&    r�test_run_module_with_args�%PdbTestCase.test_run_module_with_args5s�����	
�
�
�z�4�(�(��
�J��M�M�"?��J�	���
�
�2�F�;��M�M�"9�8�D�	���
�
�j�&�)��M�M�"F��Q�	���
�
�j�&�)rc�b�QoQoUOVQQ,Q5vq4UOQU2P!)z@
            import sys
            print(sys.argv[1:])
        rz--barr=)rz['--bar', 'foo']rar�s&    r�test_run_script_with_args�%PdbTestCase.test_run_script_with_argsDs>������
�,�,�V�G�UZ�K[�,�\����
�
�(�&�1rc��QoQoUOV2vq4SO[9PIc*QUO22D%fJP	L	P
LQUO222U2SO[9PIc*QUO22D%cJP
L	P	LQUO222U2P!)z{
            if __name__ == '__main__':
                pass
                print("SUCCESS")
                pass
        z*
            b 3
            quit
        c3�8�SF �DoQU7w�	J
	P!3h)zBreakpoint 1 atr0r�s& rr��.PdbTestCase.test_breakpoint.<locals>.<genexpr>]���<O���<O�q�-��2�<O�r�c3�8�SF �DoQU7w�	J
	P!3hrr0r�s& rr�r^s��8K���8K�1�I�Q�.�8K�r�)rr�r�r��allr�s&    r�test_breakpoint�PdbTestCase.test_breakpointQs��������,�,�V�>��������P�F�<M�<M�<O�P����P�F�<M�<M�<O�P�P�RX�Y������L��8I�8I�8K�L����L��8I�8I�8K�L�L�f�Urc��QoUOQQ,U2vq#UO[OUO	QP22P!)z(
            c
            quit
        r�r��
)r�rNr��_usage�replace)rr�r�r�s&   r�test_run_pdb_with_pdb�!PdbTestCase.test_run_pdb_with_pdb`sB��������e�}�h�?����
�
��J�J��N�N�4��$�	
rc�l�Qo[OU2UQ*o[OU2[	UQ29^tt^2PPP2UO[OU2UO
QU,P]Q5vq4UOQU2P!)%fhK\9h)rrrr�rz-ImportError: No module named t_main.__main__;)rr�r�rrr�r�rN)rrrr�r�s&    r�test_module_without_a_main�&PdbTestCase.test_module_without_a_mainks���������%��.�0�	�
�����
�)�S�
!�
!��"����	�(�(�+�6����
�;����'�
���	
�
�
�E�v�N�
"�
!�s�
B#�#B3	�,B3	c��QoQo[OU2UQ*U*o[OU2[	UQ*Q29^tt^2PPP2UO[OU2UO
QUOQQ2,P]Q5vqEUOQU2P!)%fhKl9h)	�t_pkgr�/rrr��.rz;'t_pkg.t_main' is a package and cannot be directly executed)	rr�r��makedirsrr�r�r$rN)r�pkg_namer�modpathr�r�s&     r�test_package_without_a_main�'PdbTestCase.test_package_without_a_mainxs�����������"��S�.�;�.��
���G��
�'�N�*�C�
0�
0��1����	�(�(�(�3����
�7�?�?�3��,�-�r�q�'�
���	
�
�
�I��	�
1�
0�s�C�C	�C	c��UOQ[O,P]Q5vqUOQ[O0U2P!)r�rzImportError: No module named )r�rr�rN�rr�r�s&  r�test_nonexistent_module�#PdbTestCase.test_nonexistent_module�sA������i�.>�.>�'?��YZ��[����
�
�5�i�6F�6F�5G�H�&�Qrc���[O29^tt^2oUOU,P]Q5vq#UOQUQ0U2PPP2P!)%fhP!9h)�rzError: z is a directory)rr�r�rN)rr�r�r�s&   r�test_dir_as_script�PdbTestCase.test_dir_as_script�sQ��
�
�
�
!�
!�X�!�]�]�H�:�r�q�]�Q�N�F��M�M�G�H�:�_�=�v�F�"�
!�
!�
!�s�.A�A(	� A(	c��UOQ,P]Q5vqUOQUOQ2]*2UO,QNP]Q5vqUOQUOQ2]*2P!)�-crz8pdb: error: argument -c/--command: expected one argumentr�z*pdb: error: unrecognized arguments: --spam)z--spamr�r�)r�rN�splitr4s&  r�test_invalid_cmd_line_options�)PdbTestCase.test_invalid_cmd_line_options�ss������v�r�q��I����
�
�P�SY�S_�S_�`d�Se�fg�Sh�i����'>��XY��Z����
�
�B�V�\�\�RV�EW�XY�EZ�[rc���QoQoUOV2vq4SO[9PIc*QUO22D%fJP	L	P
LQUO222U2P!)zY
                #This is a comment, on line 2

                print("SUCCESS")
        z
            quit
        c3�8�SF �DoQU7w�	J
	P!3h)z__main__.py(4)<module>()r0r�s& rr��=PdbTestCase.test_blocks_at_first_code_line.<locals>.<genexpr>�s��*=���*=�Q�7� �!�*=�r�rr�s&    r�test_blocks_at_first_code_line�*PdbTestCase.test_blocks_at_first_code_line�so����
���,�,�V�>��������?�*0�*;�*;�*=�?����?�*0�*;�*;�*=�?�?�@F�	Hrc�~�QoQoUOV2vq4UOQU2UOQU2P!)�$
            print("hello")
        z�
            filename = $_frame.f_code.co_filename
            f = open(filename, "w")
            f.write("print('goodbye')")
            import time; time.sleep(1)
            f.close()
            ll
        �WARNING:�
was editedrar�s&    r�"test_file_modified_after_execution�.PdbTestCase.test_file_modified_after_execution�s@����
���,�,�V�>����
�
�j�&�)��
�
�l�F�+rc�~�QoQoUOV2vq4UOQU2UOQU2P!)rFz�
            filename = $_frame.f_code.co_filename
            f = open(filename, "w")
            f.write("print('goodbye')")
            import time; time.sleep(1)
            f.close()
            restart
        rGrH)rr�r�s&    r�,test_file_modified_and_immediately_restarted�8PdbTestCase.test_file_modified_and_immediately_restarted�sD����
���,�,�V�>�������V�,�����v�.rc	�h�QoQoQo[UQ29^tt^2oUO[OU22PPP2UO	[
OU2UO	[
OQ2[OU,o[OU[O[O[O-[OAQQ-AQ59^tt^2oUO[ O#U22vqxPPP2W9%c[$O'U2oUO)WO*]2UO-QU2UO-Q	U2P!)%fhCKT9h)%fhK�9h)
z�
            import pdb; pdb.Pdb().set_trace()
            with open(__file__, "w") as f:
                f.write("print('goodbye')\n" * 5)
                import time; time.sleep(1)
            import pdb; pdb.Pdb().set_trace()
        z3
            continue
            continue
        rrr�r�r�r�rGrH)rrrrr�rr�r�rr�r�r�r�r�r�r�r�r�r�r�r�r�rN)	rrr�rrr�r�r�rcs	&        r�:test_file_modified_after_execution_with_multiple_instances�FPdbTestCase.test_file_modified_after_execution_with_multiple_instances�s9������
��
�(�C�
 �
 �A�
�G�G�H�O�O�F�+�,�!����	�(�(�(�3����	�(�(�-�8��~�~�x�(��
�
�
��!��� �o�o�!���A����A�%7��A�
�
���(�(����H�)=�>�I�F�
��0�0�E�L�L��0��������!�,��
�
�j�&�)��
�
�l�F�+�#!�
 �
 ��

�
�s#�&F
�='F!�
F	�F	�!F1	�*F1	c��QoQoUOV2vq4UOQU2UOQU2UOQU2P!)z�
            import random
            # Any code with a source to step into so this script is not checked
            # for changes when it's being changed
            random.randint(1, 4)
            print("hello")
        aL
            ll
            n
            s
            filename = $_frame.f_back.f_code.co_filename
            def change_file(content, filename):
                with open(filename, "w") as f:
                    f.write(f"print({content})")

            change_file('world', filename)
            restart
            ll
        �hello�worldrGr�r�s&    r�/test_file_modified_after_execution_with_restart�;PdbTestCase.test_file_modified_after_execution_with_restart�sR�������,�,�V�>����
�
�g�v�&��
�
�g�v�&�	
����V�,rc�Z�QoQoUOV2vq4UOQU2P!)zZ
            def foo():
                raise ValueError("foo")
            foo()
        zX
            continue
            restart
            continue
            quit
        �
Restartingrar�s&    r�test_post_mortem_restart�$PdbTestCase.test_post_mortem_restart
s2�������,�,�V�>����
�
�l�F�+rc���QUm[OUO2UOQ*oUOQ*oUOQ*oUO[OUO2[O
UO2[
UQ29^tt^2oUO[OQ22PPP2[
UQ29^tt^2oUO[OQ22PPP2[
UQ29^tt^2oUO[OQ22PPP2QoUOQ	UO,U2vqgSO[9PIc*Q
UO22D%fJP	L	P
LQ
UO222U2SO[9PIc*QUO22D%fJP	L	P
LQUO2222SO[9PIc6QUO22D%fJP	2P!	P
2P!QUO2222P!)%fhCK�9h)%fhCK�9h)%fhCK�9h)
rrr�
/module.pyr�6
                top_var = "VAR from top"
            z�
                from . import top_var
                from .module import var
                from . import module
                pass # We'll stop here and print the vars
            zY
                var = "VAR from module"
                var2 = "second var"
            zz
            b 5
            c
            p top_var
            p var
            p module.var2
            quit
        r�c3�8�SF �DoQU7w�	J
	P!3h�zVAR from moduler0r�s& rr��4PdbTestCase.test_relative_imports.<locals>.<genexpr>?rr�c3�8�SF �DoQU7w�	J
	P!3h)zVAR from topr0r�s& rr�r_@s��9L���9L�A�N�a�/�9L�r�c3�8�SF �DoQU7w�	J
	P!3h)z
second varr0r�s& rr�r_As��7J���7J�!�L�A�-�7J�r��rrr�r�r�rrrrrr�r�r�r��rrr�module_filerr�r�rcs&       r�test_relative_imports�!PdbTestCase.test_relative_importss��#�������)�)�*��$�$�~�5�	��$�$�~�5�	��&�&��5�����	�(�(�$�*:�*:�;�
����!�!�"�
�)�S�
!�
!�Q�
�G�G�H�O�O�%��
�"��)�S�
!�
!�Q�
�G�G�H�O�O�%��
�"��+�s�
#�
#�q�
�G�G�H�O�O�%��
�$�
���M�M�4��)9�)9�":�H�E�	�������P�F�<M�<M�<O�P����P�F�<M�<M�<O�P�P�RX�Y������M��9J�9J�9L�M����M��9J�9J�9L�M�M�N������K�v�7H�7H�7J�K���L��L��K�v�7H�7H�7J�K�K�L�7"�
!�
!��"�
!�
!��$�
#�
#�s6�&J=�&K�&K%�=K	�K	�K"	�K"	�%K6	�.K6	c�l�QUm[OUO2UOQ*oUOQ*oUOQ*oUO[OUO2[O
UO2[
UQ29^tt^2oUO[OQ22PPP2[
UQ29^tt^2oUO[OQ22PPP2[
UQ29^tt^2oUO[OQ22PPP2QoUOQ	UOQ
*,U2vqgSO[9PIc*QUO22D%fJP	L	P
LQUO222U2P!)%fhCK9h)%fhK�9h)%fhK�9h)rz	/runme.pyrr[rr\zl
                from . import module
                pass # We'll stop here and print the vars
            z5
                var = "VAR from module"
            zQ
            b 3
            c
            p module.var
            quit
        r�z.runmec3�8�SF �DoQU7w�	J
	P!3hr^r0r�s& rr��DPdbTestCase.test_relative_imports_on_plain_module.<locals>.<genexpr>`rr�rbrcs&       r�%test_relative_imports_on_plain_module�1PdbTestCase.test_relative_imports_on_plain_moduleCs���#�������)�)�*��$�$�{�2�	��$�$�~�5�	��&�&��5�����	�(�(�$�*:�*:�;�
����!�!�"�
�)�S�
!�
!�Q�
�G�G�H�O�O�%��
�"��)�S�
!�
!�Q�
�G�G�H�O�O�%��
�"�
�+�s�
#�
#�q�
�G�G�H�O�O�%��
�$����M�M�4��)9�)9�H�)D�"E�x�P�	�������P�F�<M�<M�<O�P����P�F�<M�<M�<O�P�P�RX�Y�)"�
!�
!��"�
!��
$�
#�s6�&G<�&H�&H#�<H
	�H
	�H 	�H 	�#H3	�,H3	c��QO,QN2oUOQUQ*2vq#UOUO2Q*,QN2P!)r��pass�r�NN)zprint(]zdebug print(zdebug doesnotexist�c)
r�zU(Pdb) *** SyntaxError: closing parenthesis ']' does not match opening parenthesis '('�!(Pdb) ENTERING RECURSIVE DEBUGGERz%*** SyntaxError: '(' was never closed�LEAVING RECURSIVE DEBUGGERrpz> <string>(1)<module>()z9((Pdb)) *** NameError: name 'doesnotexist' is not definedrq�(Pdb) �r2rr�r�)rr�r�rcs&   r�test_errors_in_command�"PdbTestCase.test_errors_in_commandbsR���9�9�
����'�'���4��@�	������*�*�,�R�0�3
�	rc�:`�U1QkoUQQ2UQQ2P!)c��:�QOQU0Q,2oROQUQ*2vq4ROUO2Q*QQUQU0Q,2P!)	r�zrun �qrmrnr�z(Pdb) *** Cannot run z: rrrs)�bad_arg�msgr�r�rcrs&&   �r�check�*PdbTestCase.test_issue34266.<locals>.check}sv����y�y��w�i� ��"��H��+�+�F�H�t�O�D�I�F����V�.�.�0��4��'��y��3�%�8��7�
r�\zNo escaped character�"zNo closing quotationr0)rr{sf r�test_issue34266�PdbTestCase.test_issue34266{s ���
	�	�d�*�+�
�c�)�*rc��[OQ2oQo[O29^tt^2oQ[O
O
U20oUOV2vqVUOUOQ2]*OQ2U2PPP2P!)%fhP!9h)�Q
            import sys
            print('sys.path[0] is', sys.path[0])
        �c
q�(Pdb) sys.path[0] is r�r")rrrr�r�r/�realpathrr�r=�rstrip)rrr�r�r"r�r�s&      r�test_issue42384�PdbTestCase.test_issue42384�s������"�
����
�
�
�
!�
!�S�.�r�w�w�/?�/?��/D�.E�F�H�!�0�0��B�N�F����V�\�\�$�/��2�9�9�$�?��J�"�
!�
!�
!�s�A-B.�.B?	�7B?	c	��[OQ2oQo[O29^tt^2o[O
O
U2o[O
OUQ2o[O
OUQ2oQU0o[OU2[[O
OUQ2Q29^tt^2oUOU2PPP2[OU2[O[O
OUQ2[O
OUQ22UO[O
OQQ2,U2vq�UOUOQ2]*OQ2U2PPP2P!)%fhK�9h)%fhP!9h)	r�r��dir_one�dir_twor��foo.pyrr�r")rrrr�r�r/r�r2rrr�symlinkr�r�r=r�)
rrr�r�r�r�r"rr�r�s
&         r�test_issue42384_symlink�#PdbTestCase.test_issue42384_symlink�sT�����"�
����
�
�
�
!�
!�S��'�'�"�"�3�'�C��g�g�l�l�3�	�2�G��g�g�l�l�3�	�2�G�.�w�i�8�H��H�H�W���b�g�g�l�l�7�H�5�s�;�;�q������<��H�H�W���J�J�r�w�w�|�|�G�X�6������W�h�8W�X�!�]�]�B�G�G�L�L��H�,M�+N�PX�Y�N�F����V�\�\�$�/��2�9�9�$�?��J�"�
!�<�;��"�
!�
!�s1�B-G.�$G	�6CG.�G+
�$G+
�&G.�.G?	�7G?	c�@�[OQ2oQo[O29^tt^2oUO	VQQ-Q5vqEQ[
OOU20oUOVd2PPP2P!)%fhP!9h)zk
            import sys
            import random
            print('sys.path[0] is', sys.path[0])
        zc
�PYTHONSAFEPATHr)r�zsys.path[0] is )	rrrr�rr�r/r�r�)rrr�r�r�rc�
unexpecteds&      r�test_safe_path�PdbTestCase.test_safe_path�s������"�
��
���
�
�
!�
!�S��+�+�F�IY�[^�H_�+�`�I�F�*�2�7�7�+;�+;�C�+@�*A�B�J����Z�0�	"�
!�
!�
!�s�AB�B	�B	c	�^�[O29^tt^2o[QQ29^tt^2o[OQ2oUOU2PPP2[OOUQ2o[OU2[O[OOUQ22[OOUQ2o[UQ29^tt^2oUOQ2PPP2UOQ,Q2vqgQoUOUOQ2]*OQ2U2PPP2P!)%fhCK!9h)%fhK|9h)%fhP!9h)	r�rz�
                    print('The correct file was executed')

                    import os
                    os.chdir("subdir")
                �subdirz$print("The wrong file was executed")zc
c
qz#(Pdb) The correct file was executedr�r")rr�rrrrr�r/r2rr�r�r=r�)	rr�r�sr��
wrong_filer�r�r"s	&        r�test_issue42383�PdbTestCase.test_issue42383�s$��
�
�
�
!�
!�S��h��$�$���O�O�%�������
�%��W�W�\�\�#�x�0�F��H�H�V���H�H�R�W�W�\�\�&�(�3�4������f�h�7�J��j�#�&�&�!����>�?�'�"�]�]�H�:�y�A�N�F�<�H����V�\�\�$�/��2�9�9�$�?��J�)"�
!�$�$�$��'�&��"�
!�
!�sN�F�(E4	�B&F�F	�AF�4F
�=F
�?	F�F
�F
�F�F,	�$F,	c��Qo[OQ2oUOV2vq4UOU2P!)z�            def func():
                def inner(v): pass
                inner(
                    42
                )
            func()
        zj
            break func
            continue
            next
            next
            jump 2
        )rrr�assertFalser�s&    r�test_gh_94215_crash�PdbTestCase.test_gh_94215_crash�s@�����?�?�$�
���,�,�V�>������� rc��QoQoQoQo[QQ29^tt^2oUO[OU22PPP2[QQ29^tt^2oUO[OU22PPP2UO	[
OQ2UO	[
OQ2V41FDQoUOQ,U2vqxUOQUQ2UOQ	UQ
2UOQUQ2JS	P!)%fhK�9h)%fhK�9h)
za
        def func():
            x = "Sentinel string for gh-93696"
            print(x)
        aL
        import os
        import sys

        def _create_fake_frozen_module():
            with open('gh93696.py') as f:
                src = f.read()

            # this function has a co_filename as if it were in a frozen module
            dummy_mod = compile(src, "<frozen gh93696>", "exec")
            func_code = dummy_mod.co_consts[0]

            mod = type(sys)("gh93696")
            mod.func = type(lambda: None)(func_code, mod.__dict__)
            mod.__file__ = 'gh93696.py'

            return mod

        mod = _create_fake_frozen_module()
        mod.func()
        zz
            break 20
            continue
            step
            break 4
            list
            quit
        z~
            break 20
            continue
            step
            break 4
            longlist
            quit
        z
gh93696.pyrzgh93696_host.pyz"x = "Sentinel string for gh-93696"zSentinel statement not foundz4 Bzbreakpoint not foundz-> def func():zstack entry not found)	rrrrr�rr�r�rN)	r�
frozen_src�host_program�
commands_list�commands_longlistrr�r�rcs	&        r�test_gh_93696_frozen_list�%PdbTestCase.test_gh_93696_frozen_list�s
���
�
��*�
����,��
$�
$��
�G�G�H�O�O�J�/�0�%��#�S�
)�
)�Q�
�G�G�H�O�O�L�1�2�*�	
���	�(�(�,�7����	�(�(�*;�<�'�:�H��
�
�'8�&9�8�D�I�F��M�M�>��Hf�g��M�M�%��)?�@��M�M�*�F�4K�L�	;�%�
$��*�
)�s#�&D)� &D<�)D9	�2D9	�<E	�E	c��PoQoUOV2vq4UOQU2UOV2vq4UOQU2P!)r8r�z
main.py(0)z__main__.py(0))rrNrrbs&    r�test_empty_file�PdbTestCase.test_empty_file*sO�������'�'��9�	���
�
�l�F�+��'�'��9�	���
�
�&��/rc�X�[OO[OO[2Q2o[O
U2FDLoUO
Q2%fJUO[OOV2,Q2JN	P!)�encoded_modulesz.pyrx)r�r/r2�dirnamero�listdir�endswithr�)r�
script_dirrs&  r�test_non_utf8_encoding�"PdbTestCase.test_non_utf8_encoding4sf���W�W�\�\�"�'�'�/�/�(�";�=N�O�
��
�
�:�.�H�� � ��'�'��
�
�r�w�w�|�|�J�A�B�C�H�/rc	�F�[O29^tt^2o[O[OOUQ22[OQ2o[[OOUQQ2Q29^tt^2oUOU2PPP2[O[OOUQ2[OOUQ22UO[OOUQ2,QO,QN22vqEUOQU2UOQU2PPP2P!)%fhK�9h)%fhP!9h)	�sourcezg
                def f(x):
                    return x + 1
                f(21 + 21)
                z__main__.pyrz
zipapp.pyzr��42zreturn x + 1)zb frozp xrx)rr�r�rr/r2rrrr�zipapp�create_archiver�rN)rr�rrr�rcs&     r�test_zipapp�PdbTestCase.test_zipapp:s��
�
�
�
!�
!�X��H�H�R�W�W�\�\�(�H�5�6��_�_���F��b�g�g�l�l�8�X�}�E�s�K�K�q������L��!�!�"�'�'�,�,�x��"B�"$�'�'�,�,�x��"F�
H��
�
�r�w�w�|�|�H�l�'K�&L�d�i�i�Y�O��I�F�
�M�M�$��'��M�M�.�&�1�)"�
!�L�K��"�
!�
!�s1�A>F�E<	�/CF�<F
�F
�F�F 	�F 	c���[O29^tt^2o[O[OOUQ22[OQ2o[OQ[[OOUQ22Q02o[O[OOUQ2Q29^tt^2oUOQU2PPP2[[OOUQ2Q29^tt^2oUOU2PPP2UO[OOUQ2,QO,Q
N22vqgUOQ	U2PPP2P!)%fhK�9h)%fhK�9h)%fhP!9h)r�zE
                def bar():
                    pass
                z0
                import sys; sys.path.insert(0, z
zipmodule.zipzG)
                import foo
                foo.bar()
                rr�z	script.pyr�zbreak in bar)�nr�z	b foo.barroz&p f"break in {$_frame.f_code.co_name}"rx)rr�r�rr/r2rr�repr�zipfile�ZipFile�writestrrrr�rN)rr��	zipmoduler�zfrr�rcs&       r�test_zipimport�PdbTestCase.test_zipimportQsP��
�
�
�
!�
!�X��H�H�R�W�W�\�\�(�H�5�6� �����I��_�_�0�04�R�W�W�\�\�(�O�5\�0]�/^�_���F���������h��!H�#�N�N�RT����H�i�0�O��b�g�g�l�l�8�[�9�3�?�?�1������@��
�
�r�w�w�|�|�H�k�'J�&K�T�Y�Y�X�N��I�F�
�M�M�.�&�1�;"�
!� O�N��?�?��%"�
!�
!�sO�C	G�(F/	�;:G�5G	�AG�/F?
�8F?
�:G�G
�G
�
G�G&	�G&	c	��Qo[[OQQQ59^tt^2oUOU2PPP2UO	Q[OQ,Q2vq4UOQU2UO	QQ	Q[OQQ
,Q2vq4UOQU2UO	Q,Q]Q
5vq5UOQU2UO	QQ[O,Q]Q
5vq5UOQU2UO	[OQQ,Q2vq4UOQU2[O29^tt^2[QQQQ59^tt^2oUOU2PPP2UO	,QNQ2vq4UOQU2PPP2P!)%fhCK�9h)%fhKV9h)%fhP!9h)z*import sys; print(f'ARGS: {sys.argv[1:]}')rr�)�encoding�--z-foor�zARGS: ['-foo']r<r_r=rxzARGS: ['-c', 'foo']rzmissing script or module to runz-xzunrecognized arguments: -xr�zARGS: ['--', 'arg']zmymod.py)r��mymodr�r�)rrr�rr�rNr�)rrrr�rcr�s&     r�test_end_of_options_separator�)PdbTestCase.test_end_of_options_separatorqs���=��
�)�"�"�C�'�
:�
:�a�
�G�G�F�O�;��M�M�4��)9�)9�6�"B�F�K�	���
�
�&��/��M�M�4��T�9�;K�;K�T�SX�"Y�[^�_�	���
�
�+�V�4�����v�s���J����
�
�7��@�����d�I�4D�4D�'E�s�`a��b����
�
�2�F�;��M�M�9�#3�#3�T�5�"A�6�J�	���
�
�+�V�4�
�
�
�
!�
!��j�#��8�8�A������9��
�
�&B�F�K�I�F��M�M�/��8�	"�
!�;�
:�
:��9�8��"�
!�
!�sA�G�)G3�G 	�0G3�G	�G	� G0
�)G0
�+G3�3H	�<H	zCoroutine tests are skippedc�~�QoQoUOV2vq4UOUQ2UOQU2P!)zy
            import asyncio

            async def main():
                pass

            asyncio.run(main())
        zF
            break main
            continue
            quit
        zBreakpoint 1 at .*main\.py:5rm)rr�rNr�s&    r�test_async_break�PdbTestCase.test_async_break�sC������
�,�,�V�>�������!@�A��
�
�f�f�%rc�Z�QoQoUOV2vq4UOQU2P!)z�
            def foo():
                pass

            class C:
                def foo(self):
                    pass
        z2
            break C.foo
            quit
        z.The specified object 'C.foo' is not a functionrar�s&    r�test_issue_59000�PdbTestCase.test_issue_59000�s3�������,�,�V�>����
�
�F��Orc	�z�[O[OQQ-29^tt^2UO	[
O22PPP2[O[O-P	Q59^tt^2[OQ2oP	Um	[OQQU-29^tt^2UO[
O22PPP2PPP2P!)%fhK�9h)%fhK-9h)%fhP!9h)�PYTHON_BASIC_REPLr)�clearz_pyrepl.mainzsys.modules)r
�dictr�r�r�r��_pyrepl_available�types�
ModuleType�CAN_USE_PYREPLr�)r�mods& r�test_pyrepl_available�!PdbTestCase.test_pyrepl_available�s���
�Z�Z��
�
�%8�#�$>�
?�
?����S�2�2�4�5�@��Z�Z��
�
�B�d�
3�
3��"�"�>�2�C�!%�C�����M�N�C�+@�A�A����� 5� 5� 7�8�B�4�
3�@�
?��B�A��4�
3�
3�sA�%D�
?D)�%D	�1D)�D	�D	�D&
�D&
�!D)�)D:	�2D:	)r�rN)rNNNF)Ur'r(r)r*r��unittest�skipIfr�flags�	safe_pathr�rrr#r(r&r'r>rDrRrVr\rdr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrr%r(r1r5r9r>rCrIrLrOrTrXrerjrtrr�r�skip_unless_symlinkr�r�r�r�r�r�r�r�r�r��SKIP_CORO_TESTSr�r�r�r+r,r-s@rr�r��
s�����+��_�_�S�Y�Y�(�(�>�@��@��4�2A�F�9�
��5�
� <�
�"
�
&�'1�R=�2
M�V�*";�HG�8G�<'�B� F�)�<+�*�"*�$,�$*� 7�$J�B�?�A�;�R�
R�
*�2�
V�	
�O�� R�
G�
\�H�,�&/�&!,�F-�>,�"#M�JZ�>�2+� 
K��"�"�K�#�K�01�"K�.!�&:M�x0�I�2�.2�@9�*�_�_�_�&C�D�&�E�&�$P� 9�9rr�c�@`�\sQsQsnQsQsQsQsQsQs	Us
P!)�ChecklineTestsi�c�2�[O2P!r)�	linecache�
clearcachers&r�setUp�ChecklineTests.setUp�s�����rc�P�[O[O2P!rr�rs&rr��ChecklineTests.tearDown�r�rc�0�[[OQ29^tt^2oUOQ2PPP2[O
2oUO
UO[O]2]2P!)%fhKW9h�rz
print(123))rrr�rr�r�r��	checkline�rr�dbs&  r�test_checkline_before_debugging�.ChecklineTests.test_checkline_before_debugging�s]��
�)�"�"�C�
(�
(�A�
�G�G�L�!�)�
�W�W�Y��������i�&6�&6��:�A�>�)�
(�s�B�B	�B	c�P�[[OQ29^tt^2oUOQ2PPP2[O
2oUO
2UOUO[O]2]2P!)%fhKg9hr�)	rrr�rr�r��resetr�r�r�s&  r�test_checkline_after_reset�)ChecklineTests.test_checkline_after_reset�sf��
�)�"�"�C�
(�
(�A�
�G�G�L�!�)�
�W�W�Y��
���
�������i�&6�&6��:�A�>�	)�
(�s�B�B%	�B%	c
�0�[OQ2o[[OQ29^tt^2oUOU2PPP2[
UO22]*o[[229^tt^2[O2o[U2FD2oUOUO[OU22J4	PPP2P!)%fhK�9h)%fhP!9h)z\
            # Comment
            """ docstring """
            ''' docstring '''

        r)rrrrr�r�lenr�rrr�r��ranger�r�)rr�r�	num_linesr��linenos&     r� test_checkline_is_not_executable�/ChecklineTests.test_checkline_is_not_executable�s����O�O��

���)�"�"�C�
(�
(�A�
�G�G�A�J�)������'�!�+�	�
�X�Z�
(�
(�����B��	�*��� � ����i�.>�.>��!G�H�+�)�
(�)�
(��)�
(�
(�s$�C1�AD�1D	�:D	�D	�
D	r0)r'r(r)r*r�r�r�r�r�r+r,r-s@rr�r��s%�����+�?�?�I�Irr�c�`�\sQsQsn\O
\OOQ2Q
Qk2s	Qs
QsQsQs
QsQ	sUsP!)�
PdbTestInlinei�r�c	��UO[OQ2Qo[UQ29^tt^2oUO	[
OU22PPP2UO[OU2[
OU2o[OQ,oUd[OU*oL[Oo[OU[O[O[O-UAQQ-AQ59^tt^2o	U	O[ O#U22vq�PPP2[%W
[&2%c[&O)U
2LS
o
[%W[&2%c[&O)U2LSoUO+W	O,UQU
QU02V�1!)%fhCK�9h)%fhK�9h)r�rrr�r�r�r�r�)r�rr�rrrrr�rr�r�r�r�r�r�r�r�r�r�r�r�r�r�)rrr�r�r�rrr�r�r�r�r�s&&&&&       r�_run_script�PdbTestInline._run_script�sv��
	
���	�(�(�-�8���
�(�C�
 �
 �A�
�G�G�H�O�O�F�+�,�!����	�(�(�(�3��?�?�8�,���~�~�y�)��� ��*�*�y�(�C��*�*�C�
�
�
��!��� �o�o�!���:��:�0�'�:�
�
��!�-�-�c�j�j��.B�C�N�F�
�*4�F�E�)B�)B����f�%���)3�F�E�)B�)B����f�%�������O�O��.�v�h�j���I�	
�
�~��5!�
 �
 ��
�
�s#�&G�-'G0�G-	�%G-	�0H	�9H	c��QoQoUOV]Q5vq4UOQU2UOQU2UOQU2UOUP2UOUO	Q2]2P!)�4
            x = 1
            breakpoint()
        z[
            quit
            n
            p x + 1
            quit
            y
        r�2�Quit anywayr�)r�rNr�r�r�r�s&    r�	test_quit�PdbTestInline.test_quit�s�����
���)�)�&�PQ�)�R����
�
�c�6�"��
�
�m�V�,�	
����v�&������$�������m�4�a�8rc���QoQoUOV]Q5vq4UOUP2UOUOQ2]2UOQU2P!)rzM
            interact
            quit()
            q
            y
        rr�BdbQuit)r�r�r�r�r�s&    r�test_quit_after_interact�&PdbTestInline.test_quit_after_interactsc����
���)�)�&�PQ�)�R��������$�������m�4�a�8�����F�+rc��[OQ2oQoUOV2vq4UOQU2P!)z�
            import pdb
            def foo():
                x = 40 + 2
                pdb.Pdb(skip=['__main__']).set_trace()
            foo()
        z'
            p x
            c
        r�)rrr�rNrbs&    r�test_set_trace_with_skip�&PdbTestInline.test_set_trace_with_skip2s@�����"�
�����$�$�V�6�	���
�
�d�F�#rc��[OQ2oPoUOV2vq4UOQU2UO	UP2P!)z�
            import sys
            import pdb
            if "readline" in sys.modules:
                print("readline imported")
        zreadline imported)rrr�r�r�r�s&    r�test_readline_not_imported�(PdbTestInline.test_readline_not_importedHsQ�����"�
�����)�)�&�;������,�f�5������$rc��[OQ2oPoUOV2vq4UOQU2UO	UP2P!)z�
            import pdb
            import io

            input_data = io.StringIO("p 40 + 2\nc\n")
            pdb.Pdb(stdin=input_data).set_trace()
        r�)rrr�rNr�r�s&    r�test_alternate_stdin�"PdbTestInline.test_alternate_stdin^sL�����"�
�����)�)�&�;����
�
�d�F�#������$rr0r�)r'r(r)r*r�r�rr�r�r�rrrrrr+r,r-s@rr�r��sP����
�_�_�S�Y�Y�(�(�>�@��@��B9�4,�4$�,%�,%�%rr�c�`�\sQsQsnQsQsQsQs\O\
O2%(Q2Q2sQs
UsP!)	�PdbTestColorizeilc�J�[OUmQ[mP!)c��P	!)Tr0)�args�kwargss*,r�<lambda>�'PdbTestColorize.setUp.<locals>.<lambda>rs��r)�	_colorize�can_colorize�_original_can_colorizers&rr��PdbTestColorize.setUpns��&/�&<�&<��#�">�	�rc�2�UO[mP!r)rrrrs&rr��PdbTestColorize.tearDownts��!%�!<�!<�	�rc�L�[O2o[OUP	Q5oUO	QQ,Q5UOQUO
22[O2o[OUP
Q5oUO	QQ,Q5UOQUO
22[O2o[OUQ5oUO	QQ,Q5UOQUO
22P!)T�r��colorize�llro�r��rG)rIrr�r�r�rNrOr��rr�rPs&  r�test_code_display�!PdbTestColorize.test_code_displayws���������G�G�6�D�1��	���d�C�[��)��
�
�f�f�o�o�/�0�������G�G�6�E�2��	���d�C�[��)��������!2�3�������G�G�6�"��	���d�C�[��)��������!2�3rc���[O2o[OUP	Q5oUO	QQ,Q5UOQUO
22P!)Tr"rror%r&)rIrr�r�r�rNrOr's&  r�test_stack_entry� PdbTestColorize.test_stack_entry�sD��������G�G�6�D�1��	���c�3�Z��(��
�
�f�f�o�o�/�0r�pyrepl is not availablec��[O2oUOOoQQ,1QQ,1QQ,1QQ	Q
,1Q,QN1,oSFD�vqE[	UU2UP	Q5FDsvovvqxo	UOUOOU2UOUOOU2UOUOU	2Ju	J�	P!)�longlistz	!longlist�listzlist(za = 1)�strict))r��soft_keyword)�rr�op)�r�r3)r6�builtin)�r�r�r5))r4r3))rYrYr5)r9�number)
r�r��pyrepl_input�
gen_colors�zipr��span�start�end�tag)
rrPr<�
test_cases�bufferr"�
color_spanr?r@rAs
&         r�test_gen_colors�PdbTestColorize.test_gen_colors�s����G�G�I���^�^�.�.�
��2�3�4�
�>�*�+�
�.�/�0�
�*�N�;�<�
��
�

�
�!+��F�36�z�&�7I�8�\`�3a�3a�/�
�/�\�e�3�� � ����!6�!6��>�� � ����!4�!4�c�:�� � �����5�4b�!+r)r)r'r(r)r*r�r�r(r+r�r�r�r�rEr+r,r-s@rrrlsF����>�=�4� 1��_�_��.�.�0�0�2K�L�6�M�6rrc�(`�\sQsQsnQsQsUsP!)�TestREPLSessioni�c�b�]QHGoU2oQoUOO[O
U22[
U2oUOQU2UOQU2UOQU2UOQU2UOUO]2P!)r)�
spawn_replz�
            x = 'Spam'
            import pdb
            pdb.set_trace(commands=['x + "During"', 'q'])
            x + 'After'
        �
SpamDuringrr�	SpamAfter)�test.test_replrJrrrrrrNr�r�r�)rrJrP�
user_inputr�s&    r�$test_return_from_inline_mode_to_REPL�4TestREPLSession.test_return_from_inline_mode_to_REPL�s���	.��L���
�	
���
�
�h�o�o�j�1�2��Q����
�
�l�F�+������/��
�
�i��(��
�
�k�6�*�������q�)rr0)r'r(r)r*rOr+r,r-s@rrHrH�s����*�*rrHc�4`�\sQsQsn\Q2sQQksQsQsQs	Qs
QsQ	s\
O\O O#Q2Q
2Q2sQs\
O\O O#Q2Q
2Q
2sQsQsUsP!)�PdbTestReadlinei�c�l�[Q2oUOQ6Xc[OQ2gP!)�readline�editlinez)libedit readline is not supported for pdb)r	�backendr��SkipTest)�clsrTs& r�
setUpClass�PdbTestReadline.setUpClass�s3��!��,�����z�)��#�#�$O�P�P�*rc��Ue[OQQ-*o[VUQ5o[OQPUOQ22oU!)Nr�r�r�z\x1b\[[0-?]*[ -/]*[@-~]r�)r�r�r
�re�subr�)rrrr�r�s&&&& r�_run_pty�PdbTestReadline._run_pty�sL���;��*�*� 3�S�9�9�C���C�0�����2�B��
�
�g�8N�O���
rc�.�[O2!r)r�r�rs&rr��!PdbTestReadline._pyrepl_available�s���$�$�&�&rc���[OQ2oQoUOV2oUOQU2UOQU2UOQU2UOQU2P!)z�
            import pdb; pdb.Pdb().set_trace()
            # Concatenate strings so that the output doesn't appear in the source
            print('hello' + '!')
        s
co		ntin	
r��	conditionr_zhello!�rrr_rN�rrrr�s&   r�test_basic_completion�%PdbTestReadline.test_basic_completion�sb�����"�
��"�����v�-���
�
�j�&�)��
�
�k�6�*��
�
�j�&�)��
�
�h��'rc��[OQ2oQoUQ*
oUQ*
oUQ*
oUOV2oUOQU2UOQU2UOQU2P!)�S
            value = "speci"
            import pdb; pdb.Pdb().set_trace()
        �val	 + 'al'
sp val	 + 'es'
s$_fra	
�c
�special�speciesz$_framererfs&   r�test_expression_completion�*PdbTestReadline.test_expression_completion�sr�����"�
��"��
�$�$��
����
�������v�-���
�
�i��(��
�
�i��(��
�
�i��(rc��[OQ2oQoUQ*
oUOV2oUOQU2P!)rjspri	val	 + 'al')
rlrmrerfs&   r�test_builtin_completion�'PdbTestReadline.test_builtin_completion�sC�����"�
��(��	�������v�-���
�
�i��(rc���[OQ2oQoUQ*
oUQ*
oUOV2oUOQU2UOQU2P!)�7
            import pdb; pdb.Pdb().set_trace()
        s$_fram	
s$_frame.f_line	 + 100
rlz<frame at 0x�102rerfs&   r�test_convvar_completion�'PdbTestReadline.test_convvar_completion
s^�����"�
��
��	�,�,��	�������v�-���
�
�n�f�-��
�
�e�V�$rc��[OQ2oQoUQ*
oUOV2oUOQU2P!)z�
            def f():
                original = "I live Pythin"
                import pdb; pdb.Pdb().set_trace()
            f()
        sorig	.repl	('i', 'o')
rlz
I love Pythonrerfs&   r�test_local_namespace�$PdbTestReadline.test_local_namespace sC�����"�
��-��	�������v�-���
�
�o�v�.rzL\x08 does not remove the auto-indentation with GNU readline on this platformc��[OQ2oQoUQ*
oUQ*
oUQ*
oUQ*
oUQ*
oUQ*
oUQ*
oUQ	*
oUOV2oUOQ
U2P!)rus
def f(x):
s
if x > 0:
sx += 1
s	return x
s
else:
s
return -x
�
s
f(-21-21)
rlr�rerfs&   r�test_multiline_auto_indent�*PdbTestReadline.test_multiline_auto_indent2s������"�
����
����
����
����
�+�+��
����
����
����
�������v�-���
�
�d�F�#rc���[OQ2oQoUQ*
oUQ*
oUQ*
oUQ*
oUOV2oUOQU2P!)rusdef func():
sret	 40 + 2
r}sfun	()
rlr�rerfs&   r�test_multiline_completion�)PdbTestReadline.test_multiline_completionIsa�����"�
��!��	�"�"��
����
����
�������v�-���
�
�d�F�#rc���[OQ2o[OQ2O2oUOV2oUO	QU2UOQU2P!)ruz�            def func():
            a = 1
            	a += 1
            	a += 1
            	a += 1
            	if a > 0:
            a += 1
            return a

            func()
            c
        �5�Error)rrr�r_rNr�rfs&   r� test_multiline_indent_completion�0PdbTestReadline.test_multiline_indent_completion[sf�����"�
�����!�
��V�X�	����v�-���
�
�c�6�"�����&�)rc�V�[OQ2oQoUQ*
oUQ*
oUQ*
oUQ*
oUQ*
oUQ*
oUQ*
oUQ	*
oUOV2oUOQ
U2UOQU2UOQU2P!)
rjs	interact
sdisp	
rk�	def f():
s	return 42
r}sf() * 2
sexit()
rlz'disp' is not definedrm�84rerfs&   r�test_interact_completion�(PdbTestReadline.test_interact_completionys������"�
����
����
�"�"��
����
�!�!��
����
����
����
�������v�-���
�
�-�v�6��
�
�i��(��
�
�d�F�#rr0r)r6�	dragonflyr+)r'r(r)r*�classmethodrYr_r�rgrorrrwrzr�r�rr-r.r~r�r�r�r+r,r-s@rrRrR�s������Q��Q�	�'�(�$)�*)� %�&/�$�_�_�S�\�\�,�,�-N�O�5�6�$�6�$�($�$�_�_�S�\�\�,�,�-N�O�5�6�*�6�*�6$�$rrRr-c�@``�\sQsQsnU1QksQsQsQsUsU9s	!)�PdbTestReadlinePyREPLi�c�H:�[RU_V-[OAQ5!)r\)�superr_r�r�)rrr�	__class__s&&&�rr_�PdbTestReadlinePyREPL._run_pty�s ����w���>�b�j�j�>��B�Brc�~�[OQ2oQoUOV2oUOQU2P!)z^
            import pdb
            db = pdb.Pdb()
            print(db.pyrepl_input)
        r�PdbPyReplInputrerfs&   r�test_pyrepl_used�&PdbTestReadlinePyREPL.test_pyrepl_used�s9�����"�
��
�����v�-���
�
�&��/rc���[OQ2oQoUQ*
oUQ*
oUQ*
oUQ*
oUOV2oUOQU2P!)rur�sreturn xsOAODODxOBOB

s
f(40 + 2)
rlr�rerfs&   r�test_pyrepl_multiline_change�2PdbTestReadlinePyREPL.test_pyrepl_multiline_change�sb�����"�
����
����	�7�7��
����
�������v�-���
�
�d�F�#rr0)
r'r(r)r*r_r�r�r+r,�
__classcell__)r�r.s@@rr�r��s����C�0�$�$rr�c���]QHGoQoQoUO[OUUQ2UQ52UO[OUUQ2UQ52U!)r)�test_pdbc�`�U1QkoU!)c�6:�]PHoUOR2P!)r)r��set_default_backend)�testr�rVs& �rr��2load_tests.<locals>.setUpPdbBackend.<locals>.setUp�s�����#�#�G�,rr0)rVr�sf r�setUpPdbBackend�#load_tests.<locals>.setUpPdbBackend�s���	-��rc�>�[P2]PHoUOO2[O
O%c>[O
OO2P[O
m[O2P!r)
r�bdb�
Breakpoint�clearBreakpointsr�r�r��
stop_trace�gc�collect)r�r�s& rr��load_tests.<locals>.tearDown�s`��	�t�$�	����'�'�)��7�7�%�%�%��G�G�&�&�1�1�3�)-�C�G�G�&�	�
�
�r�
monitoring)r�r�r#)r�r��addTest�doctest�DocTestSuite)�loader�tests�patternr�r�r�s&&&   r�
load_testsr��sj�����2
�M�M�����!�,�/��	
��
�M�M�����!�*�-��	
���Lr�__main__)�rr�r�rIr�r�r]rr�rZr�r�rr�r�r��asyncio.eventsr�
contextlibrrrr�r�test.supportrr�test.support.import_helperr	�test.support.pty_helperr
r�test.support.script_helperr�
unittest.mockr
r�r�rr1r4r6r8r:r<r>r@rBrDrFrHrJrNrPrRrTrVrXrZr\r��no_siter^rarcrergrirkrmrorqrsrurwr�r�rw�__dict__rzr|r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r��original_pdb_settracer�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r��force_not_colorized_test_class�requires_subprocess�TestCaser�r�r��force_colorized_test_classrrHrRr�r�r�r�r'�mainr0rr�<module>r�s�����	�	�	�
�	�
��
�����
��1�1���6�4�6�2����*�6�*�"�8W�rB�H'�R �D,�\�B'�R@�D"�H�4�@	��a�F'�R=�~G�RY�v�*	��y�y����2�hY�xN�b5�pG�T"�J"�J�*b�J?�D0�f�4!�J���'�(���=�s�|�|�L�,�^+�\?�

� �,=�~=�~��	�.>	�@.	�`;	�z7�r<�|9�v�)�V.�`�.�`'�R1�f�B �D=�~&�T�
�
��%�N�0�8.�`C�J(�T�2�(�"�"�>�.�6�,1�f'�R1�f)�X	�'�'�����i9�(�#�#�i9��(�i9�X'"I�X�&�&�"I�J	����O%�H�%�%�O%��O%�d	�#�#�56�h�'�'�56�$�56�p	�'�'�����*�h�'�'�*��(�*�*	�'�'�����U$�h�'�'�U$��(�U$�p
���S�*�*�,�,�.G�H�$�O�$�I�$�B0�f�z���M�M�O�r

Youez - 2016 - github.com/yon3zu
LinuXploit