Your IP : 216.73.216.52


Current Path : /opt/alt/python39/lib64/python3.9/test/__pycache__/
Upload File :
Current File : //opt/alt/python39/lib64/python3.9/test/__pycache__/test_epoll.cpython-39.opt-2.pyc

a

XC?h�$�
@s�ddlZddlZddlZddlZddlZddlZeed�sDe�d��ze��Wn<e	y�Z
z$e
jejkrve�d���WYdZ
[
n
dZ
[
00Gdd�dej�Z
edkr�e��dS)�N�epollztest works only on Linux 2.6zkernel doesn't support epoll()c@steZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�ZdS)�	TestEPollcCst�d�|_|jg|_dS)N)�	127.0.0.1r)�socketZ
create_server�serverSocket�connections��self�r
�4/opt/alt/python39/lib64/python3.9/test/test_epoll.py�setUp+szTestEPoll.setUpcCs|jD]}|��qdS)N)r�close)r	Zsktr
r
r�tearDown/s
zTestEPoll.tearDownc
Cs�t��}|�d�z|�d|j��df�Wn8tyf}z |�|jdtj	�WYd}~nd}~00t
d��|j��\}}|j�
||f�||fS)NFr�rz&Connect should have raised EINPROGRESS)rZsetblockingZconnectrZgetsockname�OSError�assertEqual�args�errnoZEINPROGRESS�AssertionErrorZacceptr�extend)r	�client�e�serverZaddrr
r
r�_connected_pair3s
*zTestEPoll._connected_pairc
Cs�zt�d�}Wn0ty>}ztt|���WYd}~n
d}~00|�|��dk|���|�|j�|��|�|j�|�	t
|j�ttd�r�t�dtj���tjtjd���tjdd���dS)N�r�
EPOLL_CLOEXEC�����flags)
�selectrrr�str�
assertTrue�fileno�closedr
�assertRaises�
ValueError�hasattrr)r	�eprr
r
r�test_createAs"
zTestEPoll.test_createcCs�|�ttjddd�|�ttjd�|�ttjd�|�ttjd�|�ttjdg�|�ttji�|�ttjd�|�ttjd�|jttjdd�ttd	�r�|jttjd
d�dS)Nr��Zfoor
r���)�sizehintriD0r)r$�	TypeErrorrrr%r&rrr
r
r�test_badcreateQs
zTestEPoll.test_badcreatecCsdt�d��,}|�|��d�|�|j�Wd�n1s<0Y|�|j�|�t|j�dS)Nrr)	rrZ
assertGreaterr"�assertFalser#r!r$r%)r	r'r
r
r�test_context_manager`s
*zTestEPoll.test_context_managercCsf|��\}}t�d�}z<|�|��tjtjB�|�|��tjtjB�W|��n
|��0t�d�}z4|�|tjtjB�|�|tjtjB�W|��n
|��0t�d�}z�|�t	|jt
�tjtjB�|�t	|jdtjtjB�|�t|jdtjtjB�|�t|jdtjtjB�|�|tjtjB�|�t|j|tjtjB�W|��n
|��0dS)Nr)ri')
rrr�registerr"�EPOLLIN�EPOLLOUTr
r$r-�objectr%r)r	rrr'r
r
r�test_addgs<



�
�
�
�
�zTestEPoll.test_addc
Cs|��\}}t�d���}tj�|���}|�|��tjtjB�|�|��tjtjB�|�dd�}|�dd�}|�	t
|�d�|�	t
|�d�Wd�n1s�0Yz|�dd�Wn:ty�}z"|�	|jdt
j|�WYd}~nd}~00|�d�dS)Nr)r�g�������?rz%epoll on closed fd didn't raise EBADF)rrrZfromfdr"r1r2r3�pollr�lenrrr�EBADFZfail)r	rrr'Zep2�eventsZevents2rr
r
r�test_fromfd�s.,zTestEPoll.test_fromfdcCs�|��\}}t�d�}|�|��tjtjBtjB�|�|��tjtjBtjB�t�	�}|�
dd�}t�	�}|�||dk||�|��tjf|��tjfg}|�t
|�t
|��|j
ddd�}|�|�|�d�|�d�t�	�}|�
dd�}t�	�}|�||d	k�|��tjtjBf|��tjtjBfg}|�t
|�t
|��|�|���|�|��tj�t�	�}|�
dd�}t�	�}|�||d	k�|��tjfg}|�||�dS)
Nrrr6g�������?)ZtimeoutZ	maxeventssHello!sworld!!!��?�{�G�z�?)rrrr1r"r2r3ZEPOLLET�time�	monotonicr7r/r�sortedZsendall�
unregister�modify)r	rrr'�nowr:�thenZexpectedr
r
r�test_control_and_wait�sH

�
��


�zTestEPoll.test_control_and_waitcCs,|�ttjd�|�tt��jdtj�dS)Nr+r)r$r%rrr1r2rr
r
r�test_errors�s�zTestEPoll.test_errorsc	Cs�|��\}}|��}t�d�}|�|�t��}|�dd�}t��}|�||dk�|�	�|�
t��}|�|�Wd�n1s�0Y|�
|jjtj�dS)Nrrr6r=)rr"rrr1r>r?r7r/r
r$rrArZ	exceptionrr9)	r	rr�fdr'rCr:rD�cmr
r
r�test_unregister_closed�s

(z TestEPoll.test_unregister_closedcCs�ttd�}|�|j�|��}t��}|�|��t�|�	|j
�|��|�|j
�|�t
|j�|��|�t
|j|tj�|�t
|jd�|�t
|j|tj�|�t
|j|�dS)N�rbr<)�open�__file__�
addCleanupr
r"rrZassertIsInstance�intr/r#r!r$r%rBr2r7r1rA)r	Z	open_filerGrr
r
r�
test_close�s
zTestEPoll.test_closecCs.t��}|�|j�|�t�|���d�dS)NF)rrrMr
r�os�get_inheritabler")r	rr
r
r�test_fd_non_inheritable�sz!TestEPoll.test_fd_non_inheritableN)�__name__�
__module__�__qualname__rrrr(r.r0r5r;rErFrIrOrRr
r
r
rr)s&/r�__main__)rrPrrr>Zunittestr&ZSkipTestrrrZENOSYSZTestCaserrS�mainr
r
r
r�<module>s"


]