o
    Y²eü  ã                   @   sT   d dl Z d dlZd dlZd dlmZ defdd„Zddd„Zddd	„Zdd
d„ZdS )é    N)ÚFakeNetÚreturnc                  C   s   t ƒ } |  ¡  | S ©N)r   Úenable)Úfn© r   ú<usr/lib/python3.10/site-packages/trio/_tests/test_fakenet.pyr   	   s   r   c                  Ã   s<  t ƒ  tjjtjjd} tjjtjjd}|  d¡I d H  |  ¡ \}}|dks*J ‚|dks0J ‚t t¡}|  d¡I d H  W d   ƒ n1 sHw   Y  |j	j
t
jksVJ ‚| d|  ¡ ¡I d H  |  d¡I d H \}}|dksqJ ‚|| ¡ ksyJ ‚|  d| ¡ ¡I d H  | d¡I d H \}}|dks”J ‚||  ¡ ksœJ ‚d S )	N©Útype©ú	127.0.0.1r   r   r   )z	192.0.2.1r   ó   xyzé
   s   abc)r   ÚtrioÚsocketÚ
SOCK_DGRAMÚbindÚgetsocknameÚpytestÚraisesÚOSErrorÚvalueÚerrnoÚEINVALÚsendtoÚrecvfrom)Ús1Ús2ÚipÚportÚexcÚdataÚaddrr   r   r   Útest_basic_udp   s(   €ÿr#   c                  Ã   sj   t ƒ  tjjtjjd} tjjtjjd}|  d¡I d H  | d|  ¡ ¡I d H  |  d¡I d H \}}d S )Nr	   r   r   r   )r   r   r   r   r   r   r   r   )r   r   r!   r"   r   r   r   Útest_msg_trunc'   s   €r$   c                   Ã   sB   t ƒ  t t¡ tj ¡  W d   ƒ d S 1 sw   Y  d S r   )r   r   r   ÚNotImplementedErrorr   r   r   r   r   r   Útest_basic_tcp0   s
   €"ÿr&   )r   N)	r   r   r   Ztrio.testing._fake_netr   r   r#   r$   r&   r   r   r   r   Ú<module>   s    

	