
    7ThQ                     P    S SK Jr  S SKJr  S SKrS SKJr  S SKJr   " S S5      r	g)    )md5)productN)make_path_posix)GLOB_EDGE_CASES_TESTSc                       \ rS rSrS rS rS rS rS rS r	S r
S	 r\R                  R                  \S
   \S   5      S 5       rS rS rS rS rS rSrg)AbstractGetTests
   c                    UnUnUR                  U5        UR                  U5      (       d   eU" US5      n	U" US5      n
UR                  U" US5      U5        UR                  U	5      (       d   eUR                  U" USS5      U5        UR                  U
5      (       d   eUR	                  X/5        UR                  U	5      (       a   eUR                  U
5      (       a   eUR                  U" US5      US-   5        UR                  U5      (       d   eUR                  U	5      (       d   eUR                  U" USS5      US-   5        UR                  U
5      (       d   eg )Nfile2subfile1subdir/)mkdirisdirgetisfilermexists)selffsfs_joinfs_bulk_operations_scenario_0local_fs
local_joinlocal_targetsourcetargettarget_file2target_subfile1s              Q/var/www/auris/envauris/lib/python3.13/site-packages/fsspec/tests/abstract/get.py#test_get_file_to_existing_directory4AbstractGetTests.test_get_file_to_existing_directory   sQ    /v~~f%%%%!&'2$VZ8 	wvw'0|,,,, 	wvx4f=//// 	\34??<0000???3333 	wvw'#6~~f%%%%|,,,,
wvx4fslC////    c                    UnUnUR                  U5        UR                  U" USS5      U" US5      5        UR                  U5      (       d   eUR                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eg )Nr   r   znewdir/newdirr   r   r   r   	r   r   r   r   r   r   r   r   r   s	            r    test_get_file_to_new_directory/AbstractGetTests.test_get_file_to_new_directory3   s     /v
FHj1:fi3P	
 ~~f%%%%~~j:;;;;z&(JGHHHHr#   c                     UnUnUR                  U5        UR                  U" USS5      U" US5      5        UR                  U" US5      5      (       d   eg )Nr   r   newfile)r   r   r   r'   s	            r    +test_get_file_to_file_in_existing_directory<AbstractGetTests.test_get_file_to_file_in_existing_directoryJ   sT     /v
wvx4j6STz&)<====r#   c                     UnUnUR                  U5        UR                  U" USS5      U" USS5      5        UR                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eg )Nr   r   r%   r+   r&   r'   s	            r    &test_get_file_to_file_in_new_directory7AbstractGetTests.test_get_file_to_file_in_new_directory\   sz     /v
FHj1vx3	
 ~~j:;;;;z&(IFGGGGr#   c           	      B   UnUnUR                  U5        UR                  U5      (       d   e[        SS/SS/5       GH]  u  pU" US5      nU	(       a  US-  nU
(       a  US-   OUnUR                  X5        UR	                  U5      / :X  d   eUR                  XSS9  U	(       a  UR                  U" US5      5      (       d   eUR                  U" US5      5      (       d   eUR                  U" US5      5      (       d   eUR                  U" USS	5      5      (       d   eUR                  U" US5      5      (       a   eUR                  U" US5      U" US5      U" US5      /SS9  OUR                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USSS	5      5      (       d   eUR                  U" US5      SS9  UR	                  U5      / :X  d   eUR                  XSS
S9  U	(       a  UR                  U" US5      5      (       d   eUR                  U" US5      5      (       d   eUR                  U" US5      5      (       a   eUR                  U" US5      5      (       a   eUR                  U" US5      U" US5      /SS9  OUR                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       a   eUR                  U" US5      SS9  UR	                  U5      / :X  a  GM^   e   g )NFTr   r   	recursiver   subfile2	nesteddir
nestedfile   r3   maxdepth)r   r   zipr   lsr   r   r   r   r   r   r   r   r   r   r   r   source_slashtarget_slashsts                r    (test_get_directory_to_existing_directory9AbstractGetTests.test_get_directory_to_existing_directoryr   s    /v~~f%%%%*-udmeT]*K&L)AS ,&A FF1L;;v&",,, FF14F(z&*'EFFFFz&*'EFFFF~~j&EFFFFz&+|'TUUUU#??:fh+GHHHH"6:6"6:6"6;7
 #    ~~j&BCCCCz&(J'OPPPPz&(J'OPPPP~~j;&OPPPPvxlK    Jvx8DI;;v&",,, FF14!F4z&*'EFFFFz&*'EFFFF#??:fk+JKKKK#??:fh+GHHHH"6:6"6:6 #    ~~j&BCCCCz&(J'OPPPPz&(J'OPPPP#??:fh+TUUUUJvx8DI;;v&",,,{ +Lr#   c           	         UnUnUR                  U5        [        SS/SS/5       GH:  u  pU" US5      nU	(       a  US-  nU" US5      nU
(       a  US-  nUR                  X5        UR                  U5      / :X  d   eUR                  XSS9  UR	                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR	                  U" USS	5      5      (       d   eUR                  U" USS	S
5      5      (       d   eUR                  U" US5      5      (       a   eUR                  U" US5      SS9  UR                  U5      / :X  d   eUR                  XSSS9  UR	                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS	5      5      (       a   eUR                  U" US5      5      (       a   eUR                  U" US5      SS9  UR                  U" US5      5      (       d  GM;   e   g )NFTr   r   r%   r2   r   r4   r5   r6   r7   r8   )r   r:   r   r;   r   r   r   r   r<   s                r    #test_get_directory_to_new_directory4AbstractGetTests.test_get_directory_to_new_directory   sb    /v*-udmeT]*K&L)AS68,AS FF1L;;v&",,, FF14F(>>*VX">??????:fh
#KLLLL??:fh
#KLLLL>>*VX{"KLLLL??68[,G     z&('CDDDDKK
684KE;;v&",,, FF14!F4>>*VX">??????:fh
#KLLLL??:fh
#KLLLLz&(K'PQQQQz&('CDDDDKK
684KEz&('CDDDDG +Lr#   c           
         UnUnUR                  U5        S GH  n	U	(       a  US-   OUn
UR                  U" USS5      U
5        UR                  U" US5      5      (       d   eUR                  U" US5      5      (       d   eUR                  U" US5      5      (       a   eUR	                  U" USS5      5      (       a   eUR	                  U" US5      5      (       a   eUR                  U" US5      U" US5      /S	S
9  UR                  U5      / :X  d   e[        SS/S	S/5       GH  u  pUR                  U" USU5      XS
9  UR                  U" US5      5      (       d   eUR                  U" US5      5      (       d   eUR                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR	                  U" US5      5      (       a   eUR                  U" US5      U" US5      U" US5      /S	S
9  UR                  U5      / :X  d   eUR                  U" USU5      XSS9  UR                  U" US5      5      (       d   eUR                  U" US5      5      (       d   eUR	                  U" US5      5      (       a   eUR	                  U" US5      5      (       a   eUR                  U" US5      U" US5      /S	S
9  UR                  U5      / :X  a  GM   e   GM     g )NFTr   r   *r   r4   r5   r6   Tr2   **Fr7   r8   )r   r   r   r   r   r   r;   r:   r   r   r   r   r   r   r   r   r   r>   r@   globr3   s                r    #test_get_glob_to_existing_directory4AbstractGetTests.test_get_glob_to_existing_directory   s    /v)L ,&A FF768S115??:fj#ABBBB??:fj#ABBBB~~j&EFFFFz&+|'TUUUUz&('CDDDDKKvz2vz2    ;;v&",,, $'T{T5M#Bwvx6Oz&*'EFFFFz&*'EFFFF~~j&EFFFFz&+|'TUUUU#??:fh+GHHHH"6:6"6:6"6;7
 #    {{6*b000 FHd3QVW    z&*'EFFFFz&*'EFFFF#??:fk+JKKKK#??:fh+GHHHH"6:6"6:6 #    {{6*b000E $C+ *r#   c           
      t   UnUnUR                  U5        S GH  n	U" US5      n
U	(       a  U
S-  n
UR                  U" USS5      U
5        UR                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR	                  U" USS5      5      (       a   eUR	                  U" USSS	5      5      (       a   eUR	                  U" US5      5      (       a   eUR	                  U" USS5      5      (       a   eUR                  U" US5      S
S9  UR                  U5      / :X  d   e[        SS/S
S/5       GHG  u  pUR                  U" USU5      XS9  UR                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USSS	5      5      (       d   eUR	                  U" US5      5      (       a   eUR	                  U" USS5      5      (       a   eUR                  U" US5      S
S9  UR	                  U" US5      5      (       a   eUR                  U" USU5      XSS9  UR                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR	                  U" USS5      5      (       a   eUR	                  U" US5      5      (       a   eUR	                  U" USS5      5      (       a   eUR                  UR                  USS9S
S9  UR	                  U" US5      5      (       d  GMH   e   GM     g )NrG   r%   r   r   rH   r   r4   r5   r6   Tr2   rI   Fr7   r8   )detail)r   r   r   r   r   r   r;   r:   rJ   s                r    test_get_glob_to_new_directory/AbstractGetTests.test_get_glob_to_new_directory=  s    /v)L)AS FF768S115>>*VX">??????:fh
#KLLLL??:fh
#KLLLLz&(K'PQQQQ68[,G     z&('CDDDDz&(H'MNNNNKK
684KE;;v&",,, $'T{T5M#Bwvx6O~~j&BCCCCz&(J'OPPPPz&(J'OPPPP~~j;&OPPPPvxlK    $??:fh+GHHHH#??:fh+QRRRRJvx8DI#??:fh+GHHHH FHd3QVW    ~~j&BCCCCz&(J'OPPPPz&(J'OPPPP#??:fh+TUUUU#??:fh+GHHHH#??:fh+QRRRRHKKuK=N#??:fh+GHHHH7 $C+ *r#   argnames	argvaluesc                    UnU
n[        SS/SS/5       H  u  pUR                  U5        U(       a	  U	" US5      OUnU(       a  US-   OUnUR                  U" X5      XUS9  UR                  U5      nU(       a$  U Vs/ s H  n[	        U	" USU5      5      PM     nnO"U Vs/ s H  n[	        U	" UU5      5      PM     nn[        U5      [        U5      :X  d   e UR                  USS9  M     g s  snf s  snf ! [         a     M  f = f)NTFr%   r   r8   r2   )r   r   r   findr   sortedr   FileNotFoundError)r   pathr3   r9   expectedr   r   fs_glob_edge_cases_filesr   r   r   r   r   new_dirr>   r@   outputpprefixed_expecteds                      r    test_get_glob_edge_cases)AbstractGetTests.test_get_glob_edge_cases~  s"   $ *%,dE]T5M%J!GNN6"07
68,VA'CQAFF76(!8FT]]6*FNV%NVOJvx$CDh " %!
 EM%DLqOJvq$9:H " % &>V,=%>>>>Fd3) &K%% % s   >C0"C5C::
DDc           	         UnUnUR                  U5        U" US5      U" US5      U" USS5      /n	S H  n
U
(       a  US-   OUnUR                  X5        UR                  U" US5      5      (       d   eUR                  U" US5      5      (       d   eUR                  U" US5      5      (       d   eUR                  U" US5      U" US5      U" US5      /SS9  UR	                  U5      / :X  a  M   e   g )	Nfile1r   r   r   rG   r   Tr2   )r   r   r   r   r;   )r   r   r   r   r   r   r   r   r   source_filesr>   r@   s               r    ,test_get_list_of_files_to_existing_directory=AbstractGetTests.test_get_list_of_files_to_existing_directory  s    /v FG$FG$FHj1
 *L ,&AFF<#??:fg#>??????:fg#>??????:fj#ABBBBKKvw/vw/vz2
    ;;v&",,,! *r#   c                    UnUnUR                  U5        U" US5      U" US5      U" USS5      /n	UR                  X" US5      S-   5        UR                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" USS5      5      (       d   eg )Nrb   r   r   r   r%   r   r&   )
r   r   r   r   r   r   r   r   r   rc   s
             r    'test_get_list_of_files_to_new_directory8AbstractGetTests.test_get_list_of_files_to_new_directory  s     /v FG$FG$FHj1
 	|Z9C?@~~j:;;;;z&(GDEEEEz&(GDEEEEz&(JGHHHHr#   c                    U" US5      nU" US5      nUR                  U5        UR                  U5        Un	UR                  U	5      (       a   e[        S5       H  n
UR	                  XySS9  UR                  U	5      (       d   eU
S:X  a@  UR                  U" U	S5      5      (       d   eUR                  U" U	S5      5      (       a   eMq  UR                  U" U	S5      5      (       d   eUR                  U" U	S5      5      (       d   eUR                  U" U	SS5      5      (       a  M   e   UR                  U	SS9  UR                  U	5      (       a   e[        S5       Hm  n
UR	                  US-   U	SS9  UR                  U	5      (       d   eUR                  U" U	S5      5      (       d   eUR                  U" U	S5      5      (       d  Mm   e   g )Nsrcfile   Tr2   r   r   )r   touchr   ranger   r   r   r   )r   r   r   fs_pathr   r   r   rj   src_filer   loops              r    test_get_directory_recursive-AbstractGetTests.test_get_directory_recursive  s   
 gu%3'

 ??6****!HDFF3$F/>>&))))qyz&&'ABBBB#??:fe+DEEEEEz&&'ABBBB~~j&?@@@@z&%'HIIII  	Fd+ ??6****!HDFF39fF5>>&))))??:ff#=>>>>z&%'@AAAA	 r#   c                    UnUnUR                  U" US5      USS9  UR                  U" US5      5      (       d   eUR                  U" US5      5      (       a   eUR                  U" US5      /5        UR                  U5      / :X  d   eUR                  U" US5      USS9  UR	                  U" US5      5      (       d   eUR                  U" USS5      5      (       d   eUR                  U" US5      5      (       d   eg )Nr   Tr2   zsubfile.txtz
subdir.txtzsubdir*)r   r   r   r;   r   )	r   r   r   r   r   r   %fs_dir_and_file_with_same_name_prefixr   r   s	            r    6test_get_directory_without_files_with_same_name_prefixGAbstractGetTests.test_get_directory_without_files_with_same_name_prefix  s     7 	wvx(&DAz&-@AAAA??:fl#CDDDDZ678{{6"b((( 	wvy)6TB~~j:;;;;z&(MJKKKKz&,?@@@@r#   c           
         UnUn/ n	/ n
[        S5       Hq  n[        [        U5      R                  S5      5      R	                  5       nU	R                  U" X| S35      5        U
R                  [        U" X S35      5      5        Ms     UR                  XS9  [        S5       H6  nUR                  X   5      R                  S5      nU[        U5      :X  a  M6   e   g )Nr	   zutf-8z.txt)rpathlpath)
rn   r   strencode	hexdigestappendr   r   catdecode)r   r   r   r   r   r   fs_10_files_with_hashed_namesr   r   rc   destination_filesihashed_ifile_contents                 r    ,test_get_with_source_and_destination_as_list=AbstractGetTests.test_get_with_source_and_destination_as_list/  s     / rA3q6==12<<>H*D0A BC$$
6Zt3D EF  	\;rA#<<(9(<=DDWML3q6))) r#    N)__name__
__module____qualname____firstlineno__r!   r(   r,   r/   rA   rD   rL   rP   pytestmarkparametrizer   r_   rd   rg   rr   rv   r   __static_attributes__r   r#   r    r   r   
   s    &0PI.>$H,M-^2EhF1P?IB [[j)k*(	(T%-NI6"BHA:*r#   r   )
hashlibr   	itertoolsr   r   fsspec.implementations.localr   fsspec.tests.abstract.commonr   r   r   r#   r    <module>r      s        8 >A	* A	*r#   