
    Df                     <    d Z ddlmZ  G d d          Zd Zd ZdS )z%Tests for :py:mod:`cheroot.makefile`.    )makefilec                   *    e Zd ZdZd Zd Zd Zd ZdS )
MockSocketzA mock socket.c                     g | _         dS )z"Initialize :py:class:`MockSocket`.N)messages)selfs    I/var/www/media/lib/python3.11/site-packages/cheroot/test/test_makefile.py__init__zMockSocket.__init__	   s        c                     | j         sdS | j                             d          }t          |          D ]
\  }}|||<   t          |          S )z$Simulate ``recv_into`` for Python 3.r   )r   pop	enumeratelen)r   bufmsgindexbytes        r	   	recv_intozMockSocket.recv_into   sU    } 	1m""$S>> 	 	KE4CJJ3xxr   c                 Z    	 | j                             d          S # t          $ r Y dS w xY w)zSimulate ``recv`` for Python 2.r    )r   r   
IndexError)r   sizes     r	   recvzMockSocket.recv   s?    	=$$Q''' 	 	 	22	s    
**c                      t          |          S )zSimulate a send.)r   )r   vals     r	   sendzMockSocket.send   s    3xxr   N)__name__
__module____qualname____doc__r
   r   r   r    r   r	   r   r      sV                  r   r   c                      t                      } | j                            d           t          j        | d          }|                                 |j        dk    sJ dS )z!Reader should capture bytes read.   foor   N)r   r   appendr   MakeFileread
bytes_read)sockrfiles     r	   test_bytes_readr,   "   sZ    <<DM   dC((E	JJLLLq      r   c                      t                      } | j                            d           t          j        | d          }|                    d           |j        dk    sJ dS )z$Writer should capture bytes written.r#   ws   barr%   N)r   r   r&   r   r'   writebytes_written)r*   wfiles     r	   test_bytes_writtenr2   +   s_    <<DM   dC((E	KK!######r   N)r    cherootr   r   r,   r2   r!   r   r	   <module>r4      sm    + +             8! ! !$ $ $ $ $r   