HEX
Server: Apache
System: Linux opal14.opalstack.com 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64
User: curbgloabal_opal (1234)
PHP: 8.1.29
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib64/python3.6/test/__pycache__/test_selectors.cpython-36.pyc
3


 \�B�@s�ddlZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
ddlZddlZddl
Z
ddl	mZ	yddlZWnek
r�dZYnXeed�r�ejZnejejdfdd�Zdd�ZGd	d
�d
ej�ZGdd�d�ZGd
d�de�ZGdd�de�Zejeed�d�Gdd�dee��Zejeed�d�Gdd�dee��Zejeed�d�Gdd�dee��Zejeed�d�Gdd �d ee��Zd!d"�Z e!d#k�r�e �dS)$�N)�support)�sleep)�	monotonic�
socketpaircCs�tj|||���}|jtjdf�|j�tj|||�}yD|j|j��|j�}x(|j�\}}||krl||fS|j�qPWWnt	k
r�|j��YnXWdQRXdS)Nr)
�socketZbindrZHOSTZlistenZconnectZgetsocknameZaccept�close�OSError)Zfamily�type�proto�l�cZcaddr�aZaddr�r�&/usr/lib64/python3.6/test_selectors.pyrscCs.g}x$|D]\}}||@r
|j|j�q
W|S)N)�append�fileobj)�ready�flag�match�key�eventsrrr�find_ready_matching*s
rc@s�eZdZdd�Zdd�Zdd�Zdd�Zeje	j
d	kd
�dd��Zd
d�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zejejdkd �d!d"��Zd#d$�Zejeed%�d&�d'd(��Zejeed%�d&�d)d*��Zd+S),�BaseSelectorTestCasecCs*t�\}}|j|j�|j|j�||fS)N)r�
addCleanupr)�self�rd�wrrrr�make_socketpair4s
z$BaseSelectorTestCase.make_socketpaircCs�|j�}|j|j�|j�\}}|j|tjd�}|j|tj�|j	|j
|�|j	|j|j��|j	|j
tj�|j	|jd�|jt|jdd�|jt|jdtj�|jt|j|tj�|jt|j|j�tj�dS)N�datari?B�
i����)�SELECTORrrr�register�	selectors�
EVENT_READZassertIsInstance�SelectorKey�assertEqualr�fd�filenorr�assertRaises�
ValueError�KeyError)r�srrrrrr�
test_register:sz"BaseSelectorTestCase.test_registercCs\|j�}|j|j�|j�\}}|j|tj�|j|�|jt	|jd�|jt	|j|�dS)Ni?B)
r rrrr!r"r#�
unregisterr(r*)rr+rrrrr�test_unregisterTs
z$BaseSelectorTestCase.test_unregistercCsv|j�}|j|j�|j�\}}|j�|j�}}|j|tj�|j|tj�|j�|j�|j	|�|j	|�dS)N)
r rrrr'r!r"r#�EVENT_WRITEr-)rr+rr�r�wrrr�test_unregister_after_fd_closecs
z3BaseSelectorTestCase.test_unregister_after_fd_close�posixzrequires posixcCs�|j�}|j|j�|j�\}}|j�|j�}}|j|tj�|j|tj�|j�\}}|j�|j�t	j
|j�|�t	j
|j�|�|jt	j|�|jt	j|�|j|�|j|�dS)N)r rrrr'r!r"r#r/�os�dup2r-)rr+rrr0r1Zrd2Zwr2rrr�(test_unregister_after_fd_close_and_reuseos
z=BaseSelectorTestCase.test_unregister_after_fd_close_and_reusecCsd|j�}|j|j�|j�\}}|j|tj�|j|tj�|j�|j�|j|�|j|�dS)N)	r rrrr!r"r#r/r-)rr+rrrrr�"test_unregister_after_socket_close�s
z7BaseSelectorTestCase.test_unregister_after_socket_closec	Cs6|j�}|j|j�|j�\}}|j|tj�}|j|tj�}|j	|j
|j
�|j||j|��|j
|�t�}t�}|j|tj|�}|j|tj|�}|j|j
|j
�|j	|j|j�|j||j|��|j|j|�|jt|jdtj�t�}tjj�|_tjj�|_
|j|tj|�|j|jj�|j|j
j�dS)Ni?B)r rrrr!r"r#Zmodifyr/ZassertNotEqualrr%�get_keyr-�objectrr(r*�unittestZmockZMock�assertFalseZcalled)	rr+rrrZkey2Zd1Zd2Zd3rrr�test_modify�s.
z BaseSelectorTestCase.test_modifycCs�|j�}|j|j�|j�}|j�\}}|j|tj�|j|tj�|j�|j	t
|j|�|j	t
|j|�|j	t|j
|�|j	t|j
|�dS)N)r rr�get_maprr!r"r#r/r(�RuntimeErrorr8r*�__getitem__)rr+�mappingrrrrr�
test_close�szBaseSelectorTestCase.test_closecCsV|j�}|j|j�|j�\}}|j|tjd�}|j||j|��|j	t
|jd�dS)Nri?B)r rrrr!r"r#r%r8r(r*)rr+rrrrrr�test_get_key�sz!BaseSelectorTestCase.test_get_keycCs�|j�}|j|j�|j�\}}|j�}|j|�|jt|�d�|jt|�g�|j	|t
jd�}|j||�|j|||�|jt|�d�|jt|�|j
�g�|jt|j��|g�|jt��|dWdQRX|jt��||=WdQRXdS)Nrr�i?B)r rrrr=r;r%�len�listr!r"r#ZassertInr'�valuesr(r*�	TypeError)rr+rr�keysrrrr�test_get_map�s"
z!BaseSelectorTestCase.test_get_mapcCs�|j�}|j|j�|j�\}}|j|tj�|j|tj�}|j�}xD|D]<\}}|j	t
|tj��|j	|�|j|tjtjB@�qJW|j
|tjfg|�dS)N)r rrrr!r"r#r/�select�
assertTrue�
isinstancer$r;r%)rr+rrZwr_key�resultrrrrr�test_select�s

