Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib64/python3.5/test/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/test/__pycache__/test_file_eintr.cpython-35.opt-2.pyc



���]f*�@s�ddlZddlZddlZddlZddlZddlZddlZddlZddlZej	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�ej�dS)�N�posixztests requires a posix system.c@seZdZdd�Zdd�Zdd�Zdddd	d
�Zdd�Zd
Zdd�Z	dd�Z
dd�ZdS)�TestFileIOSignalInterruptcCs
d|_dS)N)�_process)�self�r�4/opt/alt/python35/lib64/python3.5/test_file_eintr.py�setUpszTestFileIOSignalInterrupt.setUpcCsH|jrD|jj�dkrDy|jj�Wntk
rCYnXdS)N)r�poll�kill�OSError)rrrr�tearDowns

z"TestFileIOSignalInterrupt.tearDowncCsd|jS)Nz=import %s as io ;infile = io.FileIO(sys.stdin.fileno(), "rb"))�modname)rrrr�_generate_infile_setup_code$sz5TestFileIOSignalInterrupt._generate_infile_setup_code�Tc
Cs�|jj�dkrHtjd�y|jj�Wntk
rGYnX|rw|jj�\}}||7}||7}|jd||j�|j�f�dS)Ng�������?z/Error from IO process %s:
STDOUT:
%sSTDERR:
%s
)	rr	�time�sleep�	terminater�communicate�fail�decode)r�why�stdout�stderrrZ
stdout_endZ
stderr_endrrr�fail_with_process_info-s



	z0TestFileIOSignalInterrupt.fail_with_process_infocCs�|j�}tjtjddd|dd|ddgdtjdtjd	tj�|_|jjjt	d
��}|d
kr�|j
dd	|�|jjj|�d}g}xw|s2t
j
|jjgffd
�\}}}|jjtj�|d7}|dkr�|jj�|jd�q�W|jjj�}|dkrd|j
dd	|�|jjdd�\}	}
|jjr�|j
d|jj|	|
dd�dS)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 signrg�������?���z,reader process failed to handle our signals.s$
zwhile awaiting signal�inputs
zexited rc=%drF)r�
subprocess�Popen�sys�
executable�PIPErr�read�lenrr�write�select�send_signal�signal�SIGINTr
r�readliner�
returncode)r�
data_to_write�read_and_verify_codeZinfile_setup_codeZ	worm_signZsignals_sentZrlist�_Zsignal_linerrrrr�
_test_readingHs<

	*


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))c	Cs/|jddd|jjdddd��dS)Nr,s
hello, world!r-�read_method_namer*�expectedshello, world!
)r/�_READING_CODE_TEMPLATE�format)rrrr�
test_readline�s
	z'TestFileIOSignalInterrupt.test_readlinec
Cs5|jddd|jjdddddg��dS)	Nr,shello
world!r-r0�	readlinesr1shello
sworld!
)r/r2r3)rrrr�test_readlines�s
	z(TestFileIOSignalInterrupt.test_readlinesc	CsZ|jddd|jjdddd��|jddd|jjdddd��dS)	Nr,shello
world!r-r0�readallr1s
hello
world!
r#)r/r2r3)rrrr�test_readall�s	
	z&TestFileIOSignalInterrupt.test_readallN)�__name__�
__module__�__qualname__rrrrr/r2r4r6r8rrrrrs	Irc@seZdZdZdS)�CTestFileIOSignalInterrupt�_ioN)r9r:r;r
rrrrr<�sr<c@seZdZdZdS)�PyTestFileIOSignalInterrupt�_pyioN)r9r:r;r
rrrrr>�sr>c@s(eZdZdd�Zdd�ZdS)�TestBufferedIOSignalInterruptcCsd|jS)Nziimport %s as io ;infile = io.open(sys.stdin.fileno(), "rb") ;assert isinstance(infile, io.BufferedReader))r
)rrrrr�sz9TestBufferedIOSignalInterrupt._generate_infile_setup_codec	Cs/|jddd|jjdddd��dS)Nr,shello
world!r-r0r#r1s
hello
world!
)r/r2r3)rrrrr8�s
	z*TestBufferedIOSignalInterrupt.test_readallN)r9r:r;rr8rrrrr@�sr@c@seZdZdZdS)�CTestBufferedIOSignalInterruptr=N)r9r:r;r
rrrrrA�srAc@seZdZdZdS)�PyTestBufferedIOSignalInterruptr?N)r9r:r;r
rrrrrB�srBc@s@eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�TestTextIOSignalInterruptcCsd|jS)Nzvimport %s as io ;infile = io.open(sys.stdin.fileno(), "rt", newline=None) ;assert isinstance(infile, io.TextIOWrapper))r
)rrrrr�sz5TestTextIOSignalInterrupt._generate_infile_setup_codec	Cs/|jddd|jjdddd��dS)Nr,s
hello, world!r-r0r*r1zhello, world!
)r/r2r3)rrrrr4�s
	z'TestTextIOSignalInterrupt.test_readlinec
Cs5|jddd|jjdddddg��dS)	Nr,s
hello
world!r-r0r5r1zhello
zworld!
)r/r2r3)rrrrr6�s
	z(TestTextIOSignalInterrupt.test_readlinesc	Cs/|jddd|jjdddd��dS)Nr,shello
world!r-r0r#r1z
hello
world!
)r/r2r3)rrrrr8�s
	z&TestTextIOSignalInterrupt.test_readallN)r9r:r;rr4r6r8rrrrrC�srCc@seZdZdZdS)�CTestTextIOSignalInterruptr=N)r9r:r;r
rrrrrD�srDc@seZdZdZdS)�PyTestTextIOSignalInterruptr?N)r9r:r;r
rrrrrE�srE�__main__)�osr&r(rr rZunittestr=r?Z
skipUnless�namerZTestCaser<r>r@rArBrCrDrEr9�mainrrrr�<module>s&.