當前位置: 首頁>>代碼示例>>Python>>正文


Python refactor.RefactoringTool方法代碼示例

本文整理匯總了Python中lib2to3.refactor.RefactoringTool方法的典型用法代碼示例。如果您正苦於以下問題:Python refactor.RefactoringTool方法的具體用法?Python refactor.RefactoringTool怎麽用?Python refactor.RefactoringTool使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在lib2to3.refactor的用法示例。


在下文中一共展示了refactor.RefactoringTool方法的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: test_refactor_stdin

# 需要導入模塊: from lib2to3 import refactor [as 別名]
# 或者: from lib2to3.refactor import RefactoringTool [as 別名]
def test_refactor_stdin(self):

        class MyRT(refactor.RefactoringTool):

            def print_output(self, old_text, new_text, filename, equal):
                results.extend([old_text, new_text, filename, equal])

        results = []
        rt = MyRT(_DEFAULT_FIXERS)
        save = sys.stdin
        sys.stdin = io.StringIO("def parrot(): pass\n\n")
        try:
            rt.refactor_stdin()
        finally:
            sys.stdin = save
        expected = ["def parrot(): pass\n\n",
                    "def cheese(): pass\n\n",
                    "<stdin>", False]
        self.assertEqual(results, expected) 
開發者ID:remg427,項目名稱:misp42splunk,代碼行數:21,代碼來源:test_refactor.py

示例2: test_refactor_stdin

# 需要導入模塊: from lib2to3 import refactor [as 別名]
# 或者: from lib2to3.refactor import RefactoringTool [as 別名]
def test_refactor_stdin(self):

        class MyRT(refactor.RefactoringTool):

            def print_output(self, old_text, new_text, filename, equal):
                results.extend([old_text, new_text, filename, equal])

        results = []
        rt = MyRT(_DEFAULT_FIXERS)
        save = sys.stdin
        sys.stdin = StringIO.StringIO("def parrot(): pass\n\n")
        try:
            rt.refactor_stdin()
        finally:
            sys.stdin = save
        expected = ["def parrot(): pass\n\n",
                    "def cheese(): pass\n\n",
                    "<stdin>", False]
        self.assertEqual(results, expected) 
開發者ID:remg427,項目名稱:misp42splunk,代碼行數:21,代碼來源:test_refactor.py

示例3: refactor_with_2to3

# 需要導入模塊: from lib2to3 import refactor [as 別名]
# 或者: from lib2to3.refactor import RefactoringTool [as 別名]
def refactor_with_2to3(source_text, fixer_names, filename=''):
    """Use lib2to3 to refactor the source.

    Return the refactored source code.

    """
    from lib2to3.refactor import RefactoringTool
    fixers = ['lib2to3.fixes.fix_' + name for name in fixer_names]
    tool = RefactoringTool(fixer_names=fixers, explicit=fixers)

    from lib2to3.pgen2 import tokenize as lib2to3_tokenize
    try:
        # The name parameter is necessary particularly for the "import" fixer.
        return unicode(tool.refactor_string(source_text, name=filename))
    except lib2to3_tokenize.TokenError:
        return source_text 
開發者ID:sofia-netsurv,項目名稱:python-netsurv,代碼行數:18,代碼來源:autopep8.py

示例4: refactor_with_2to3

# 需要導入模塊: from lib2to3 import refactor [as 別名]
# 或者: from lib2to3.refactor import RefactoringTool [as 別名]
def refactor_with_2to3(source_text, fixer_names, filename=''):
    """Use lib2to3 to refactor the source.

    Return the refactored source code.

    """
    check_lib2to3()
    from lib2to3.refactor import RefactoringTool
    fixers = ['lib2to3.fixes.fix_' + name for name in fixer_names]
    tool = RefactoringTool(fixer_names=fixers, explicit=fixers)

    from lib2to3.pgen2 import tokenize as lib2to3_tokenize
    try:
        # The name parameter is necessary particularly for the "import" fixer.
        return unicode(tool.refactor_string(source_text, name=filename))
    except lib2to3_tokenize.TokenError:
        return source_text 
開發者ID:mrknow,項目名稱:filmkodi,代碼行數:19,代碼來源:autopep8.py

示例5: rt

