o
    DDi8                     @   sP   d dl mZmZ d dlZd dlmZ d dlmZ d dlm	Z	 G dd deZ
dS )    )CallableOptionalN)parse_statement)CSTNodeTest)data_providerc                   @   sn  e Zd Zeeee ffddfedddfeedfddfejee ffddddfejee ffeje	de
dd	d
ddfejee ffeje
ddfdddfejee ffeje	de
dd	fdddfeee fee ffddfeedeee ffdefeedeee feedeee fffdefeedeee feedejee ffddfdeffdejdedeeegejf  ddfddZedd  d!fd"d  d#ffd$eg ejf d%eddfd&d'ZdS )(IndentedBlockTestz

    pass
N 	indentz
	pass
z  z# header comment)
whitespacecomment)headerz  # header comment
    pass
z# footer comment)r   )footerz
    pass
    # footer comment
z    z#
    pass
        # footer comment
z
    continue
    pass
conditionalzif conditional:
    pass
other_conditionalz@if conditional:
    pass
    if other_conditional:
        pass
z        zDif conditional:
    pass
    if other_conditional:
            pass
nodecodeparserreturnc                 C   s   |  ||| d S N)validate_node)selfr   r   r   r   r   `/var/www/Datamplify/venv/lib/python3.10/site-packages/libcst/_nodes/tests/test_indented_block.py
test_valid   s   wzIndentedBlockTest.test_validc                   C      t jt t  ffddS )N r
   cstIndentedBlockSimpleStatementLinePassr   r   r   r   <lambda>   s    zIndentedBlockTest.<lambda>znon-zero width indentc                   C   r   )Nzthis isn't valid whitespace!r
   r   r   r   r   r   r"      s    zonly whitespaceget_nodeexpected_rec                 C   s   |  || d S r   )assert_invalid)r   r#   r$   r   r   r   test_invalid   s   zIndentedBlockTest.test_invalid)__name__
__module____qualname__r   r   r   r    r!   TrailingWhitespaceSimpleWhitespaceComment	EmptyLineContinueIfNamer   CSTNodestrr   r   r   r&   r   r   r   r   r      s    			
qr   )typingr   r   libcstr   r   libcst._nodes.tests.baser   libcst.testing.utilsr   r   r   r   r   r   <module>   s   