o
    ˷e                     @   sf   d Z ddlZddlmZ ddlmZ ddlmZ ddlmZ G dd dejZe	d	kr1e
  dS dS )
z*Tests for google.protobuf.symbol_database.    N)unittest_pb2)
descriptor)descriptor_pool)symbol_databasec                   @   sT   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S )SymbolDatabaseTestc                 C   s   t jrtjt d}nt }|tj |	tj
 |	tj
j |	tj
j |	tj
j |tjj |tj
jj |tj |S )N)pool)r   _USE_C_DESCRIPTORSr   SymbolDatabaser   DefaultRegisterFileDescriptorr   
DESCRIPTORRegisterMessageTestAllTypesNestedMessageOptionalGroupRepeatedGroupRegisterEnumDescriptorForeignEnum
NestedEnumRegisterServiceDescriptor_TESTSERVICE)selfdb r   d/var/www/ideatree/venv/lib/python3.10/site-packages/google/protobuf/internal/symbol_database_test.py	_Database+   s   zSymbolDatabaseTest._Databasec                 C   s&   |   tjj}| |tju  d S )N)r   GetPrototyper   r   r   
assertTrue)r   instancer   r   r   testGetPrototype=   s   z#SymbolDatabaseTest.testGetPrototypec                 C   s(   |   dg}| tj|d u  d S )Ngoogle/protobuf/unittest.protoprotobuf_unittest.TestAllTypes)r   GetMessagesr   r   r   )r   messagesr   r   r   testGetMessagesB   s   z"SymbolDatabaseTest.testGetMessagesc                 C   sj   |  tj|  d |  tjj|  d |  tjj|  d |  tjj|  d d S )Nr!   ,protobuf_unittest.TestAllTypes.NestedMessagez,protobuf_unittest.TestAllTypes.OptionalGroupz,protobuf_unittest.TestAllTypes.RepeatedGroup)assertEqualr   r   r   	GetSymbolr   r   r   r   r   r   r   testGetSymbolI   s(   z SymbolDatabaseTest.testGetSymbolc                 C   8   |  d|  jdj |  d|  jdj d S )Nzprotobuf_unittest.ForeignEnum)protobuf_unittest.TestAllTypes.NestedEnum)r&   r   r   FindEnumTypeByName	full_namer(   r   r   r   	testEnumsW      

zSymbolDatabaseTest.testEnumsc                 C   r*   )Nr!   r%   )r&   r   r   FindMessageTypeByNamer-   r(   r   r   r   testFindMessageTypeByNameb   s   

z,SymbolDatabaseTest.testFindMessageTypeByNamec                 C      |  d|  jdj d S )Nzprotobuf_unittest.TestService)r&   r   r   FindServiceByNamer-   r(   r   r   r   testFindServiceByNamel      
z(SymbolDatabaseTest.testFindServiceByNamec                 C   s8   |  d|  jdj |  d|  jdj d S )Nr    r+   r!   )r&   r   r   FindFileContainingSymbolnamer(   r   r   r   testFindFileContainingSymbolr   r/   z/SymbolDatabaseTest.testFindFileContainingSymbolc                 C   r2   )Nr    )r&   r   r   FindFileByNamer7   r(   r   r   r   testFindFileByName}   r5   z%SymbolDatabaseTest.testFindFileByNameN)__name__
__module____qualname__r   r   r$   r)   r.   r1   r4   r8   r:   r   r   r   r   r   )   s    
r   __main__)__doc__unittestgoogle.protobufr   r   r   r   TestCaser   r;   mainr   r   r   r   <module>   s   [