ó
Û¤[c           @   s   d  Z  d d l m Z d d l Z d d l m Z d d l Z d d l j Z d d l	 m
 Z
 d d l
 m Z m Z d d l m Z d	 e f d
 „  ƒ  YZ e j j e ƒ d e f d „  ƒ  YZ e j j e ƒ d „  Z d „  Z d „  Z d „  Z d „  Z d S(   s"   Test suite for our JSON utilities.iÿÿÿÿ(   t
   a2b_base64N(   t   datetimei   (   t   jsonutil(   t
   json_cleant   encode_images(   t   unicode_to_strt   MyIntc           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Ni…  (    (   t   self(    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyt   __int__   s    (   t   __name__t
   __module__R   (    (    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyR      s   t   MyFloatc           B   s   e  Z d  „  Z RS(   c         C   s   d S(   Ng…ëQ¸	@(    (   R   (    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyt	   __float__   s    (   R	   R
   R   (    (    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyR      s   c          C   sj  d d d t d  f t d  f d d d g d  f d d d g f t d d g ƒ d d g f t d d ƒ d  f i d d 6d d d g d 6d d	 6d  f d
 „  t d ƒ Dƒ d d d g f t d d g ƒ d d g f t d d d d d ƒ d f t ƒ  d f t	 ƒ  d f g }  x] |  D]U \ } } | d  k r.| } n  t
 | ƒ } | | k sLt ‚ t j t j | ƒ ƒ qWd  S(   Ni   g      ð?t   ai   t   xi   t   yt   intt   1c         s   s   |  ] } | Vq d  S(   N(    (   t   .0R   (    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pys	   <genexpr>.   s    i    iÇ  i   i   s   1991-07-03T12:00:00.000000g…ëQ¸	@i…  (   i   N(   g      ð?N(   R   N(   NN(   i   i   (   t   Nonet   Truet   Falset   sett   dictt   ranget   iterR   R   R   R   t   AssertionErrort   jsont   loadst   dumps(   t   pairst   valt   jvalt   out(    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyt   test   s,    		'"	c          C   sI  d }  d } d } d } i |  d 6| d 6| d 6| d 6} t  t | ƒ ƒ } x< | j ƒ  D]. \ } } t | | ƒ } | | k sY t ‚ qY Wt  t | ƒ ƒ }	 | |	 k s¯ t ‚ i  }
 x* | j ƒ  D] \ } } t | ƒ |
 | <qÂ Wt  t |
 ƒ ƒ } | |
 k st ‚ x< | j ƒ  D]. \ } } t | | ƒ } | | k st ‚ qWd  S(	   Ns(   ‰PNG

blahblahnotactuallyvalidIEND®B`‚s   ÿØÿà JFIFblahblahjpeg( ÿÙsC   %PDF-1.
trailer<</Root<</Pages<</Kids[<</MediaBox[0 0 3 3]>>]>>>>>>s   ÿÿÿÿs	   image/pngs
   image/jpegs   application/pdfs   application/unrecognized(   R   R   t   itemsR    R   R   (   t   pngdatat   jpegdatat   pdfdatat   bindatat   fmtt   encodedt   keyt   valuet   decodedt   encoded2t   b64_strt   encoded3(    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyt   test_encode_images?   s.    
c           C   s'   t  j t ƒ  t d „  ƒ Wd  QXd  S(   Nc           S   s   d S(   Ni   (    (    (    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyt   <lambda>`   s    (   t   ntt   assert_raisest
   ValueErrorR   (    (    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyt   test_lambda^   s    c          C   sP   i d d 6d d 6i d t  6d d 6g }  x! |  D] } t j t t | ƒ q/ Wd  S(   Nt   numberi   t   stringR   t   boolR   (   R   R2   R3   R4   R   (   t	   bad_dictst   d(    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyt   test_exceptionc   s    c          C   s2   i d d 6}  t  j |  ƒ } |  | k s. t ‚ d  S(   Nu   Ã¼niÃ§oâˆ‚e(   R   R   R   (   t   datat   clean(    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyt   test_unicode_dictk   s    (   t   __doc__t   binasciiR    R   R   t   numberst
   nose.toolst   toolsR2   t    R   R   R   t   ipython_genutils.py3compatR   t   objectR   t   Integralt   registerR   t   RealR"   R0   R5   R;   R>   (    (    (    s<   lib/python2.7/site-packages/ipykernel/tests/test_jsonutil.pyt   <module>   s"   	!			