o
    õ­d>$  ã                   @   sÞ  d dl Z d dlZd dlZd dlmZmZmZmZm	Z	m
Z
mZmZmZmZ d dlmZ d dlmZ ejdd„ ƒZejdd„ ƒZdd	„ Zd
d„ Zdd„ Zdd„ Zej dddg¡dd„ ƒZdd„ Zdd„ Z dd„ Z!e "d¡dd„ ƒZ#e "d¡dd „ ƒZ$ej%e "d¡d!d"„ ƒƒZ&ejj'e "d#¡d$d%„ ƒƒZ(ejj'ej d&g d'¢¡e "d#¡d(d)„ ƒƒƒZ)ejj'ej%e "d#¡e "d¡d*d+„ ƒƒƒƒZ*e +d,¡d-d.„ ƒZ,e "d¡d/d0„ ƒZ-d1d2„ Z.d3d4„ Z/d5d6„ Z0e "d7¡d8d9„ ƒZ1e "d¡d:d;„ ƒZ2dS )<é    N)
Ú	DataFrameÚ
date_rangeÚread_csvÚ
read_excelÚread_featherÚ	read_jsonÚread_parquetÚread_pickleÚ
read_stataÚ
read_table)Ú_test_decoratorsc                   C   s(   t ddgdtjgddgtdddd	œƒS )
Né   é   g       @ÚtÚsz
2018-06-18é   )Úperiods)ÚintÚfloatÚstrÚdt)r   ÚnpÚnanr   © r   r   ú`/var/www/html/visualizacion-main/env/lib/python3.10/site-packages/pandas/tests/io/test_fsspec.pyÚdf1   s   
üÿr   c                  c   s*    t  d¡} |  d¡}|V  |j ¡  d S )NÚfsspecÚmemory)ÚpytestÚimportorskipÚ
filesystemÚstoreÚclear)r   Úmemfsr   r   r   Ú
cleared_fs"   s
   €

r$   c                 C   sh   t |jddƒ ¡ }|  dd¡}| |¡ W d   ƒ n1 s w   Y  tddgd}t ||¡ d S )NF©Úindexztest/test.csvÚwbúmemory://test/test.csvr   )Úparse_dates)r   Úto_csvÚencodeÚopenÚwriter   ÚtmÚassert_frame_equal)r$   r   ÚtextÚwÚdf2r   r   r   Útest_read_csv+   s   ÿr3   c                 C   s–   ddl m} tjtdd tdƒ W d   ƒ n1 sw   Y  d}|  |dd|d	œ¡ tjt|d td
ƒ W d   ƒ d S 1 sDw   Y  d S )Nr   )Úknown_implementationsÚnosuchprotocol©Úmatchznosuchprotocol://test/test.csvztest error messageÚ
couldexistzunimportable.CouldExist)ÚclassÚerrzcouldexist://test/test.csv)Úfsspec.registryr4   r   ÚraisesÚ
ValueErrorr   ÚsetitemÚImportError)Úmonkeypatchr$   r4   Úerr_msgr   r   r   Útest_reasonable_error4   s   
ÿý
"ÿrB   c                 C   s.   |j ddd tddgdd}t ||¡ d S )Nr(   Tr%   r   r   ©r)   Ú	index_col)r*   r   r.   r/   )r$   r   r2   r   r   r   Útest_to_csvC   s   rE   c                 C   sF   t  d¡ d}d|› }|j|dd t|dgdd}t ||¡ d S )	NÚopenpyxlÚxlsxzmemory://test/test.Tr%   r   r   rC   )r   r   Úto_excelr   r.   r/   )r$   r   ÚextÚpathr2   r   r   r   Útest_to_excelK   s   

rK   Úbinary_modeFTc                 C   sÈ   t  d¡}d}|rdnd}|j||d ¡ }|j|dd |jr#J ‚W d   ƒ n1 s-w   Y  | dd¡}|j||d}t|d	gd
d}|jrMJ ‚W d   ƒ n1 sWw   Y  t ||¡ d S )Nr   r(   r'   r1   )ÚmodeTr%   Úrr   r   rC   )	r   r   r,   r*   ÚclosedÚreplacer   r.   r/   )r$   rL   r   r   rJ   rM   Úfsspec_objectr2   r   r   r   Útest_to_csv_fsspec_objectV   s"   
þýúrR   c                 C   óZ   t ddgiƒ}|jdddidd | jd dksJ ‚tdddid	 | jd dks+J ‚d S ©
NÚar   útestmem://test/test.csvÚtestÚ	csv_writeF©Ústorage_optionsr&   Úcsv_read©rZ   )r   r*   rW   r   ©Ú
fsspectestÚdfr   r   r   Útest_csv_optionsl   s   
ÿr`   c                 C   rS   rT   )r   r*   rW   r   r]   r   r   r   Útest_read_table_optionsv   s   
ÿra   c                 C   sr   t  d¡ d}tddgiƒ}d|› }|j|ddidd	 | jd dks&J ‚t|dd
id | jd d
ks7J ‚d S )NrF   rG   rU   r   ztestmem://test/test.rW   r-   FrY   Úreadr\   )r   r   r   rH   rW   r   )r^   Ú	extensionr_   rJ   r   r   r   Útest_excel_options   s   

