def METHOD_NAME(self):
    # -1.0 raised to an integer should never blow up.  It did if the
    # platform pow() was buggy, and Python didn't worm around it.
    eq = self.assertEqual
    a = -1.0
    # The next two tests can still fail if the platform floor()
    # function doesn't treat all large inputs as integers
    # test_math should also fail if that is happening
    eq(pow(a, 1.23e167), 1.0)
    eq(pow(a, -1.23e167), 1.0)
    for b in range(-10, 11):
        eq(pow(a, float(b)), b & 1 and -1.0 or 1.0)
    for n in range(0, 100):
        fiveto = float(5 ** n)
        # For small n, fiveto will be odd.  Eventually we run out of
        # mantissa bits, though, and thereafer fiveto will be even.
        expected = fiveto % 2.0 and -1.0 or 1.0
        eq(pow(a, fiveto), expected)
        eq(pow(a, -fiveto), expected)
    eq(expected, 1.0)   # else we didn't push fiveto to evenness