(root)/
Python-3.12.0/
Lib/
lib2to3/
fixes/
fix_asserts.py
       1  """Fixer that replaces deprecated unittest method names."""
       2  
       3  # Author: Ezio Melotti
       4  
       5  from ..fixer_base import BaseFix
       6  from ..fixer_util import Name
       7  
       8  NAMES = dict(
       9      assert_="assertTrue",
      10      assertEquals="assertEqual",
      11      assertNotEquals="assertNotEqual",
      12      assertAlmostEquals="assertAlmostEqual",
      13      assertNotAlmostEquals="assertNotAlmostEqual",
      14      assertRegexpMatches="assertRegex",
      15      assertRaisesRegexp="assertRaisesRegex",
      16      failUnlessEqual="assertEqual",
      17      failIfEqual="assertNotEqual",
      18      failUnlessAlmostEqual="assertAlmostEqual",
      19      failIfAlmostEqual="assertNotAlmostEqual",
      20      failUnless="assertTrue",
      21      failUnlessRaises="assertRaises",
      22      failIf="assertFalse",
      23  )
      24  
      25  
      26  class ESC[4;38;5;81mFixAsserts(ESC[4;38;5;149mBaseFix):
      27  
      28      PATTERN = """
      29                power< any+ trailer< '.' meth=(%s)> any* >
      30                """ % '|'.join(map(repr, NAMES))
      31  
      32      def transform(self, node, results):
      33          name = results["meth"][0]
      34          name.replace(Name(NAMES[str(name)], prefix=name.prefix))