
    Xh                      x   d Z ddlZddlZddlZddlmZ ddlmZm	Z	m
Z
 ddlmZ ddlmZmZ ddlmZmZ ddlmZmZ  G d	 d
e      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Zd Zd Z d Z!d Z"d Z#d  Z$d! Z%d" Z&d# Z'y)$z(Test trait types of the widget packages.    N)TestCase)	HasTraitsInt
TraitError)TraitTestBase)ColorNumberFormat)_remove_buffers_put_buffers)date_serialization
TypedTuplec                       e Zd Z ed      Zy)NumberFormatTraitz.3fN)__name__
__module____qualname__r	   value     X/var/www/html/myenv/lib/python3.12/site-packages/ipywidgets/widgets/tests/test_traits.pyr   r      s    Er   r   c                   *    e Zd Z e       Zg dZg dZy)TestNumberFormat)z.2fz.0%z($.2fz+20z.^20z.2sz#xz,.2rz .2fz.2 )4   Fbrokenz..2fz.2aN)r   r   r   r   obj_good_values_bad_valuesr   r   r   r   r      s    

CL 7Kr   r   c                       e Zd Z ed      Zy)
ColorTraitblackNr   r   r   r   r   r   r   r   r    r    !   s    'NEr   r    c                   *    e Zd Z e       Zg dZg dZy)	TestColor)bluez#AA0z#FFFFFFtransparentz#aaaaz	#ffffffffzrgb(0, 0, 0)zrgb( 20,70,50 )zrgba(10,10,10, 0.5)zrgba(255, 255, 255, 255)zhsl(0.0, .0, 0)zhsl( 0.5,0.3,0 )zhsla(10,10,10, 0.5)zvar(--my-color)zvar(--my-color-with_separators)zvar(--my-color,)u   var(--my-color-æ)u   var(--my-color-ሴ)zvar(--my-color-\\1234)zvar(--my-color-\.)zvar(--my-color,black)zvar(--my-color, black)z var(--my-color, rgb(20, 70, 50))zvar(--my-color, #fff))vanillabluesg333333?g        r         zrgb(0.4, 512, -40)zhsl(0.4, 512, -40)zrgba(0, 0, 0)zhsla(0, 0, 0)zvar(-my-color)u   var(--my-color-⁁)zvar(my-color, black)zvar(my-color-., black)zvar(--my-color, vanilla)zvar(--my-color, rgba(0,0,0))NN)r   r   r   r    r   r   r   r   r   r   r$   r$   %   s    
,CL4Kr   r$   c                        e Zd Z edd      Zy)ColorTraitWithNoner!   T)
allow_noneNr"   r   r   r   r,   r,   U   s    'd+Er   r,   c                   n    e Zd Z e       Zej                  dgz   Z e ed ej                              Z	y)TestColorWithNoneNc                 
    | d uS Nr   )vs    r   <lambda>zTestColorWithNone.<lambda>]   s
     r   )
r   r   r   r,   r   r$   r   listfilterr   r   r   r   r/   r/   Y   s4    

C))TF2Lv5y7L7LMNKr   r/   c                       e Zd Zd Zd Zd Zy)TestDateSerializationc                 .    t         d   | _        d | _        y )Nto_json)r   r9   dummy_managerselfs    r   setUpzTestDateSerialization.setUpb   s    ))4!r   c                 \    | j                  | j                  d | j                        d        y r1   )assertIsr9   r:   r;   s    r   test_serialize_nonez)TestDateSerialization.test_serialize_nonef   s!    dll4););<dCr   c                     t        j                  ddd      }dddd}| j                  | j                  || j                        |       y )Nl  r*      r)   yearmonthdate)dtrG   assertEqualr9   r:   )r<   rG   expecteds      r   test_serialize_datez)TestDateSerialization.test_serialize_datei   sG    wwtQ#

 	dD,>,>?Jr   N)r   r   r   r=   r@   rK   r   r   r   r7   r7   `   s    "DKr   r7   c                       e Zd Zd Zd Zd Zy)TestDateDeserializationc                 .    t         d   | _        d | _        y )N	from_json)r   rO   r:   r;   s    r   r=   zTestDateDeserialization.setUpu   s    +K8!r   c                 \    | j                  | j                  d | j                        d        y r1   )r?   rO   r:   r;   s    r   test_deserialize_nonez-TestDateDeserialization.test_deserialize_noney   s!    dnnT4+=+=>Er   c                     dddd}t        j                  ddd      }| j                  | j                  || j                        |       y )NrB   r)   rC   rD   r*   )rH   rG   rI   rO   r:   )r<   serialized_daterJ   s      r   test_deserialize_datez-TestDateDeserialization.test_deserialize_date|   sK    

 774B'NN?D,>,>?	
r   N)r   r   r   r=   rQ   rT   r   r   r   rM   rM   s   s    "F

r   rM   c                       e Zd Zd Zy)TestBuffersc           	      l   t        d      }t        d      }ddgd|id|d||f|ddd	|igd
d}|d   }|d   }|d   }|d   }|}t        |      \  }}	}
| j                  d|       | j                  d|d          | j                  d|d          | j	                  |d   i        | j                  d|d          | j                  ||d          | j                  ||d          | j                  d|       | j                  d|       | j                  d|d          | j                  d	|d   d   d          | j                  ||       | j                  |d   |       | j                  |d   |       | j                  |d   |       | j                  |d   d   |       ddg|fddg|fddg|fddg|fdg|fg d|ffD ]A  \  }}| j                  ||	d|z         |	j                  |      }| j	                  ||
|          C t        ||	|
       t        |d         |d<   | j	                  ||       y )Ns   test1s   test2r   textar)
   rZ   )shapedatar)   deeper)ab)plainxyztopdeepr`   ra   rb   r[   r\   rc   rd   re   r_   )re   r_   r)   r]   z%r not in path)

