File: //usr/local/lib/python3.7/test/test_asyncio/__pycache__/test_sslproto.cpython-37.opt-2.pyc
B
��g�f � @ sN d dl Z d dlZd dlZd dlZd dlZd dlmZ yd dlZW n ek
rX dZY nX d dlZd dlm Z d dlm
Z
d dlmZ d dlmZ d dl
mZ d dl
mZ e�edkd �G d
d� dej��ZG dd
� d
ej�Ze�edkd �G dd� deej��Ze�edkd �e�eed�d�G dd� deej���Zedk�rJe�� dS )� N)�mock)�log)� protocols)�sslproto)�tasks)�utils)�
functionalz
No ssl modulec s� e Zd Z� fdd�Zddd�dd�Zdd�dd �Zd
d� Zdd
� Zdd� Zdd� Z dd� Z
dd� Zdd� Zdd� Z
dd� Zdd� Z� ZS )�SslProtoHandshakeTestsc s$ t � �� t�� | _| �| j� d S )N)�super�setUp�asyncioZnew_event_loop�loopZset_event_loop)�self)� __class__� �;/usr/local/lib/python3.7/test/test_asyncio/test_sslproto.pyr s
zSslProtoHandshakeTests.setUpN)�waiter�protoc C sR t �� }|d krt�� }tj| j|||dd�}| �|j� � |� | �
|jj� |S )Ng�������?)�ssl_handshake_timeout)�
test_utils�dummy_ssl_contextr �Protocolr �SSLProtocolr
�assertIs�_app_transport�get_protocolZ
addCleanup�close)r r r �
sslcontext� ssl_protor r r �ssl_protocol s z#SslProtoHandshakeTests.ssl_protocol)�do_handshakec C s^ t �� }t �� }d|j_|r&||j_ndd� }||j_t jd|d�� |�|� W d Q R X |S )N� c S s g S )Nr )�callbackr r r �mock_handshake0 s z>SslProtoHandshakeTests.connection_made.<locals>.mock_handshakezasyncio.sslproto._SSLPipe)�return_value)r �Mock�shutdownr$ r Zside_effectZpatch�connection_made)r r r � transportZsslpiper# r r r r'