rd   Úfastparquetc                 C   s   |j ddddd dS )úCRegression test for writing to a not-yet-existent GCS Parquet file.r(   Tre   N)r&   ÚengineÚcompression)Ú
to_parquet)r$   r   r   r   r   Útest_to_parquet_new_file   s   
ÿrj   Úpyarrowc                 C   ó^   t ddgiƒ}|jdddddid | jd dksJ ‚tdddd	id
 | jd d	ks-J ‚dS )rf   rU   r   rV   rk   NrW   Úparquet_write©rg   rh   rZ   Úparquet_read©rg   rZ   ©r   ri   rW   r   r]   r   r   r   Útest_arrowparquet_options—   s   üýrr   c                 C   rl   )rf   rU   r   rV   re   NrW   rm   rn   ro   rp   rq   r]   r   r   r   Útest_fastparquet_optionsª   s   üýrs   Ús3fsc                 C   sL   t  td|dt|ƒ¡ t  td|dt|ƒ¡ t  td|dt|ƒ¡ d S )Nzs3://pandas-test/tips.csvr\   zs3://pandas-test/tips.csv.gzzs3://pandas-test/tips.csv.bz2©r.   Úassert_equalr   )Ús3_resourceÚ	tips_fileÚs3sor   r   r   Útest_from_s3_csv¾   s   ÿ
þ
þrz   Úprotocol)Ús3Ús3aÚs3nc                 C   s"   t  t|› d|dt|ƒ¡ d S )Nz://pandas-test/tips.csvr\   ru   )rw   rx   r{   ry   r   r   r   Útest_s3_protocolsÏ   s   þr   c                 C   s6   d}|j |ddd |d t|d|d}t ||¡ d S )Nzs3://pandas-test/test.parquetFre   )r&   rg   rh   rZ   rp   )ri   r   r.   rv   )rw   ry   r   Úfnr2   r   r   r   Útest_s3_parquetÙ   s   
ÿr   r   c                  C   s@   d} t jt| d tdƒ W d   ƒ d S 1 sw   Y  d S )Nz?Missing optional dependency 'fsspec'|fsspec library is requiredr6   r(   )r   r<   r?   r   )Úmsgr   r   r   Útest_not_present_exceptionæ   s   
"ÿrƒ   c                 C   ód   t ddgiƒ}|jdddid | jd dksJ ‚tdddid}| jd dks*J ‚t ||¡ d S )NrU   r   útestmem://afilerW   Úfeather_writer\   Úfeather_read)r   Ú
to_featherrW   r   r.   r/   ©r^   r_   Úoutr   r   r   Útest_feather_optionsí   s   r‹   c                 C   r„   )NrU   r   r…   rW   Úpickle_writer\   Úpickle_read)r   Ú	to_picklerW   r	   r.   r/   r‰   r   r   r   Útest_pickle_options÷   s   r   c                 C   sh   t ddgiƒ}|jd|ddid | jd dksJ ‚td|ddid}| jd dks,J ‚t ||¡ d S )NrU   r   r…   rW   Ú
json_write)rh   rZ   Ú	json_read)r   Úto_jsonrW   r   r.   r/   )r^   rh   r_   rŠ   r   r   r   Útest_json_options   s   ýýr“   c                 C   sl   t ddgiƒ}|jdddidd | jd dksJ ‚tdddid	}| jd dks+J ‚t || d
¡¡ d S )NrU   r   r…   rW   Ústata_writeF)rZ   Úwrite_indexÚ
stata_readr\   Úint64)r   Úto_statarW   r
   r.   r/   Úastyper‰   r   r   r   Útest_stata_options  s   
ÿrš   Útabulatec                 C   sD   t ddgiƒ}|jdddid | jd dksJ ‚|  d¡s J ‚d S )NrU   r   r…   rW   Úmd_writer\   )r   Úto_markdownrW   Úcatr]   r   r   r   Útest_markdown_options  s   rŸ   c                  C   s  t jtdd tdddid W d   ƒ n1 sw   Y  t jtdd tdddid W d   ƒ n1 s9w   Y  t ¡ } t jtdd t| ddid W d   ƒ n1 s\w   Y  tddgiƒ}t jtdd |jdddid W d   ƒ d S 1 s„w   Y  d S )	NrZ   r6   Ú	localfilerU   Tr\   r   Únonfsspecpath)	r   r<   r=   r   r   ÚioÚBytesIOr   ri   )Úbyr_   r   r   r   Útest_non_fsspec_options$  s   ÿþÿ"ÿr¥   )3r¢   Únumpyr   r   Úpandasr   r   r   r   r   r   r   r	   r
   r   Úpandas._testingÚ_testingr.   Úpandas.utilr   ÚtdÚfixturer   r$   r3   rB   rE   rK   ÚmarkÚparametrizerR   r`   ra   rd   Ú
skip_if_norj   rr   Ú&skip_array_manager_not_yet_implementedrs   Ú
single_cpurz   r   r   Úskip_if_installedrƒ   r‹   r   r“   rš   rŸ   r¥   r   r   r   r   Ú<module>   sb    0

	



	

		
