o
    j                     @  s   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 dZG d	d
 d
eZG dd de
ZG dd de	ZG dd deZdS )    )annotationsN   )	ReadError   )SOCKET_OPTIONAsyncNetworkBackendAsyncNetworkStreamNetworkBackendNetworkStreamc                   @  s    e Zd Zd
ddZdddZd	S )MockSSLObjecthttp2boolc                 C  s
   || _ d S N_http2)selfr    r   X/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/httpcore/_backends/mock.py__init__      
zMockSSLObject.__init__returnstrc                 C  s   | j rdS dS )Nh2zhttp/1.1r   r   r   r   r   selected_alpn_protocol   s   z$MockSSLObject.selected_alpn_protocolN)r   r   r   r   )__name__
__module____qualname__r   r   r   r   r   r   r      s    
r   c                   @  ^   e Zd Zd$d%dd	Zd&d'ddZd&d(ddZd)ddZ	
	
d*d+ddZd,d d!Zd-d"d#Z	d
S ).
MockStreamFbufferlist[bytes]r   r   r   Nonec                 C     || _ || _d| _d S NF_bufferr   _closedr   r!   r   r   r   r   r         
zMockStream.__init__N	max_bytesinttimeoutfloat | Nonebytesc                 C  s$   | j rtd| jsdS | jdS NzConnection closed    r   r(   r   r'   popr   r+   r-   r   r   r   read   s
   zMockStream.readc                 C     d S r   r   r   r!   r-   r   r   r   write%      zMockStream.writec                 C  s
   d| _ d S NTr(   r   r   r   r   close(   r   zMockStream.closessl_contextssl.SSLContextserver_hostname
str | Noner
   c                 C  s   | S r   r   r   r=   r?   r-   r   r   r   	start_tls+   s   zMockStream.start_tlsinfor   
typing.Anyc                 C     |dkr
t | jdS d S NZ
ssl_objectr   r   r   r   rC   r   r   r   get_extra_info3      zMockStream.get_extra_infoc                 C     dS )Nz<httpcore.MockStream>r   r   r   r   r   __repr__6   r9   zMockStream.__repr__Fr!   r"   r   r   r   r#   r   r+   r,   r-   r.   r   r/   r!   r/   r-   r.   r   r#   r   r#   NN)r=   r>   r?   r@   r-   r.   r   r
   rC   r   r   rD   r   )
r   r   r   r   r5   r8   r<   rB   rJ   rM   r   r   r   r   r           

r    c                   @  D   e Zd Zdd dd	Z	
	
	
d!d"ddZ	
	
d#d$ddZd%ddZd
S )&MockBackendFr!   r"   r   r   r   r#   c                 C     || _ || _d S r   r'   r   r)   r   r   r   r   ;      
zMockBackend.__init__Nhostr   portr,   r-   r.   local_addressr@   socket_options%typing.Iterable[SOCKET_OPTION] | Noner
   c                 C     t t| j| jdS NrG   r    listr'   r   r   r[   r\   r-   r]   r^   r   r   r   connect_tcp?   s   zMockBackend.connect_tcppathc                 C  r`   ra   rb   r   rf   r-   r^   r   r   r   connect_unix_socketI   s   zMockBackend.connect_unix_socketsecondsfloatc                 C  r6   r   r   r   ri   r   r   r   sleepQ   r9   zMockBackend.sleeprN   rO   NNN)r[   r   r\   r,   r-   r.   r]   r@   r^   r_   r   r
   rS   )rf   r   r-   r.   r^   r_   r   r
   ri   rj   r   r#   r   r   r   r   re   rh   rl   r   r   r   r   rW   :       rW   c                   @  r   ).AsyncMockStreamFr!   r"   r   r   r   r#   c                 C  r$   r%   r&   r)   r   r   r   r   V   r*   zAsyncMockStream.__init__Nr+   r,   r-   r.   r/   c                   s&   | j rtd| jsdS | jdS r0   r2   r4   r   r   r   r5   [   s   zAsyncMockStream.readc                      d S r   r   r7   r   r   r   r8   b      zAsyncMockStream.writec                   s   d| _ d S r:   r;   r   r   r   r   aclosee   s   
zAsyncMockStream.acloser=   r>   r?   r@   r   c                   s   | S r   r   rA   r   r   r   rB   h   s   zAsyncMockStream.start_tlsrC   r   rD   c                 C  rE   rF   rH   rI   r   r   r   rJ   p   rK   zAsyncMockStream.get_extra_infoc                 C  rL   )Nz<httpcore.AsyncMockStream>r   r   r   r   r   rM   s   r9   zAsyncMockStream.__repr__rN   rO   r   rP   rQ   rR   rS   )r=   r>   r?   r@   r-   r.   r   r   rT   r   )
r   r   r   r   r5   r8   rt   rB   rJ   rM   r   r   r   r   rq   U   rU   rq   c                   @  rV   )&AsyncMockBackendFr!   r"   r   r   r   r#   c                 C  rX   r   rY   r)   r   r   r   r   x   rZ   zAsyncMockBackend.__init__Nr[   r   r\   r,   r-   r.   r]   r@   r^   r_   r   c                      t t| j| jdS ra   rq   rc   r'   r   rd   r   r   r   re   |   s   zAsyncMockBackend.connect_tcprf   c                   rv   ra   rw   rg   r   r   r   rh      s   z$AsyncMockBackend.connect_unix_socketri   rj   c                   rr   r   r   rk   r   r   r   rl      rs   zAsyncMockBackend.sleeprN   rO   rm   )r[   r   r\   r,   r-   r.   r]   r@   r^   r_   r   r   rS   )rf   r   r-   r.   r^   r_   r   r   rn   ro   r   r   r   r   ru   w   rp   ru   )
__future__r   ssltyping_exceptionsr   baser   r   r   r	   r
   r   r    rW   rq   ru   r   r   r   r   <module>   s    	""