Ë
    ¤eh  ã                   óh  — d Z ddlZddlmZ ddlZddlZddlZddlmZ ddl	m
Z ej                  j                  d«      Z ej                  ddg¬«      d	„ «       Zej                  d
„ «       Zej                  j%                  dg d¢«      d„ «       Zej                  j%                  dddg«      d„ «       Zd„ Zd„ Zej                  j%                  dddg«      d„ «       Zej                  j%                  dg d¢«      d„ «       Zd„ Zej                  j%                  dg d¢«      d„ «       Zd„ Zd„ Zd„ Zy) zZ
Tests compressed data parsing functionality for all
of the parsers defined in parsers.py
é    N)ÚPath)Ú	DataFramez=ignore:Passing a BlockManager to DataFrame:DeprecationWarningTF)Úparamsc                 ó   — | j                   S )N)Úparam)Úrequests    úe/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pandas/tests/io/parser/test_compression.pyÚbufferr
      s   € à�=‰=Ðó    c                 ó”   — | }t        |d«      5 }|j                  «       }d d d «       |j                  |«      }||fS # 1 sw Y   ŒxY w)NÚrb)ÚopenÚreadÚread_csv)Úall_parsersÚcsv1ÚparserÚfÚdataÚexpecteds         r	   Úparser_and_datar      sN   € à€Fä	ˆd�DÓ	ð ˜QØ�v‰v‹xˆ÷à�‰˜tÓ$€Hà�4˜Ð!Ð!÷	ð ús	   �>¾AÚcompression)ÚzipÚinferÚzip2c                 ó¦  — | \  }}}t        j                  d«      5 }t        j                  |d¬«      5 }|j	                  d|«       d d d «       |dk(  r)t        |d«      5 }|j                  |d¬«      }d d d «       n|j                  ||¬«      }t        j                  |«       d d d «       y # 1 sw Y   ŒixY w# 1 sw Y   Œ4xY w# 1 sw Y   y xY w)	Nútest_file.zipÚw©ÚmodeÚ	test_filer   r   r   ©r   )ÚtmÚensure_cleanÚzipfileÚZipFileÚwritestrr   r   Úassert_frame_equal)	r   r   r   r   r   ÚpathÚtmpr   Úresults	            r	   Útest_zipr,   %   sÏ   € à,Ñ€FˆD�(ä	�‰˜Ó	)ð 
0¨TÜ�_‰_˜T¨Ô,ð 	,°Ø�L‰L˜ dÔ+÷	,ð ˜&Ò Ü�d˜DÓ!ð ? QØŸ™¨¸˜Ó>�÷?ð ?ð —_‘_ T°{�_ÓCˆFä
×Ñ˜f hÔ/÷
0ð 
0÷	,ð 	,ú÷?ð ?ú÷
0ð 
0ús:   œC´B/ÁCÁ B;Á42CÂ/B8	Â4CÂ;C	Ã CÃCr   r   c                 ó~  — | \  }}}t        j                  d«      5 }ddg}t        j                  |d¬«      5 }|D ]  }|j	                  ||«       Œ 	 d d d «       t        j                  t        d¬«      5  |j                  ||¬«       d d d «       d d d «       y # 1 sw Y   ŒIxY w# 1 sw Y   ŒxY w# 1 sw Y   y xY w)	Nzcombined_zip.zipr!   Úsecond_filer   r   zMultiple files©Úmatchr"   )	r#   r$   r%   r&   r'   ÚpytestÚraisesÚ
ValueErrorr   )	r   r   r   r   r   r)   Úinner_file_namesr*   Ú	file_names	            r	   Útest_zip_error_multiple_filesr6   6   sº   € à,Ñ€FˆD�(ä	�‰Ð+Ó	,ð ;°Ø'¨Ð7Ðä�_‰_˜T¨Ô,ð 	.°Ø-ò .�	Ø—‘˜Y¨Õ-ñ.÷	.ô �]‰]œ:Ð-=Ô>ñ 	;Ø�O‰O˜D¨kˆOÔ:÷	;÷;ð ;÷	.ð 	.ú÷	;ð 	;ú÷;ð ;ús:   œB3¸BÁ#B3Á6B'Â
B3ÂB$	Â B3Â'B0	Â,B3Â3B<c                 óB  — | \  }}}t        j                  «       5 }t        j                  |d¬«      5  	 d d d «       t	        j
                  t        d¬«      5  |j                  |d¬«       d d d «       d d d «       y # 1 sw Y   ŒIxY w# 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nr   r   z
Zero filesr/   r   r"   )r#   r$   r%   r&   r1   r2   r3   r   )r   r   Ú_r)   s       r	   Útest_zip_error_no_filesr9   E   sŽ   € Ø"�L€FˆAˆqä	�‰Ó	ð 5˜dÜ�_‰_˜T¨Ô,ñ 	Ø÷	ô �]‰]œ:¨\Ô:ñ 	5Ø�O‰O˜D¨eˆOÔ4÷	5÷	5ð 5÷	ð 	ú÷	5ð 	5ú÷	5ð 5ús9   ›B³A=µ#BÁB	Á,BÁ=B	ÂBÂ	B	ÂBÂBc                 ó>  — | \  }}}t        j                  «       5 }t        |d«      5 }t        j                  t
        j                  d¬«      5  |j                  |d¬«       d d d «       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nr   zFile is not a zip filer/   r   r"   )r#   r$   r   r1   r2   r%   Ú
