summaryrefslogtreecommitdiffstats
path: root/Lib/lib2to3/tests/support.py
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2008-09-03 02:27:16 (GMT)
committerBenjamin Peterson <benjamin@python.org>2008-09-03 02:27:16 (GMT)
commit8951b6172cdfcbc6c14949c4b9fa32908615d49c (patch)
treee804813551ee2e18b971d45aeecf214847befbe9 /Lib/lib2to3/tests/support.py
parentd8976f12d4e20ebd6f57e11cbb775a71e35daedd (diff)
downloadcpython-8951b6172cdfcbc6c14949c4b9fa32908615d49c.zip
cpython-8951b6172cdfcbc6c14949c4b9fa32908615d49c.tar.gz
cpython-8951b6172cdfcbc6c14949c4b9fa32908615d49c.tar.bz2
Merged revisions 66174-66175,66177 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ................ r66174 | benjamin.peterson | 2008-09-02 19:21:32 -0500 (Tue, 02 Sep 2008) | 15 lines Merged revisions 66173 via svnmerge from svn+ssh://pythondev@svn.python.org/sandbox/trunk/2to3/lib2to3 ........ r66173 | benjamin.peterson | 2008-09-02 18:57:48 -0500 (Tue, 02 Sep 2008) | 8 lines A little 2to3 refactoring #3637 This moves command line logic from refactor.py to a new file called main.py. RefactoringTool now merely deals with the actual fixers and refactoring; options processing for example is abstracted out. This patch was reviewed by Gregory P. Smith. ........ ................ r66175 | benjamin.peterson | 2008-09-02 20:53:28 -0500 (Tue, 02 Sep 2008) | 1 line update 2to3 script from 2to3 trunk ................ r66177 | benjamin.peterson | 2008-09-02 21:14:03 -0500 (Tue, 02 Sep 2008) | 9 lines Merged revisions 66176 via svnmerge from svn+ssh://pythondev@svn.python.org/sandbox/trunk/2to3/lib2to3 ........ r66176 | benjamin.peterson | 2008-09-02 21:04:06 -0500 (Tue, 02 Sep 2008) | 1 line fix typo ........ ................
Diffstat (limited to 'Lib/lib2to3/tests/support.py')
-rw-r--r--Lib/lib2to3/tests/support.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/Lib/lib2to3/tests/support.py b/Lib/lib2to3/tests/support.py
index 7789033..7abf2ef 100644
--- a/Lib/lib2to3/tests/support.py
+++ b/Lib/lib2to3/tests/support.py
@@ -13,6 +13,7 @@ from textwrap import dedent
# Local imports
from .. import pytree
+from .. import refactor
from ..pgen2 import driver
test_dir = os.path.dirname(__file__)
@@ -38,6 +39,21 @@ def run_all_tests(test_mod=None, tests=None):
def reformat(string):
return dedent(string) + "\n\n"
+def get_refactorer(fixers=None, options=None):
+ """
+ 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.
+ """
+ if fixers is not None:
+ fixers = ["lib2to3.fixes.fix_" + fix for fix in fixers]
+ else:
+ fixers = refactor.get_fixers_from_package("lib2to3.fixes")
+ options = options or {}
+ return refactor.RefactoringTool(fixers, options, explicit=True)
+
def all_project_files():
for dirpath, dirnames, filenames in os.walk(proj_dir):
for filename in filenames: