def __setattr__(self, key, value): if self._should_error is True: raise ValidationError(message="Cannot set attribute", code='invalid') super().__setattr__(key, value)
def test_message_dict(self): v = ValidationError({'first': ['First Problem']}) self.assertEqual(str(v), "{'first': ['First Problem']}") self.assertEqual(repr(v), "ValidationError({'first': ['First Problem']})")
def test_message_list(self): v = ValidationError(['First Problem', 'Second Problem']) self.assertEqual(str(v), "['First Problem', 'Second Problem']") self.assertEqual( repr(v), "ValidationError(['First Problem', 'Second Problem'])")
def test_single_message(self): v = ValidationError('Not Valid') self.assertEqual(str(v), "['Not Valid']") self.assertEqual(repr(v), "ValidationError(['Not Valid'])")
def validate_answer_to_universe(value): if value != 42: raise ValidationError( 'This is not the answer to life, universe and everything!', code='not42')
def clean(self): super().clean() if self.number == 11: raise ValidationError('Invalid number supplied!')