z BaseSelectorTestCase.test_selectcCsp|j�}|j|j�|j�\}}|�"}|j|tj�|j|tj�WdQRX|jt	|j
|�|jt	|j
|�dS)N)r rrrr!r"r#r/r(r>r8)rr+rrZselrrr�test_context_manager�sz)BaseSelectorTestCase.test_context_managercCsF|j�}|j|j�t|d�rB|j�}|jt|t��|j|d�dS)Nr'r)	r rr�hasattrr'rKrL�int�assertGreaterEqual)rr+r&rrr�test_filenos
z BaseSelectorTestCase.test_filenocCs�|j�}|j|j�d}d}t|�}g}g}i}i}x\t|�D]P}	|j�\}
}|j|
tj�|j|tj	�|j
|
�|j
|�|||
<|
||<q>Wg}x�|�rx|j�}
t|
tj	�}|s�|j
d�tj|�}|j|�x<td�D]&}	|j�}
t|
tj�}|r�Ptd�q�W|j
d�|j||g|�|d}
|
j|�}|jt|�|�|j
|�|j||
�|j|
�|j||
�q�W|j||g|�dS)N�s This is a test.zno sockets ready for writingrg�������?zno sockets ready for readingr)r rrrD�rangerr!r"r#r/rrJrZfail�randomZchoice�sendrr%Zrecvr-�remove)rr+ZNUM_SOCKETSZMSGZMSG_LENZreadersZwritersZr2wZw2r�irrZbufsrZ
ready_writersZ
ready_readersZbufrrr�
test_selectorsT








