o
    ”7?e¦  ã                   @   sŽ   d Z ddlmZ ddlmZ ddlmZ ddl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jƒZdd„ ZedkrEe ¡  dS dS )zTests for augment.rename.é    )Úabsolute_import)Údivision)Úprint_functionN)Úrename)Úscope)Ú
test_utilsc                   @   s\   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Z	dd„ Z
dd„ Zdd„ ZdS )Ú
RenameTestc                 C   ó˜   d}t  |¡}|  t |dd¡¡ |  |t  d¡¡ t  |¡}|  t |dd¡¡ |  |t  d¡¡ t  |¡}|  t |dd¡¡ |  |t  |¡¡ d S )Nz$import aaa.bbb.ccc
aaa.bbb.ccc.foo()úaaa.bbbúxxx.yyyz$import xxx.yyy.ccc
xxx.yyy.ccc.foo()úaaa.bbb.ccczimport xxx.yyy
xxx.yyy.foo()Úbbb©ÚastÚparseÚ
assertTruer   Úrename_externalÚcheckAstsEqualZassertFalse©ÚselfÚsrcÚt© r   úZ/home/www/facesmatcher.com/pyenv/lib/python3.10/site-packages/pasta/augment/rename_test.pyÚtest_rename_external_in_import   ó   


z)RenameTest.test_rename_external_in_importc                 C   ó8   d}t  |¡}|  t |dd¡¡ |  |t  d¡¡ d S )Nz#import aaa.bbb.ccc as ddd
ddd.foo()r
   r   z#import xxx.yyy.ccc as ddd
ddd.foo()©r   r   r   r   r   r   r   r   r   r   Ú*test_rename_external_in_import_with_asname-   ó   
z5RenameTest.test_rename_external_in_import_with_asnamec                 C   r   )Nz import aaa, aaa.bbb, aaa.bbb.cccr
   r   z import aaa, xxx.yyy, xxx.yyy.cccr   r   r   r   r   Ú/test_rename_external_in_import_multiple_aliases3   r   z:RenameTest.test_rename_external_in_import_multiple_aliasesc                 C   r	   )Nz%from aaa.bbb.ccc import ddd
ddd.foo()r
   r   z%from xxx.yyy.ccc import ddd
ddd.foo()r   z!from xxx.yyy import ddd
ddd.foo()r   r   r   r   r   r   Ú"test_rename_external_in_importfrom9   r   z-RenameTest.test_rename_external_in_importfromc                 C   r   )Nz!from aaa.bbb import ccc
ccc.foo()r   r   zfrom xxx import yyy
yyy.foo()r   r   r   r   r   Ú(test_rename_external_in_importfrom_aliasG   r   z3RenameTest.test_rename_external_in_importfrom_aliasc                 C   r   )Nz(from aaa.bbb import ccc as abc
abc.foo()r   r   z$from xxx import yyy as abc
abc.foo()r   r   r   r   r   Ú4test_rename_external_in_importfrom_alias_with_asnameM   r   z?RenameTest.test_rename_external_in_importfrom_alias_with_asnamec                 C   sD   d}t  |¡}t |¡}|  t ||dd¡¡ |  |t  d¡¡ d S )Nú	aaa.bbb()ÚaaaZxxxz	xxx.bbb())r   r   r   Úanalyzer   r   Ú_rename_readsr   ©r   r   r   Úscr   r   r   Útest_rename_reads_nameS   s
   

z!RenameTest.test_rename_reads_namec                 C   ó>   d}t  |¡}t |¡}t ||dd¡ |  |t  d¡¡ d S )Nr$   r%   r   zxxx.yyy.bbb()©r   r   r   r&   r   r'   r   r(   r   r   r   Ú#test_rename_reads_name_as_attributeZ   ó
   

z.RenameTest.test_rename_reads_name_as_attributec                 C   r+   )Núaaa.bbb.ccc()r
   r   zxxx.yyy.ccc()r,   r(   r   r   r   Útest_rename_reads_attributea   r.   z&RenameTest.test_rename_reads_attributec                 C   sN   d}t  |¡}t |¡}t ||dd¡ t ||dd¡ |  |t  |¡¡ d S )Nr/   zaaa.bbb.ccc.dddr   zbbb.aaar,   r(   r   r   r   Útest_rename_reads_nooph   s   

z!RenameTest.test_rename_reads_noopN)Ú__name__Ú
__module__Ú__qualname__r   r   r    r!   r"   r#   r*   r-   r0   r1   r   r   r   r   r      s    r   c                  C   s   t  ¡ } |  t  t¡¡ | S )N)ÚunittestZ	TestSuiteZaddTestsZ	makeSuiter   )Úresultr   r   r   Úsuiteq   s   r7   Ú__main__)Ú__doc__Ú
__future__r   r   r   r   r5   Zpasta.augmentr   Z
pasta.baser   r   ZTestCaser   r7   r2   Úmainr   r   r   r   Ú<module>   s   Tÿ