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_epoll.cpython-310.opt-2.pyc

o

0�i�$�
@s�	ddlZddlZddlZddlZddlZddlZeed�s#e�d��ze��Wne	yAZ
ze
jejkr<e�d���dZ
[
wwGdd�dej�Z
edkrUe��dSdS)�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
�6/opt/alt/python310/lib64/python3.10/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�Wt
d��ty6}z|�|jdtj	�WYd}~nd}~ww|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�}Wnty}ztt|���d}~ww|�|��dk|���|�|j�|��|�|j�|�	t
|j�ttd�r_t�dtj���tjtjd���tjdd���dSdS)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�dSdS)Nr��Zfoor
r���)�sizehintriD0r)r$�	TypeErrorrrr%r&rrr
r
r�test_badcreateQs
�zTestEPoll.test_badcreatecCsdt�d��}|�|��d�|�|j�Wd�n1swY|�|j�|�t|j�dS)Nrr)	rrZ
assertGreaterr"�assertFalser#r!r$r%)r	r'r
r
r�test_context_manager`s�zTestEPoll.test_context_managercCsd|��\}}t�d�}z|�|��tjtjB�|�|��tjtjB�W|��n|��wt�d�}z|�|tjtjB�|�|tjtjB�W|��n|��wt�d�}zS|�t	|jt
�tjtjB�|�t	|jdtjtjB�|�t|jdtjtjB�|�t|jdtjtjB�|�|tjtjB�|�t|j|tjtjB�W|��dS|��w)Nr)ri')
rrr�registerr"�EPOLLIN�EPOLLOUTr
r$r-�objectr%r)r	rrr'r
r
r�test_addgs<



�
�
�
�
�zTestEPoll.test_addc
Cs
|��\}}t�d��D}tj�|���}|�|��tjtjB�|�|��tjtjB�|�dd�}|�dd�}|�	t
|�d�|�	t
|�d�Wd�n1sRwYz|�dd�Wnty}}z|�	|jdt
j|�WYd}~dSd}~ww|�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�n1sDwY|�
|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,


��]