Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.9/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.9/test/__pycache__/test_poll.cpython-39.opt-1.pyc

a

��g��@s�ddlZddlZddlZddlZddlZddlZddlZddlmZm	Z	m
Z
z
ejWneyre�
d��Yn0dd�ZGdd�dej�Zedkr�e��dS)	�N)�TESTFN�reap_threads�cpython_onlyzselect.poll not definedcCs(g}|D]\}}||@r|�|�q|S)N)�append)�ready�flag�match�fd�mode�r�*/usr/local/lib/python3.9/test/test_poll.py�find_ready_matchings
r
c@s\eZdZdd�Zdd�Zdd�Zdd�Zed	d
��Ze	dd��Z
e�e
d
�e	dd���ZdS)�	PollTestscCsrt��}d}d}t|�}g}g}i}i}t|�D]Z}	t��\}
}|�|
�|�|
tj�|�|tj	�|�
|
�|�
|�|||
<|
||<q0g}|�r\|��}
t|
tj	�}|s�td��t
�|�}t�||�|��}
t|
tj�}|s�td��t
�|�}
t�|
|�}|�t|�|�|�
|�t�||
�t�|
�|�||
�|�|
�|�||
�q�|�||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�random�choice�write�read�assertEqual�close�
unregister�remove)�self�pZ	NUM_PIPESZMSGZMSG_LEN�readersZwritersZr2wZw2r�iZrd�wrZbufsrZ
ready_writersZ
ready_readers�bufrrr�
test_poll1sL







zPollTests.test_poll1c
Csht��\}}t�|�t�|�t��}|�|�|��}|�|d|tjf�tt	d��F}|�
�}t��}|�|�|��}|�|dd|�Wd�n1s�0Y|��}|�|d|tjf�t�t	�t��}|�t
|j|�|�t
|j|�t��}|�t|jd�t��}Gdd�d�}Gdd�d�}	|�t
|j|�d�|�t
|j|	�d�dS)Nr�w�c@seZdZdS)z,PollTests.test_poll_unit_tests.<locals>.NopeN)�__name__�
__module__�__qualname__rrrr�Nopeksr/c@seZdZdd�ZdS)z.PollTests.test_poll_unit_tests.<locals>.AlmostcSsdS)N�filenor)r#rrrr0osz5PollTests.test_poll_unit_tests.<locals>.Almost.filenoN)r,r-r.r0rrrr�Almostnsr1)rrr rrrr�POLLNVAL�openrr0�unlink�assertRaises�	TypeErrorr!�KeyError)
r#ZFDr*r$�r�fr	�pollsterr/r1rrr�test_poll_unit_testsLs4



2
zPollTests.test_poll_unit_testsc
Cs�d}tj|dtjdd�}|��|�|jddd�|j}t��}|�	|tj
�dD]�}|�|�}|gkrjqR|d\}}|tj@r�|��}	|	dkrR|�
d�qRqR|tj
@r�|��}	|	s�q�|�|	d�qRqR|�
d	|�qRdS)
Nz?for i in 0 1 2 3 4 5 6 7 8 9; do echo testing...; sleep 1; doneTr)�shell�stdout�bufsize)ri�i�i�i@i�>���r?r?r?r?r?r?r?r?r?�z6error: pipe seems to be closed, but still returns datastesting...
z,Unexpected return value from select.poll: %s)�
subprocess�Popen�PIPE�	__enter__�
addCleanup�__exit__r=rrrr�POLLHUP�readline�failr)
r#�cmd�procr$r:ZtoutZfdlistr	�flags�linerrr�
test_poll2xs4�



zPollTests.test_poll2cCs�t��}|�d�|�t|jd�d}|dkr8|�d�|�t|jdd�|�t|jdd�|�t|jdd�|�t|jdd�dS)N�l�zOverflow must have occurredrr?)rrrr5�
OverflowErrorrI�
ValueErrorr)r#r:�xrrr�
test_poll3�s

zPollTests.test_poll3cCs~ddlm}m}m}t��}|�d�|�t|jd|d�|�t|j	d|d�|�t|j|d�|�t|j|d�dS)Nr)�	USHRT_MAX�INT_MAX�UINT_MAXrO)
Z	_testcapirUrVrWrrrr5rQr)r#rUrVrWr:rrr�test_poll_c_limits�s
zPollTests.test_poll_c_limitsc
Cst��\}}|�tj|�|�tj|�g}td�D]&}t�|�}|�tj|�|�|�q4t��}|D]}|�	|tj
�qhtj|jd�}|�
�zRt�d�|D]}|�|�q�|�	|tj�|�t|j�Wt�|d�|��nt�|d�|��0dS)N�
)�targetg�?�spam)rrrEr r�duprrrrr�	threading�Thread�start�time�sleepr!rr5rr�join)r#r8r*Zrfdsr&r	r:�trrr�test_threaded_poll�s.


�zPollTests.test_threaded_pollz!Threading required for this test.cCs�dD]�}t��\}}t��}|�|tj�tj|j|fd�}|��|j	dd�|�
|���t�|d�|�	�|�
|���t�|�t�|�qdS)N)Ni���r?g�g��������g0��.�+�)rZ�argsg�������?)�timeoutr[)rrrrrrr]r^r_rbZ
assertTrue�is_aliverZassertFalser )r#Z
timeout_msr8r*r:Zpoll_threadrrr�!test_poll_blocks_with_negative_ms�s
z+PollTests.test_poll_blocks_with_negative_msN)r,r-r.r)r;rNrTrrXrrd�unittestZ
skipUnlessr]rhrrrrrs1,


r�__main__)rrArrr]r`riZtest.supportrrrr�AttributeErrorZSkipTestr
ZTestCaserr,�mainrrrr�<module>s 
M

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists