
    tf

                    ^    d dl mZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d Zd Zd Zd	 Zd
 Zy)    )annotations)Callback)get_sync)get)addc                     dg G fddt               }  |        5  t        ddid       d d d        d   du sJ y # 1 sw Y   xY w)NFc                      e Zd Z fdZy)'test_start_callback.<locals>.MyCallbackc                    dd<   y NTr    )selfdskflags     c/var/www/html/software/conda/envs/higlass/lib/python3.12/site-packages/dask/tests/test_callbacks.py_startz.test_start_callback.<locals>.MyCallback._start   s    DG    N)__name__
__module____qualname__r   r   s   r   
MyCallbackr
      s    	r   r   x   r   Tr   r   r   r   s    @r   test_start_callbackr   	   sR    7DX  
  #q3  7d??   	   >Ac                     dg G fddt               }  |        5  t        ddid       d d d        d   du sJ y # 1 sw Y   xY w)NFc                      e Zd Z fdZy)-test_start_state_callback.<locals>.MyCallbackc                J    dd<   |d   dk(  sJ t        |d         dk(  sJ y )NTr   r   r   cache)len)r   r   stater   s      r   _start_statez:test_start_state_callback.<locals>.MyCallback._start_state   s3    DGs8q= =uW~&!+++r   N)r   r   r   r&   r   s   r   r   r!      s    	,r   r   r   r   r   Tr   r   s    @r   test_start_state_callbackr'      sR    7D,X , 
  #q3  7d??   r   c                 n   dg G fddt               } dd fi}	  |        5  t        |d       d d d        d   sJ dd<   	  |        5  t        |d       d d d        d   sJ d }d|fi}dd<   	  |        5  t        |d       d d d        d   sJ y # 1 sw Y   kxY w# t        $ r}t        |t              sJ Y d }~d }~ww xY w# 1 sw Y   vxY w# t        $ r}t        |t              sJ Y d }~d }~ww xY w# 1 sw Y   yxY w# t        $ r}t        |t              sJ Y d }~d }~ww xY w)NFc                      e Zd Z fdZy)-test_finish_always_called.<locals>.MyCallbackc                    dd<   |sJ y r   r   )r   r   r%   erroredr   s       r   _finishz5test_finish_always_called.<locals>.MyCallback._finish)   s    DGN7r   N)r   r   r   r-   r   s   r   r   r*   (   s    	r   r   r   c                     ddz  S )Nr   r   r   r   r   r   <lambda>z+test_finish_always_called.<locals>.<lambda>-   s
    Q r   r   c                     t               N)KeyboardInterruptr   r   r   raise_keyboardz1test_finish_always_called.<locals>.raise_keyboardA   s    !!r   )r   r   	Exception
isinstanceZeroDivisionErrorget_threadedBaseExceptionr2   )r   r   er3   r   s       @r   test_finish_always_calledr:   %   sO   7DX 
  
!C0\ 	S#	 7N7 DG0\ 	#c"	# 7N7" !
"CDG0\ 	S#	 7N75	 	 0!.///0	# 	# 0!.///0	 	 0!.///0s   B' BB' C CC 7D >DD B$ B' '	C0CCCC 	D $C;;D DD 	D4D//D4c                 b    G d dt               }  |        t        ddft        ddfdfd} |        }|dft        d	dfd
}|5  t        |d       d d d        t         j                  rJ |j                  |k(  sJ j                  k(  sJ t         j                  rJ y # 1 sw Y   PxY w)Nc                      e Zd Zd Zd Zy)*test_nested_schedulers.<locals>.MyCallbackc                    || _         y r1   r   )r   r   s     r   r   z1test_nested_schedulers.<locals>.MyCallback._startP   s	    DHr   c                $    || j                   v sJ y r1   r?   )r   keyr   r%   s       r   _pretaskz3test_nested_schedulers.<locals>.MyCallback._pretaskS   s    $((?"?r   N)r   r   r   r   rB   r   r   r   r   r=   O   s    		#r   r   r      r      )r   yc                v    t         j                  rJ 5  t        d      | z   cd d d        S # 1 sw Y   y xY w)NrE   )r   activer7   )r   inner_callback	inner_dsks    r   nested_callz+test_nested_schedulers.<locals>.nested_callY   s7    ??"" 	4	3/!3	4 	4 	4s   /8a)rK   brL   )r   r   r7   rG   r   )r   rJ   outer_callback	outer_dskrH   rI   s       @@r   test_nested_schedulersrO   N   s    #X #  \NAqkc16I4
  \N"A&c3];I	 %Y$% ******% %s   	B%%B.c                     t         j                  rJ t               5  t         j                  sJ 	 d d d        t         j                  rJ y # 1 sw Y   xY wr1   )r   rG   r   r   r   $test_add_remove_mutates_not_replacesrQ   j   sF    	   s   AAN)
__future__r   dask.callbacksr   
dask.localr   dask.threadedr   r7   dask.utils_testr   r   r'   r:   rO   rQ   r   r   r   <module>rW      s.    " #  - 
&R8r   