BadZipFiler   )r   r   r8   r)   r   s        r	   Útest_zip_error_invalid_zipr<   P   sŽ   € Ø"�L€FˆAˆqä	�‰Ó	ð 6˜dÜ�$˜Óð 	6 Ü—‘œw×1Ñ1Ð9QÔRñ 6Ø—‘ ¨u�Ô5÷6÷	6÷6ð 6÷6ð 6ú÷	6ð 	6ú÷6ð 6ús:   ›B¨&BÁA;Á"BÁ*BÁ;BÂ BÂB	ÂBÂBÚfilenamez
test.{ext}c                 ó   — |\  }}}|}	||	   }
|€|n|j                  |
¬«      }|r1|r/| j                  t        j                  j	                  d¬«      «       t        j                  |¬«      5 }t        j                  |	||«       |rdn|	}|r)t        |d«      5 }|j                  ||¬«      }d d d «       n|j                  ||¬«      }t        j                  |«       d d d «       y # 1 sw Y   Œ(xY w# 1 sw Y   y xY w)N)Úextz9Cannot deduce compression from buffer of compressed data.)Úreason)r=   r   r   r"   )ÚformatÚapplymarkerr1   ÚmarkÚxfailr#   r$   Úwrite_to_compressedr   r   r(   )r   r   Úcompression_onlyr
   r=   Úcompression_to_extensionr   r   r   Úcompress_typer?   r)   r   r   r+   s                  r	   Útest_compressionrI   Y   s  € ð -Ñ€FˆD�(Ø$€Mà
" =Ñ
1€CØ#Ð+‰x°·±ÀS°Ó1I€Há‘FØ×ÑÜ�K‰K×ÑØRð ó ô	
ô 
�‰ (Ô	+ð 
0¨tÜ
×Ñ˜}¨d°DÔ9Ù!)‘g¨}ˆáÜ�d˜DÓ!ð E QØŸ™¨¸˜ÓD�÷Eð Eð —_‘_ T°{�_ÓCˆFä
×Ñ˜f hÔ/÷
0ð 
0÷
Eð Eú÷
0ð 
0ús$   Á-,C4ÂC(Â-2C4Ã(C1	Ã-C4Ã4C=r?   )NÚgzÚbz2c                 ó  — | }dddœ} |j                   |fi |¤Ž}d|d<   |r*t        |d¬«      5 } |j                   |fi |¤Ž}d d d «       n|rd|z   nd	} |j                   ||z   fi |¤Ž}t        j                  |«       y # 1 sw Y   Œ xY w)
Nr   T)Ú	index_colÚparse_datesr   r   úutf-8©Úencodingú.Ú )r   r   r#   r(   )	r   r   r
   r?   r   Úkwargsr   r   r+   s	            r	   Útest_infer_compressionrU   |   s¨   € ð €FØ¨TÑ2€Fàˆv�‰˜tÑ. vÑ.€HØ#€Fˆ=ÑáÜ�$ Ô)ð 	2¨QØ$�V—_‘_ QÑ1¨&Ñ1ˆF÷	2ð 	2ñ ˆc�CŠi BˆØ �—‘ ¨¡Ñ6¨vÑ6ˆä×Ñ˜& (Õ+÷	2ð 	2ús   ¯BÂBc                 óì   — | }|j                  |«      }t        j                  j                  |d|› d�«      }|j	                  ||dd¬«      }t        ddgddgd	œ«      }t        j                  ||«       y )