# 需要導入模塊: from lib2to3 import refactor [as 別名]
# 或者: from lib2to3.refactor import RefactoringTool [as 別名]
def rt(self, options=None, fixers=_DEFAULT_FIXERS, explicit=None):
        return refactor.RefactoringTool(fixers, options, explicit) 
開發者ID:remg427,項目名稱:misp42splunk,代碼行數:4,代碼來源:test_refactor.py

示例6: test_refactor_dir

# 需要導入模塊: from lib2to3 import refactor [as 別名]
# 或者: from lib2to3.refactor import RefactoringTool [as 別名]
def test_refactor_dir(self):
        def check(structure, expected):
            def mock_refactor_file(self, f, *args):
                got.append(f)
            save_func = refactor.RefactoringTool.refactor_file
            refactor.RefactoringTool.refactor_file = mock_refactor_file
            rt = self.rt()
            got = []
            dir = tempfile.mkdtemp(prefix="2to3-test_refactor")
            try:
                os.mkdir(os.path.join(dir, "a_dir"))
                for fn in structure:
                    open(os.path.join(dir, fn), "wb").close()
                rt.refactor_dir(dir)
            finally:
                refactor.RefactoringTool.refactor_file = save_func
                shutil.rmtree(dir)
            self.assertEqual(got,
                             [os.path.join(dir, path) for path in expected])
        check([], [])
        tree = ["nothing",
                "hi.py",
                ".dumb",
                ".after.py",
                "notpy.npy",
                "sappy"]
        expected = ["hi.py"]
        check(tree, expected)
        tree = ["hi.py",
                os.path.join("a_dir", "stuff.py")]
        check(tree, tree) 
開發者ID:remg427,項目名稱:misp42splunk,代碼行數:33,代碼來源:test_refactor.py

示例7: get_refactorer

# 需要導入模塊: from lib2to3 import refactor [as 別名]
# 或者: from lib2to3.refactor import RefactoringTool [as 別名]
def get_refactorer(fixer_pkg="lib2to3", 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 = [fixer_pkg + ".fixes.fix_" + fix for fix in fixers]
    else:
        fixers = refactor.get_fixers_from_package(fixer_pkg + ".fixes")
    options = options or {}
    return refactor.RefactoringTool(fixers, options, explicit=True) 
開發者ID:remg427,項目名稱:misp42splunk,代碼行數:16,代碼來源:support.py

示例8: setup

# 需要導入模塊: from lib2to3 import refactor [as 別名]
# 或者: from lib2to3.refactor import RefactoringTool [as 別名]
def setup():
        """
        Call this before using the refactoring tools to create them on demand
        if needed.
        """
        if None in [RTs._rt, RTs._rtp]:
            RTs._rt = RefactoringTool(myfixes)
            RTs._rtp = RefactoringTool(myfixes, {'print_function': True}) 
開發者ID:remg427,項目名稱:misp42splunk,代碼行數:10,代碼來源:__init__.py

示例9: test_refactor_dir

# 需要導入模塊: from lib2to3 import refactor [as 別名]
# 或者: from lib2to3.refactor import RefactoringTool [as 別名]
def test_refactor_dir(self):
        def check(structure, expected):
            def mock_refactor_file(self, f, *args):
                got.append(f)
            save_func = refactor.RefactoringTool.refactor_file
            refactor.RefactoringTool.refactor_file = mock_refactor_file
            rt = self.rt()
            got = []
            dir = tempfile.mkdtemp(prefix="2to3-test_refactor")
            try:
                os.mkdir(os.path.join(dir, "a_dir"))
                for fn in structure:
                    open(os.path.join(dir, fn), "wb").close()
                rt.refactor_dir(dir)
            finally:
                refactor.RefactoringTool.refactor_file = save_func
                shutil.rmtree(dir)
            self.assertEqual(got,
                             [os.path.join(dir, path) for path in expected])
        check([], [])
        tree = ["nothing",
                "hi.py",
                ".dumb",
                ".after.py",
                "sappy"]
        expected = ["hi.py"]
        check(tree, expected)
        tree = ["hi.py",
                os.path.join("a_dir", "stuff.py")]
        check(tree, tree) 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:32,代碼來源:test_refactor.py


注:本文中的lib2to3.refactor.RefactoringTool方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。