o
    US`c                     @   s<   d dl Z d dlZddlmZ ddlmZ dd Zdd ZdS )	    N   )assert_checkpoints)abcc               	      s   t jG dd dtj} |  4 I d H }t|| sJ |jg ks#J W d   I d H  n1 I d H s3w   Y  |jdgks@J d S )Nc                   @   s    e Zd ZejedZdd ZdS )z)test_AsyncResource_defaults.<locals>.MyAR)factoryc                    s   | j d d S )Nac)recordappendself r   >/usr/local/lib/python3.10/dist-packages/trio/tests/test_abc.pyaclose   s   z0test_AsyncResource_defaults.<locals>.MyAR.acloseN)__name__
__module____qualname__attriblistr   r   r   r   r   r   MyAR
   s    r   r   )r   stabcZAsyncResource
isinstancer   )r   Zmyarr   r   r   test_AsyncResource_defaults	   s   (r   c                  C   sX   G dd dt jt j } |  }tt |d  W d    d S 1 s%w   Y  d S )Nc                   @   s0   e Zd ZdZdd Zdd Zdd Zdd	 Zd
S )z)test_abc_generics.<locals>.SlottedChannel)xc                 S      t NRuntimeErrorr
   valuer   r   r   send_nowait#      z5test_abc_generics.<locals>.SlottedChannel.send_nowaitc                    s   t r   r   r   r   r   r   send&      z.test_abc_generics.<locals>.SlottedChannel.sendc                 S   r   r   r   r	   r   r   r   clone)   r!   z/test_abc_generics.<locals>.SlottedChannel.clonec                    s   d S r   r   r	   r   r   r   r   ,   r#   z0test_abc_generics.<locals>.SlottedChannel.acloseN)r   r   r   	__slots__r    r"   r$   r   r   r   r   r   SlottedChannel    s    r&   )r   ZSendChannelZStreampytestZraisesr   r    )r&   Zchannelr   r   r   test_abc_generics   s
   "r(   )	r'   r   testingr    r   r   r   r(   r   r   r   r   <module>   s    