o
    Zh                     @   sH   d dl mZ d dlZG dd deZdd Zdd Zd	d
 Zdd ZdS )    )dir2Nc                   @      e Zd ZdZdZdS )Base      N)__name__
__module____qualname__xz r   r   T/var/www/html/lang_env/lib/python3.10/site-packages/IPython/utils/tests/test_dir2.pyr          r   c                  C   sb   t t } d| v sJ d| v sJ d| vsJ d| v sJ | ddks&J | ddks/J d S )Nr
   r   y	__class__r   )r   r   count)resr   r   r   	test_base   s   
r   c                  C   sN   G dd dt } t|  }d|v sJ |ddksJ |ddks%J d S )Nc                   @   s   e Zd ZdZdS )ztest_SubClass.<locals>.SubClass   N)r   r   r	   r   r   r   r   r   SubClass   s    r   r   r   r
   )r   r   r   r   r   r   r   r   test_SubClass   s
   
r   c                  C   s*   G dd dt } t|  }d|v sJ d S )Nc                   @   r   )z5test_SubClass_with_trait_names_attr.<locals>.SubClassr   ,   N)r   r   r	   r   trait_namesr   r   r   r   r   "   r   r   r   )r   r   r   r   r   r   #test_SubClass_with_trait_names_attr   s   
r   c               	   C   s   G dd d} G dd d| }| |fD ].}| }|  sJ tt |  W d    n1 s2w   Y  t|}d|v sAJ qd S )Nc                   @   s   e Zd Zdd Zdd ZdS )zGtest_misbehaving_object_without_trait_names.<locals>.MisbehavingGetattrc                 S   s   t d)NzI should be caught)KeyError)selfattrr   r   r   __getattr__/   s   zStest_misbehaving_object_without_trait_names.<locals>.MisbehavingGetattr.__getattr__c                 S   s   dS )NTr   r   r   r   r   some_method2   s   zStest_misbehaving_object_without_trait_names.<locals>.MisbehavingGetattr.some_methodN)r   r   r	   r   r    r   r   r   r   MisbehavingGetattr.   s    r!   c                   @   s   e Zd Zdd ZdS )zCtest_misbehaving_object_without_trait_names.<locals>.SillierWithDirc                 S   s   dgS )Nr    r   r   r   r   r   __dir__6   s   zKtest_misbehaving_object_without_trait_names.<locals>.SillierWithDir.__dir__N)r   r   r	   r"   r   r   r   r   SillierWithDir5   s    r#   r    )r    pytestZraisesr   Zother_methodr   )r!   r#   Z	bad_klassobjr   r   r   r   +test_misbehaving_object_without_trait_names*   s   
r&   )	ZIPython.utils.dir2r   r$   objectr   r   r   r   r&   r   r   r   r   <module>   s    

