Ë
    +V.jˆ  ã                   ó€  — d Z ddlmZ ddlZddlZddlmZ ddlm	Z
 ej                  j                  dddgg«      d„ «       Zej                  j                  di d	d
iddig«      d„ «       Zd„ Zd„ Zd„ Zej                  j                  dg d¢«      d„ «       Zej                  j                  dddg«      d„ «       Zd„ Zy)zf
Tests that comments are properly handled during parsing
for all of the parsers defined in parsers.py
é    )ÚStringION)Ú	DataFrameÚ	na_valuesÚNaNc                 óx  — | }d}t        g d¢dt        j                  dggg d¢¬«      }|j                  dk(  rDd}t	        j
                  t        |¬	«      5  |j                  t        |«      d
|¬«       d d d «       y |j                  t        |«      d
|¬«      }t        j                  ||«       y # 1 sw Y   y xY w)Nz&A,B,C
1,2.,4.#hello world
5.,NaN,10.0
©g      ð?g       @ç      @ç      @ç      $@©ÚAÚBÚC©ÚcolumnsÚpyarrowú?The 'comment' option is not supported with the 'pyarrow' engine©ÚmatchÚ#©Úcommentr   ©r   ÚnpÚnanÚengineÚpytestÚraisesÚ
ValueErrorÚread_csvr   ÚtmÚassert_frame_equal)Úall_parsersr   ÚparserÚdataÚexpectedÚmsgÚresults          úeC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\pandas/tests/io/parser/test_comment.pyÚtest_commentr*      sŸ   € à€Fð€Dô Ú	˜3¤§¡¨Ð-Ð.ºô€Hð ‡}�}˜	Ò!ØOˆÜ�]‰]œ:¨SÖ1Ø�O‰OœH T›N°CÀ9ˆOÔM÷ 2àØ�_‰_œX d›^°SÀIˆ_ÓN€FÜ×Ñ˜& (Õ+÷	 2àúó   ÁB0Â0B9Úread_kwargsÚlineterminatorÚ*Údelim_whitespaceTc                 ó:  — | }d}d }d}|j                  d«      r|j                  dd«      }t        }n2|j                  d«      r!|j                  d|j                  d«      «      }d|d	<   |j                  d
k(  rkd|v rd}nd}t	        j
                  t        |¬«      5  t        j                  ||d¬«      5   |j                  t        |«      fi |¤Ž d d d «       d d d «       y |j                  dk(  ru|j                  d«      rdd}t	        j
                  t        |¬«      5  t        j                  ||d¬«      5   |j                  t        |«      fi |¤Ž d d d «       d d d «       y t        j                  ||d¬«      5   |j                  t        |«      fi |¤Ž}d d d «       t        g d¢dt        j                  dggg d¢¬«      }	t        j                  |	«       y # 1 sw Y   �ŒxY w# 1 sw Y   y xY w# 1 sw Y   Œ£xY w# 1 sw Y   y xY w# 1 sw Y   ŒuxY w)Nz@# empty
A,B,C
1,2.,4.#hello world
#ignore this line
5.,NaN,10.0
z;The 'delim_whitespace' keyword in pd.read_csv is deprecatedr/   Ú,Ú r-   Ú
r   r   r   zFThe 'lineterminator' option is not supported with the 'pyarrow' enginer   r   F)r   Úcheck_stacklevelÚpythonz>Custom line terminators not supported in python parser \(yet\)r   r
   r   r   r   )ÚgetÚreplaceÚFutureWarningr   r   r   r   r!   Úassert_produces_warningr    r   r   r   r   r"   )