z"BaseSelectorTestCase.test_selectorZwin32z1select.select() cannot be used with empty fd setscCs,|j�}|j|j�|j|jdd�g�dS)Nr)Ztimeout)r rrr%rJ)rr+rrr�test_empty_selectDsz&BaseSelectorTestCase.test_empty_selectcCs|j�}|j|j�|j�\}}|j|tj�t�}|jdt	|j
d���|jdt	|j
d���|jt�|d�|j|�|j|tj
�t�}|j|j
d��|j|j
d��|jt�|d�t�}|j|j
d��t�}||}|jd|k�o�dkn|�dS)NrCrg�?g�������?g@���r\)r rrrr!r"r/�timer%rDrJ�
assertLessr-r#r;rK)rr+rr�tZt0Zt1Zdtrrr�test_timeoutMs&
z!BaseSelectorTestCase.test_timeout�alarmz%signal.alarm() required for this testcs�|j�}|j|j�|j�\}}Gdd�dt���fdd�}tjtj|�}|jtjtj|�zTtjd�|j|t	j
�t�}|j���|j
d�WdQRX|jt�|d�Wdtjd�XdS)	Nc@seZdZdS)zGBaseSelectorTestCase.test_select_interrupt_exc.<locals>.InterruptSelectN)�__name__�
__module__�__qualname__rrrr�InterruptSelectosrecs��dS)Nr)�args)rerr�handlerrsz?BaseSelectorTestCase.test_select_interrupt_exc.<locals>.handlerrC�g@r)r rrr�	Exception�signal�SIGALRMrar!r"r#r]r(rJr^)rr+rrrg�orig_alrm_handlerr_r)rer�test_select_interrupt_excgs
z.BaseSelectorTestCase.test_select_interrupt_exccCs�|j�}|j|j�|j�\}}tjtjdd��}|jtjtj|�zDtjd�|j|tj	�t
�}|j|jd��|j
t
�|d�Wdtjd�XdS)NcWsdS)Nr)rfrrr�<lambda>�szDBaseSelectorTestCase.test_select_interrupt_noraise.<locals>.<lambda>rCg�?g�?r)r rrrrjrkrar!r"r#r]r;rJrR)rr+rrrlr_rrr�test_select_interrupt_noraise�s
z2BaseSelectorTestCase.test_select_interrupt_noraiseN)rbrcrdrr,r.r2r:�
skipUnlessr4�namer6r7r<rArBrIrNrOrSrZZskipIf�sys�platformr[r`rPrjrmrorrrrr2s*&
	5rc@s,eZdZejdd�ejed�dd���ZdS)�ScalableSelectorMixInr�zTest needs resource modulec
!Cs�tjtj�\}}y6tjtj||f�|jtjtj||f�t|d�}Wnttfk
rb|}YnX|d8}|j�}|j|j	�x�t
|d�D]�}y|j�\}}Wntk
r�|jd�YnXy |j
|tj�|j
|tj�Wq�tk
�r }z |jtjk�r|jd��WYdd}~Xq�Xq�Wy|j�}	WnJtk
�r|}z,|jtjk�rjtjdk�rj|jd��WYdd}~XnX|j|dt|	��dS)N��� zFD limit reached�darwinz%Invalid argument error calling poll()i)�resourceZ	getrlimitZ
RLIMIT_NOFILEZ	setrlimitr�minrr)r rrUrZskipTestr!r"r#r/�errnoZENOSPCrJZEINVALrrrsr%rD)
rZsoftZhardZNUM_FDSr+rYrr�eZfdsrrr�test_above_fd_setsize�s<



z+ScalableSelectorMixIn.test_above_fd_setsizeN)	rbrcrdrZrequires_mac_verr:rprzr~rrrrrt�s
rtc@seZdZejZdS)�DefaultSelectorTestCaseN)rbrcrdr"ZDefaultSelectorr rrrrr�src@seZdZejZdS)�SelectSelectorTestCaseN)rbrcrdr"ZSelectSelectorr rrrrr��sr��PollSelectorz!Test needs selectors.PollSelectorc@seZdZeedd�ZdS)�PollSelectorTestCaser�N)rbrcrd�getattrr"r rrrrr��sr��
EpollSelectorz"Test needs selectors.EpollSelectorc@s eZdZeedd�Zdd�ZdS)�EpollSelectorTestCaser�NcCsd|j�}tj��J}|jt��|j|tj�WdQRX|jt��|j	|�WdQRXWdQRXdS)N)
r �tempfileZNamedTemporaryFiler(�IOErrorr!r"r#r*r8)rr+�frrr�test_register_file�s
z(EpollSelectorTestCase.test_register_file)rbrcrdr�r"r r�rrrrr��sr��KqueueSelectorz$Test needs selectors.KqueueSelector)c@s eZdZeedd�Zdd�ZdS)�KqueueSelectorTestCaser�NcCsj|j�}tj�}|jt��}|j|tj�WdQRX|j|j	j
t
j�|jt��|j
|�WdQRXdS)N)r rZmake_bad_fdr(rr!r"r#r%Z	exceptionr|ZEBADFr*r8)rr+Zbad_f�cmrrr�test_register_bad_fd�sz+KqueueSelectorTestCase.test_register_bad_fd)rbrcrdr�r"r r�rrrrr��sr��DevpollSelectorz$Test needs selectors.DevpollSelectorc@seZdZeedd�ZdS)�DevpollSelectorTestCaser�N)rbrcrdr�r"r rrrrr�sr�cCs&ttttttg}tj|�tj�dS)N)	rr�r�r�r�r�rZrun_unittestZ
reap_children)Ztestsrrr�	test_mains

r��__main__)"r|r4rVr"rjrrrZtestrr]rr:Z
unittest.mockr�rrz�ImportErrorrPrZAF_INETZSOCK_STREAMrZTestCaserrtrr�rpr�r�r�r�r�rbrrrr�<module>sR

n5