
    Mh(                        S SK r S SKrS SKrS SKJrJrJrJrJ	r	J
r
JrJrJrJr  S SKJr  S SKJr  \R*                  R-                  S5      r\R0                  S 5       r\R0                  S 5       r\R0                  S 5       rS rS	 rS
 rS r\R*                  RA                  SSS/5      S 5       r!S r"S r#S r$S r%S r&\RN                  S 5       r(\R*                  RR                  S 5       r*\R*                  RR                  \R*                  RA                  S/ SQ5      S 5       5       r+\R*                  RR                  \RN                  S 5       5       r,\RZ                  " S5      S 5       r.S r/S r0S r1S  r2S! r3S" r4g)#    N)
	DataFrame
date_rangeread_csv
read_excelread_feather	read_jsonread_parquetread_pickle
read_stata
read_table)_test_decoratorsz=ignore:Passing a BlockManager to DataFrame:DeprecationWarningc               #   
  #    [         R                  " S5        SSKJn   SSKJn  SSKJn   " S SU5      nU " SUS	S
9  U" 5       v   UR                  SS 5        S UR                  S'   UR                  R                  5         g 7f)Nfsspecr   )register_implementation)MemoryFileSystem)	_registryc                   6   ^  \ rS rSrSrS/rSU 4S jjrSrU =r$ ) fsspectest.<locals>.TestMemoryFS!   testmemNc                 d   > UR                  SS 5      U R                  S'   [        TU ]  " S0 UD6  g )Ntestr    )popr   super__init__)selfkwargs	__class__s     M/var/www/html/env/lib/python3.13/site-packages/pandas/tests/io/test_fsspec.pyr   )fsspectest.<locals>.TestMemoryFS.__init__%   s+    !::fd3DIIaLG&v&    r   )returnN)	__name__
__module____qualname____firstlineno__protocolr   r   __static_attributes____classcell__)r   s   @r    TestMemoryFSr   !   s    v	' 	'r"   r+   r   T)clobber)pytestimportorskipr   r   fsspec.implementations.memoryr   fsspec.registryr   r   r   storeclear)r   r   registryr+   s       r    
fsspectestr4      so     
!.>5'' ' I|TB
.LLD!Las   BBc            
      Z    [        SS/S[        R                  /SS/[        SSS9S	.5      $ )
N      g       @tsz
2018-06-18   )periods)intfloatstrdt)r   npnanr   r   r"   r    df1rB   0   s7    q6266]:\15		
 r"   c               #      #    [         R                  " S5      n U R                  S5      nUv   UR                  R	                  5         g 7f)Nr   memory)r-   r.   
