ó
P'—^c           @€  sÑ   d  d l  m Z d  d l Z d  d l Z d  d l m Z d  d l Z d  d l m Z m Z m Z d  d l	 m
 Z
 m Z m Z d „  Z d „  Z d d d	 „  ƒ  YZ d
 e f d „  ƒ  YZ d e f d „  ƒ  YZ d S(   iÿÿÿÿ(   t   with_statementN(   t   TestCase(   t   encodert   decodert   scanner(   t   PY3t	   long_typet   bc           C€  s   t  j d  k	 S(   N(   R   t   c_make_encodert   None(    (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   has_speedups   s    c         €  s   ‡  f d †  } | S(   Nc          €  sN   t  ƒ  sA t t d ƒ r* t j d ƒ ‚ qA t j j d ƒ d  Sn  ˆ  |  | Ž  S(   Nt   SkipTests   C Extension not available(   R
   t   hasattrt   unittestR   t   syst   stdoutt   write(   t   argst   kwargs(   t   func(    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   wrapper   s    	(    (   R   R   (    (   R   s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   skip_if_speedups_missing   s    	t   BadBoolc           B€  s   e  Z d  „  Z e Z RS(   c         C€  s   d d d  S(   Ni   i    (    (   t   self(    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   __bool__   s    (   t   __name__t
   __module__R   t   __nonzero__(    (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyR      s   	t
   TestDecodec           B€  s&   e  Z e d  „  ƒ Z e d „  ƒ Z RS(   c         C€  s   |  j  t t j d ƒ d  S(   Ni   (   t   assertRaisest   AttributeErrorR   t   c_make_scanner(   R   (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   test_make_scanner$   s    c         C€  sb   d „  } |  j  t | d ƒ |  j  t | d ƒ t s^ |  j  t | d ƒ |  j  t | d ƒ n  d  S(   Nc         S€  s    t  j d t ƒ  ƒ j |  ƒ d  S(   Nt   strict(   R   t   JSONDecoderR   t   decode(   t   value(    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   test*   s    s   ""s   {}u   ""u   {}(   R   t   ZeroDivisionErrorR   (   R   R%   (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   test_bad_bool_args(   s    	(   R   R   R   R    R'   (    (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyR   #   s   t
   TestEncodec           B€  s\   e  Z e d  „  ƒ Z e d „  ƒ Z e d „  ƒ Z e d „  ƒ Z e rZ e d „  ƒ Z n  RS(   c         C€  s    |  j  t t j d  d d  ƒ d  S(   Ns   Í}=NLùy×Rº‚ò'J} Êu(   R   t	   TypeErrorR   R   R	   (   R   (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   test_make_encoder3   s    c         C€  s  d d  l  } d „  } t j d  d „  | d  d d t t t i  t t t d  d  d t t | j t ƒ } |  j t | d d ƒ |  j t | i d	 d 6d ƒ d
 „  } t j d  d „  | d  d d t t t i  t t t d  d  d t t | j t ƒ } |  j t | d d ƒ d  S(   Niÿÿÿÿc          W€  s   d  S(   N(   R	   (   R   (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   bad_encoder1C   s    c         S€  s
   t  |  ƒ S(   N(   t   str(   t   obj(    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   <lambda>F   t    s   : s   , s   utf-8t   spami   i*   c          W€  s   d d d  S(   Ni   i    (    (   R   (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   bad_encoder2M   s    c         S€  s
   t  |  ƒ S(   N(   R,   (   R-   (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyR.   P   R/   (	   t   decimalR   R   R	   t   Falset   DecimalR   R)   R&   (   R   R2   R+   t   encR1   (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   test_bad_str_encoder>   s     				c         C€  sñ   d „  } |  j  t | d ƒ |  j  t | d ƒ |  j  t | d ƒ |  j  t | d ƒ |  j  t | d ƒ |  j  t | d ƒ |  j  t | d ƒ |  j  t | d	 ƒ |  j  t | d
 ƒ |  j  t | d ƒ |  j  t | d ƒ |  j  t | d ƒ d  S(   Nc         S€  s$   t  j i t ƒ  |  6  j i  ƒ d  S(   N(   R   t   JSONEncoderR   t   encode(   t   name(    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyR%   X   s    t   skipkeyst   ensure_asciit   check_circulart	   allow_nant	   sort_keyst   use_decimalt   namedtuple_as_objectt   tuple_as_arrayt   bigint_as_stringt   for_jsont
   ignore_nant   iterable_as_array(   R   R&   (   R   R%   (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyR'   V   s    	c         €  s=   t  d ƒ d d ‰  ‡  f d †  } |  j t t f | ƒ d  S(   Ni   i    i   c           €  s   t  j d ˆ  ƒ j d ƒ d  S(   Nt   int_as_string_bitcounti    (   R   R7   R8   (    (   t
   long_count(    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyR%   j   s    (   R   R   R)   t   OverflowError(   R   R%   (    (   RG   s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt$   test_int_as_string_bitcount_overflowg   s    c      	   C€  s@   |  j  t ƒ + t j d d ƒ j i d t d ƒ 6ƒ Wd  QXd  S(   Nt   encodings   \udcffi{   t   key(   R   t   UnicodeEncodeErrorR   R7   R8   R   (   R   (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   test_bad_encodingo   s    (	   R   R   R   R*   R6   R'   RI   R   RM   (    (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyR(   2   s   (    (   t
   __future__R    R   R   R   t
   simplejsonR   R   R   t   simplejson.compatR   R   R   R
   R   R   R   R(   (    (    (    s@   /tmp/pip-unpacked-wheel-9xjeDh/simplejson/tests/test_speedups.pyt   <module>   s   		