o
    ˷ey                     @   s  d Z ddlZddlmZ G dd deZe Zg dZg dZeD ]Z	e Z
eee	e
 eD ]Ze Zee
ee q.q!e e_dej_d	ej_d	ej_e e_dej_d	ej_d	ej_e e_dej_d	ej_d	ej_e e_dej_d	ej_d	ej_G d
d dejZdS )z&Some tests for the wildcard utilities.    N)wildcardc                   @   s   e Zd ZdS )obj_tN)__name__
__module____qualname__ r   r   X/var/www/ideatree/venv/lib/python3.10/site-packages/IPython/utils/tests/test_wildcard.pyr      s    r   )arnaabelABELactivebobbarkabbot)katelooparnevitoluciferkoppel
      c                   @   s<   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd ZdS )Testsc              	   C   sv   t j}dg dfdg dfdg fddgfddgfg}|D ]\}}|  ttj|d	|d
d
d }| || qd S )Na*r   r
   r   r	   ?b*.?o*abbot.koppel
abbot.loopabel.koppel	abel.loop_a*_*anka__anka_*a*allFignore_caseshow_allroot__dict__sortsortedr   list_namespacekeysassertEqualselfnstestspatresar   r   r   	test_case3   s    

zTests.test_casec              	   C   sz   t j}dg dfdg dfddgfddgfd	ddgfg}|D ]\}}|  ttj|d
|ddd }| || qd S )Nr   r   r   r   r!   _apanr"   r#   r$   r%   FTr&   r)   r1   r   r   r   test_case_showallB   s    


zTests.test_case_showallc              	   C   sz   t j}dg dfdg dfdg fdddgfd	ddgfg}|D ]\}}|  ttj|d
|ddd }| || qd S )Nr   r   r
   r   r   r	   r   r   r   r   r    zABEL.koppelz	ABEL.loopr!   r"   r#   __ANKAr$   r%   TFr&   r)   r1   r   r   r   test_nocaseR   s    



zTests.test_nocasec              	   C   s   t j}dg dfdg dfdddgfdd	d
gfdg dfg}|D ] \}}|  ttj|d|ddd }|  | || q d S )Nr   r;   r   r<   r!   r9   _APANr"   r#   r=   r$   )r#   r=   r9   r?   r%   Tr&   r)   r1   r   r   r   test_nocase_showallb   s"   




zTests.test_nocase_showallc              	   C   sp   ddiddid}ddgfdd	gfd
dgfg}|D ]\}}|   ttj|d|ddd }| || qdS )zeDictionaries should be indexed by attributes, not by keys. This was
        causing Github issue 129.king7      r   )azpqr   rD   zaz.k*zaz.keyszpq.k*zpq.keysr%   FTr&   N)r,   r-   r   r.   r/   r0   r1   r   r   r   test_dict_attributess   s   zTests.test_dict_attributesc                 C   s@   G dd dt }| }t|}d|vsJ | |d d d S )Nc                   @   s   e Zd Zdd Zdd ZdS )zTests.test_dict_dir.<locals>.Ac                 S   s   d| _ d| _d S )NrC      )r7   b)r2   r   r   r   __init__   s   
z'Tests.test_dict_dir.<locals>.A.__init__c                 S   s   |dkrt t| |S )Nr7   )AttributeErrorobject__getattribute__)r2   namer   r   r   rL      s   z/Tests.test_dict_dir.<locals>.A.__getattribute__N)r   r   r   rI   rL   r   r   r   r   A   s    rN   r7   rH   rG   )rK   r   dict_dirr0   )r2   rN   r7   adictr   r   r   test_dict_dir   s
   	
zTests.test_dict_dirN)	r   r   r   r8   r:   r>   r@   rF   rQ   r   r   r   r   r   2   s    r   )__doc__unittestIPython.utilsr   rK   r   r*   lqxosetattrypr9   r7   _a__ar#   r?   r=   TestCaser   r   r   r   r   <module>   s>    