
    7ThR                     D    S SK Jr  S SKJr  S SKrS SKJr   " S S5      rg)    )md5)productN)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)AbstractPutTests	   c                    UnUnUR                  U5        U(       d  UR                  U" US5      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dummyfile2subfile1subdir/)mkdirtouchisdirputisfilermexists)selffsfs_join	fs_target
local_join local_bulk_operations_scenario_0supports_empty_directoriessourcetargettarget_file2target_subfile1s              Q/var/www/auris/envauris/lib/python3.13/site-packages/fsspec/tests/abstract/put.py#test_put_file_to_existing_directory4AbstractPutTests.test_put_file_to_existing_directory
   sg    2
)HHWVW-.xxvw/!&*5 	z&'*F3yy&&&& 	z&(J7@yy)))) 	|-.99\****99_---- 	z&'*FSL9xxyy&&&&
z&(J7#Fyy))))    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   s           r!   test_put_file_to_new_directory/AbstractPutTests.test_put_file_to_new_directory5   s     2

vx4gfi6P	
 xxxx12222yy:>????r$   c                    UnUnUR                  U5        U(       d  UR                  U" US5      5        UR                  U5      (       d   eUR                  U" USS5      U" US5      5        UR	                  U" US5      5      (       d   eg )Nr
   r   r   newfile)r   r   r   r   r   )	r   r   r   r   r   r   r   r   r   s	            r!   +test_put_file_to_file_in_existing_directory<AbstractPutTests.test_put_file_to_file_in_existing_directoryE   s     2
)HHWVW-.xx
z&(J79STyy34444r$   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_put_file_to_file_in_new_directory7AbstractPutTests.test_put_file_to_file_in_new_directory[   sz     2

vx4FHi0	
 xx12222yy9=>>>>r$   c           	         UnUnUR                  U5        U(       d  U" US5      nUR                  U5        UR                  U5      (       d   e[        SS/SS/5       GHx  u  pU" US5      nU	(       a  US-  nU
(       a  US-   OUnUR	                  X5        UR                  USS9U(       a  / OW/: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SS9U(       a  / OW/: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SS9U(       a  / OW/:X  a  GMy   e   g )Nr
   FTr   r   detail	recursiver   subfile2	nesteddir
nestedfile   r6   maxdepth)	r   r   r   zipr   lsr   r   r   )r   r   r   r   r   r   r   r   r
   source_slashtarget_slashsts                r!   (test_put_directory_to_existing_directory9AbstractPutTests.test_put_directory_to_existing_directoryk   s    2
)FG,EHHUOxx*-udmeT]*K&L)AS ,&A FF1L555.0ug  
 FF14F(yy!<====yy!<====xx <====yyl!KLLLL99WVX%>????
3
34
 #   xx 9::::yy:!FGGGGyy:!FGGGGxx+ FGGGGyy;!UVVVVgfh/4@555.0ug  
 FF14!F4yy!<====yy!<====99WV[%ABBBB99WVX%>????
3
3 #   xx 9::::yy:!FGGGGyy:!FGGGG99WVX{%KLLLLgfh/4@555.0ug   +Lr$   c           	      x   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(       a  UR                  U5      / :X  d   eO4[        R
                  " [        5         UR                  U5        S S S 5        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" US5      5      (       a   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 ! , (       d  f       GN= f)NFTr   r   r&   r5   r   r7   r8   r9   r:   r;   )r   r=   r   r>   pytestraisesFileNotFoundErrorr   r   r   r   )r   r   r   r   r   r   r   r   r?   r@   rA   rB   s               r!   #test_put_directory_to_new_directory4AbstractPutTests.test_put_directory_to_new_directory   s    2
*-udmeT]*K&L)AS)AS FF1L)uuV}***]]#45EE&M 6 FF14F(88GFH5666699WVXzBCCCC99WVXzBCCCC88GFHkBCCCC99WVX{LQRRRRyy!:;;;;EE'&(+tE<yy!:;;;; FF14!F488GFH5666699WVXzBCCCC99WVXzBCCCCyy;!GHHHHyy!:;;;;EE'&(+tE<yy!:;;;;K +L 65s    J**
J9	c           
         UnUnUR                  U5        U(       d  U" US5      n	UR                  U	5        UR                  U5      (       d   e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SS9U(       a  / OW	/: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SS9U(       a  / OW	/:X  d   eUR                  U" USU5      UUS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SS9U(       a  / OW	/:X  a  GM   e   GM     g )Nr
   FTr   r   *r   r7   r8   r9   Tr5   Fr3   **r:   r;   )	r   r   r   r   r   r   r   r>   r=   )r   r   r   r   r   r   r   r   r   r
   r@   rB   globr6   s                 r!   #test_put_glob_to_existing_directory4AbstractPutTests.test_put_glob_to_existing_directory   s|    2
)FG,EHHUOxx)L ,&A FF:fh4a899WVZ8999999WVZ89999xx <====yyl!KLLLLyy!:;;;;EEFJ/FJ/    555.0ug  
 $'T{T5M#Bz&(D91Ryy!<====yy!<====xx <====yyl!KLLLL99WVX%>????
3
34
 #   uuVEu24B5'  
 vx6'	   yy!<====yy!<====99WV[%ABBBB99WVX%>????
3
3 #   uuVEu24B5'  O $C/ *r$   c           
      x   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" US5      5      (       a   e[        SS/S
