ó
C]c           @   sÇ   d  d l  Z  d  d l Z d  d l m Z y d  d l Z Wn e k
 rK nD Xy e j   Wn2 e k
 r Z d Z e	 j
 e j d e   n Xd d l m Z d   Z d d d d  Z d	   Z d S(
   i˙˙˙˙N(   t   TestCases+   Failed to enable faulthandler due to:
{err}t   erri   (   t	   customizec         C   s   t  j   } | j |   } | S(   s$   Discover test under a directory
    (   t   unittestt
   TestLoadert   discover(   t   startdirt   loadert   suite(    (    s6   lib/python2.7/site-packages/llvmlite/tests/__init__.pyt   discover_tests   s    c      	   C   sy   |  d k r t d  }  n  | d k	 rH d d l } | j d |  } n d } t j d |  d | d t d |  } | j S(	   s"  
    args
    ----
    - suite [TestSuite]
        A suite of all tests to run
    - xmloutput [str or None]
        Path of XML output directory (optional)
    - verbosity [int]
        Verbosity level of tests output

    Returns the TestResult object after running the test *suite*.
    s   llvmlite.testsi˙˙˙˙Nt   outputR   t
   testRunnert   exitt	   verbosity(   t   NoneR	   t	   xmlrunnert   XMLTestRunnerR   t   maint   Falset   result(   R   t	   xmloutputR   R   t   runnert   prog(    (    s6   lib/python2.7/site-packages/llvmlite/tests/__init__.pyt	   run_tests!   s    	c          C   s,   t    }  t j |  j   r! d n d  d  S(   Ni    i   (   R   t   sysR   t   wasSuccessful(   t   res(    (    s6   lib/python2.7/site-packages/llvmlite/tests/__init__.pyR   :   s    	(   R   R   R    t   faulthandlert   ImportErrort   enablet   BaseExceptiont   et   msgt   warningst   warnt   formatt    R   R	   R   R   R   (    (    (    s6   lib/python2.7/site-packages/llvmlite/tests/__init__.pyt   <module>   s   		