filesystemr1   r2   )r   memfss     r    
cleared_fsrG   <   s:       *Fh'E
K	KKs   AA	c                    [        UR                  SS95      R                  5       nU R                  SS5       nUR	                  U5        S S S 5        [        SS/S9n[        R                  " X5        g ! , (       d  f       N0= f)NFindexztest/test.csvwbmemory://test/test.csvr?   )parse_dates)r>   to_csvencodeopenwriter   tmassert_frame_equal)rG   rB   textwdf2s        r    test_read_csvrW   E   sf    szzz&'..0D	$	/1	 
0
+$
@C##	 
0	/s   A55
Bc                 8   SSK Jn  [        R                  " [        SS9   [        S5        S S S 5        SnU R                  USSUS	.5        [        R                  " [        US9   [        S
5        S S S 5        g ! , (       d  f       NT= f! , (       d  f       g = f)Nr   )known_implementationsnosuchprotocolmatchznosuchprotocol://test/test.csvztest error message
couldexistzunimportable.CouldExist)classerrzcouldexist://test/test.csv)r0   rY   r-   raises
ValueErrorr   setitemImportError)monkeypatchrG   rY   err_msgs       r    test_reasonable_errorrf   N   sv    5	z)9	:12 
;"G+G<
 
{'	2-. 
3	2 
;	: 
3	2s   A:%B:
B
Bc                 h    UR                  SSS9  [        SS/SS9n[        R                  " X5        g )NrL   TrI   r?   r   rM   	index_col)rN   r   rR   rS   )rG   rB   rV   s      r    test_to_csvrj   ]   s2    JJ'tJ4
+$1
MC##r"   c                     [         R                  " S5        SnSU 3nUR                  USS9  [        US/SS9n[        R
                  " X5        g )	Nopenpyxlxlsxzmemory://test/test.TrI   r?   r   rh   )r-   r.   to_excelr   rR   rS   )rG   rB   extpathrV   s        r    test_to_excelrq   e   sO    

#
C &DLLTL"
Tv
;C##r"   binary_modeFTc                    [         R                  " S5      nSnU(       a  SOSnUR                  XES9R                  5        nUR                  USS9  UR                  (       a   e S S S 5        UR                  SS5      nUR                  XES9 n[        US	/S
S9nUR                  (       a   e S S S 5        [        R                  " UW5        g ! , (       d  f       Np= f! , (       d  f       N7= f)Nr   rL   rK   rU   )modeTrI   rr?   r   rh   )	r-   r.   rP   rN   closedreplacer   rR   rS   )rG   rr   rB   r   rp   rt   fsspec_objectrV   s           r    test_to_csv_fsspec_objectry   p   s      *F#D4CD	T	%	*	*	,

=
- ''''' 
- <<S!D	T	%

 !''''' 
& #s# 
-	,
 
&	%s   $C C!
C!
C/c                     [        SS/05      nUR                  SSS0SS9  U R                  S   S:X  d   e[        SSS0S	9  U R                  S   S:X  d   eg 
Nar   testmem://test/test.csvr   	csv_writeFstorage_optionsrJ   csv_readr   )r   rN   r   r   r4   dfs     r    test_csv_optionsr      sp    	C!:	BII!FK3HPU   ??1,,,&8LM??1+++r"   c                     [        SS/05      nUR                  SSS0SS9  U R                  S   S:X  d   e[        SSS0S	9  U R                  S   S:X  d   eg r{   )r   rN   r   r   r   s     r    test_read_table_optionsr      sp    	C!:	BII!FK3HPU   ??1,,,(6::NO??1+++r"   c                     [         R                  " S5        Sn[        SS/05      nSU 3nUR                  USS0SS	9  U R                  S   S:X  d   e[        USS
0S9  U R                  S   S
:X  d   eg )Nrl   rm   r|   r   ztestmem://test/test.r   rQ   Fr   readr   )r-   r.   r   rn   r   r   )r4   	extensionr   rp   s       r    test_excel_optionsr      s    

#I	C!:	B!)-DKKvw&7uKE??1(((tff%56??1'''r"   c                 T    [         R                  " S5        UR                  SSSSS9  g)CRegression test for writing to a not-yet-existent GCS Parquet file.fastparquetrL   TN)rJ   enginecompression)r-   r.   
to_parquet)rG   rB   s     r    test_to_parquet_new_filer      s+    
&NN ]PT  r"   c                     [         R                  " S5        [        SS/05      nUR                  SSSSS0S9  U R                  S   S:X  d   e[        SSSS	0S
9  U R                  S   S	:X  d   eg)r   pyarrowr|   r   r}   Nr   parquet_writer   r   r   parquet_readr   r   r-   r.   r   r   r   r	   r   s     r    test_arrowparquet_optionsr      s    
	"	C!:	BMM!1	   ??1000!0
 ??1///r"   c                     [         R                  " S5        [        SS/05      nUR                  SSSSS0S9  U R                  S   S:X  d   e[        SSSS	0S
9  U R                  S   S	:X  d   eg)r   r   r|   r   r}   Nr   r   r   r   r   r   r   s     r    test_fastparquet_optionsr      s     &	C!:	BMM!1	   ??1000!0
 ??1///r"   c                 t   [         R                  " S5        [        R                  " [	        SU R
                   S3US9[	        U5      5        [        R                  " [	        SU R
                   S3US9[	        U5      5        [        R                  " [	        SU R
                   S3US9[	        U5      5        g )Ns3fss3://	/tips.csvr   z/tips.csv.gzz/tips.csv.bz2r-   r.   rR   assert_equalr   name)s3_public_bucket_with_data	tips_files3sos      r    test_from_s3_csvr      s    
OO.334I>PT	
 		 OO.334LASW	
 		 OO.334MBTX	
 		r"   r(   )s3s3as3nc                     [         R                  " S5        [        R                  " [	        U SU R
                   S3US9[	        U5      5        g )Nr   z://r   r   r   )r   r   r(   r   s       r    test_s3_protocolsr      sK     OOj6;;<IF 	
 	r"   c                     [         R                  " S5        [         R                  " S5        SU R                   S3nUR                  USSS US9  [	        USUS9n[
        R                  " X$5        g )Nr   r   r   z/test.parquetF)rJ   r   r   r   r   )r-   r.   r   r   r	   rR   r   )s3_public_bucketr   rB   fnrV   s        r    test_s3_parquetr      so     &
!&&'}	5BNN
%4QU   r-
FCOOCr"   r   c                      Sn [         R                  " [        U S9   [        S5        S S S 5        g ! , (       d  f       g = f)Nz?Missing optional dependency 'fsspec'|fsspec library is requiredr[   rL   )r-   r`   rc   r   )msgs    r    test_not_present_exceptionr     s*    
KC	{#	.)* 
/	.	.s   1
?c                    [         R                  " S5        [        SS/05      nUR                  SSS0S9  U R                  S   S:X  d   e[        SSS0S9nU R                  S   S:X  d   e[        R                  " X5        g )	Nr   r|   r   testmem://mockfiler   feather_writer   feather_read)r-   r.   r   
to_featherr   r   rR   rS   r4   r   outs      r    test_feather_optionsr     s    
	"	C!:	BMM&8QMR??1000
+fn=U
VC??1///""r"   c                     [        SS/05      nUR                  SSS0S9  U R                  S   S:X  d   e[        SSS0S9nU R                  S   S:X  d   e[        R
                  " X5        g )Nr|   r   r   r   pickle_writer   pickle_read)r   	to_pickler   r
   rR   rS   r   s      r    test_pickle_optionsr     sv    	C!:	BLL%7OLP??1///
*V]<S
TC??1...""r"   c                     [        SS/05      nUR                  SUSS0S9  U R                  S   S:X  d   e[        SUSS0S9nU R                  S   S:X  d   e[        R
                  " X#5        g )Nr|   r   r   r   
json_write)r   r   	json_read)r   to_jsonr   r   rR   rS   )r4   r   r   r   s       r    test_json_optionsr   '  s    	C!:	BJJ.  
 ??1---
-C
 ??1,,,""r"   c                     [        SS/05      nUR                  SSS0SS9  U R                  S   S:X  d   e[        SSS0S	9nU R                  S   S:X  d   e[        R
                  " XR                  S
5      5        g )Nr|   r   r   r   stata_writeF)r   write_index
stata_readr   int64)r   to_statar   r   rR   rS   astyper   s      r    test_stata_optionsr   8  s    	C!:	BKKv}.ESX   ??1...
)FL;Q
RC??1---"jj12r"   c                     [         R                  " S5        [        SS/05      nUR                  SSS0S9  U R                  S   S:X  d   eU R                  S5      (       d   eg )Ntabulater|   r   r   r   md_writer   )r-   r.   r   to_markdownr   catr   s     r    test_markdown_optionsr   C  sc    

#	C!:	BNN'&*9MNN??1+++>>.////r"   c                  z   [         R                  " S5        [         R                  " [        SS9   [	        SSS0S9  S S S 5        [         R                  " [        SS9   [        SSS0S9  S S S 5        [        R                  " 5       n [         R                  " [        SS9   [	        U SS0S9  S S S 5        [        SS/05      n[         R                  " [        SS9   UR                  S	SS0S9  S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Ns= f! , (       d  f       g = f)
Nr   r   r[   	localfiler|   Tr   r   nonfsspecpath)
r-   r.   r`   ra   r   r	   ioBytesIOr   r   )byr   s     r    test_non_fsspec_optionsr   K  s    
	"	z):	;sDk: 
<	z):	;[3+> 
< 
B	z):	;c4[1 
< 
C!:	B	z):	;
oT{C 
<	; 
<	;	;	;
 
<	; 
<	;s/   C9D
!DD,9
D

D
D),
D:)5r   numpyr@   r-   pandasr   r   r   r   r   r   r	   r
   r   r   pandas._testing_testingrR   pandas.utilr   tdmarkfilterwarnings
pytestmarkfixturer4   rB   rG   rW   rf   rj   rq   parametrizery   r   r   r   r   r   &skip_array_manager_not_yet_implementedr   
single_cpur   r   r   skip_if_installedr   r   r   r   r   r   r   r   r"   r    <module>r      s   	      .[[''C

  *    $/$$ 6$ 7$*,,(0& **0 +0(  . %9: ;  **	 + 	 h+  +###"30Dr"   