o
    noi  ć                   @   s\   d dl mZ d dlZd dlmZ d dlmZmZ d dlm	Z	 d dl
mZ G dd deZdS )	é    )ŚAnyN)Śparse_statement)ŚCSTNodeTestŚDummyIndentedBlock)Ś	CodeRange)Śdata_providerc                   @   s  e Zd Zee e e d””e e 	” f””de
de e e d””e e 	” f”e e e 	” f”””de
dede e e d””e e 	” f””ddedd	d
ede e e d””e e e 	” f”f””ddeddd
eje e d””e e e 	” f”f”eje d”dfdde
eddd
eje e d””e e e 	” f”f”eje e e 	” f”f”eje d”dfdeje d”dfdddeddd
ejeje d”e ” fe ” fde e 	” f”e d”dde
eddd
eje e d””e e 	” f”e d”e d”dde
eddd
fd ed!dfd"d#Zed$d% d&d'fd ed!dfd(d)ZdS )*Ś	WhileTestŚiterzwhile iter(): pass
)ŚnodeŚcodeŚparserzwhile iter(): pass
else: pass
z    z    while iter(): pass
N)é   é   )r   é   )r
   r   r   Śexpected_positionz    while iter():
        pass
)é   é   z# leading comment)Ścomment)Śleading_linesz)# leading comment
while iter():
    pass
)r   r   )é   é   z# else commentzG# leading comment
while iter():
    pass
# else comment
else:
    pass
)é   r   )ŚlparŚrparŚ ©Śwhitespace_after_whilezwhile(iter()): pass
)r   r   )r   é   z  )r   Śwhitespace_before_colonzwhile  iter()  : pass
)r   é   ŚkwargsŚreturnc                 K   ó   | j di |¤ d S ©N© )Śvalidate_node©Śselfr    r$   r$   śR/home/ubuntu/.local/lib/python3.10/site-packages/libcst/_nodes/tests/test_while.pyŚ
test_valid   s   kzWhileTest.test_validc                   C   s.   t jt  t  d””t  t  ” f”t  d”dS )Nr	   r   r   )ŚcstŚWhileŚCallŚNameŚSimpleStatementSuiteŚPassŚSimpleWhitespacer$   r$   r$   r(   Ś<lambda>   s
    żzWhileTest.<lambda>z2Must have at least one space after 'while' keyword)Śget_nodeŚexpected_rec                 K   r"   r#   )Śassert_invalidr&   r$   r$   r(   Śtest_invalid}   s   zWhileTest.test_invalid)Ś__name__Ś
__module__Ś__qualname__r   r*   r+   r,   r-   r.   r/   r   ŚElser   r   ŚIndentedBlockŚSimpleStatementLineŚ	EmptyLineŚCommentŚ	LeftParenŚ
RightParenr0   r   r)   r5   r$   r$   r$   r(   r      sĄ    ’ū	żłžžöžžö’żö’ž’÷šżł	ōü÷¤’jś’’r   )Śtypingr   Ślibcstr*   r   Ślibcst._nodes.tests.baser   r   Ślibcst.metadatar   Ślibcst.testing.utilsr   r   r$   r$   r$   r(   Ś<module>   s   