o
    US`ce                     @   s:   d dl Z ddlmZ e dZdd Zdd Zd	d
 ZdS )    N   )_coretrio_testing_contextvarc               	      st   t d g   fdd} t 4 I d H }||  W d   I d H  n1 I d H s,w   Y   dgks8J d S )Nmainc                        t  }  |  d S Nr   getappendvaluerecord F/usr/local/lib/python3.10/dist-packages/trio/tests/test_contextvars.pychild      z'test_contextvars_default.<locals>.child)r   setr   open_nursery
start_soon)r   nurseryr   r   r   test_contextvars_default   s   
(r   c               	      s   t d g   fdd} t 4 I d H }||  W d   I d H  n1 I d H s,w   Y  t  } dgks<J |dksBJ d S )Nr   c                     s"   t d t  }  |  d S )Nr   )r   r   r	   r
   r   r   r   r   r      s   
z#test_contextvars_set.<locals>.childr   )r   r   r   r   r   r	   )r   r   r   r   r   r   test_contextvars_set   s   
(r   c               	      s   t d t } t d g   fdd}t 4 I d H }| |j| || W d   I d H  n1 I d H s<w   Y  t  }t ddhksOJ |dksUJ d S )Nr   Zsecond_mainc                     r   r   r   r   r   r   r   r   +   r   z$test_contextvars_copy.<locals>.child)	r   r   contextvarscopy_contextr   r   runr   r	   )contextr   r   r   r   r   r   test_contextvars_copy%   s   

(r   )r    r   
ContextVarr   r   r   r   r   r   r   r   <module>   s    
