
    z%i                        	 d dl 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 d dlm	Z
 ej                  j                  ej                        Zej                  j                  e      Zej                  j!                  ej                  j#                  ed            Zej                  j#                  ed      Z e
j(                  e      Z e
j(                  e      Zej.                  d=  e
j0                  eej2                        Z	 e
j0                  eej2                        Zd	 Zdd
Zd ZddZd Zd Z e jB                  Z!y)    Ndedent)pytreerefactor)driverz..zGrammar.txtprint)convertc                 B    t         j                  t        |       d      S )NT)debug)r   parse_stringreformatstrings    M/home/uftp/.pyenv/versions/3.12.0/lib/python3.12/test/test_lib2to3/support.pyr   r      s    x/t<<    c                     |#t        j                         j                  |       }t        j                  d      j	                  |       y )N   )	verbosity)unittest
TestLoaderloadTestsFromModuleTextTestRunnerrun)test_modtestss     r   run_all_testsr      s9    }##%99(Ca(,,U3r   c                     t        |       dz   S )Nz

r   r   s    r   r   r   $   s    &>F""r   c                     	 ||D cg c]
  }| dz   |z    }}nt        j                  | dz         }|xs i }t        j                  ||d      S c c}w )Nz.fixes.fix_z.fixesT)explicit)r   get_fixers_from_packageRefactoringTool)	fixer_pkgfixersoptionsfixs       r   get_refactorerr&   '   se     =CDc)m+c1DD11)h2FGmG##FGdCC	 Es   Ac                     t        j                  |       D ]N  \  }}}|D ]C  }|j                  d      s|j                  t         j                  j                  ||             E P y )Nz.py)oswalkendswithappendpathjoin)rootfilesdirpathdirnames	filenamesfilenames         r   _all_project_filesr4   6   s[    (* :$9! 	:H$$U+LLgx89	::r   c                  j    g } t        t        |        t        t        |        | j                          | S )N)r4   lib2to3_dirtest_dirsort)r/   s    r   all_project_filesr9   =   s)    E{E*x'	JJLLr   )NN)lib2to3NN)"r   r(   os.pathtextwrapr   r:   r   r   lib2to3.pgen2r   pgen2_driverr,   dirname__file__r6   r7   normpathr-   proj_dirgrammar_pathload_grammargrammargrammar_no_print_statementkeywordsDriverr	   driver_no_print_statementr   r   r   r&   r4   r9   TestCase r   r   <module>rL      s   &  	    $ 0ggoog../77??8$77BGGLL489ww||K7
#,
#
#L
16\66|D ''0			Wfnn	=/L//NN 
=4
#D: r   