S/5       GHA  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      U	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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" US5      S
S9  UR	                  U" US5      5      (       d  GMB   e   GM     g )NrL   r&   r   r   rM   r   r7   r8   r9   Tr5   rN   Fr:   r;   )r   r   r   r   r   r   r=   )r   r   r   r   r   r   r   r   r@   rB   rO   r6   s               r!   test_put_glob_to_new_directory/AbstractPutTests.test_put_glob_to_new_directoryL  s    2
)L)AS FF:fh4a888GFH5666699WVXzBCCCC99WVXzBCCCCyy;!GHHHHyy;!UVVVVyy!:;;;;yy8!DEEEEEE'&(+tE<yy!:;;;; $'T{T5M#Bz&(D91Rxx 9::::yy:!FGGGGyy:!FGGGGxx+ FGGGGyy;!UVVVV99WVX%>????99WVXx%HIIIIgfh/4@99WVX%>???? vx6'	   xx 9::::yy:!FGGGGyy:!FGGGG99WVX{%KLLLL99WVX%>????99WVXx%HIIIIgfh/4@99WVX%>????9 $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" USU5      5      PM     nnOU Vs/ s H  nU
" 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   r;   r5   )r   r   r   findsortedr   rH   )r   pathr6   r<   expectedr   r   r   local_glob_edge_cases_filesr   fs_sanitize_pathr   r   new_dirr@   rB   outputpprefixed_expecteds                      r!   test_put_glob_edge_cases)AbstractPutTests.test_put_glob_edge_cases  s#   $ -%,dE]T5M%J!GHHV-4)&A'CQAFF:f+QhFWWWV_FLT%LTq$WVXq%ABH " %!
 CK%BJQ$WVQ%78( " % &>V,=%>>>>f-) &K%% % s   >C*C/C44
DDc           	      p   UnUnUR                  U5        U(       d  U" US5      n	UR                  U	5        UR                  U5      (       d   e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S
S9U(       a  / OW	/:X  a  M   e   g )Nr
   file1r   r   r   rL   r   Tr5   Fr3   )r   r   r   r   r   r   r>   )r   r   r   r   r   r   r   r   r   r
   source_filesr@   rB   s                r!   ,test_put_list_of_files_to_existing_directory=AbstractPutTests.test_put_list_of_files_to_existing_directory  sN    2
)FG,EHHUOxx vw'vw'vx4
 *L ,&AFF<#99WVW5666699WVW5666699WVZ89999EEFG,FG,FJ/
    555.0ug  ! *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 )Nre   r   r   r   r&   r   r'   )	r   r   r   r   r   r   r   r   rf   s	            r!   'test_put_list_of_files_to_new_directory8AbstractPutTests.test_put_list_of_files_to_new_directory  s     2
 vw'vw'vx4
 	|WVX6<=xx12222yy7;<<<<yy7;<<<<yy:>????r$   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   Tr5   r   r   )r   r   r   ranger   r   r   r   )r   r   r   r   local_fsr   
local_pathrm   src_filer   loops              r!   test_put_directory_recursive-AbstractPutTests.test_put_directory_recursive  s   
 U+c6*sx  99V$$$$!HDFF3$F/88F####qyyy!8999999WVU%;<<<<<yy!89999xx 67777yy!?@@@@  	f% 99V$$$$!HDFF39fF588F####99WVV45555yy!78888	 r$   c                 D   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(       a  UR                  U5      / :X  d   eOUR	                  U5      (       a   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   Tr5   zsubfile.txtz
subdir.txtzsubdir*)r   r   r   r>   r   r   )	r   r   r   r   r   (local_dir_and_file_with_same_name_prefixr   r   r   s	            r!   6test_put_directory_without_files_with_same_name_prefixGAbstractPutTests.test_put_directory_without_files_with_same_name_prefix  s    : 	z&(+Y$GyyM:;;;;99WY=>>>>
wv}-./%55=B&&&yy(((( 	z&),i4Hxx	845555yyHmDEEEEyyL9::::r$   c                    UnUn/ n/ n	[        S5       Hh  n
[        [        U
5      R                  S5      5      R	                  5       nUR                  U" Xk S35      5        U	R                  U" X{ S35      5        Mj     UR                  XS9  [        S5       H6  n
UR                  X   5      R                  S5      nU[        U
5      :X  a  M6   e   g )N
   zutf-8z.txt)lpathrpath)	rp   r   strencode	hexdigestappendr   catdecode)r   r   r   r   r    local_10_files_with_hashed_namesr   r   rf   destination_filesihashed_ifile_contents                r!   -test_copy_with_source_and_destination_as_list>AbstractPutTests.test_copy_with_source_and_destination_as_list;  s     2 rA3q6==12<<>H
6Zt3D EF$$WVz5F%GH  	\;rA66"3"67>>wGL3q6))) r$    N)__name__
__module____qualname____firstlineno__r"   r)   r-   r0   rC   rI   rP   rS   rF   markparametrizer   rb   rg   rj   ru   ry   r   __static_attributes__r   r$   r!   r   r   	   s    )*V@ 5,? Tl3<jTl8@t [[j)k*(	(T,\@*"9H;@*r$   r   )hashlibr   	itertoolsr   rF   fsspec.tests.abstract.commonr   r   r   r$   r!   <module>r      s       >F	* F	*r$   