§
    tŠtj•  ã                   ó’  — 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                             dddgg¦  «        d„ ¦   «         Zej                             di d	d
iddig¦  «        d„ ¦   «         Zd„ Zd„ Zd„ Zej                             dg d¢¦  «        d„ ¦   «         Zej                             dddg¦  «        d„ ¦   «         Zd„ ZdS )zf
Tests that comments are properly handled during parsing
for all of the parsers defined in parsers.py
é    )ÚStringION)Ú	DataFrameÚ	na_valuesÚNaNc                 ó˜  — | }d}t          g d¢dt          j        dggg d¢¬¦  «        }|j        dk    r\d}t	          j        t          |¬	¦  «        5  |                     t          |¦  «        d
|¬¦  «         d d d ¦  «         n# 1 swxY w Y   d S |                     t          |¦  «        d
|¬¦  «        }t          j
        ||¦  «         d S )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          úa/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pandas/tests/io/parser/test_comment.pyÚtest_commentr*      s'  € à€Fð€Dõ Ø	ˆˆ˜3¥¤¨Ð-Ð.¸¸¸ðñ ô €Hð „}˜	Ò!Ð!ØOˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	Nð 	NØ�OŠO�H T™NœN°CÀ9ˆOÑMÔMÐMð	Nð 	Nð 	Nñ 	Nô 	Nð 	Nð 	Nð 	Nð 	Nð 	Nð 	Nøøøð 	Nð 	Nð 	Nð 	NàˆØ�_Š_�X d™^œ^°SÀIˆ_ÑNÔN€FÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+ó   Á&BÂBÂ
BÚread_kwargsÚlineterminatorÚ*Úsepz\s+c                 ó@  — | }d}|                      d¦  «        r|                     dd¦  «        }n>|                      d¦  «        r)|                     d|                      d¦  «        ¦  «        }d|d<   |j        d	k    rYd|v rd
}nd}t          j        t
          |¬¦  «        5   |j        t          |¦  «        fi |¤Ž d d d ¦  «         n# 1 swxY w Y   d S |j        dk    rg|                      d¦  «        rRd}t          j        t
          |¬¦  «        5   |j        t          |¦  «        fi |¤Ž d d d ¦  «         n# 1 swxY w Y   d S  |j        t          |¦  «        fi |¤Ž}t          g d¢dt          j
        dggg d¢¬¦  «        }t          j        ||¦  «         d S )Nz@# empty
A,B,C
1,2.,4.#hello world
#ignore this line
5.,NaN,10.0
r/   ú,ú r-   ú
r   r   r   zFThe 'lineterminator' option is not supported with the 'pyarrow' enginer   r   Úpythonz>Custom line terminators not supported in python parser \(yet\)r   r
   r   r   r   )ÚgetÚreplacer   r   r   r   r    r   r   r   r   r!   r"   )r#   r,   r$   r%   r'   r(   r&   s          r)   Útest_line_commentr7   "   sO  € à€Fð€Dð ‡‚�uÑÔð EØ�|Š|˜C Ñ%Ô%ˆˆØ	�ŠÐ)Ñ	*Ô	*ð EØ�|Š|˜D +§/¢/Ð2BÑ"CÔ"CÑDÔDˆà €K�	ÑØ„}˜	Ò!Ð!Ø˜{Ð*Ð*àXð ˆCð TˆCÝŒ]�:¨SÐ1Ñ1Ô1ð 	;ð 	;ØˆFŒO�H T™NœNÐ:Ð:¨kÐ:Ð:Ð:ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;àˆØ	Œ˜(Ò	"Ð	" {§¢Ð7GÑ'HÔ'HÐ	"ØOˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	;ð 	;ØˆFŒO�H T™NœNÐ:Ð:¨kÐ:Ð:Ð:ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;àˆàˆVŒ_�X d™^œ^Ð;Ð;¨{Ð;Ð;€FÝØ	ˆˆ˜3¥¤¨Ð-Ð.¸¸¸ðñ ô €Hõ Ô˜& (Ñ+Ô+Ð+Ð+Ð+s$   Â#CÃCÃCÄD=Ä=EÅEc                 ó˜  — | }d}t          g d¢dt          j        dggg d¢¬¦  «        }|j        dk    r\d}t	          j        t          |¬	¦  «        5  |                     t          |¦  «        d
d¬¦  «         d d d ¦  «         n# 1 swxY w Y   d S |                     t          |¦  «        d
d¬¦  «        }t          j
        ||¦  «         d S )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_skiprowsr<   H   s'  € Ø€Fð€Dõ Ø	ˆˆ˜3¥¤¨Ð-Ð.¸¸¸ðñ ô €Hð „}˜	Ò!Ð!ØOˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	Eð 	EØ�OŠO�H T™NœN°CÀ!ˆOÑDÔDÐDð	Eð 	Eð 	Eñ 	Eô 	Eð 	Eð 	Eð 	Eð 	Eð 	Eð 	Eøøøð 	Eð 	Eð 	Eð 	Eàˆà�_Š_�X d™^œ^°SÀ1ˆ_ÑEÔE€FÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r+   c                 ó˜  — | }d}t          g d¢dt          j        dggg d¢¬¦  «        }|j        dk    r\d}t	          j        t          |¬	¦  «        5  |                     t          |¦  «        d
