
     @g                        d dl mZ d dlZd dlZddlmZ ddlmZmZm	Z	m
Z
mZ  G d d          Z G d	 d
e          Z G d de
          Z G d de	          Z G d de          ZdS )    )annotationsN   )	ReadError   )SOCKET_OPTIONAsyncNetworkBackendAsyncNetworkStreamNetworkBackendNetworkStreamc                      e Zd ZddZd	dZdS )
MockSSLObjecthttp2boolc                    || _         d S N_http2)selfr   s     K/var/www/piapp/venv/lib/python3.11/site-packages/httpcore/_backends/mock.py__init__zMockSSLObject.__init__   s        returnstrc                    | j         rdndS )Nh2zhttp/1.1r   r   s    r   selected_alpn_protocolz$MockSSLObject.selected_alpn_protocol   s    {2tt
2r   N)r   r   r   r   )__name__
__module____qualname__r   r    r   r   r   r      s<           3 3 3 3 3 3r   r   c                  R    e Zd ZdddZdd dZdd!dZd"dZ	 	 d#d$dZd%dZd&dZ	d	S )'
MockStreamFbufferlist[bytes]r   r   r   Nonec                0    || _         || _        d| _        d S NF_bufferr   _closedr   r%   r   s      r   r   zMockStream.__init__       r   N	max_bytesinttimeoutfloat | Nonebytesc                t    | j         rt          d          | j        sdS | j                            d          S NzConnection closedr   r   r,   r   r+   popr   r/   r1   s      r   readzMockStream.read   s@    < 	1/000| 	3|"""r   c                    d S r   r"   r   r%   r1   s      r   writezMockStream.write%       r   c                    d| _         d S NTr,   r   s    r   closezMockStream.close(   s    r   ssl_contextssl.SSLContextserver_hostname
str | Noner   c                    | S r   r"   r   rB   rD   r1   s       r   	start_tlszMockStream.start_tls+   s	     r   infor   
typing.Anyc                <    |dk    rt          | j                  nd S N
ssl_objectr   r   r   r   rI   s     r   get_extra_infozMockStream.get_extra_info3   $    37<3G3G}4;////TQr   c                    dS )Nz<httpcore.MockStream>r"   r   s    r   __repr__zMockStream.__repr__6   s    &&r   Fr%   r&   r   r   r   r'   r   r/   r0   r1   r2   r   r3   r%   r3   r1   r2   r   r'   r   r'   NN)rB   rC   rD   rE   r1   r2   r   r   rI   r   r   rJ   r   )
r   r    r!   r   r9   r<   rA   rH   rQ   rT   r"   r   r   r$   r$      s            
# # # # #        '+ $	    R R R R' ' ' ' ' 'r   r$   c                  >    e Zd ZdddZ	 	 	 dddZ	 	 dd dZd!dZd	S )"MockBackendFr%   r&   r   r   r   r'   c                "    || _         || _        d S r   r+   r   r-   s      r   r   zMockBackend.__init__;       r   Nhostr   portr0   r1   r2   local_addressrE   socket_options%typing.Iterable[SOCKET_OPTION] | Noner   c                R    t          t          | j                  | j                  S NrN   r$   listr+   r   r   ra   rb   r1   rc   rd   s         r   connect_tcpzMockBackend.connect_tcp?   s#     $t|,,DK@@@@r   pathc                R    t          t          | j                  | j                  S rg   rh   r   rl   r1   rd   s       r   connect_unix_socketzMockBackend.connect_unix_socketI   s#     $t|,,DK@@@@r   secondsfloatc                    d S r   r"   r   rp   s     r   sleepzMockBackend.sleepQ   r=   r   rU   rV   NNN)ra   r   rb   r0   r1   r2   rc   rE   rd   re   r   r   rZ   )rl   r   r1   r2   rd   re   r   r   rp   rq   r   r'   r   r    r!   r   rk   ro   rt   r"   r   r   r]   r]   :   s             !%$(@DA A A A A !%@D	A A A A A     r   r]   c                  R    e Zd ZdddZdd dZdd!dZd"dZ	 	 d#d$dZd%dZd&dZ	d	S )'AsyncMockStreamFr%   r&   r   r   r   r'   c                0    || _         || _        d| _        d S r)   r*   r-   s      r   r   zAsyncMockStream.__init__V   r.   r   Nr/   r0   r1   r2   r3   c                x   K   | j         rt          d          | j        sdS | j                            d          S r5   r6   r8   s      r   r9   zAsyncMockStream.read[   sD      < 	1/000| 	3|"""r   c                
   K   d S r   r"   r;   s      r   r<   zAsyncMockStream.writeb         r   c                   K   d| _         d S r?   r@   r   s    r   aclosezAsyncMockStream.aclosee   s      r   rB   rC   rD   rE   r	   c                
   K   | S r   r"   rG   s       r   rH   zAsyncMockStream.start_tlsh   s       r   rI   r   rJ   c                <    |dk    rt          | j                  nd S rL   rO   rP   s     r   rQ   zAsyncMockStream.get_extra_infop   rR   r   c                    dS )Nz<httpcore.AsyncMockStream>r"   r   s    r   rT   zAsyncMockStream.__repr__s   s    ++r   rU   rV   r   rW   rX   rY   rZ   )rB   rC   rD   rE   r1   r2   r   r	   r[   r   )
r   r    r!   r   r9   r<   r   rH   rQ   rT   r"   r   r   ry   ry   U   s            
# # # # #        '+ $	    R R R R, , , , , ,r   ry   c                  >    e Zd ZdddZ	 	 	 dddZ	 	 dd dZd!dZd	S )"AsyncMockBackendFr%   r&   r   r   r   r'   c                "    || _         || _        d S r   r_   r-   s      r   r   zAsyncMockBackend.__init__x   r`   r   Nra   r   rb   r0   r1   r2   rc   rE   rd   re   r	   c                V   K   t          t          | j                  | j                  S rg   ry   ri   r+   r   rj   s         r   rk   zAsyncMockBackend.connect_tcp|   s'       tDL11EEEEr   rl   c                V   K   t          t          | j                  | j                  S rg   r   rn   s       r   ro   z$AsyncMockBackend.connect_unix_socket   s'       tDL11EEEEr   rp   rq   c                
   K   d S r   r"   rs   s     r   rt   zAsyncMockBackend.sleep   r}   r   rU   rV   ru   )ra   r   rb   r0   r1   r2   rc   rE   rd   re   r   r	   rZ   )rl   r   r1   r2   rd   re   r   r	   rv   rw   r"   r   r   r   r   w   s             !%$(@DF F F F F !%@D	F F F F F     r   r   )
__future__r   ssltyping_exceptionsr   baser   r   r	   r
   r   r   r$   r]   ry   r   r"   r   r   <module>r      s_   " " " " " " 



  # # # # # #             3 3 3 3 3 3 3 3' ' ' ' ' ' ' 'D    .   6, , , , ,( , , ,D    *     r   