34 lines
1,018 B
Python
34 lines
1,018 B
Python
"""Fixer that replaces deprecated unittest method names."""
|
|
|
|
# Author: Ezio Melotti
|
|
|
|
from ..fixer_base import BaseFix
|
|
from ..fixer_util import Name
|
|
|
|
NAMES = dict(
|
|
assert_="assertTrue",
|
|
assertEquals="assertEqual",
|
|
assertNotEquals="assertNotEqual",
|
|
assertAlmostEquals="assertAlmostEqual",
|
|
assertNotAlmostEquals="assertNotAlmostEqual",
|
|
assertRegexpMatches="assertRegex",
|
|
assertRaisesRegexp="assertRaisesRegex",
|
|
failUnlessEqual="assertEqual",
|
|
failIfEqual="assertNotEqual",
|
|
failUnlessAlmostEqual="assertAlmostEqual",
|
|
failIfAlmostEqual="assertNotAlmostEqual",
|
|
failUnless="assertTrue",
|
|
failUnlessRaises="assertRaises",
|
|
failIf="assertFalse",
|
|
)
|
|
|
|
|
|
class FixAsserts(BaseFix):
|
|
|
|
PATTERN = """
|
|
power< any+ trailer< '.' meth=(%s)> any* >
|
|
""" % '|'.join(map(repr, NAMES))
|
|
|
|
def transform(self, node, results):
|
|
name = results["meth"][0]
|
|
name.replace(Name(NAMES[str(name)], prefix=name.prefix))
|