Your IP : 216.73.216.213


Current Path : /proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/
Upload File :
Current File : //proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/test_poll.cpython-34.pyo

�
f f��@sddlZddlZddlZddlZyddlZWnek
rZdZYnXddlZddlZddlm	Z	m
Z
mZmZyej
Wn!ek
r�ejd��YnXdd�ZGdd�dej�Zdd	�Zed
kre�ndS)�N)�TESTFN�run_unittest�reap_threads�cpython_onlyzselect.poll not definedcCs;g}x.|D]&\}}||@r
|j|�q
q
W|S)N)�append)�readyZflag�match�fd�mode�r�3/opt/alt/python34/lib64/python3.4/test/test_poll.py�find_ready_matchings

r
c@sveZdZdd�Zdd�Zdd�Zdd�Zed	d
��Ze	j
ed�edd
���Z
dS)�	PollTestscCs
tj�}d}d}t|�}g}g}i}i}x�t|�D]y}	tj�\}
}|j|
�|j|
tj�|j|tj	�|j
|
�|j
|�|||
<|
||<qIWg}x |r�|j�}
t|
tj	�}|std��nt
j|�}tj||�|j�}
t|
tj�}|sZtd��nt
j|�}
tj|
|�}|jt|�|�|j
|�tj||
�tj|
�|j||
�|j|
�|j||
�q�W|j||g|�dS)N�s This is a test.zno pipes ready for writingzno pipes ready for reading)�select�poll�len�range�os�pipe�register�modify�POLLIN�POLLOUTrr
�RuntimeError�randomZchoice�write�read�assertEqual�close�
unregister�remove)�self�pZ	NUM_PIPESZMSGZMSG_LENZreadersZwritersZr2wZw2r�iZrd�wrZbufsrZ
ready_writersZ
ready_readersZbufrrr�
test_poll1sN



	


zPollTests.test_poll1c
Cs�tj�\}}tj|�tj|�tj�}|j|�|j�}|j|d|tjf�tt	d�}|j
�}tj�}|j|�|j�}|j|dd|�|j�|j�}|j|d|tjf�tjt	�tj�}|jt
|j|�|jt
|j|�tj�}|jt|jd�tj�}Gdd�d�}Gdd�d�}	|jt
|j|�d�|jt
|j|	�d�dS)Nr�w�c@seZdZdS)z,PollTests.test_poll_unit_tests.<locals>.NopeN)�__name__�
__module__�__qualname__rrrr�Nopeosr,c@seZdZdd�ZdS)z.PollTests.test_poll_unit_tests.<locals>.AlmostcSsdS)N�filenor)r"rrrr-ssz5PollTests.test_poll_unit_tests.<locals>.Almost.filenoN)r)r*r+r-rrrr�Almostrsr.)rrrrrrrZPOLLNVAL�openrr-�unlink�assertRaises�	TypeErrorr �KeyError)
r"ZFDr'r#�r�fr	�pollsterr,r.rrr�test_poll_unit_testsOs6





zPollTests.test_poll_unit_testsc
Cs'd}tj|dddtjdd�}|j}tj�}|j|tj�x�dD]�}|j|�}|gkr�qYn|d\}}|tj@r�|j	�}	|	dkrY|j
d�qYqYqY|tj@r|j	�}	|	s�Pn|j|	d�qYqY|j
d|�qYW|j�dS)Nz?for i in 0 1 2 3 4 5 6 7 8 9; do echo testing...; sleep 1; done�shellT�stdout�bufsizer������@�>��
�z6error: pipe seems to be closed, but still returns datastesting...
z,Unexpected return value from select.poll: %s)rr;r<r=r>r?���)rC)
rCrCrCrCrCrCrCrCrCrC)rr;r<r=r>r?rCrCrCrCrCrCrCrCrCrC)
�
subprocess�Popen�PIPEr9rrrrZPOLLHUP�readline�failrr)
r"�cmd�procr#r6ZtoutZfdlistr	�flags�linerrr�
test_poll2|s0		


zPollTests.test_poll2cCs�tj�}|jd�|jt|jd�d	}|dkrQ|jd�n|jt|jdd
�|jt|jdd�|jt|jdd�|jt|jdd
�dS)Nr@�@�r(�zOverflow must have occurredrlrPrClrCl)rrrr1�
OverflowErrorrHr)r"r6�xrrr�
test_poll3�s
zPollTests.test_poll3cCs�ddlm}m}m}tj�}|jd�|jt|jd|d�|jt|j	d|d�|jt|j|d�|jt|j|d�dS)Nr)�	USHRT_MAX�INT_MAX�UINT_MAXr@)
Z	_testcapirTrUrVrrrr1rQr)r"rTrUrVr6rrr�test_poll_c_limits�s
zPollTests.test_poll_c_limitsz!Threading required for this test.cCsJtj�\}}|jtj|�|jtj|�g}xCtd�D]5}tj|�}|jtj|�|j|�qKWtj�}x!|D]}|j	|tj
�q�Wtjd|j�}|j
�zUtjd�x|D]}|j|�q�W|j	|tj�|jt|j�Wdtj|d�|j�XdS)NrA�targetg�?sspam)rrZ
addCleanuprr�duprrrrr�	threadingZThread�start�timeZsleepr rr1rr�join)r"r4r'Zrfdsr$r	r6�trrr�test_threaded_poll�s*



zPollTests.test_threaded_pollN)r)r*r+r&r7rMrSrrW�unittestZ
skipUnlessrZrr_rrrrrs1-rcCstt�dS)N)rrrrrr�	test_main�sra�__main__)rrDrrrZ�ImportErrorr\r`Ztest.supportrrrrr�AttributeErrorZSkipTestr
ZTestCaserrar)rrrr�<module>s&
"
