Your IP : 216.73.216.196


Current Path : /opt/alt/python310/lib64/python3.10/test/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/test/__pycache__/test_file_eintr.cpython-310.opt-2.pyc

o

0�ir*�@sddlZddlZddlZddlZddlZddlZddlZddlZddlZe�	ej
dkd�Gdd�d��ZGdd�deej�Z
Gdd	�d	eej�ZGd
d�de�ZGdd
�d
eej�ZGdd�deej�ZGdd�de�ZGdd�deej�ZGdd�deej�Zedkr�e��dSdS)�N�posixztests requires a posix system.c@sVeZdZdd�Zdd�Zdd�Z		dd	d
�Zdd�Zd
Zdd�Z	dd�Z
dd�ZdS)�TestFileIOSignalInterruptcCs
d|_dS�N)�_process��self�r�;/opt/alt/python310/lib64/python3.10/test/test_file_eintr.py�setUps
zTestFileIOSignalInterrupt.setUpcCsB|jr|j��durz|j��WdStyYdSwdSdSr)r�poll�kill�OSErrorrrrr	�tearDowns��z"TestFileIOSignalInterrupt.tearDowncC�	d|jS)Nz=import %s as io ;infile = io.FileIO(sys.stdin.fileno(), "rb")��modnamerrrr	�_generate_infile_setup_code$s�z5TestFileIOSignalInterrupt._generate_infile_setup_code�TcCs~	|j��durt�d�z|j��Wn	tyYnw|r/|j��\}}||7}||7}|�d||��|��f�dS)Ng�������?z/Error from IO process %s:
STDOUT:
%sSTDERR:
%s
)	rr�time�sleepZ	terminater
�communicate�fail�decode)rZwhy�stdout�stderrrZ
stdout_endZ
stderr_endrrr	�fail_with_process_info-s
�
�z0TestFileIOSignalInterrupt.fail_with_process_infocCs8	|��}tjtjddd|dd|ddgtjtjtjd�|_|jj�t	d��}|dkr7|j
d	|d
�|jj�|�d}g}|smt
�
|jjgddd
�\}}}|j�tj�|d7}|dkrk|j��|�d�|rD|jj��}|dkr~|j
d|d
�|jjdd�\}	}
|jjr�|j
d|jj|	|
dd�dSdS)Nz-uz-czXimport signal, sys ;signal.signal(signal.SIGINT, lambda s, f: sys.stderr.write("$\n")) ;z ;z"sys.stderr.write("Worm Sign!\n") ;zinfile.close())�stdinrrsWorm Sign!
zwhile awaiting a sign)rrrg�������?���z,reader process failed to handle our signals.s$
zwhile awaiting signal�
)�inputzexited rc=%dF)r)r�
subprocess�Popen�sys�
executable�PIPErr�read�lenrr�write�selectZsend_signal�signal�SIGINTrr�readliner�
returncode)r�
data_to_write�read_and_verify_codeZinfile_setup_codeZ	worm_signZsignals_sentZrlist�_Zsignal_linerrrrr	�
_test_readingHsb�������	��

�	�

��z'TestFileIOSignalInterrupt._test_readingz�got = infile.{read_method_name}() ;expected = {expected!r} ;assert got == expected, ("{read_method_name} returned wrong data.\n""got data %r\nexpected %r" % (got, expected))cC� 	|jd|jjddd�d�dS)N�
hello, world!r,shello, world!
�Zread_method_nameZexpected�r.r/�r1�_READING_CODE_TEMPLATE�formatrrrr	�
test_readline���
�z'TestFileIOSignalInterrupt.test_readlinecC�$	|jd|jjdddgd�d�dS)N�hello
world!�	readlinesshello
sworld!
r4r5r6rrrr	�test_readlines���
�z(TestFileIOSignalInterrupt.test_readlinescCs:	|jd|jjddd�d�|jd|jjddd�d�dS)Nr<�readall�
hello
world!
r4r5r&r6rrrr	�test_readall�s���
�z&TestFileIOSignalInterrupt.test_readallN)rrT)�__name__�
__module__�__qualname__r
rrrr1r7r9r>rBrrrr	rs	
�I�rc@�eZdZdZdS)�CTestFileIOSignalInterrupt�_ioN�rCrDrErrrrr	rG��rGc@rF)�PyTestFileIOSignalInterrupt�_pyioNrIrrrr	rK�rJrKc@seZdZdd�Zdd�ZdS)�TestBufferedIOSignalInterruptcCr)Nziimport %s as io ;infile = io.open(sys.stdin.fileno(), "rb") ;assert isinstance(infile, io.BufferedReader)rrrrr	r�s�z9TestBufferedIOSignalInterrupt._generate_infile_setup_codecCr2)Nr<r&rAr4r5r6rrrr	rB�r:z*TestBufferedIOSignalInterrupt.test_readallN)rCrDrErrBrrrr	rM�srMc@rF)�CTestBufferedIOSignalInterruptrHNrIrrrr	rN�rJrNc@rF)�PyTestBufferedIOSignalInterruptrLNrIrrrr	rO�rJrOc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�TestTextIOSignalInterruptcCr)Nz�import %s as io ;infile = io.open(sys.stdin.fileno(), encoding="utf-8", newline=None) ;assert isinstance(infile, io.TextIOWrapper)rrrrr	r�s�z5TestTextIOSignalInterrupt._generate_infile_setup_codecCr2)Nr3r,zhello, world!
r4r5r6rrrr	r9�r:z'TestTextIOSignalInterrupt.test_readlinecCr;)Ns
hello
world!r=zhello
zworld!
r4r5r6rrrr	r>�r?z(TestTextIOSignalInterrupt.test_readlinescCr2)Nr<r&z
hello
world!
r4r5r6rrrr	rB�r:z&TestTextIOSignalInterrupt.test_readallN)rCrDrErr9r>rBrrrr	rP�s
rPc@rF)�CTestTextIOSignalInterruptrHNrIrrrr	rQ�rJrQc@rF)�PyTestTextIOSignalInterruptrLNrIrrrr	rR�rJrR�__main__)�osr)r*r!r#rZunittestrHrLZ
skipUnless�namerZTestCaserGrKrMrNrOrPrQrRrC�mainrrrr	�<module>s.
 