r#   r,   Úrequestr$   r%   ÚwarnÚdepr_msgr'   r(   r&   s
             r)   Útest_line_commentr=   !   sÝ  € ð €Fð€Dð €DØL€Hà‡�Ð)Ô*Ø�|‰|˜C Ó%ˆÜ‰Ø	�‰Ð)Ô	*Ø�|‰|˜D +§/¡/Ð2BÓ"CÓDˆà €K�	ÑØ‡}�}˜	Ò!Ø˜{Ñ*àXñ ð TˆCÜ�]‰]œ:¨SÖ1Ü×+Ñ+Ø˜H°uöð  �—‘¤¨£Ñ>°+Ò>÷÷ 2ð
 	Ø	�‰˜(Ò	" {§¡Ð7GÔ'HØOˆÜ�]‰]œ:¨SÖ1Ü×+Ñ+Ø˜H°uöð  �—‘¤¨£Ñ>°+Ò>÷÷ 2ð
 	ä	×	#Ñ	# D°È5Ö	QØ �—‘¤¨$£Ñ?°;Ñ?ˆ÷ 
Rô Ú	˜3¤§¡¨Ð-Ð.ºô€Hô ×Ñ˜& (Õ+÷)ñ ú÷ 2ð
 	ú÷ð ú÷ 2ð
 	úç	QÐ	QúsT   ÂG-Â6G ÃG-Ä!HÄ:G9ÅHÆ HÇ G*	Ç%G-Ç-G6Ç9H	Ç>HÈHÈHc                 óx  — | }d}t        g d¢dt        j                  dggg d¢¬«      }|j                  dk(  rDd}t	        j
                  t        |¬	«      5  |j                  t        |«      d
d¬«       d d d «       y |j                  t        |«      d
d¬«      }t        j                  ||«       y # 1 sw Y   y xY w)NzH# empty
random line
# second empty line
1,2,3
A,B,C
1,2.,4.
5.,NaN,10.0
r   r
   r   r   r   r   r   r   r   é   )r   Úskiprowsr   ©r#   r$   r%   r&   r'   r(   s         r)   Útest_comment_skiprowsrB   U   sŸ   € Ø€Fð€Dô Ú	˜3¤§¡¨Ð-Ð.ºô€Hð ‡}�}˜	Ò!ØOˆÜ�]‰]œ:¨SÖ1Ø�O‰OœH T›N°CÀ!ˆOÔD÷ 2àà�_‰_œX d›^°SÀ1ˆ_ÓE€FÜ×Ñ˜& (Õ+÷ 2àúr+   c                 óx  — | }d}t        g d¢dt        j                  dggg d¢¬«      }|j                  dk(  rDd}t	        j
                  t        |¬	«      5  |j                  t        |«      d
d¬«       d d d «       y |j                  t        |«      d
d¬«      }t        j                  ||«       y # 1 sw Y   y xY w)Nz<# empty
# second empty line
1,2,3
A,B,C
1,2.,4.
5.,NaN,10.0
r   r
   r   r   r   r   r   r   r   é   ©r   Úheaderr   rA   s         r)   Útest_comment_headerrG   m   sŸ   € Ø€Fð€Dô Ú	˜3¤§¡¨Ð-Ð.ºô€Hð ‡}�}˜	Ò!ØOˆÜ�]‰]œ:¨SÖ1Ø�O‰OœH T›N°CÀˆOÔB÷ 2àØ�_‰_œX d›^°SÀˆ_ÓC€FÜ×Ñ˜& (Õ+÷	 2àúr+   c                 ó|  — | }d}t        g d¢dt        j                  dggg d¢¬«      }|j                  dk(  rEd}t	        j
                  t        |¬	«      5  |j                  t        |«      d
dd¬«       d d d «       y |j                  t        |«      d
dd¬«      }t        j                  ||«       y # 1 sw Y   y xY w)NzU# empty
# second empty line
# third empty line
X,Y,Z
1,2,3
A,B,C
1,2.,4.
5.,NaN,10.0
r   r
   r   r   r   r   r   r   r   r?   rD   )r   r@   rF   r   rA   s         r)   Útest_comment_skiprows_headerrI   ƒ   s£   € Ø€Fð€Dô Ú	˜3¤§¡¨Ð-Ð.ºô€Hð ‡}�}˜	Ò!ØOˆÜ�]‰]œ:¨SÖ1Ø�O‰OœH T›N°CÀ!ÈAˆOÔN÷ 2àà�_‰_œX d›^°SÀ1ÈQˆ_ÓO€FÜ×Ñ˜& (Õ+÷ 2àús   ÁB2Â2B;Úcomment_char)r   Ú~Ú&Ú^r.   Ú@c           	      ó–  — | }d}|j                   dk(  rSd}t        j                  t        |¬«      5  |j	                  t        |j                  d|«      «      |¬«       d d d «       y |j	                  t        |j                  d|«      «      |¬«      }t        g d¢g d¢gg d	¢¬
