Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.9/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.9/test/__pycache__/test_asdl_parser.cpython-39.pyc

a

��g��@s�dZddlZddlZddlmZddlZddlZddlZe�	�sJe�
d��eeee���Zej
�ed�ZGdd�dej�Zedkr�e��dS)	z+Tests for the asdl parser in Parser/asdl.py�N)�dirnamez'test irrelevant for an installed PythonZParserc@s\eZdZedd��Zedd��Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�ZdS)�TestAsdlParsercCsbtj�dt�tj�dtj�td��}|�	�|_
|j
�tj�td��|_|�
|j
�|j�d�dS)Nr�asdlzasdl.pyzPython.asdlzModule validation failed)�sys�path�insert�
parser_dir�	importlib�	machinery�SourceFileLoader�os�join�load_moduler�parse�mod�
assertTrue�check)�cls�loader�r�1/usr/local/lib/python3.9/test/test_asdl_parser.py�
setUpClasss�
zTestAsdlParser.setUpClasscCstjd=dS)Nr)rr)rrrr�
tearDownClass!szTestAsdlParser.tearDownClasscCstj|_tj|_|jj|_dS�N)rrr�types��selfrrr�setUp%szTestAsdlParser.setUpcCs>|�|jjd�|�d|j�|�d|j�|�d|j�dS)N�Python�stmt�exprr)�assertEqualr�nameZassertInrrrrr�test_module+szTestAsdlParser.test_modulecCsb|jj}|�|d|jj�|�|dj|jj�|�|jd|jj�|�|jd|jj�dS)NrZwithitem�alias)	r�dfns�assertIsInstancer�Type�valueZSumrZProduct)rZdefsrrr�test_definitions1s
zTestAsdlParser.test_definitionscCs|jd}|�t|�d�dS)Nr$zGProduct([Field(identifier, name), Field(identifier, asname, opt=True)]))rr!�str)rr$rrr�test_product9s

�zTestAsdlParser.test_productcCsx|jd}|�t|j�d�|�t|jd�d�|�t|jd�d�|�t|jd�d�|�t|jd	�d
�dS)Nr�rzField(int, lineno)�zField(int, col_offset)�z Field(int, end_lineno, opt=True)�z$Field(int, end_col_offset, opt=True))rr!�len�
attributes�repr)rrrrr�test_attributes?s
zTestAsdlParser.test_attributescCs|jd}|�t|j�d�|�t|j�d�|jd}|�||jj�|�t|j�d�|jd}|�|jd�|�|j	d�|�
|j�|jd}|�|jd�|�|j	d	�|�
|j�|jd
}|�|jd�|�|j	d�|�|j�|�
|j
�dS)
NZ
excepthandlerr-r,rr/r �typeZ
identifierr"r.r�body)rr!r0r1r&rZConstructor�fieldsr4r"r�optZassertFalse�seq)rZehandler�consZf0�f1�f2rrr�test_constructor_fieldsGs&




z&TestAsdlParser.test_constructor_fieldscCs@Gdd�d|jj�}|�}|�|jd�|�|jgd��dS)Ncs<eZdZ�fdd�Zdd�Zdd�Zdd�Zd	d
�Z�ZS)z2TestAsdlParser.test_visitor.<locals>.CustomVisitorcst���g|_dSr)�super�__init__�names_with_seqr��	__class__rrr>bs
z;TestAsdlParser.test_visitor.<locals>.CustomVisitor.__init__cSs|jD]}|�|�qdSr)r%�visit)rrZdfnrrr�visitModulefs
z>TestAsdlParser.test_visitor.<locals>.CustomVisitor.visitModulecSs|�|j�dSr)rBr()rr4rrr�	visitTypejsz<TestAsdlParser.test_visitor.<locals>.CustomVisitor.visitTypecSs|jD]}|�|�qdSr)rrB)r�sum�trrr�visitSumms
z;TestAsdlParser.test_visitor.<locals>.CustomVisitor.visitSumcSs$|jD]}|jr|j�|j�qdSr)r6r8r?�appendr")rr9�frrr�visitConstructorqs
zCTestAsdlParser.test_visitor.<locals>.CustomVisitor.visitConstructor)	�__name__�
__module__�__qualname__r>rCrDrGrJ�
__classcell__rrr@r�
CustomVisitoras
rOr)�ModulerPZInteractive�FunctionType)rZVisitorBaserBrr!r?)rrO�vrrr�test_visitor`s�zTestAsdlParser.test_visitorN)
rKrLrM�classmethodrrrr#r)r+r3r<rSrrrrrs

r�__main__)�__doc__Zimportlib.machineryr	rZos.pathrrZ	sysconfigZunittestZis_python_buildZSkipTest�__file__Zsrc_baserr
rZTestCaserrK�mainrrrr�<module>s
i

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists