U
    nËj
  ã                   @   sj   d dl Z d dlZd dlZddlmZmZmZmZ dd„ Zdd„ Z	dd	„ Z
ejjejd
kdd�dd„ ƒZdS )é    Né   )Úcurrent_async_libraryÚAsyncLibraryNotFoundErrorÚcurrent_async_library_cvarÚthread_localc               	   C   sf   t  t¡� tƒ  W 5 Q R X t d¡} ztƒ dks6t‚W 5 t | ¡ X t  t¡� tƒ  W 5 Q R X d S ©Nzgeneric-lib)ÚpytestÚraisesr   r   r   ÚsetÚresetÚAssertionError)Útoken© r   ú?/tmp/pip-unpacked-wheel-ttuwgzwd/sniffio/_tests/test_sniffio.pyÚtest_basics_cvar   s    
r   c               	   C   sf   t  t¡� tƒ  W 5 Q R X tjd } t_ztƒ dks:t‚W 5 | t_X t  t¡� tƒ  W 5 Q R X d S r   )r   r	   r   r   r   Únamer   )Zold_namer   r   r   Útest_basics_tlocal   s    r   c               	      sn   dd l } t t¡� tƒ  W 5 Q R X g ‰ ‡ fdd„}|  |ƒ ¡ ˆ dgksNt‚t t¡� tƒ  W 5 Q R X d S )Nr   c                   “   s*   t ƒ dkst‚t ƒ dkst‚ˆ  d¡ d S )NÚasyncioT©r   r   Úappendr   ©Zranr   r   Úthis_is_asyncio0   s    z%test_asyncio.<locals>.this_is_asyncioT)r   r   r	   r   r   Úrunr   )r   r   r   r   r   Útest_asyncio(   s    r   )é   é   zEcurio broken on 3.12 (https://github.com/python-trio/sniffio/pull/42))Úreasonc               	      sl   dd l } t t¡� tƒ  W 5 Q R X g ‰ ‡ fdd„}|  |¡ ˆ dgksLt‚t t¡� tƒ  W 5 Q R X d S )Nr   c                   “   s*   t ƒ dkst‚t ƒ dkst‚ˆ  d¡ d S )NÚcurioTr   r   r   r   r   Úthis_is_curioJ   s    z!test_curio.<locals>.this_is_curioT)r   r   r	   r   r   r   r   )r   r   r   r   r   Ú
test_curio=   s    
r   )ÚosÚsysr   Ú r   r   r   r   r   r   r   ÚmarkZskipifÚversion_infor   r   r   r   r   Ú<module>   s   ý