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_selectors.cpython-39.opt-1.pyc

a

��g�H�@s�ddlZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
ddlmZddl
Z
ddlZ
ddlZddlmZzddlZWney�dZYn0eed�r�ejZnejejdfdd�Zdd	�ZGd
d�d�ZGdd
�d
�ZGdd�dee
j�ZGdd�dee
j�Ze
�eed�d�Gdd�deee
j��Ze
�eed�d�Gdd�deee
j��Ze
�eed�d�Gdd�deee
j��Z e
�eed�d�Gd d!�d!eee
j��Z!d"d#�Z"e#d$k�r�e
�$�dS)%�N)�support)�
socket_helper)�sleep)�	monotonic�
socketpairc	Cs�t�|||���}|�tjdf�|��t�|||�}zP|�|���|��}|��\}}||krz||fWWd�S|��qNWnt	y�|���Yn0Wd�n1s�0YdS)Nr)
�socket�bindrZHOST�listen�connect�getsockname�accept�close�OSError)�family�type�proto�l�cZcaddr�a�addr�r�//usr/local/lib/python3.9/test/test_selectors.pyrscCs*g}|D]\}}||@r|�|j�q|S�N)�append�fileobj)�ready�flag�match�key�eventsrrr�find_ready_matching+s
r c@s�eZdZdd�Zdd�Zdd�Zdd�Ze�e	j
d	kd
�dd��Zd
d�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Ze�ejd!kd"�d#d$��Zd%d&�Ze�eed'�d(�d)d*��Ze�eed'�d(�d+d,��Zd-S).�BaseSelectorTestCasecCs*t�\}}|�|j�|�|j�||fSr)r�
addCleanupr
)�self�rd�wrrrr�make_socketpair5s
z$BaseSelectorTestCase.make_socketpaircCs�|��}|�|j�|��\}}|�|tjd�}|�|tj�|�	|j
|�|�	|j|���|�	|j
tj�|�	|jd�|�t|jdd�|�t|jdtj�|�t|j|tj�|�t|j|��tj�dS)N�datar�?Bi����)�SELECTORr"r
r&�register�	selectors�
EVENT_READZassertIsInstance�SelectorKey�assertEqualr�fd�filenorr'�assertRaises�
ValueError�KeyError�r#�sr$r%rrrr�
test_register;s�z"BaseSelectorTestCase.test_registercCs\|��}|�|j�|��\}}|�|tj�|�|�|�t	|jd�|�t	|j|�dS�Nr()
r)r"r
r&r*r+r,�
unregisterr1r3�r#r5r$r%rrr�test_unregisterUs
z$BaseSelectorTestCase.test_unregistercCsv|��}|�|j�|��\}}|��|��}}|�|tj�|�|tj�|��|��|�	|�|�	|�dSr)
r)r"r
r&r0r*r+r,�EVENT_WRITEr8)r#r5r$r%�r�wrrr�test_unregister_after_fd_closeds
z3BaseSelectorTestCase.test_unregister_after_fd_close�posixzrequires posixcCs�|��}|�|j�|��\}}|��|��}}|�|tj�|�|tj�|��\}}|��|��t	�
|��|�t	�
|��|�|�t	j|�|�t	j|�|�|�|�|�dSr)r)r"r
r&r0r*r+r,r;�os�dup2r8)r#r5r$r%r<r=Zrd2Zwr2rrr�(test_unregister_after_fd_close_and_reuseps
z=BaseSelectorTestCase.test_unregister_after_fd_close_and_reusecCsd|��}|�|j�|��\}}|�|tj�|�|tj�|��|��|�|�|�|�dSr)	r)r"r
r&r*r+r,r;r8r9rrr�"test_unregister_after_socket_close�s
z7BaseSelectorTestCase.test_unregister_after_socket_closec	Cs6|��}|�|j�|��\}}|�|tj�}|�|tj�}|�	|j
|j
�|�||�|��|�
|�t�}t�}|�|tj|�}|�|tj|�}|�|j
|j
�|�	|j|j�|�||�|��|�|j|�|�t|jdtj�t�}tj��|_tj��|_
|�|tj|�|�|jj�|�|j
j�dSr7)r)r"r
r&r*r+r,�modifyr;ZassertNotEqualrr.�get_keyr8�objectr'r1r3�unittest�mock�Mock�assertFalseZcalled)	r#r5r$r%rZkey2Zd1Zd2Zd3rrr�test_modify�s.
z BaseSelectorTestCase.test_modifyc	Cs|jjdkrtj�d�}n>|jjdkr4tj�d�}n$|jjdkrNtj�d�}n
|�d��|��}tjjtd�|j_	|��}|�
|j�|��\}}|�
|tj�|�t|j�d	�|�t��|�	|tj�Wd�n1s�0Y|�t|j�d
�Wd�n1�s0YdS)N�
EpollSelectorz%selectors.EpollSelector._selector_cls�PollSelectorz$selectors.PollSelector._selector_cls�DevpollSelectorz'selectors.DevpollSelector._selector_cls�)Zside_effect�r)r)�__name__rGrH�patch�skipTestrI�ZeroDivisionErrorZreturn_valuerDr"r
r&r*r+r,r.�len�_mapr1r;)r#rR�mr5r$r%rrr�test_modify_unregister�s2���
�
,z+BaseSelectorTestCase.test_modify_unregistercCs�|��}|�|j�|��}|��\}}|�|tj�|�|tj�|��|�	t
|j|�|�	t
|j|�|�	t|j
|�|�	t|j
|�dSr)r)r"r
�get_mapr&r*r+r,r;r1�RuntimeErrorrEr3�__getitem__)r#r5�mappingr$r%rrr�
test_close�szBaseSelectorTestCase.test_closecCsV|��}|�|j�|��\}}|�|tjd�}|�||�|��|�	t
|jd�dS)Nr'r()r)r"r
r&r*r+r,r.rEr1r3r4rrr�test_get_key�sz!BaseSelectorTestCase.test_get_keycCs"|��}|�|j�|��\}}|��}|�|�|�t|�d�|�t|�g�|�	|t
jd�}|�||�|�|||�|�t|�d�|�t|�|�
�g�|�t|���|g�|�t��|dWd�n1s�0Y|�t��||=Wd�n1�s0YdS)Nrr'rPr()r)r"r
r&rYrJr.rU�listr*r+r,ZassertInr0�valuesr1r3�	TypeError)r#r5r$r%�keysrrrr�test_get_map�s"
&z!BaseSelectorTestCase.test_get_mapcCs�|��}|�|j�|��\}}|�|tj�|�|tj�}|��}|D]<\}}|�	t
|tj��|�	|�|�|tjtjB@�qH|�
|tjfg|�dSr)r)r"r
r&r*r+r,r;�select�
assertTrue�
isinstancer-rJr.)r#r5r$r%Zwr_key�resultrrrrr�test_selects

