ó
0¾I]c           @   sÃ  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 d	 e f d
 „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d „  Z d „  Z  d „  Z! d „  Z" d „  Z# d  „  Z$ d! „  Z% d" „  Z& d# „  Z' d S($   s(   Test trait types of the widget packages.iÿÿÿÿN(   t   TestCase(   t	   HasTraitst   Intt
   TraitError(   t   TraitTestBase(   t   Colort   NumberFormat(   t   _remove_bufferst   _put_buffers(   t   date_serializationt
   TypedTuplet   NumberFormatTraitc           B   s   e  Z e d  ƒ Z RS(   s   .3f(   t   __name__t
   __module__R   t   value(    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR      s   t   TestNumberFormatc           B   sM   e  Z e ƒ  Z d  d d d d d d d d d	 d
 g Z d e d d d g Z RS(   s   .2fs   .0%s   ($.2fs   +20s   .^20s   .2ss   #xs   ,.2rs    .2fs   .2t    i4   t   brokens   ..2fs   .2a(   R   R   R   t   objt   _good_valuest   Falset   _bad_values(    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR      s   	t
   ColorTraitc           B   s   e  Z e d  ƒ Z RS(   t   black(   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR   !   s   t	   TestColorc           B   sh   e  Z e ƒ  Z d  d d d d d d d d d	 d
 d d g Z d d d d d d d d d d d d g Z RS(   t   blues   #AA0s   #FFFFFFt   transparents   #aaaas	   #ffffffffs   rgb(0, 0, 0)s   rgb( 20,70,50 )s   rgba(10,10,10, 0.5)s   rgba(255, 255, 255, 255)s   hsl(0.0, .0, 0)s   hsl( 0.5,0.3,0 )s   hsla(10,10,10, 0.5)t   vanillat   bluesg333333ó?g        i    i   i   s   rgb(0.4, 512, -40)s   hsl(0.4, 512, -40)s   rgba(0, 0, 0)s   hsla(0, 0, 0)N(   R   R   R   R   R   t   NoneR   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR   %   s,   			t   ColorTraitWithNonec           B   s   e  Z e d  d e ƒZ RS(   R   t
   allow_none(   R   R   R   t   TrueR   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR   D   s   t   TestColorWithNonec           B   s<   e  Z e ƒ  Z e j d g Z e e d  „  e j	 ƒ ƒ Z	 RS(   c         C   s
   |  d  k	 S(   N(   R   (   t   v(    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   <lambda>L   R   N(
   R   R   R   R   R   R   R   t   listt   filterR   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR!   H   s   	t   TestDateSerializationc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s   t  d |  _ d  |  _ d  S(   Nt   to_json(   R	   R'   R   t   dummy_manager(   t   self(    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   setUpQ   s    c         C   s#   |  j  |  j d  |  j ƒ d  ƒ d  S(   N(   t   assertIsR'   R   R(   (   R)   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_serialize_noneU   s    c         C   sS   t  j d d d ƒ } i d d 6d d 6d d 6} |  j |  j | |  j ƒ | ƒ d  S(   Nil  i   i   t   yeari   t   montht   date(   t   dtR/   t   assertEqualR'   R(   (   R)   R/   t   expected(    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_serialize_dateX   s    
(   R   R   R*   R,   R3   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR&   O   s   		t   TestDateDeserializationc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s   t  d |  _ d  |  _ d  S(   Nt	   from_json(   R	   R5   R   R(   (   R)   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR*   d   s    c         C   s#   |  j  |  j d  |  j ƒ d  ƒ d  S(   N(   R+   R5   R   R(   (   R)   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_deserialize_noneh   s    c         C   sS   i d d 6d d 6d d 6} t  j d d d ƒ } |  j |  j | |  j ƒ | ƒ d  S(   Nil  R-   i   R.   i   R/   i   (   R0   R/   R1   R5   R(   (   R)   t   serialized_dateR2   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_deserialize_datek   s    
(   R   R   R*   R6   R8   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR4   b   s   		t   TestBuffersc           B   s   e  Z d  „  Z RS(   c      	   C   sé  t  d ƒ } t  d ƒ } i d d g d 6i | d 6d 6i d d	 6| d
 6d 6| | f d 6| d 6i d d 6d i | d 6g d 6d 6} | 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	 | ƒ x« d d g | f d d
 g | f d d g | f d d g | f d g | f d d d d g | f g D]F \ } } |  j | |	 d | ƒ |	 j | ƒ } |  j | |
 | ƒ qgWt | |	 |
 ƒ t	 | d ƒ | d <|  j | | ƒ d  S(   Nt   test1t   test2i    t   textt   plaint   art   xi
   t   shapet   datat   yt   zt   topi   t   at   deepert   bt   deeps   %r not in path(   i
   i
   (
   t
   memoryviewR   t   assertInt   assertNotInR1   t   assertIsNotR+   t   indexR   R$   (   R)   t   mv1t   mv2t   stateR=   R?   RB   t   y_shapet   state_beforet   buffer_pathst   bufferst   patht   bufferRM   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_remove_and_put_buffersy   sL    %



?1(   R   R   RW   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR9   x   s   c          C   s8   d t  f d „  ƒ  Y}  |  ƒ  } | j d k s4 t ‚ d  S(   NR    c           B   s   e  Z e d  e ƒ  ƒ Z RS(   t   trait(   R   R   R
   R   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR    ­   s   (    (   R   R   t   AssertionError(   R    R   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt#   test_typed_tuple_uninitialized_ints¬   s    	c          C   s>   d t  f d „  ƒ  Y}  |  d d ƒ } | j d k s: t ‚ d  S(	   NR    c           B   s   e  Z e d  e ƒ  ƒ Z RS(   RX   (   R   R   R
   R   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR    µ   s   R   i   i   i   (   i   i   i   (   i   i   i   (   R   R   RY   (   R    R   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_typed_tuple_init_ints´   s    c          C   sA   d t  f d „  ƒ  Y}  |  ƒ  } d | _ | j d k s= t ‚ d  S(   NR    c           B   s   e  Z e d  e ƒ  ƒ Z RS(   RX   (   R   R   R
   R   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR    ½   s   i   i   i   (   i   i   i   (   i   i   i   (   R   R   RY   (   R    R   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_typed_tuple_set_ints¼   s    		c          C   s8   d t  f d „  ƒ  Y}  |  ƒ  } | j d k s4 t ‚ d  S(   NR    c           B   s   e  Z e d  d ƒ Z RS(   t   default_valuei   i   i   (   i   i   i   (   R   R   R
   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR    Æ   s   i   i   i   (   i   i   i   (   R   R   RY   (   R    R   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_typed_tuple_defaultÅ   s    	c          C   s8   d t  f d „  ƒ  Y}  |  ƒ  } | j d k s4 t ‚ d  S(   NR    c           B   s   e  Z e d  d ƒ Z RS(   R]   i   i   t   foobar(   i   i   R_   (   R   R   R
   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR    Î   s   i   i   R_   (   i   i   R_   (   R   R   RY   (   R    R   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_typed_tuple_mixed_defaultÍ   s    	c          C   sB   d t  f d „  ƒ  Y}  t j t ƒ  |  ƒ  } | j } Wd  QXd  S(   NR    c           B   s    e  Z e d  e ƒ  d d ƒ Z RS(   RX   R]   i   i   R_   (   i   i   R_   (   R   R   R
   R   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR    Ö   s   (   R   t   pytestt   raisesR   R   (   R    R   RE   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_typed_tuple_bad_defaultÕ   s    	c          C   sB   d t  f d „  ƒ  Y}  |  ƒ  } t j t ƒ  d | _ Wd  QXd  S(   NR    c           B   s   e  Z e d  e ƒ  ƒ Z RS(   RX   (   R   R   R
   R   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR    à   s   i   i   R_   (   i   i   R_   (   R   Ra   Rb   R   R   (   R    R   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   test_typed_tuple_bad_setß   s    	c          C   s>   d t  f d „  ƒ  Y}  |  d d ƒ } | j d k s: t ‚ d  S(	   NR    c           B   s   e  Z e e ƒ  ƒ Z RS(    (   R   R   R
   R   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR    é   s   R   i   i   i   (   i   i   i   (   i   i   i   (   R   R   RY   (   R    R   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt!   test_typed_tuple_positional_traitè   s    c          C   s8   d t  f d „  ƒ  Y}  |  ƒ  } | j d k s4 t ‚ d  S(   NR    c           B   s   e  Z e d ƒ Z RS(   i   i   i   (   i   i   i   (   R   R   R
   R   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyR    ñ   s   i   i   i   (   i   i   i   (   R   R   RY   (   R    R   (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt#   test_typed_tuple_positional_defaultð   s    	((   t   __doc__t   arrayt   datetimeR0   Ra   t   unittestR    t	   traitletsR   R   R   t   traitlets.tests.test_traitletsR   t
   ipywidgetsR   R   t   ipywidgets.widgets.widgetR   R   t   ipywidgets.widgets.trait_typesR	   R
   R   R   R   R   R   R!   R&   R4   R9   RZ   R[   R\   R^   R`   Rc   Rd   Re   Rf   (    (    (    sC   lib/python2.7/site-packages/ipywidgets/widgets/tests/test_traits.pyt   <module>   s6   
4							
			