U
    -e0                     @   s   G d d dZ dS )c                   @   sd   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd Zdd Zdd ZdS )AbstractGetTestsc                 C   s   |}|}| | ||s t||d}	||d}
|||d| ||	sTt|||dd| ||
svt||	|
g ||	rt||
rt|||d|d  ||st||	st|||dd|d  ||
std S )Nfile2subfile1subdir/)mkdirisdirAssertionErrorgetisfilermexists)selffsfs_joinfs_bulk_operations_scenario_0local_fs
local_joinlocal_targetsourcetargetZtarget_file2Ztarget_subfile1 r   Z/var/www/html/Darija-Ai-Train/env/lib/python3.8/site-packages/fsspec/tests/abstract/get.py#test_get_file_to_existing_directory   s$    



z4AbstractGetTests.test_get_file_to_existing_directoryc           	      C   sh   |}|}| | |||dd||d ||s:t|||dsNt|||ddsdtd S )Nr   r   znewdir/newdirr   r	   r   r   r
   	r   r   r   r   r   r   r   r   r   r   r   r   test_get_file_to_new_directory*   s    


 z/AbstractGetTests.test_get_file_to_new_directoryc           
      C   sD   |}|}	| |	 |||dd||	d |||	ds@td S )Nr   r   newfile)r   r	   r
   r   )
r   r   r   fs_pathr   r   r   r   r   r   r   r   r   +test_get_file_to_file_in_existing_directoryA   s
    
z<AbstractGetTests.test_get_file_to_file_in_existing_directoryc           	      C   s\   |}|}| | |||dd||dd |||dsBt|||ddsXtd S )Nr   r   r   r   r   r   r   r   r   &test_get_file_to_file_in_new_directoryT   s    



z7AbstractGetTests.test_get_file_to_file_in_new_directoryc                 C   s  |}|}| | tddgddgD ]X\}	}
||d}|	rD|d7 }|
rP|d n|}|j||dd |	r|||ds|t|||dst|||dst|||dd	st|j||d||d||dgdd n|||dst|||ddst|||dds&t|||dds>t|||ddd	sXt|j||ddd ||g ks$tq$d S )
NFTr   r   	recursiver   subfile2	nesteddir
nestedfile)r   zipr	   r
   r   r   r   lsr   r   r   r   r   r   r   r   r   Zsource_slashtarget_slashstr   r   r   (test_get_directory_to_existing_directoryj   s<    


	
z9AbstractGetTests.test_get_directory_to_existing_directoryc                 C   s  |}|}| | tddgddgD ]\}	}
||d}|	rB|d7 }||d}|
rX|d7 }|j||dd |||ds|t|||ddst|||ddst|||dd	st|||dd	d
st|j||ddd ||g ks$tq$d S )NFTr   r   r   r!   r   r#   r$   r%   )r   r&   r	   r   r   r
   r   r'   r(   r   r   r   #test_get_directory_to_new_directory   s(    



z4AbstractGetTests.test_get_directory_to_new_directoryc                 C   s   |}|}| | dD ]d}	|	r&|d n|}
|||dd|
 |||dsRt|||dsft|||drtqd S )N)Fr   r   *r   r#   )r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r)   r+   r   r   r   #test_get_glob_to_existing_directory   s    

z4AbstractGetTests.test_get_glob_to_existing_directoryc                 C   sd  |}|}| | dD ]F}	||d}
|	r2|
d7 }
|||dd|
 |||dsZt|||ddspt|||ddst|j||ddd	 ||g kst|j||dd|
dd	 |||dst|||ddst|||ddst|||dd
st|||dd
ds8t|j||ddd	 ||g kstqd S )NFTr   r   r   r.   r   r#   Tr!   r$   r%   )r   r	   r   r   r
   r   r'   r/   r   r   r   test_get_glob_to_new_directory   s.    




z/AbstractGetTests.test_get_glob_to_new_directoryc                 C   s   |}|}| | ||d||d||ddg}	dD ]~}
|
rD|d n|}||	| |||dsht|||ds|t|||dst||| ||g ks4tq4d S )Nfile1r   r   r   r1   r   )r   r	   r
   r   r   findr'   )r   r   r   r   r   r   r   r   r   source_filesr)   r+   r   r   r   ,test_get_list_of_files_to_existing_directory  s    


z=AbstractGetTests.test_get_list_of_files_to_existing_directoryc           
      C   s   |}|}| | ||d||d||ddg}	||	||dd  |||dsZt|||ddspt|||ddst|||ddstd S )Nr3   r   r   r   r   r   r   )
r   r   r   r   r   r   r   r   r   r5   r   r   r   'test_get_list_of_files_to_new_directory<  s    


z8AbstractGetTests.test_get_list_of_files_to_new_directoryc                 C   sR  ||d}||d}| | || |}	||	r:ttdD ]"}
|j||	dd ||	sBtqB|
dkr|||	dst|||	drtn>|||	dst|||	dst|||	ddst|j|	dd ||	rttdD ]R}
|j|d |	dd ||	s"t|||	ds8t|||	drtqd S )Nsrcfile   Tr!       r   )	r   touchr   r   ranger	   r   r
   r   )r   r   r   r   r   r   r   r8   Zsrc_filer   loopr   r   r   test_get_directory_recursiveW  s,    



z-AbstractGetTests.test_get_directory_recursiveN)__name__
__module____qualname__r   r   r   r    r,   r-   r0   r2   r6   r7   r?   r   r   r   r   r      s   (9,/ r   N)r   r   r   r   r   <module>       