o
    b                     @   s   d Z ddlZddlZddlZddlZejejZe	dfddZ
dd Zdd	 Zd
d Zeejde ejejedd  dS )zHooks for nose library.    Nz([A-Z])c                 C   s   | dd | S )Nc                 S   s   d|   d   S )N_r   )groupslower)m r   W/var/www/secure340b-portal/env/lib/python3.10/site-packages/astroid/brain/brain_nose.py<lambda>   s    z_pep8.<locals>.<lambda>)sub)nameZcapsr   r   r   _pep8   s   r   c                  c   s    t td} z
t| d  }W n tjy   Y dS w | D ])}|j	
dr>d|j	vr>t|j	}|t||fV  |j	dkrLdt||fV  q#dS )z+Get an iterator of names and bound methods.zY
    import unittest

    class Test(unittest.TestCase):
        pass
    a = Test()
    aNassertr   assertEqualZassert_equals)_BUILDERstring_buildtextwrapdedentnextZinferastroidZInferenceErrormethodsr
   
startswithr   ZBoundMethod)modulecasemethod	pep8_namer   r   r   _nose_tools_functions   s&   

r   c                 C   s    t  D ]
\}}|g| j|< qd S )N)r   locals)nodemethod_namer   r   r   r   _nose_tools_transform1   s   r   c                  C   sX   t d} ddg}t D ]\}}|| || |< q| d j}t|}||_||_| S )z+Custom transform for the nose.tools module.z__all__ = []Zok_Zeq___all__)r   r   r   appendparentr   Listvalue)ZstubZall_entriesr   r   Z
all_assignZ
all_objectr   r   r   _nose_tools_trivial_transform6   s   




r%   znose.tools.trivialc                 C   s
   | j dkS )Nz
nose.tools)r
   )nr   r   r   r   L   s   
 r   )__doc__rer   r   Zastroid.builderZbuilderZAstroidBuilderZMANAGERr   compiler   r   r   r%   Zregister_module_extenderZregister_transformModuler   r   r   r   <module>   s    