ó
ĖjWc           @   sb   d  d l  m Z d  d l Z d d	 d     YZ d e j f d     YZ d e f d     YZ d S(
   iĸĸĸĸ(   t   TestCaseNt   JSONTestObjectc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    sK   /home/wilkie/.pyenv/versions/2.7/lib/python2.7/json/tests/test_recursion.pyR      s   t   RecursiveJSONEncoderc           B   s   e  Z e Z d    Z RS(   c         C   s3   | t  k r# |  j r t  g Sd Sn  t j j |  S(   NR   (   R   t   recurset   jsont   JSONEncodert   default(   t   selft   o(    (    sK   /home/wilkie/.pyenv/versions/2.7/lib/python2.7/json/tests/test_recursion.pyR      s
    	(   R   R   t   FalseR   R   (    (    (    sK   /home/wilkie/.pyenv/versions/2.7/lib/python2.7/json/tests/test_recursion.pyR   	   s   t   TestRecursionc           B   s#   e  Z d    Z d   Z d   Z RS(   c         C   sķ   g  } | j  |  y t j |  Wn t k
 r7 n X|  j d  g  } | g } | j  |  y t j |  Wn t k
 r n X|  j d  g  } | | g } t j |  d  S(   Ns)   didn't raise ValueError on list recursions5   didn't raise ValueError on alternating list recursion(   t   appendR   t   dumpst
   ValueErrort   fail(   R	   t   xt   y(    (    sK   /home/wilkie/.pyenv/versions/2.7/lib/python2.7/json/tests/test_recursion.pyt   test_listrecursion   s$    	c         C   sm   i  } | | d <y t  j |  Wn t k
 r4 n X|  j d  i  } i | d 6| d 6} t  j |  d  S(   Nt   tests)   didn't raise ValueError on dict recursiont   at   b(   R   R   R   R   (   R	   R   R   (    (    sK   /home/wilkie/.pyenv/versions/2.7/lib/python2.7/json/tests/test_recursion.pyt   test_dictrecursion,   s    
c         C   sa   t    } |  j | j t  d  t | _ y | j t  Wn t k
 rO n X|  j d  d  S(   Ns   "JSONTestObject"s,   didn't raise ValueError on default recursion(   R   t   assertEqualst   encodeR   t   TrueR   R   R   (   R	   t   enc(    (    sK   /home/wilkie/.pyenv/versions/2.7/lib/python2.7/json/tests/test_recursion.pyt   test_defaultrecursion:   s    		(   R   R   R   R   R   (    (    (    sK   /home/wilkie/.pyenv/versions/2.7/lib/python2.7/json/tests/test_recursion.pyR      s   		(    (   t   unittestR    R   R   R   R   R   (    (    (    sK   /home/wilkie/.pyenv/versions/2.7/lib/python2.7/json/tests/test_recursion.pyt   <module>   s   