d¬¦  «         d d d ¦  «         n# 1 swxY w Y   d S |                     t          |¦  «        d
d¬¦  «        }t          j
        ||¦  «         d S )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   r;   s         r)   Útest_comment_headerrA   `   s'  € Ø€Fð€Dõ Ø	ˆˆ˜3¥¤¨Ð-Ð.¸¸¸ðñ ô €Hð „}˜	Ò!Ð!ØOˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	Cð 	CØ�OŠO�H T™NœN°CÀˆOÑBÔBÐBð	Cð 	Cð 	Cñ 	Cô 	Cð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cøøøð 	Cð 	Cð 	Cð 	CàˆØ�_Š_�X d™^œ^°SÀˆ_ÑCÔC€FÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r+   c                 óœ  — | }d}t          g d¢dt          j        dggg d¢¬¦  «        }|j        dk    r]d}t	          j        t          |¬	¦  «        5  |                     t          |¦  «        d
dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   d S |                     t          |¦  «        d
dd¬¦  «        }t          j
        ||¦  «         d S )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   r9   r>   )r   r:   r@   r   r;   s         r)   Útest_comment_skiprows_headerrC   v   s+  € Ø€Fð€Dõ Ø	ˆˆ˜3¥¤¨Ð-Ð.¸¸¸ðñ ô €Hð „}˜	Ò!Ð!ØOˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	Oð 	OØ�OŠO�H T™NœN°CÀ!ÈAˆOÑNÔNÐNð	Oð 	Oð 	Oñ 	Oô 	Oð 	Oð 	Oð 	Oð 	Oð 	Oð 	Oøøøð 	Oð 	Oð 	Oð 	Oàˆà�_Š_�X d™^œ^°SÀ1ÈQˆ_ÑOÔO€FÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+s   Á'BÂBÂBÚcomment_char)r   ú~ú&ú^r.   ú@c           	      óÎ  — | }d}|j         dk    rod}t          j        t          |¬¦  «        5  |                     t          |                     d|¦  «        ¦  «        |¬¦  «         d d d ¦  «         n# 1 swxY w Y   d S |                     t          |                     d|¦  «        ¦  «        |¬¦  «        }t          g d¢g d¢gg d	¢¬
¦  «        }t          j	        ||¦  «         d S )Nz,a,b,c
1,2,3#ignore this!
4,5,6#ignorethistoor   r   r   r   )r   ©r>   é   é   )r9   é   é   ©ÚaÚbÚcr   )
r   r   r   r   r    r   r6   r   r!   r"   )r#   rD   r$   r%   r'   r(   r&   s          r)   Útest_custom_comment_charrS   ‘   s6  € à€FØ;€Dà„}˜	Ò!Ð!ØOˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	ð 	Ø�OŠOÝ˜Ÿš c¨<Ñ8Ô8Ñ9Ô9À<ð ñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ˆØ�_Š_Ý�—’˜c <Ñ0Ô0Ñ1Ô1¸<ð ñ ô €Fõ ˜)˜)˜) Y Y YÐ/¸¸¸ÐIÑIÔI€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+s   ­9A2Á2A6Á9A6r@   Úinferc                 ó´  — | }d}|€t          ddgddgddgdœ¦  «        }nt          g d	¢gg d
¢¬¦  «        }|j        dk    r\d}t          j        t          |¬¦  «        5  |                     t          |¦  «        d|¬¦  «         d d d ¦  «         n# 1 swxY w Y   d S |                     t          |¦  «        d|¬¦  «        }t          j        ||¦  «         d S )Nz # notes
a,b,c
# more notes
1,2,3rP   Ú1rQ   Ú2rR   Ú3)r   r>   rK   rJ   rO   r   r   r   r   r   r?   )	r   r   r   r   r   r    r   r!   r"   )r#   r@   r$   r%   r&   r'   r(   s          r)   Útest_comment_first_linerY   ¥   s:  € ð €FØ0€Dà€~Ý # s °°c°
ÀÀS¸zÐJÐJÑKÔKˆˆå˜i˜i˜i˜[°/°/°/ÐBÑBÔBˆà„}˜	Ò!Ð!ØOˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	Hð 	HØ�OŠO�H T™NœN°CÀˆOÑGÔGÐGð	Hð 	Hð 	Hñ 	Hô 	Hð 	Hð 	Hð 	Hð 	Hð 	Hð 	Høøøð 	Hð 	Hð 	Hð 	HàˆØ�_Š_�X d™^œ^°SÀˆ_ÑHÔH€FÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+s   Á&BÂBÂBc                 óT  — | j         dk    r;d}|                     t          j                             |t
          ¬¦  «        ¦  «         | }d}|j         dk    r\d}t          j        t          |¬¦  «        5  |                     t          |¦  «        dd	¬
¦  «         d d d ¦  «         n# 1 swxY w Y   d S |                     t          |¦  «        dd	¬
¦  «        }t          g d¢g d¢dt          j        t          j        gdt          j        dgdœ¦  «        }t          j        ||¦  «         d S )NrR   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   )r>   r9   é   )rK   rM   é   g      @r	   g      &@)Úcol1Úcol2Úcol3Úcol4)r   Úapplymarkerr   ÚmarkÚxfailÚAssertionErrorr   r   r    r   r   r   r   r!   r"   )r#   Úrequestr[   r$   r%   r'   r(   r&   s           r)   Ú"test_comment_char_in_default_valuerg   ¹   sx  € àÔ˜SÒ Ð ØPˆà×Ò�FœK×-Ò-°VÅNÐ-ÑSÔSÑTÔTÐTØ€Fð	ð 	ð „}˜	Ò!Ð!ØOˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	Kð 	KØ�OŠO�H T™NœN°CÀ6ˆOÑJÔJÐJð	Kð 	Kð 	Kñ 	Kô 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Køøøð 	Kð 	Kð 	Kð 	KàˆØ�_Š_�X d™^œ^°SÀFˆ_ÑKÔK€FÝà�I�IØ�I�IØ�"œ&¥"¤&Ð)Ø�"œ& $Ð'ð		
ð 	
ñô €Hõ Ô˜& (Ñ+Ô+Ð+Ð+Ð+s   Á3&B%Â%B)Â,B))Ú__doc__Úior   Únumpyr   r   Úpandasr   Úpandas._testingÚ_testingr!   rc   Úparametrizer*   r7   r<   rA   rC   rS   rY   rg   © ó    r)   ú<module>rq      s  ððð ð
 Ð Ð Ð Ð Ð à Ð Ð Ð Ø €€€à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð ð „×Ò˜ t¨e¨W oÑ6Ô6ð,ð ,ñ 7Ô6ð,ð$ „×Ò˜¨Ð.>ÀÐ-DÀuÈfÀoÐ(VÑWÔWð",ð ",ñ XÔWð",ðJ,ð ,ð ,ð0,ð ,ð ,ð,,ð ,ð ,ð6 „×Ò˜Ð)GÐ)GÐ)GÑHÔHð,ð ,ñ IÔHð,ð& „×Ò˜ G¨T ?Ñ3Ô3ð,ð ,ñ 4Ô3ð,ð&,ð ,ð ,ð ,ð ,rp   