memoryviewr
   assertInassertNotInrI   assertIsNotr?   indexr   r4   )r<   mv1mv2stater`   ra   rb   y_shapestate_beforebuffer_pathsbufferspathbufferrj   s                 r   test_remove_and_put_buffersz'TestBuffers.test_remove_and_put_buffers   s   (#(#f+Sk (#6Cj q(3&89; g#J#JG*'6u'=$|W 	gu%guSz*uSz*sR(s,eCj)eCj)&fe$c5=)5=#5a#89 	-eGne,sQ'sQ'eCj)73  #Dk3/3-1EaRUZ]_`YacfXg$gs^.H#-NP 	5LD&MM$.>.EF &&t,EVWU^4		5 	UL'2 c!23Su-r   N)r   r   r   rt   r   r   r   rV   rV      s    /.r   rV   c                  R     G d dt               }  |        }|j                  dk(  sJ y )Nc                   (    e Zd Z e e             Zy)5test_typed_tuple_uninitialized_ints.<locals>.TestCasetraitNr   r   r   r   r   r   r   r   r   r   rw          'r   r   r   r   r   r   r   s     r   #test_typed_tuple_uninitialized_intsr~      s'    (9 ( *C99??r   c                  V     G d dt               }  | d      }|j                  dk(  sJ y )Nc                   (    e Zd Z e e             Zy),test_typed_tuple_init_ints.<locals>.TestCaserx   Nrz   r   r   r   r   r      r{   r   r   r)   r*      r   r|   r}   s     r   test_typed_tuple_init_intsr      s,    (9 ( 
#C99	!!!r   c                  `     G d dt               }  |        }d|_        |j                  dk(  sJ y )Nc                   (    e Zd Z e e             Zy)+test_typed_tuple_set_ints.<locals>.TestCaserx   Nrz   r   r   r   r   r      r{   r   r   r   r|   r}   s     r   test_typed_tuple_set_intsr      s0    (9 ( *CCI99	!!!r   c                  R     G d dt               }  |        }|j                  dk(  sJ y )Nc                       e Zd Z ed      Zy)*test_typed_tuple_default.<locals>.TestCaser   default_valueNr   r   r   r   r   r   r   r   r   r      s    3r   r   r   r|   r}   s     r   test_typed_tuple_defaultr      s)    49 4 *C99	!!!r   c                  R     G d dt               }  |        }|j                  dk(  sJ y )Nc                       e Zd Z ed      Zy)0test_typed_tuple_mixed_default.<locals>.TestCaser)   r*   foobarr   Nr   r   r   r   r   r      s    )9:r   r   r   r|   r}   s     r   test_typed_tuple_mixed_defaultr      s*    ;9 ; *C99((((r   c                       G d dt               } t        j                  t              5   |        }|j                  }d d d        y # 1 sw Y   y xY w)Nc                   *    e Zd Z e e       d      Zy).test_typed_tuple_bad_default.<locals>.TestCaser   )ry   r   Nrz   r   r   r   r   r      s    6FGr   r   r   pytestraisesr   r   )r   r   r^   s      r   test_typed_tuple_bad_defaultr      sC    H9 H 
z	" jII  s   AAc                       G d dt               }  |        }t        j                  t              5  d|_        d d d        y # 1 sw Y   y xY w)Nc                   (    e Zd Z e e             Zy)*test_typed_tuple_bad_set.<locals>.TestCaserx   Nrz   r   r   r   r   r      r{   r   r   r   r   r}   s     r   test_typed_tuple_bad_setr      s?    (9 ( *C	z	" %$	% % %s   AA
c                  V     G d dt               }  | d      }|j                  dk(  sJ y )Nc                   &    e Zd Z e e             Zy)3test_typed_tuple_positional_trait.<locals>.TestCaseNrz   r   r   r   r   r      s    35!r   r   r   r   r|   r}   s     r   !test_typed_tuple_positional_traitr      s,    "9 " 
#C99	!!!r   c                  R     G d dt               }  |        }|j                  dk(  sJ y )Nc                       e Zd Z ed      Zy)5test_typed_tuple_positional_default.<locals>.TestCaser   Nr   r   r   r   r   r     s    9%r   r   r   r|   r}   s     r   #test_typed_tuple_positional_defaultr     s)    &9 & *C99	!!!r   )(__doc__arraydatetimerH   r   unittestr   	traitletsr   r   r   traitlets.tests.test_traitletsr   
ipywidgetsr   r	   ipywidgets.widgets.widgetr
   r   ipywidgets.widgets.trait_typesr   r   r   r   r    r$   r,   r/   r7   rM   rV   r~   r   r   r   r   r   r   r   r   r   r   r   <module>r      s    /     0 0 8 * C I 	  7} 7 - -`, ,O OKH K&
h 
,0.( 0.h""")%""r   