
    >ie<                       d dl mZ d dlmZmZ d dlZ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	d
eddfeddfeddfdZddZd Zd Zd Zej                            deeg          d             Zd Zd Zd Zd Zd Zd ZdS )    )annotations)addmulN)Callback)ProgressBar)format_time)get_sync)get      abcd)r   r   r   r   e(   c                   |                                  \  }}|                    d          dk    sJ d |                    d          d                             d          D             \  }}}|dd|z  z   d	z   k    sJ |dk    sJ d S )
Nz100% Completedr   c              3  >   K   | ]}|                                 V  d S )N)strip).0is     Dlib/python3.11/site-packages/dask/diagnostics/tests/test_progress.py	<genexpr>z&check_bar_completed.<locals>.<genexpr>   s*      LL!''))LLLLLL    |[#])
readouterrcountsplit)capsyswidthouterrbarpercenttimes          r   check_bar_completedr+      s      ""HC99%&&!++++LLSYYt__R-@-F-Fs-K-KLLLC$#e#c)))))&&&&&&&r   c                $   t          j        d          }|                    ddd          }t                      5  |                                                                }d d d            n# 1 swxY w Y   |dk    sJ t          |            d S )Nz
dask.array)d   r-   f4)dtypechunks'  )pytestimportorskiponesr   sumcomputer+   )r$   dadatar&   s       r   test_array_computer9      s    		\	*	*B77:T*7==D	 # #hhjj  ""# # # # # # # # # # # # # # #%<<<<s   'A..A25A2c                D   t                      5  t          t          d          }d d d            n# 1 swxY w Y   |dk    sJ t          |            t          d          5  t          t          d          }d d d            n# 1 swxY w Y   t          | d           d S )Nr         )r%   )r   get_threadeddskr+   )r$   r&   s     r   test_progressbarr?   "   s   	 % %3$$% % % % % % % % % % % % % % %!8888	2			 % %3$$% % % % % % % % % % % % % % %#####s   155#BB	B	c                    t          d          5  t          t          d          }d d d            n# 1 swxY w Y   |                                 \  }}|dk    r|dk    sJ d S )Ng      $@r    )r   r=   r>   r!   )r$   r&   r'   s      r   test_minimum_timerB   ,   s    	T		 % %3$$% % % % % % % % % % % % % % %  ""HC"99s   266r
   c                    dd fi}	 t                      5 }t          |d           d d d            n# 1 swxY w Y   n# t          $ r Y nw xY w|j        rJ |j                                        rJ d S )Nr   c                     ddz  S )Nr   r    rE   r   r   <lambda>z!test_clean_exit.<locals>.<lambda>5   s
    Q r   )r   r=   ZeroDivisionError_running_timeris_alive)r
   r>   pbars      r   test_clean_exitrL   3   s     
!C]] 	#dc"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#   }{##%%%%%%%s'   ? 3? 7? 7? 
AAc                 j   t          j        t          d          5 } t          d          dk    sJ t          d          dk    sJ t          d          dk    sJ t          d	          d
k    sJ t          d          dk    sJ 	 d d d            n# 1 swxY w Y   t	          |           dk    sJ d S )Nzdask.utils.format_time)matchgffffff?z 1.4sg$@z10.4sgY@z 1min 40.4sg33333C@z16min 40.4sg33333@z 2hr 46min 40.4s   )r2   warnsFutureWarningr   len)records    r   test_format_timerT   ?   s
   	m+C	D	D	D :37****4  G++++5!!]22226""m33337##'999999: : : : : : : : : : : : : : : v;;!s   A*BBBc                   	 t           j        rJ t                      }|                                 t           j        sJ t	          t
          d           t          |            |                                 t           j        rJ 	 t           j                                         d S # t           j                                         w xY w)Nr   )	r   activer   registerr=   r>   r+   
unregisterclear)r$   ps     r   test_registerr[   J   s     ?"""MM	

S#F###	?""""s   BB' ' Cc                    t                      5  t          ddid           d d d            n# 1 swxY w Y   t          |            d S Nxr   )r   r=   r+   )r$   s    r   test_no_tasksr_   \   s    	 $ $c1Xs###$ $ $ $ $ $ $ $ $ $ $ $ $ $ $s   .22c                r   t          j        d          }ddlm} |                    d          } ||          }|5  t	                      5  t          dt          ddfid          dk    sJ 	 d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   t          |            |j        d         dk    sJ |5  t	                      5  t          t          ddft          ddfd	d
          dk    sJ 	 d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   t          |            d S )Ncacheyr   )Cacher1   r^   r   r      )r^   yrd   r;   )	r2   r3   
dask.cacherb   r   r=   r   r+   r8   )r$   ra   rb   r   ccs        r   test_with_cacherg   b   sq    **F      UA	qB	 > >]] 	> 	>sAqk 2C88A=====	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	>> > > > > > > > > > > > > > > 6#;!	 R R]] 	R 	RsAqkc1 F FLLPQQQQQQ	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	RR R R R R R R R R R R R R R R sk   B!A:.B:A>	>BA>	BBB D*D:DD
	
DD
	DD!$D!c                    ddt           ddft           ddfdt          ddfd}t                      5  t          |d	           d d d            n# 1 swxY w Y   t	          |            d S )
Nr   r   r   r   r   r   r   )r   r   r   r   r   fri   )r   r   r   r=   r+   )r$   r>   s     r   test_with_aliasrj   u   s    3_1a[3_ C 
  S#              s   AAAc                     t                      } | 5  t          ddid           d d d            n# 1 swxY w Y   t          | j        t                    sJ d S r]   )r   r=   
isinstancelast_durationfloat)rZ   s    r   test_store_timero      s    A	
 $ $c1Xs###$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ aou-------s   044)r   )
__future__r   operatorr   r   r2   dask.callbacksr   dask.diagnosticsr   dask.diagnostics.progressr   
dask.localr	   dask.threadedr
   r=   r>   r+   r9   r?   rB   markparametrizerL   rT   r[   r_   rg   rj   ro   rE   r   r   <module>ry      s   " " " " " "          # # # # # # ( ( ( ( ( ( 1 1 1 1 1 1       - - - - - -AS#sO3S/cSVXX' ' ' '     $ $ $# # # x 899& & :9&       $          &     . . . . .r   