
    "Ie	              	          d dl mZ d dlZd dlZd dlZ G d dej
                        Z G d dej                        ZddZ	ddZ
dd	Zed
k(  rd dlZd dlZej                  j                  ej                  j                  ej                  j                  ej                  j                  e                        Zej                  j%                  d e        ee       yy)    )absolute_importNc                       e Zd Zd Zy)NoExtensionTestSuitec                     dd l }|j                  d       t        j                  j	                  | |      }|j                  d       |S )Nr   FT)
simplejson_toggle_speedupsunittest	TestSuiterun)selfresultr   s      ;/usr/lib/python3/dist-packages/simplejson/tests/__init__.pyr   zNoExtensionTestSuite.run   s>    ##E*##''f5##D)    N)__name__
__module____qualname__r    r   r   r   r      s    r   r   c                       e Zd Zd Zy)TestMissingSpeedupsc                 b    t        t        d      ry t        | d      r| j                  d       y y )Npypy_translation_infoskipTestz_speedups.so is missing!)hasattrsysr   )r   s    r   runTestzTestMissingSpeedups.runTest   s,    3/0,T:&MM45 'r   N)r   r   r   r   r   r   r   r   r      s    6r   r   c                    dd l }dd l}dd l}| t        j                         } 	 dd l}||j                  |j                  fD ]"  }| j                  |j                  |             $ |@| j                  |j                  t        j                  j!                  |d      d             | S # t        $ r t        j                  dk  r| cY S  w xY w)Nr   )      z	index.rstF)module_relative)r   simplejson.encodersimplejson.decoderr	   r
   doctestImportErrorr   version_infoencoderdecoderaddTestDocTestSuiteDocFileSuiteospathjoin)suiteproject_dirr   r"   mods        r   additional_testsr0      s    }""$ J..
0B0BC 1g**3/01  [+6 ! 	

 L  f$L	s   B* *C
Cc                       fd} |       }dd l }|j                         |j                  t                      |S t	        j
                  |t         |       g      g      }|S )Nc                  z   t        j                  t         j                  j                  t                    D  cg c]I  } | j                  d      r6| j                  d      r%dt         j                  j                  |       d   K }} t        t        j                         j                  |            S c c} w )Ntest_z.pyzsimplejson.tests.r   )r-   r.   )r*   listdirr+   dirname__file__
startswithendswithsplitextr0   r	   
TestLoaderloadTestsFromNames)fsuite_namesr.   s     r   	get_suitez"all_tests_suite.<locals>.get_suite3   s     ZZ 9:
||G$E): &(WW%5%5a%8%;=
 

  %%'::;G#
 	

s   AB8r   )r   _import_c_make_encoderr'   r   r	   r
   r   )r.   r>   r-   r   s   `   r   all_tests_suiter@   2   sg    	
 KE((*2)+, L ""$ik]3
 Lr   c                     t        j                  dt        j                  j	                  d      z         }t        |       }t        |j                  |      j                                )N   z-v)	verbosityr.   )	r	   TextTestRunnerr   argvcountr@   
SystemExitr   wasSuccessful)r.   runnerr-   s      r   mainrK   M   sN    $$q388>>$3G/GHF4E
E*88::
;;r   __main__rD   )NN)N)
__future__r   r	   r   r*   r
   r   TestCaser   r0   r@   rK   r   r+   r5   abspathr6   r.   insertr   r   r   <module>rQ      s    &  
 	8-- 6(++ 626< z''//
(ABCK HHOOA{#[! r   