;
ะโ"Ic               @   sc  d  Z  d d l Z d d l Z d d l Z d d l Z d d l Z d d l m Z d d l m	 Z	 d d l m
 Z
 d d l m Z e j j e  Z e j j e j j e d   Z e j j e d d	  Z e j e  Z e j e d
 e	 j Z d   Z e j d k  o d   Z e e j _ n d d d  Z d   Z  d d d  Z! d   Z" e j# Z# d S(   u    Support code for test_*.py filesi    N(   u   dedenti   (   u   pytree(   u   refactor(   u   driveru   ..u   Grammar.txtu   convertc             C   s   t  j t |   d d S(   Nu   debugT(   u   driveru   parse_stringu   reformatu   True(   u   string(    (    u2   /mit/python/lib/python3.0/lib2to3/tests/support.pyu   parse_string   s    i   c             C   s   t  |  j  S(   N(   u   iteru   _tests(   u   self(    (    u2   /mit/python/lib/python3.0/lib2to3/tests/support.pyu   TestSuite_iter   s    c             C   sC   | d  k o t j   j |   } n t j d d  j |  d  S(   Nu	   verbosityi   (   u   Noneu   unittestu
   TestLoaderu   loadTestsFromModuleu   TextTestRunneru   run(   u   test_modu   tests(    (    u2   /mit/python/lib/python3.0/lib2to3/tests/support.pyu   run_all_tests"   s    c             C   s   t  |   d S(   Nu   

(   u   dedent(   u   string(    (    u2   /mit/python/lib/python3.0/lib2to3/tests/support.pyu   reformat'   s    c             C   sS   |  d k	 o d   |  D }  n t j d  }  | p i  } t j |  | d d S(   u
  
    A convenience function for creating a RefactoringTool for tests.

    fixers is a list of fixers for the RefactoringTool to use. By default
    "lib2to3.fixes.*" is used. options is an optional dictionary of options to
    be passed to the RefactoringTool.
    c             S   s   g  } |  ] } | d  | q
 S(   u   lib2to3.fixes.fix_(    (   u   .0u   _[1]u   fix(    (    u2   /mit/python/lib/python3.0/lib2to3/tests/support.pyu
   <listcomp>3   s    u   lib2to3.fixesu   explicitNT(   u   Noneu   refactoru   get_fixers_from_packageu   RefactoringToolu   True(   u   fixersu   options(    (    u2   /mit/python/lib/python3.0/lib2to3/tests/support.pyu   get_refactorer*   s
    c              c   s`   xY t  j t  D]H \ }  } } x6 | D]. } | j d  o t  j j |  |  Vq& q& Wq Wd  S(   Nu   .py(   u   osu   walku   proj_diru   endswithu   pathu   join(   u   dirpathu   dirnamesu	   filenamesu   filename(    (    u2   /mit/python/lib/python3.0/lib2to3/tests/support.pyu   all_project_files9   s      (   i   i   ($   u   __doc__u   unittestu   sysu   osu   os.pathu   reu   textwrapu   dedentu    u   pytreeu   refactoru   pgen2u   driveru   pathu   dirnameu   __file__u   test_diru   normpathu   joinu   proj_diru   grammar_pathu   load_grammaru   grammaru   Driveru   convertu   parse_stringu   version_infou   TestSuite_iteru	   TestSuiteu   __iter__u   Noneu   run_all_testsu   reformatu   get_refactoreru   all_project_filesu   TestCase(    (    (    u2   /mit/python/lib/python3.0/lib2to3/tests/support.pyu   <module>   s.   !				