def test_deprecatedAttributeHelper(self): """ L{twisted.python.deprecate._DeprecatedAttribute} correctly sets its __name__ to match that of the deprecated attribute and emits a warning when the original attribute value is accessed. """ name = 'ANOTHER_DEPRECATED_ATTRIBUTE' setattr(deprecatedattributes, name, 42) attr = deprecate._DeprecatedAttribute( deprecatedattributes, name, self.version, self.message) self.assertEqual(attr.__name__, name) # Since we're accessing the value getter directly, as opposed to via # the module proxy, we need to match the warning's stack level. def addStackLevel(): attr.get() # Access the deprecated attribute. addStackLevel() warningsShown = self.flushWarnings([ self.test_deprecatedAttributeHelper]) self.assertIs(warningsShown[0]['category'], DeprecationWarning) self.assertEqual( warningsShown[0]['message'], self._getWarningString(name)) self.assertEqual(len(warningsShown), 1)
def test_deprecatedAttributeHelper(self): """ L{twisted.python.deprecate._DeprecatedAttribute} correctly sets its __name__ to match that of the deprecated attribute and emits a warning when the original attribute value is accessed. """ name = 'ANOTHER_DEPRECATED_ATTRIBUTE' setattr(deprecatedattributes, name, 42) attr = deprecate._DeprecatedAttribute(deprecatedattributes, name, self.version, self.message) self.assertEqual(attr.__name__, name) # Since we're accessing the value getter directly, as opposed to via # the module proxy, we need to match the warning's stack level. def addStackLevel(): attr.get() # Access the deprecated attribute. addStackLevel() warningsShown = self.flushWarnings( [self.test_deprecatedAttributeHelper]) self.assertIdentical(warningsShown[0]['category'], DeprecationWarning) self.assertEqual(warningsShown[0]['message'], self._getWarningString(name)) self.assertEqual(len(warningsShown), 1)