def test_clean(self): bd = BaseDefinition(model_def=self.model_def) # Base must be a class bd.base = BaseDefinitionTest.test_clean self.assertRaisesMessage(ValidationError, _('Base must be a class.'), bd.clean) # Subclasses of MutableModel are valid bases bd.base = ModelDefinition.objects.create( app_label='mutant', object_name='AnotherModel').model_class() try: bd.clean() except ValidationError: self.fail('MutableModel subclasses are valid bases.') # But model definition can't be bases of themselves bd.base = self.model_def.model_class() self.assertRaisesMessage( ValidationError, _("A model definition can't be a base of itself."), bd.clean) # Mixin objets are valid bases bd.base = Mixin try: bd.clean() except ValidationError: self.fail('Mixin objets are valid bases.') # Abstract model subclasses are valid bases bd.base = AbstractModel try: bd.clean() except ValidationError: self.fail('Abstract Model are valid bases') # Proxy model are not valid bases bd.base = ProxyModel self.assertRaisesMessage(ValidationError, _("Base can't be a proxy model."), bd.clean)
def test_clean(self): bd = BaseDefinition(model_def=self.model_def) # Base must be a class bd.base = BaseDefinitionTest.test_clean self.assertRaisesMessage( ValidationError, _('Base must be a class.'), bd.clean ) # Subclasses of MutableModel are valid bases bd.base = ModelDefinition.objects.create( app_label='mutant', object_name='AnotherModel' ).model_class() try: bd.clean() except ValidationError: self.fail('MutableModel subclasses are valid bases.') # But model definition can't be bases of themselves bd.base = self.model_def.model_class() self.assertRaisesMessage( ValidationError, _("A model definition can't be a base of itself."), bd.clean ) # Mixin objets are valid bases bd.base = Mixin try: bd.clean() except ValidationError: self.fail('Mixin objets are valid bases.') # Abstract model subclasses are valid bases bd.base = AbstractModel try: bd.clean() except ValidationError: self.fail('Abstract Model are valid bases') # Proxy model are not valid bases bd.base = ProxyModel self.assertRaisesMessage( ValidationError, _("Base can't be a proxy model."), bd.clean )