U
    lufä  ã                   @   sF   d dl Z d dlmZmZmZ G dd„ deƒZerBG dd„ deeƒZdS )é    N)ÚBaseZMQTestCaseÚ	GreenTestÚhave_geventc                   @   s<   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ ZdS )Ú
TestReqRepc                 C   s6   |   tjtj¡\}}d}|  |||¡}||ks2t‚d S )Ns	   message 1)Úcreate_bound_pairÚzmqÚREQÚREPÚ	ping_pongÚAssertionError)ÚselfÚs1Ús2Úmsg1Úmsg2© r   ú9/tmp/pip-unpacked-wheel-h6ekxre8/zmq/tests/test_reqrep.pyÚ
test_basic
   s    zTestReqRep.test_basicc                 C   sH   |   tjtj¡\}}tdƒD ]&}|d }|  |||¡}||kst‚qd S )Né
   ó    ©r   r   r   r	   Úranger
   r   )r   r   r   Úir   r   r   r   r   Útest_multiple   s
    zTestReqRep.test_multiplec                 C   sv   |   tjtj¡\}}t ¡ dkrTdD ].}| jtj|j|d | jtj|jd|d q$d}|  	|||¡}||ksrt
‚d S )Nz2.1.8)TF)Úcopys   asdf)r   r   r   r	   Zzmq_versionZassertRaisesErrnoZEFSMÚrecvÚsendr
   r   )r   r   r   r   r   r   r   r   r   Útest_bad_send_recv   s    zTestReqRep.test_bad_send_recvc                 C   s:   |   tjtj¡\}}tdttdƒƒd}|  |||¡ d S ©Nr   )ÚaÚb)r   r   r   r	   ÚdictÚlistr   Zping_pong_json©r   r   r   Úor   r   r   Ú	test_json'   s    zTestReqRep.test_jsonc                 C   s6   |   tjtj¡\}}tdtdƒd}|  |||¡ d S r   )r   r   r   r	   r!   r   Zping_pong_pyobjr#   r   r   r   Ú
test_pyobj,   s    zTestReqRep.test_pyobjc                 C   sH   |   tjtj¡\}}dd }tdƒD ]}|  |||¡}||ks$t‚q$d S )Ni'  ó   Xr   r   )r   r   r   r   r   r   r   r   r   Útest_large_msg1   s
    zTestReqRep.test_large_msgN)	Ú__name__Ú
__module__Ú__qualname__r   r   r   r%   r&   r(   r   r   r   r   r   	   s   r   c                   @   s   e Zd ZdS )ÚTestReqRepGreenN)r)   r*   r+   r   r   r   r   r,   <   s   r,   )r   Z	zmq.testsr   r   r   r   r,   r   r   r   r   Ú<module>   s   1