Your IP : 216.73.216.213


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



��Yf��@s�ddlZddlZddlZddlmZejdkrRejd��ddlZddlZddlmZddlm	Z	ddlm
Z
Gdd	�d	ej�ZGd
d�de	j
�Zedkr�ej�dS)
�N)�mock�win32zWindows only)�_overlapped)�
test_utils)�windows_eventsc@s4eZdZdd�Zdd�Zdd�ZdS)�
UpperProtocCs
g|_dS)N)�buf)�self�r
�J/opt/alt/python35/lib64/python3.5/test/test_asyncio/test_windows_events.py�__init__szUpperProto.__init__cCs
||_dS)N)�trans)r	r
r
r
r�connection_madeszUpperProto.connection_madecCsO|jj|�d|krK|jjdj|j�j��|jj�dS)Ns
�)r�appendr
�write�join�upper�close)r	�datar
r
r�
data_receiveds"zUpperProto.data_receivedN)�__name__�
__module__�__qualname__rrrr
r
r
rrsrcsveZdZ�fdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
�S)�
ProactorTestscs0t�j�tj�|_|j|j�dS)N)�super�setUp�asyncioZProactorEventLoop�loopZset_event_loop)r	)�	__class__r
rr!s
zProactorTests.setUpcCs�|jj�\}}|jj|tj��}tj|jj|d��}|j�|jj|�|j	|j
�d�|j�dS)N�dr)rZ_socketpairZ_make_socket_transportr�ProtocolZ
ensure_futureZ	sock_recvr�run_until_complete�assertEqual�result)r	�a�br
�fr
r
r�
test_close&s
zProactorTests.test_closec	CsQdtj�}tj|�}|jt��tj|�WdQRX|j�dS)Nz\\.\pipe\test_double_bind-%s)�os�getpidr�
PipeServer�assertRaises�PermissionErrorr)r	�ADDRESSZserver1r
r
r�test_double_bind/s
zProactorTests.test_double_bindcCs,|jj|j��}|j|d�dS)N�done)rr"�
_test_piper#)r	�resr
r
r�	test_pipe6szProactorTests.test_pipec#s�dtj�}|jt�� |jjtj|�EdHWdQRX|jjt	|�EdH\}|j
|tj�g}x�t
d�D]�}tjd|j�}tj|d|j��|jj�fdd�|�EdH\}}|j
|tj�|j�|�|j||f�q�Wx<t|�D].\}\}}	|	jdj|�j��q+WxZt|�D]L\}\}}	|j�EdH}
|j|
dj|�j��|	j�qjW|j�|jt�� |jjtj|�EdHWdQRXdS)	Nz\\.\pipe\_test_pipe-%s�rcs�S)Nr
r
)�protocolr
r�<lambda>Ksz*ProactorTests._test_pipe.<locals>.<lambda>z	lower-{}
z	LOWER-{}
r0)r)r*r,�FileNotFoundErrorrZcreate_pipe_connectionrr!Zstart_serving_piperZassertIsInstancerr+�range�StreamReaderZStreamReaderProtocolZ	Transportr#r�	enumerater�format�encode�readliner)r	r.ZserverZclients�iZ
stream_readerr
�proto�r�wZresponser
)r5rr1:s8			# 
	zProactorTests._test_pipecCs�t�}tj|_tjjtdd|��b}|jjj	d�}|jj
|�}|j�|jt
j��|jj|�WdQRXWdQRXdS)NZConnectPipeZside_effectZpipe_address)�OSErrorrZERROR_PIPE_BUSYZwinerrorrZpatch�objectr�	_proactorZconnect_pipeZcreate_task�cancelr,r�CancelledErrorr")r	�excZconnect�coroZtaskr
r
r�test_connect_pipe_cancel`s	
z&ProactorTests.test_connect_pipe_cancelcCsptjdddd�}|jtj|�|jjj|d�}|jj�}|jj	|�}|jj�|}|j
|d�|j|j��|j
d|ko�dkn|�tj|�|jjj|d�}|jj�}|jj	|�}|jj�|}|j
|d�|j
|j��|j
d|koYdkn|�|j�dS)	NTFg�?g���Q��?g�������?�
rg333333�?)r�CreateEvent�
addCleanup�_winapi�CloseHandlerrD�wait_for_handle�timer"r#ZassertFalser$�
assertTrueZSetEventrE)r	�event�fut�startr0�elapsedr
r
r�test_wait_for_handlels$&
&z"ProactorTests.test_wait_for_handlecCs�tjdddd�}|jtj|�|jjj|d�}|j�|jj	�}|j
tj��|jj
|�WdQRX|jj	�|}|jd|ko�dkn|�|jjj|�}|j�|j�dS)NTFrJrg�������?)rrKrLrMrNrrDrOrErPr,rrFr"rQ)r	rRrSrTrUr
r
r�test_wait_for_handle_cancel�s
&
z)ProactorTests.test_wait_for_handle_cancel)rrrrr(r/r3r1rIrVrWr
r
)rrrs	& r�__main__)r)�sysZunittestr�platformZSkipTestrMrrrrr!rZTestCaserr�mainr
r
r
r�<module>s