HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.7/test/__pycache__/test_epoll.cpython-37.opt-1.pyc
B

��g�#�
@s�dZddlZddlZddlZddlZddlZddlZeed�sHe�d��ye�	�Wn:e
k
r�Zzejejkr|e�d���WddZ[XYnXGdd�dej
�Zedkr�e��dS)	z
Tests for epoll wrapper.
�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)�	TestEPollcCs.t��|_|j�d�|j��|jg|_dS)N)z	127.0.0.1r)�socket�serverSocketZbindZlisten�connections)�self�r�+/usr/local/lib/python3.7/test/test_epoll.py�setUp+s

zTestEPoll.setUpcCsx|jD]}|��qWdS)N)r�close)rZsktrrr	�tearDown1szTestEPoll.tearDownc
Cs�t��}|�d�y|�d|j��df�Wn6tk
rd}z|�|jdtj	�Wdd}~XYn
Xt
d��|j��\}}|j�
||f�||fS)NFz	127.0.0.1�rz&Connect should have raised EINPROGRESS)rZsetblockingZconnectrZgetsockname�OSError�assertEqual�args�errnoZEINPROGRESS�AssertionErrorZacceptr�extend)r�client�e�serverZaddrrrr	�_connected_pair5s
&zTestEPoll._connected_pairc
Cs�yt�d�}Wn.tk
r<}ztt|���Wdd}~XYnX|�|��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�eprrrr	�test_createCs
zTestEPoll.test_createcCs�|�ttjddd�|�ttjd�|�ttjd�|�ttjd�|�ttjdg�|�ttji�|�ttjd�|�ttjd�|jttjdd�ttd	�r�|jttjd
d�dS)Nr
��Zfoorr���)�sizehintriD0)r)r!�	TypeErrorrrr"r#r)rrrr	�test_badcreateSs
zTestEPoll.test_badcreatec	CsPt�d��"}|�|��d�|�|j�WdQRX|�|j�|�t|j�dS)Nrr)	rrZ
assertGreaterr�assertFalser rr!r")rr$rrr	�test_context_managerbs
zTestEPoll.test_context_managercCsN|��\}}t�d�}z4|�|��tjtjB�|�|��tjtjB�Wd|��Xt�d�}z,|�|tjtjB�|�|tjtjB�Wd|��Xt�d�}z�|�t	|jt
�tjtjB�|�t	|jdtjtjB�|�t|jdtjtjB�|�t|jdtjtjB�|�|tjtjB�|�t|j|tjtjB�Wd|��XdS)Nr&ri')
rrr�registerr�EPOLLIN�EPOLLOUTrr!r*�objectr"r)rrrr$rrr	�test_addis2




zTestEPoll.test_addc
Cs�|��\}}t�d�}tj�|���}|�|��tjtjB�|�|��tjtjB�|�dd�}|�dd�}|�	t
|�d�|�	t
|�d�|��y|�dd�Wn8tk
r�}z|�	|j
dtj|�Wdd}~XYnX|�d�dS)Nr&r
�g�������?rz%epoll on closed fd didn't raise EBADF)rrrZfromfdrr.r/r0�pollr�lenrrrrZEBADFZfail)rrrr$Zep2�eventsZevents2rrrr	�test_fromfd�s
(zTestEPoll.test_fromfdcCs�|��\}}t�d�}|�|��tjtjBtjB�|�|��tjtjBtjB�t�	�}|�
dd�}t�	�}|�||dk||�|��|��tjf|��tjfg}|��|�
||�|j
ddd�}|�|�|�d�|�d�t�	�}|�
dd�}t�	�}|�||d	k�|��|��tjtjBf|��tjtjBfg}|��|�
||�|�|���|�|��tj�t�	�}|�
dd�}t�	�}|�||d	k�|��tjfg}|�
||�dS)
Nrr
r3g�������?g������@)ZtimeoutZ	maxeventssHello!sworld!!!g{�G�z�?)rrrr.rr/r0ZEPOLLET�time�	monotonicr4r,�sortr�send�
unregister�modify)rrrr$�nowr6�thenZexpectedrrr	�test_control_and_wait�sH





zTestEPoll.test_control_and_waitcCs,|�ttjd�|�tt��jdtj�dS)Nr(r)r!r"rrr.r/)rrrr	�test_errors�szTestEPoll.test_errorscCsl|��\}}|��}t�d�}|�|�t��}|�dd�}t��}|�||dk�|�	�|�
|�dS)Nrr
r3g{�G�z�?)rrrrr.r8r9r4r,rr<)rrr�fdr$r>r6r?rrr	�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�rbg�?)�open�__file__�
addCleanuprrrrZassertIsInstance�intr,r rr!r"r=r/r4r.r<)rZ	open_filerBrrrr	�
test_close�s
zTestEPoll.test_closecCs.t��}|�|j�|�t�|���d�dS)NF)rrrGrr�os�get_inheritabler)rrrrr	�test_fd_non_inheritablesz!TestEPoll.test_fd_non_inheritableN)�__name__�
__module__�__qualname__r
rrr%r+r-r2r7r@rArCrIrLrrrr	r)s&1r�__main__)�__doc__rrJrrr8Zunittestr#ZSkipTestrrrZENOSYSZTestCaserrM�mainrrrr	�<module>s$


_