�z BaseSelectorTestCase.test_selectcCs�|��}|�|j�|��\}}|�,}|�|tj�|�|tj�Wd�n1sV0Y|�t	|j
|�|�t	|j
|�dSr)r)r"r
r&r*r+r,r;r1rZrE)r#r5r$r%Zselrrr�test_context_managers,z)BaseSelectorTestCase.test_context_managercCsF|��}|�|j�t|d�rB|��}|�t|t��|�|d�dS)Nr0r)	r)r"r
�hasattrr0rerf�int�assertGreaterEqual)r#r5r/rrr�test_fileno"s
z BaseSelectorTestCase.test_filenocCs�|��}|�|j�d}d}t|�}g}g}i}i}t|�D]P}	|��\}
}|�|
tj�|�|tj	�|�
|
�|�
|�|||
<|
||<q<g}|�rr|��}
t|
tj	�}|s�|�
d�t�|�}|�|�td�D]*}	|��}
t|
tj�}|r��qtd�q�|�
d�|�||g|�|d}
|
�|�}|�t|�|�|�
|�|�||
�|�|
�|�||
�q�|�||g|�dS)N�s This is a test.zno sockets ready for writing�
g�������?zno sockets ready for readingr)r)r"r
rU�ranger&r*r+r,r;rrdr Zfail�random�choice�sendrr.�recvr8�remove)r#r5ZNUM_SOCKETSZMSGZMSG_LEN�readersZwritersZr2wZw2r�ir$r%ZbufsrZ
ready_writersZ
ready_readers�bufrrr�
test_selector+sV





�




z"BaseSelectorTestCase.test_selector�win32z1select.select() cannot be used with empty fd setscCs,|��}|�|j�|�|jdd�g�dS)Nr)�timeout)r)r"r
r.rd)r#r5rrr�test_empty_select`sz&BaseSelectorTestCase.test_empty_selectcCs
|��}|�|j�|��\}}|�|tj�t�}|�dt	|�
d���|�dt	|�
d���|�t�|d�|�|�|�|tj
�t�}|�|�
d��|�|�
d��|�t�|d�t�}|�|�
d��t�}||}|�d|ko�dkn|�dS)NrPr���g�?皙�����?�@)r)r"r
r&r*r+r;�timer.rUrd�
assertLessr8r,rJre)r#r5r$r%�t�t0�t1�dtrrr�test_timeoutis&
z!BaseSelectorTestCase.test_timeout�alarmz%signal.alarm() required for this testc	s�|��}|�|j�|��\}}Gdd�dt���fdd�}t�tj|�}|�tjtj|�zrt�d�|�|t	j
�t�}|����|�
d�Wd�n1s�0Y|�t�|d�Wt�d�nt�d�0dS)	Nc@seZdZdS)zGBaseSelectorTestCase.test_select_interrupt_exc.<locals>.InterruptSelectN)rQ�
__module__�__qualname__rrrr�InterruptSelect�sr�cs��dSrr��args�r�rr�handler�sz?BaseSelectorTestCase.test_select_interrupt_exc.<locals>.handlerrP�g@r)r)r"r
r&�	Exception�signal�SIGALRMr�r*r+r,r�r1rdr�)r#r5r$r%r��orig_alrm_handlerr�rr�r�test_select_interrupt_exc�s
(z.BaseSelectorTestCase.test_select_interrupt_excc	Cs�|��}|�|j�|��\}}t�tjdd��}|�tjtj|�zNt�d�|�|tj	�t
�}|�|�d��|�
t
�|d�Wt�d�nt�d�0dS)NcWsdSrrr�rrr�<lambda>��zDBaseSelectorTestCase.test_select_interrupt_noraise.<locals>.<lambda>rPg�?g�?r)r)r"r
r&r�r�r�r*r+r,r�rJrdrl)r#r5r$r%r�r�rrr�test_select_interrupt_noraise�s
z2BaseSelectorTestCase.test_select_interrupt_noraiseN)rQr�r�r&r6r:r>rG�
skipUnlessr@�namerBrCrKrXr]r^rcrhrirmryZskipIf�sys�platformr|r�rjr�r�r�rrrrr!3s:
&
	5�
�
�r!c@s,eZdZe�dd�e�ed�dd���ZdS)�ScalableSelectorMixInro�zTest needs resource modulec
Cs�t�tj�\}}z6t�tj||f�|�tjtj||f�t|d�}Wnttfy`|}Yn0|d8}|��}|�|j	�t
|d�D]�}z|��\}}Wnty�|�d�Yn0z |�
|tj�|�
|tj�Wq�t�y}z&|jtjk�r|�d��WYd}~q�d}~00q�z|��}	WnLt�yx}z2|jtjk�rbtjdk�rb|�d��WYd}~n
d}~00|�|dt|	��dS)Ni� �zFD limit reached�darwinz%Invalid argument error calling poll())�resourceZ	getrlimitZ
RLIMIT_NOFILEZ	setrlimitr"�minrr2r)r
rpr&rSr*r+r,r;�errno�ENOSPCrd�EINVALr�r�r.rU)
r#ZsoftZhardZNUM_FDSr5rwr$r%�e�fdsrrr�test_above_fd_setsize�s>�


z+ScalableSelectorMixIn.test_above_fd_setsizeN)	rQr�r�rZrequires_mac_verrGr�r�r�rrrrr��s

r�c@seZdZejZdS)�DefaultSelectorTestCaseN)rQr�r�r+�DefaultSelectorr)rrrrr��sr�c@seZdZejZdS)�SelectSelectorTestCaseN)rQr�r�r+�SelectSelectorr)rrrrr��sr�rMz!Test needs selectors.PollSelectorc@seZdZeedd�ZdS)�PollSelectorTestCaserMN�rQr�r��getattrr+r)rrrrr��sr�rLz"Test needs selectors.EpollSelectorc@s eZdZeedd�Zdd�ZdS)�EpollSelectorTestCaserLNc	Cs�|��}t���|}|�t��|�|tj�Wd�n1s@0Y|�t��|�	|�Wd�n1st0YWd�n1s�0YdSr)
r)�tempfile�NamedTemporaryFiler1�IOErrorr*r+r,r3rE)r#r5�frrr�test_register_files
,z(EpollSelectorTestCase.test_register_file)rQr�r�r�r+r)r�rrrrr�sr��KqueueSelectorz$Test needs selectors.KqueueSelector)c@s(eZdZeedd�Zdd�Zdd�ZdS)�KqueueSelectorTestCaser�NcCs�|��}t��}|�t��}|�|tj�Wd�n1s>0Y|�|j	j
t
j�|�t��|�
|�Wd�n1s�0YdSr)r)rZmake_bad_fdr1rr*r+r,r.�	exceptionr��EBADFr3rE)r#r5Zbad_f�cmrrr�test_register_bad_fds,z+KqueueSelectorTestCase.test_register_bad_fdcCs^|��}|�|j�t�}|�|�d�g�t�}||}|�d|koPdkn|�dS)NrPr~r)r)r"r
r�r.rdre)r#r5r�r�r�rrr�test_empty_select_timeout&sz0KqueueSelectorTestCase.test_empty_select_timeout)rQr�r�r�r+r)r�r�rrrrr�sr�rNz$Test needs selectors.DevpollSelectorc@seZdZeedd�ZdS)�DevpollSelectorTestCaserNNr�rrrrr�4sr�cCst��dSr)r�
reap_childrenrrrr�tearDownModule<sr��__main__)%r�r@rqr+r�rr��testrZtest.supportrr�rrGZ
unittest.mockr�rr��ImportErrorrjr�AF_INET�SOCK_STREAMr r!r�ZTestCaser�r�r�r�r�r�r�r�rQ�mainrrrr�<module>sn


5��������


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