NÚutfz_ex_small.zipr   ú	)rQ   r   ÚsepÚ	Venezuelaõ   Hugo ChÃ¡vez FrÃ­asúHenrique Capriles R.©ÚCountryÚTwitter)rA   Úosr)   Újoinr   r   r#   r(   )	r   Úcsv_dir_pathÚ	utf_valueÚencoding_fmtr   rQ   r)   r+   r   s	            r	   Útest_compression_utf_encodingre   �   s|   € à€FØ×"Ñ" 9Ó-€HÜ�7‰7�<‰<˜¨¨I¨;°mÐ&DÓE€Dà�_‰_˜T¨HÀ%ÈTˆ_ÓR€FÜà# [Ð1Ø-Ð/EÐFñ	
ó€Hô ×Ñ˜& (Õ+r   Úinvalid_compression)ÚsfarkÚbz3Úzipperc                 óž   — | }d|i}d|› �}t        j                  t        |¬«      5   |j                  di |¤Ž d d d «       y # 1 sw Y   y xY w)Nr   zUnrecognized compression type: r/   )r   )r1   r2   r3   r   )r   rf   r   Úcompress_kwargsÚmsgs        r	   Útest_invalid_compressionrm       sT   € à€FØ$Ð&9Ð:€Oà+Ð,?Ð+@Ð
A€Cä	�‰”z¨Ô	-ñ <Øˆ�‰Ñ;¨?Ò;÷<÷ <ñ <ús   §AÁAc                 ó    — | }t         j                  j                  |d«      }|j                  |«      }t	        |j
                  «      dgk(  sJ ‚y )Nztar_csv.tar.gzÚa)r`   r)   ra   r   ÚlistÚcolumns)r   rb   r   r)   Údfs        r	   Útest_compression_tar_archivers   «   sC   € Ø€FÜ�7‰7�<‰<˜Ð&6Ó7€DØ	�‰˜Ó	€BÜ�—
‘
Ó ˜uÒ$Ð$Ñ$r   c                 ó¬  — | }t        dddgi«      }t        j                  d«      5 }t        j                  d«      5 }|j                  |d¬«       t	        |«      j                  t	        |«      j                  d¬	«      d¬	«       t        j                  |j                  |d ¬
«      |«       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nro   r   é   ztest.csvztest.csv.zipF©ÚindexrO   rP   r"   )	r   r#   r$   Úto_csvr   Ú
write_textÚ	read_textr(   r   )r   r   rr   Úpath_csvÚpath_zips        r	   Ú!test_ignore_compression_extensionr}   ²   sÊ   € Ø€FÜ	�C˜!˜Q˜�=Ó	!€BÜ	�‰˜Ó	$ð S¨Ü�_‰_˜^Ó,ð 	S°à�I‰I�h eˆIÔ,Ü�‹N×%Ñ%Ü�X“×(Ñ(°'Ð(Ó:ÀWð &ô ô ×!Ñ! &§/¡/°(È /Ó"MÈrÔR÷	S÷Sð S÷	Sð 	Sú÷Sð Sús#   §C
½A0B>Â-C
Â>C	ÃC
Ã
Cc                 óØ  — | }t        ddgddgdœ«      }t        j                  d«      5 }|j                  |d¬«       t        j                  |j                  |«      |«       t        j                  |d«      5 }|j                  |j                  |j                  «       d	   «      d
¬«      }t        j                  ||«       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)NrZ   r[   r\   r]   ztest.tar.gzFrv   zr:gzr   r   r"   )
r   r#   r$   rx   r(   r   Útarfiler   ÚextractfileÚgetnames)r   r   r   Útar_pathÚtarr+   s         r	   Útest_writes_tar_gzr„   À   sá   € Ø€FÜà# [Ð1Ø-Ð/EÐFñ	
ó€Dô 
�‰˜Ó	'ð 0¨8Ø�‰�H EˆÔ*ô 	×Ñ˜fŸo™o¨hÓ7¸Ô>ô �\‰\˜( FÓ+ð 	0¨sØ—_‘_Ø—‘ §¡£¨qÑ 1Ó2Àð %ó ˆFô ×!Ñ! &¨$Ô/÷		0÷0ð 0÷	0ð 	0ú÷0ð 0ús%   ªAC Á9A
CÃC ÃC	ÃC Ã C))Ú__doc__r`   Úpathlibr   r   r%   r1   Úpandasr   Úpandas._testingÚ_testingr#   rC   ÚfilterwarningsÚ
pytestmarkÚfixturer
   r   Úparametrizer,   r6   r9   r<   rI   rU   re   rm   rs   r}   r„   © r   r	   ú<module>r�      s\  ðñó
 
Ý Û Û ã å Ý à�[‰[×'Ñ'ØCó€
ð
 €‡�˜˜e�}Ô%ñó &ðð ‡�ñ"ó ð"ð ‡�×Ñ˜Ò(@ÓAñ0ó Bð0ð  ‡�×Ñ˜¨°Ð(8Ó9ñ;ó :ð;ò5ò6ð ‡�×Ñ˜ d¨LÐ%9Ó:ñ0ó ;ð0ðD ‡�×Ñ˜Ò 3Ó4ñ,ó 5ð,ò$,ð" ‡�×ÑÐ.Ò0JÓKñ<ó Lð<ò%òSó0r   