U
    ?hR  ã                   @   sH   d dl Z d dlZd dlm  mZ d dlmZ eƒ dd„ ƒZdd„ ZdS )é    N)Úrun_in_parallelc                   C   s   t ddƒ t ddƒ d S )Ni † TF)Ú
_test_heap© r   r   úO/var/www/html/venv/lib/python3.8/site-packages/skimage/graph/tests/test_heap.pyÚ	test_heap   s    
r   c                 C   s$  t  d¡ dd„ t| d ƒD ƒ}|| }t ¡ }|rBt d| ¡}n
t d¡}tt|ƒƒD ]X}| 	|| |¡ || dk rŒ| 	d||  |¡ d||   k r¤dk rXn qX| 
¡  qXg }z| | 
¡ d ¡ W q¶ tk
rä   Y qèY q¶X q¶t ¡ }tdt|ƒƒD ]}|| ||d  ksþt‚qþ|| S )	Nr   c                 S   s   g | ]}t  d d¡‘qS )g      ð?g      Y@)ÚrandomÚuniform)Ú.0Úir   r   r   Ú
<listcomp>   s     z_test_heap.<locals>.<listcomp>é   é€   é   é2   é   )r   ÚseedÚrangeÚtimeÚperf_counterÚheapZFastUpdateBinaryHeapZ
BinaryHeapÚlenÚpushÚpopÚappendÚ
IndexErrorÚAssertionError)ÚnZfast_updateÚaÚt0Úhr
   ÚbÚt1r   r   r   r      s,    


r   )	r   r   Zskimage.graph.heapÚgraphr   Zskimage._shared.testingr   r   r   r   r   r   r   Ú<module>   s   
