Sindbad~EG File Manager
�
SԚgCF � �
� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl
mZmZ d dl
mZ d dlmZ d dlmZ d dlmZ d dlmZmZ d dlmZ ej Z G d � d
e� � Zd� Zd� Zd
� Z d� Z!d� Z"d� Z#d� Z$d� Z%d� Z&d� Z'd� Z(d� Z)d� Z*d� Z+d� Z, ej- d� � Z. e/de.j0 � � d� Z1d� Z2d� Z3d� Z4d � Z5d!� Z6d"� Z7esd#� Z8d$� Z9d%� Z:esd&� Z;d'� Z<esd(� Z=d)� Z>d*� Z?d+� Z@d,� ZAd-� ZBd.� ZCd/� ZDd0� ZEd1� ZFd2� ZG ejH � � G d3� d4ejI � � � � ZJ G d5� d6ejI � � ZK ejH � � G d7� d8ejI � � � � ZLd9� ZMeNd:k r ejO � � dS dS );� N)� ExitStack�redirect_stdout)�StringIO)�support)� os_helper)�
import_module)�run_pty� FakeInput)�patchc �$ � e Zd ZdZd� Zd� Zd� ZdS )�PdbTestInputz:Context manager that makes testing Pdb in doctests easier.c � � || _ d S �N)�input)�selfr s �*/usr/local/lib/python3.11/test/test_pdb.py�__init__zPdbTestInput.__init__ s
� ���
�
�
� c �� � t j | _ t | j � � t _ t t d� � rt j � � nd | _ d S )N�gettrace)�sys�stdin�
real_stdinr
r �hasattrr �
orig_trace�r s r � __enter__zPdbTestInput.__enter__ s@ � ��)����d�j�)�)�� �,3�C��,D�,D�N�#�,�.�.�.�$����r c �l � | j t _ | j rt j | j � � d S d S r )r r r r �settrace)r �excs r �__exit__zPdbTestInput.__exit__% s7 � ��O�� ��?� *��L���)�)�)�)�)� *� *r N)�__name__�
__module__�__qualname__�__doc__r r r! � r r r
r
sJ � � � � � �D�D�� � �O� O� O�
*� *� *� *� *r r
c � � dS )a1 This tests the custom displayhook for pdb.
>>> def test_function(foo, bar):
... import pdb; pdb.Pdb(nosigint=True, readrc=False).set_trace()
... pass
>>> with PdbTestInput([
... 'foo',
... 'bar',
... 'for i in range(5): print(i)',
... 'continue',
... ]):
... test_function(1, None)
> <doctest test.test_pdb.test_pdb_displayhook[0]>(3)test_function()
-> pass
(Pdb) foo
1
(Pdb) bar
(Pdb) for i in range(5): print(i)
0
1
2
3
4
(Pdb) continue
Nr&