
    ~f7                    J    d dl mZ d dlmZ d dlmZ d dlmZ  G d de      Zy)    )annotations)Any)TestCase)
TraitErrorc                  H    e Zd ZdZd
dZddZddZddZddZddZ	ddZ
y	)TraitTestBasez+A best testing class for basic trait types.c                &    || j                   _        y N)objvalueselfr   s     Y/var/www/cvtools/html/venv/lib/python3.12/site-packages/traitlets/tests/test_traitlets.pyassignzTraitTestBase.assign   s        c                    |S r
    r   s     r   coercezTraitTestBase.coerce   s    r   c                    t        | d      rX| j                  D ]H  }| j                  |       | j                  | j                  j
                  | j                  |             J y y )N_good_values)hasattrr   r   assertEqualr   r   r   r   s     r   test_good_valueszTraitTestBase.test_good_values   sU    4(** EE"  U1CDE )r   c                    t        | d      r4| j                  D ]$  }	 | j                  t        | j                  |       & y y # t
        $ r t        |      d w xY w)N_bad_values)r   r   assertRaisesr   r   AssertionErrorr   s     r   test_bad_valueszTraitTestBase.test_bad_values   s_    4')) ::%%j$++uE: ( & :(/T9:s   !AAc                ~    t        | d      r1| j                  | j                  | j                  j                         y y N_default_value)r   r   r!   r   r   r   s    r   test_default_valuez TraitTestBase.test_default_value    s0    4)*T00$((..A +r   c                   t        | d      rt        | d      rd | j                  v r| j                  j                         d   }	 d|_        | j                  j                  d        | j                  d        | j                  | j                  j                  d        | j                          | j                          d|_        | j                  j                  d        y y y y # d|_        | j                  j                  d        w xY w)Nr   r   r   TF)r   r   r   traits
allow_noneremover   r   r   r   r   append)r   traits     r   test_allow_nonezTraitTestBase.test_allow_none$   s    D-(n-(((HHOO%g.E.#'   ''-D!  6%%'$$& $)   ''- ) . ) $)   ''-s   A9C$ $$Dc                T    t        | d      r| j                  | j                  _        y y r    )r   r!   r   r   r"   s    r   tearDownzTraitTestBase.tearDown8   s#    4)*!00DHHN +r   N)r   r   returnNone)r   r   r-   r   )r-   r.   )__name__
__module____qualname____doc__r   r   r   r   r#   r*   r,   r   r   r   r   r   	   s*    5E:B.(1r   r   N)	
__future__r   typingr   unittestr   	traitletsr   r   r   r   r   <module>r7      s    "    21H 21r   