
    ^h7                    J    S SK Jr  S SKJr  S SKJr  S SKJr   " S S\5      rg)    )annotations)Any)TestCase)
TraitErrorc                  ^    \ rS rSrSrSS jrSS jrSS jrSS jrSS jr	SS jr
SS	 jrS
rg)TraitTestBase	   z+A best testing class for basic trait types.c                $    XR                   l        g N)objvalueselfr   s     X/home/james-whalen/.local/lib/python3.13/site-packages/traitlets/tests/test_traitlets.pyassignTraitTestBase.assign   s        c                    U$ r    r   s     r   coerceTraitTestBase.coerce   s    r   c                    [        U S5      (       aZ  U R                   HI  nU R                  U5        U R                  U R                  R
                  U R                  U5      5        MK     g g )N_good_values)hasattrr   r   assertEqualr   r   r   r   s     r   test_good_valuesTraitTestBase.test_good_values   sQ    4((**E"  U1CD + )r   c                    [        U S5      (       a6  U R                   H%  n U R                  [        U R                  U5        M'     g g ! [
         a    [        U5      S ef = f)N_bad_values)r   r   assertRaisesr   r   AssertionErrorr   s     r   test_bad_valuesTraitTestBase.test_bad_values   s]    4'')):%%j$++uE * ( & :(/T9:s   !A		A c                    [        U S5      (       a1  U R                  U R                  U R                  R                  5        g g N_default_value)r   r   r&   r   r   r   s    r   test_default_value TraitTestBase.test_default_value    s3    4)**T00$((..A +r   c                .   [        U S5      (       a  [        U S5      (       a  S U R                  ;   a  U R                  R                  5       S   n SUl        U R                  R                  S 5        U R                  S 5        U R                  U R                  R                  S 5        U R                  5         U R                  5         SUl        U R                  R                  S 5        g g g g ! SUl        U R                  R                  S 5        f = f)Nr   r   r   TF)r   r   r   traits
allow_noneremover   r   r   r   r"   append)r   traits     r   test_allow_noneTraitTestBase.test_allow_none$   s    D-((n--(((HHOO%g.E.#'   ''-D!  6%%'$$& $)   ''- ) . ) $)   ''-s   A9C0 0$Dc                ^    [        U S5      (       a  U R                  U R                  l        g g r%   )r   r&   r   r   r'   s    r   tearDownTraitTestBase.tearDown8   s&    4)**!00DHHN +r   r   N)r   r   returnNone)r   r   r5   r   )r5   r6   )__name__
__module____qualname____firstlineno____doc__r   r   r   r"   r(   r0   r3   __static_attributes__r   r   r   r   r   	   s*    5E:B.(1r   r   N)	
__future__r   typingr   unittestr   	traitletsr   r   r   r   r   <module>rA      s    "    21H 21r   