«      }t        j                  ||«       y # 1 sw Y   y xY w)Nz,a,b,c
1,2,3#ignore this!
4,5,6#ignorethistoor   r   r   r   )r   ©rD   é   é   )r?   é   é   ©ÚaÚbÚcr   )
r   r   r   r   r    r   r7   r   r!   r"   )r#   rJ   r$   r%   r'   r(   r&   s          r)   Útest_custom_comment_charrY   ž   s±   € à€FØ;€Dà‡}�}˜	Ò!ØOˆÜ�]‰]œ:¨SÖ1Ø�O‰OÜ˜Ÿ™ c¨<Ó8Ó9À<ð ô ÷ 2ð 	Ø�_‰_Ü�—‘˜c <Ó0Ó1¸<ð ó €Fô š)¢YÐ/ºÔI€HÜ×Ñ˜& (Õ+÷ 2ð 	ús   ±-B?Â?CrF   Úinferc                 ó„  — | }d}|€t        ddgddgddgdœ«      }nt        g d	¢gg d
¢¬«      }|j                  dk(  rDd}t        j                  t        |¬«      5  |j                  t        |«      d|¬«       d d d «       y |j                  t        |«      d|¬«      }t        j                  ||«       y # 1 sw Y   y xY w)Nz # notes
a,b,c
# more notes
1,2,3rV   Ú1rW   Ú2rX   Ú3)r   rD   rQ   rP   rU   r   r   r   r   r   rE   )	r   r   r   r   r   r    r   r!   r"   )r#   rF   r$   r%   r&   r'   r(   s          r)   Útest_comment_first_liner_   ²   s¬   € ð €FØ0€Dà€~Ü # s °°c°
ÀÀS¸zÑJÓK‰äši˜[²/ÔBˆà‡}�}˜	Ò!ØOˆÜ�]‰]œ:¨SÖ1Ø�O‰OœH T›N°CÀˆOÔG÷ 2àØ�_‰_œX d›^°SÀˆ_ÓH€FÜ×Ñ˜& (Õ+÷	 2àús   ÁB6Â6B?c                 óB  — | j                   dk(  r6d}|j                  t        j                  j	                  |t
        ¬«      «       | }d}|j                   dk(  rDd}t        j                  t        |¬«      5  |j                  t        |«      dd	¬
«       d d d «       y |j                  t        |«      dd	¬
«      }t        g d¢g d¢dt        j                  t        j                  gdt        j                  dgdœ«      }t        j                  ||«       y # 1 sw Y   y xY w)NrX   z=see gh-34002: works on the python engine but not the c engine)Úreasonr   zU# this is a comment
col1,col2,col3,col4
1,2,3,4#inline comment
4,5#,6,10
7,8,#N/A,11
r   r   r   r   z#N/Ar   )rD   r?   é   )rQ   rS   é   g      @r	   g      &@)Úcol1Úcol2Úcol3Úcol4)r   Úapplymarkerr   ÚmarkÚxfailÚAssertionErrorr   r   r    r   r   r   r   r!   r"   )r#   r:   ra   r$   r%   r'   r(   r&   s           r)   Ú"test_comment_char_in_default_valuerl   Æ   sí   € à×Ñ˜SÒ ØPˆà×ÑœFŸK™K×-Ñ-°VÄNÐ-ÓSÔTØ€Fð	ð 	ð ‡}�}˜	Ò!ØOˆÜ�]‰]œ:¨SÖ1Ø�O‰OœH T›N°CÀ6ˆOÔJ÷ 2àØ�_‰_œX d›^°SÀFˆ_ÓK€FÜâÚØœ"Ÿ&™&¤"§&¡&Ð)Øœ"Ÿ&™& $Ð'ñ		
ó€Hô ×Ñ˜& (Õ+÷ 2àús   Á6DÄD)Ú__doc__Úior   Únumpyr   r   Úpandasr   Úpandas._testingÚ_testingr!   ri   Úparametrizer*   r=   rB   rG   rI   rY   r_   rl   © ó    r)   Ú<module>rv      sæ   ðñõ ã Û å Ý ð ‡�×Ñ˜ t¨e¨W oÓ6ñ,ó 7ð,ð$ ‡�×ÑØ�BÐ)¨3Ð/Ð2DÀdÐ1KÐLóñ.,óð.,òb,ò0,ò,,ð6 ‡�×Ñ˜Ò)GÓHñ,ó Ið,ð& ‡�×Ñ˜ G¨T ?Ó3ñ,ó 4ð,ó&,ru   