o
    DD©i†  ã                   @   sH   d dl mZ d dlZd dlmZmZmZ d dlmZ G dd„ deƒZ	dS )é    )ÚListN)ÚCSTTransformerÚ
CSTVisitorÚparse_module)ÚUnitTestc                   @   s    e Zd Zddd„Zddd„ZdS )ÚVisitorTestÚreturnNc                 C   ó>   G dd„ dt ƒ}tdƒ}|ƒ }| |¡ |  |jg d¢¡ d S )Nc                   @   sŽ   e Zd Zddd„Zdejddfdd„Zdejddfd	d
„Zdejddfdd„Zdejddfdd„Z	dej
ddfdd„Zdej
ddfdd„ZdS )z-VisitorTest.test_visitor.<locals>.SomeVisitorr   Nc                 S   ó
   g | _ d S ©N©Úvisit_order©Úself© r   úR/var/www/Datamplify/venv/lib/python3.10/site-packages/libcst/tests/test_visitor.pyÚ__init__   ó   
z6VisitorTest.test_visitor.<locals>.SomeVisitor.__init__Únodec                 S   ó   | j  d¡ d S ©NÚvisit_If©r   Úappend©r   r   r   r   r   r      ó   z6VisitorTest.test_visitor.<locals>.SomeVisitor.visit_IfÚoriginal_nodec                 S   r   ©NÚleave_Ifr   ©r   r   r   r   r   r      r   z6VisitorTest.test_visitor.<locals>.SomeVisitor.leave_Ifc                 S   r   ©NÚvisit_If_testr   r   r   r   r   r!      r   z;VisitorTest.test_visitor.<locals>.SomeVisitor.visit_If_testc                 S   r   ©NÚleave_If_testr   r   r   r   r   r#      r   z;VisitorTest.test_visitor.<locals>.SomeVisitor.leave_If_testc                 S   r   ©NÚ
visit_Namer   r   r   r   r   r%      r   z8VisitorTest.test_visitor.<locals>.SomeVisitor.visit_Namec                 S   r   ©NÚ
leave_Namer   r   r   r   r   r'   "   r   z8VisitorTest.test_visitor.<locals>.SomeVisitor.leave_Name©r   N©Ú__name__Ú
__module__Ú__qualname__r   ÚcstÚIfr   r   r!   r#   ÚNamer%   r'   r   r   r   r   ÚSomeVisitor   s    
r0   úif True:
    pass©r   r!   r%   r'   r#   r   )r   r   ÚvisitÚassertEqualr   )r   r0   ÚmoduleÚvisitorr   r   r   Útest_visitor   s   
þzVisitorTest.test_visitorc                 C   r	   )Nc                   @   sž   e Zd Zddd„Zdejddfdd„Zdejd	ejdejfd
d„Zdejddfdd„Zdejddfdd„Z	dej
ddfdd„Zdej
d	ej
dej
fdd„ZdS )z5VisitorTest.test_transformer.<locals>.SomeTransformerr   Nc                 S   r
   r   r   r   r   r   r   r   9   r   z>VisitorTest.test_transformer.<locals>.SomeTransformer.__init__r   c                 S   r   r   r   r   r   r   r   r   <   r   z>VisitorTest.test_transformer.<locals>.SomeTransformer.visit_Ifr   Úupdated_nodec                 S   ó   | j  d¡ |S r   r   ©r   r   r8   r   r   r   r   ?   s   z>VisitorTest.test_transformer.<locals>.SomeTransformer.leave_Ifc                 S   r   r    r   r   r   r   r   r!   C   r   zCVisitorTest.test_transformer.<locals>.SomeTransformer.visit_If_testc                 S   r   r"   r   r   r   r   r   r#   F   r   zCVisitorTest.test_transformer.<locals>.SomeTransformer.leave_If_testc                 S   r   r$   r   r   r   r   r   r%   I   r   z@VisitorTest.test_transformer.<locals>.SomeTransformer.visit_Namec                 S   r9   r&   r   r:   r   r   r   r'   L   s   z@VisitorTest.test_transformer.<locals>.SomeTransformer.leave_Namer(   r)   r   r   r   r   ÚSomeTransformer8   s    
ÿÿþr;   r1   r2   )r   r   r3   r4   r   )r   r;   r5   Útransformerr   r   r   Útest_transformer7   s   
þzVisitorTest.test_transformerr(   )r*   r+   r,   r7   r=   r   r   r   r   r      s    
)r   )
Útypingr   Úlibcstr-   r   r   r   Úlibcst.testing.utilsr   r   r   r   r   r   Ú<module>   s
   