
    m*i3)                     T   S SK r S SKrS SKrS SKJ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.                  R1                  S5      r\R4                  S 5       r\R4                  S 5       r\R4                  S 5       rS	 rS
 rS r S r!\R.                  RE                  SSS/5      S 5       r#S r$S r%S r&S r'S r(\RR                  S 5       r*\R.                  RV                  S 5       r,\R.                  RV                  \R.                  RE                  S/ SQ5      S 5       5       r-\R.                  R]                  \" 5       SS9\R.                  RV                  \RR                  S 5       5       5       r/\R`                  " S5      S 5       r1S  r2S! r3S" r4S# r5S$ r6S% r7g)&    N)using_string_dtype)
	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     [/var/www/html/land-doc-ocr/venv/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!   
fsspectestr5      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!   df1rC   2   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/   
filesystemr2   r3   )r   memfss     r!   
cleared_fsrH   >   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)rH   rC   textwdf2s        r!   test_read_csvrX   G   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)r1   rZ   r.   raises
ValueErrorr   setitemImportError)monkeypatchrH   rZ   err_msgs       r!   test_reasonable_errorrg   P   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 )NrM   TrJ   r@   r   rN   	index_col)rO   r   rS   rT   )rH   rC   rW   s      r!   test_to_csvrk   _   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.TrJ   r@   r   ri   )r.   r/   to_excelr   rS   rT   )rH   rC   extpathrW   s        r!   test_to_excelrr   g   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   rM   rL   rV   )modeTrJ   rr@   r   ri   )	r.   r/   rQ   rO   closedreplacer   rS   rT   )rH   rs   rC   r   rq   ru   fsspec_objectrW   s           r!   test_to_csv_fsspec_objectrz   r   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_optionsrK   csv_readr   )r   rO   r   r   r5   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   rO   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 )Nrm   rn   r}   r   ztestmem://test/test.r   rR   Fr   readr   )r.   r/   r   ro   r   r   )r5   	extensionr   rq   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.fastparquetrM   TN)rK   enginecompression)r.   r/   
to_parquet)rH   rC   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/   rS   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#   zTODO(infer_string) fastparquet)reasonc                     [         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)rK   r   r   r   r   )r.   r/   r   r   r
   rS   r   )s3_public_bucketr   rC   fnrW   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\   rM   )r.   ra   rd   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   rS   rT   r5   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   rS   rT   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	   rS   rT   )r5   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   rS   rT   astyper   s      r!   test_stata_optionsr   ;  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   F  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/   ra   rb   r   r
   ioBytesIOr   r   )byr   s     r!   test_non_fsspec_optionsr   N  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:)8r   numpyrA   r.   pandas._configr   pandasr   r   r   r   r   r	   r
   r   r   r   pandas._testing_testingrS   pandas.utilr   tdmarkfilterwarnings
pytestmarkfixturer5   rC   rH   rX   rg   rk   rr   parametrizerz   r   r   r   r   r   &skip_array_manager_not_yet_implementedr   
single_cpur   r   xfailr   skip_if_installedr   r   r   r   r   r   r   r   r#   r!   <module>r      s   	   -    .[[''C

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