Your IP : 216.73.216.85


Current Path : /opt/alt/python35/lib64/python3.5/test/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/test/__pycache__/test_timeout.cpython-35.opt-2.pyc



���]o,�@s�ddlZddlZddlmZejd�ZddlZddlZddlZej	�dd��Z
Gdd�dej�ZGdd	�d	ej�Z
Gd
d�de
�ZGdd
�d
e
�Zdd�Zedkr�e�dS)�N)�support�networkcCs?tj|��)tj||tjtj�ddSWdQRXdS)Nr�)r�transient_internet�socket�getaddrinfo�AF_INET�SOCK_STREAM)�host�port�r�1/opt/alt/python35/lib64/python3.5/test_timeout.py�resolve_addresssrc@s|eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�CreationTestCasecCstjtjtj�|_dS)N)rrr	�sock)�selfrrr
�setUpszCreationTestCase.setUpcCs|jj�dS)N)r�close)rrrr
�tearDown!szCreationTestCase.tearDowncCs |j|jj�dd�dS)Nztimeout not disabled by default)�assertEqualr�
gettimeout)rrrr
�testObjectCreation$sz#CreationTestCase.testObjectCreationcCs|jjd�|j|jj�d�|jjd�|j|jj�d�|jjd�|j|jj�d�dS)Ng�z�Ga@�)r�
settimeoutrr)rrrr
�testFloatReturnValue)sz%CreationTestCase.testFloatReturnValuecCsn|jjd�|jt|jj��td��|jjd�|jt|jj��td��dS)N�g�?g333333@)rrr�typer)rrrr
�testReturnType4s%zCreationTestCase.testReturnTypecCs�|jjd�|jjd�|jjd�|jjd�|jt|jjd�|jt|jjd�|jt|jjf�|jt|jjg�|jt|jji�|jt|jjd�dS)Nrg�y)rr�assertRaises�	TypeError)rrrr
�
testTypeCheck<szCreationTestCase.testTypeCheckcCsO|jt|jjd�|jt|jjd�|jt|jjd�dS)Nrg�?���r"g�)r�
ValueErrorrr)rrrr
�testRangeCheckIszCreationTestCase.testRangeCheckcCs�|jjd�|jjd�|j|jj�d�|jjd�|j|jj�d�|jjd�|jjd�|j|jj�d�|jjd�|j|jj�d�dS)N�
rrg)rr�setblockingrr)rrrr
�testTimeoutThenBlockingOsz(CreationTestCase.testTimeoutThenBlockingcCsv|jjd�|jjd�|j|jj�d�|jjd�|jjd�|j|jj�d�dS)Nrr)rr&rrr)rrrr
�testBlockingThenTimeout]sz(CreationTestCase.testBlockingThenTimeoutN)�__name__�
__module__�__qualname__rrrrrr!r$r'r(rrrr
rs
rc@s=eZdZdZejZdd�ZeZdd�Z	dS)�TimeoutTestCaseg@cCs
t��dS)N)�NotImplementedError)rrrr
rsszTimeoutTestCase.setUpc	Gs�|jj|�t|j|�}xwt|�D]\}tj�}y||�Wq/tjk
r�}ztj�|}PWYdd}~Xq/Xq/W|jd�|j|||j	�|j
||d�dS)Nzsocket.timeout was not raisedg�?)rr�getattr�range�timer�timeoutZfailZ
assertLess�fuzzZ
assertGreater)	r�countr1�method�args�i�t1�eZdeltarrr
�_sock_operationxs
zTimeoutTestCase._sock_operationN)
r)r*r+r2rZHOST�	localhostrrr9rrrr
r,hs
	r,c@speZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dS)�TCPTimeoutTestCasecCs1tjtjtj�|_tdd�|_dS)Nzwww.python.org.�P)rrr	rr�addr_remote)rrrr
r�szTCPTimeoutTestCase.setUpcCs|jj�dS)N)rr)rrrr
r�szTCPTimeoutTestCase.tearDownc CsEtdd�}tdd�}d}tjtjtj�}d}|j|�ziy|j|�WnQtjk
rzYn=tk
r�}z|jtj	kr�d}WYdd}~XnXWd|j
�~X|r|jdj|d	|d
||d	|d
��||_
tj|j
d	��|jd
dd|j
�WdQRXdS)
Nzblackhole.snakebite.netiZ�zwhitehole.snakebite.neti[�TrFz�We didn't receive a connection reset (RST) packet from {}:{} within {} seconds, so we're unable to test connect timeout against the corresponding {}:{} (which is configured to silently drop packets).rrg����MbP?�connect)rrrr	rr>r1�OSError�errnoZECONNREFUSEDrZskipTest�formatr=rrr9)rZ	blackholeZ	whitehole�skiprr1�errrrr
�testConnectTimeout�s4

	z%TCPTimeoutTestCase.testConnectTimeoutcCsKtj|jd��.|jj|j�|jdddd�WdQRXdS)Nrrg�?�recvi)rrr=rr>r9)rrrr
�testRecvTimeout�sz"TCPTimeoutTestCase.testRecvTimeoutcCs:tj|j|j�|jj�|jddd�dS)Nrg�?�accept)r�	bind_portrr:�listenr9)rrrr
�testAcceptTimeout�s
z$TCPTimeoutTestCase.testAcceptTimeoutc
Csstjtjtj��T}tj||j�|j�|jj|j	��|j
ddddd�WdQRXdS)N�dg�?�send�Xi@
)rrr	rrHr:rIrr>�getsocknamer9)r�servrrr
�testSend�s

zTCPTimeoutTestCase.testSendc
Cs|tjtjtj��]}tj||j�|j�|jj|j	��|j
ddddd|j	��WdQRXdS)NrKg�?�sendtorMi@
)rrr	rrHr:rIrr>rNr9)rrOrrr
�
testSendtos
zTCPTimeoutTestCase.testSendtoc
Csstjtjtj��T}tj||j�|j�|jj|j	��|j
ddddd�WdQRXdS)NrKg�?�sendallrMi@
)rrr	rrHr:rIrr>rNr9)rrOrrr
�testSendalls

zTCPTimeoutTestCase.testSendallN)r)r*r+rrrDrFrJrPrRrTrrrr
r;�sT	
r;c@s4eZdZdd�Zdd�Zdd�ZdS)�UDPTimeoutTestCasecCstjtjtj�|_dS)N)rr�
SOCK_DGRAMr)rrrr
rszUDPTimeoutTestCase.setUpcCs|jj�dS)N)rr)rrrr
rszUDPTimeoutTestCase.tearDowncCs0tj|j|j�|jdddd�dS)Nrg�?�recvfromi)rrHrr:r9)rrrr
�testRecvfromTimeoutsz&UDPTimeoutTestCase.testRecvfromTimeoutN)r)r*r+rrrXrrrr
rUsrUcCs$tjd�tjttt�dS)Nr)rZrequiresZrun_unittestrr;rUrrrr
�	test_main&s

rY�__main__)�	functoolsZunittestZtestrZis_resource_enabledZ
skip_expectedr0r@r�	lru_cacherZTestCaserr,r;rUrYr)rrrr
�<module>sM'