§
    á! hˆ  ã                   ó’  — 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          ú]c:\xampp_lite_8_4\www\timesheet\venv\Lib\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Ú*Údelim_whitespaceTc                 óp  — | }d}d }d}|                      d¦  «        r|                     dd¦  «        }t          }n>|                      d¦  «        r)|                     d|                      d¦  «        ¦  «        }d|d	<   |j        d
k    rˆd|v rd}nd}t	          j        t          |¬¦  «        5  t          j        ||d¬¦  «        5   |j	        t          |¦  «        fi |¤Ž d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   d S |j        dk    r–|                      d¦  «        r�d}t	          j        t          |¬¦  «        5  t          j        ||d¬¦  «        5   |j	        t          |¦  «        fi |¤Ž d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   d S t          j        ||d¬¦  «        5   |j	        t          |¦  «        fi |¤Ž}d d d ¦  «         n# 1 swxY w Y   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
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à‡‚Ð)Ñ*Ô*ð EØ�|Š|˜C Ñ%Ô%ˆÝˆˆØ	�ŠÐ)Ñ	*Ô	*ð EØ�|Š|˜D +§/¢/Ð2BÑ"CÔ"CÑDÔDˆà €K�	ÑØ„}˜	Ò!Ð!Ø˜{Ð*Ð*àXð ˆCð TˆCÝŒ]�:¨SÐ1Ñ1Ô1ð 	?ð 	?ÝÔ+Ø˜H°uðñ ô ð ?ð ?ð  �”¥¨¡¤Ð>Ð>°+Ð>Ð>Ð>ð?ð ?ð ?ñ ?ô ?ð ?ð ?ð ?ð ?ð ?ð ?øøøð ?ð ?ð ?ð ?ð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?ð
 	ˆØ	Œ˜(Ò	"Ð	" {§¢Ð7GÑ'HÔ'HÐ	"ØOˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	?ð 	?ÝÔ+Ø˜H°uðñ ô ð ?ð ?ð  �”¥¨¡¤Ð>Ð>°+Ð>Ð>Ð>ð?ð ?ð ?ñ ?ô ?ð ?ð ?ð ?ð ?ð ?ð ?øøøð ?ð ?ð ?ð ?ð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?ð
 	ˆå	Ô	# D°È5Ð	QÑ	QÔ	Qð @ð @Ø �”¥¨$¡¤Ð?Ð?°;Ð?Ð?ˆð@ð @ð @ñ @ô @ð @ð @ð @ð @ð @ð @øøøð @ð @ð @ð @õ Ø	ˆˆ˜3¥¤¨Ð-Ð.¸¸¸ðñ ô €Hõ Ô˜& (Ñ+Ô+Ð+Ð+Ð+s~   Â.DÃC.Ã"DÃ.C2	Ã2DÃ5C2	Ã6DÄD	ÄD	ÅF&Å'FÆF&ÆF	ÆF&ÆF	ÆF&Æ&F*Æ-F*Ç
G2Ç2G6Ç9G6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_skiprowsrB   U   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   rA   s         r)   Útest_comment_headerrG   m   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   r?   rD   )r   r@   rF   r   rA   s         r)   Útest_comment_skiprows_headerrI   ƒ   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   ©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   ž   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rF   Ú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,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Ð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 )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   Æ   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!   ri   Úparametrizer*   r=   rB   rG   rI   rY   r_   rl   © ó    r)   ú<module>rv      s‡  ððð ð Ð Ð Ð Ð Ð à Ð Ð Ð Ø €€€à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð ð „×Ò˜ t¨e¨W oÑ6Ô6ð,ð ,ñ 7Ô6ð,ð$ „×ÒØ�BÐ)¨3Ð/Ð2DÀdÐ1KÐLñô ð.,ð .,ñô ð.,ðb,ð ,ð ,ð0,ð ,ð ,ð,,ð ,ð ,ð6 „×Ò˜Ð)GÐ)GÐ)GÑHÔHð,ð ,ñ IÔHð,ð& „×Ò˜ G¨T ?Ñ3Ô3ð,ð ,ñ 4Ô3ð,ð&,ð ,ð ,ð ,ð ,ru   