o
    no™i™  ã                   @   sh   U d dl mZ d dlmZ d dlmZmZ eeƒjjjd Z	ee
d< G dd„ deƒZG dd	„ d	eƒZd
S )é    )ÚPath)ÚTestCase)ÚCSTTransformerÚparse_moduleznative/libcst/tests/fixturesÚfixturesc                   @   s   e Zd ZdS )ÚNOOPTransformerN)Ú__name__Ú
__module__Ú__qualname__© r   r   úO/home/ubuntu/.local/lib/python3.10/site-packages/libcst/tests/test_roundtrip.pyr      s    r   c                   @   s2   e Zd Zdee fdd„Zd	dd„Zd	dd„ZdS )
ÚRoundTripTestsÚreturnc                 C   s6   |   t ¡ t› d¡ tt ¡ ƒ}|  t|ƒd¡ |S )Nz should existr   )Ú
assertTruer   ÚexistsÚlistÚiterdirÚassertGreaterÚlen)ÚselfÚfilesr   r   r   Ú_get_fixtures   s   zRoundTripTests._get_fixturesNc              	   C   sj   |   ¡ D ].}| jt|ƒd |jdd}t|ƒ}d | _|  |j|¡ W d   ƒ n1 s-w   Y  qd S ©N)Úfilezutf-8)Úencoding)r   ÚsubTestÚstrÚ	read_textr   ÚmaxDiffÚassertEqualÚcode)r   r   ÚsrcÚmodr   r   r   Útest_clean_roundtrip   s   ü€ÿz#RoundTripTests.test_clean_roundtripc              	   C   sz   t ƒ }d | _|  ¡ D ]0}| jt|ƒd |jdd}t|ƒ}| |¡}|  ||j	¡ W d   ƒ n1 s5w   Y  q
d S r   )
r   r   r   r   r   r   r   Úvisitr   r    )r   Útransformerr   r!   r"   Únew_modr   r   r   Útest_transform_roundtrip#   s   
ü€ÿz'RoundTripTests.test_transform_roundtrip)r   N)r   r	   r
   r   r   r   r#   r'   r   r   r   r   r      s    
r   N)Úpathlibr   Úunittestr   Úlibcstr   r   Ú__file__Úparentr   Ú__annotations__r   r   r   r   r   r   Ú<module>   s   