Your IP : 216.73.216.213
�
f f� �
@ s� d Z d d l Z d d l m Z y d d l Z Wn e k
rL d Z Yn Xd d l Z d d l m Z d d l m Z e j e d k d � Gd d � d e j � � Z
e d k r� e j � n d S)
zTests for asyncio/sslproto.py.� N)�mock)�sslproto)�
test_utilsz
No ssl modulec @ sR e Z d Z d d � Z d d d � Z d d d � Z d d � Z d
d � Z d S)�SslProtoHandshakeTestsc C s# t j � | _ | j | j � d S)N)�asyncioZnew_event_loop�loopZset_event_loop)�self� r �D/opt/alt/python34/lib64/python3.4/test/test_asyncio/test_sslproto.py�setUp s zSslProtoHandshakeTests.setUpNc C sJ t j � } t j � } t j | j | | | � } | j | j j � | S)N)
r Zdummy_ssl_contextr ZProtocolr ZSSLProtocolr Z
addCleanupZ_app_transport�close)r �waiterZ
sslcontextZ app_proto�protor r r
�ssl_protocol s
z#SslProtoHandshakeTests.ssl_protocolc C s~ t j � } t j � } d | j _ | r9 | | j _ n d d � } | | j _ t j d d | �� | j | � Wd QXd S)N� c S s g S)Nr )�callbackr r r
�mock_handshake$ s z>SslProtoHandshakeTests.connection_made.<locals>.mock_handshakezasyncio.sslproto._SSLPipe�return_value)r ZMockZshutdownr �do_handshakeZside_effectZpatch�connection_made)r � ssl_protor Z transportZsslpiper r r r
r s z&SslProtoHandshakeTests.connection_madec s� t j d | j � } | j | � } t j d | j � � � f d d � } | j � | j | | � t j � � | j j � � Wd QXd S)Nr c s$ t � } | | � � j d � g S)N)� ExceptionZ
set_result)r �exc)�
handshake_futr r
r 1 s
zBSslProtoHandshakeTests.test_cancel_handshake.<locals>.do_handshake) r �Futurer r Zcancelr r Zdisable_loggerZrun_until_complete)r r
r r r )r r
�test_cancel_handshake* s
z,SslProtoHandshakeTests.test_cancel_handshakec C se t j d | j � } | j | � } | j | � | j � t j | j � | j | j � t
� d S)Nr )r r r r r Zeof_receivedr Zrun_brieflyZassertIsInstanceZ exception�ConnectionResetError)r r
r r r r
�test_eof_received_waiter= s
z/SslProtoHandshakeTests.test_eof_received_waiter)�__name__�
__module__�__qualname__r r r r r r r r r
r s
r �__main__)
�__doc__Zunittestr Zssl�ImportErrorr r r ZskipIfZTestCaser r �mainr r r r
�<module> s
"6