o
    ¹i  ã                   @   s<   d Z ddlZG dd„ dejƒZG dd„ dejƒZdd„ ZdS )	ztests for extending pyzmqé    Nc                       s.   e Zd ZU eed< ddef‡ fdd„Z‡  ZS )ÚCustomSocketÚcustom_attrr   c                    s   t ƒ  ||¡ || _d S ©N)ÚsuperÚ__init__r   )ÚselfÚcontextÚsocket_typer   ©Ú	__class__© úM/var/www/edux/Edux_v2/venv/lib/python3.10/site-packages/zmq/tests/test_ext.pyr   	   s   
zCustomSocket.__init__)r   )Ú__name__Ú
__module__Ú__qualname__ÚintÚ__annotations__r   Ú__classcell__r   r   r
   r   r      s   
 r   c                       s2   e Zd ZU eed< eZddef‡ fdd„Z‡  ZS )ÚCustomContextÚ	extra_argÚxc                    s   t ƒ  ¡  || _d S r   )r   r   r   )r   r   r
   r   r   r      s   

zCustomContext.__init__)r   )	r   r   r   Ústrr   r   Ú_socket_classr   r   r   r   r
   r   r      s   
 r   c                  C   s‚   t dƒ} t| t ƒsJ ‚| jdksJ ‚| jtjdd}t|tƒs!J ‚|jdks(J ‚|j| u s/J ‚|j	tjks7J ‚| 
¡  |  ¡  d S )NÚsé
   )r   )r   Ú
isinstancer   ÚsocketÚzmqÚPUSHr   r   r   ÚtypeÚcloseÚterm)Úctxr   r   r   r   Útest_custom_context   s   r#   )Ú__doc__r   ÚSocketr   ÚContextr   r#   r   r   r   r   Ú<module>   s
    	