U
    Nvf                     @   st   d dl Z d dlmZmZ d dlmZ d dlmZ d dlm	Z	m
Z
 edd Zeddd	ged
ddgdd ZdS )    N)make_memmapconcurrency_safe_rename)
with_numpy)parametrize)Paralleldelayedc                 C   sB   |  dj}dtj }tjd }t||d|d}|j|ks>td S )Nz	test.mmap      zw+)shapemodeoffset)joinstrpathmmapZALLOCATIONGRANULARITYr   r   AssertionError)tmpdirfnamesizer   Z
memmap_obj r   >/tmp/pip-unpacked-wheel-dylwa62s/joblib/test/test_backports.pytest_memmap	   s
    

r   dst_contentzdst contentbackend	threadingc                    s   fddt dD }|D ]}|d qd |d k	rF | td|d fdd|D    spt  dkst|D ]}| rtqd S )	Nc                    s   g | ]}  d | qS )zsrc_%d)r   ).0i)r   r   r   
<listcomp>   s     z0test_concurrency_safe_rename.<locals>.<listcomp>   zsrc contentdst)Zn_jobsr   c                 3   s    | ]}t t|j jV  qd S )N)r   r   r   )r   src_path)dst_pathr   r   	<genexpr>   s   z/test_concurrency_safe_rename.<locals>.<genexpr>)rangewriter   r   existsr   read)r   r   r   Z	src_pathsr   r   )r    r   r   test_concurrency_safe_rename   s    

r&   )r   Zjoblib.backportsr   r   Zjoblib.test.commonr   Zjoblib.testingr   Zjoblibr   r   r   r&   r   r   r   r   <module>   s   
