diff --git a/tests/modeltests/model_forms/tests.py b/tests/modeltests/model_forms/tests.py index fb400375b8170..2bd8afba59556 100644 --- a/tests/modeltests/model_forms/tests.py +++ b/tests/modeltests/model_forms/tests.py @@ -133,6 +133,9 @@ class ShortCategory(forms.ModelForm): slug = forms.CharField(max_length=5) url = forms.CharField(max_length=3) + class Meta: + model = Category + class ImprovedArticleForm(forms.ModelForm): class Meta: model = ImprovedArticle @@ -277,6 +280,19 @@ class BadForm(ArticleForm, BaseCategoryForm): ['headline', 'slug', 'pub_date', 'writer', 'article', 'categories', 'status'] ) + + def test_invalid_meta_model(self): + class InvalidModelForm(forms.ModelForm): + class Meta: + pass # no model. + # can't create new form + with self.assertRaises(ValueError): + f = InvalidModelForm() + # even if you provide a model instance + with self.assertRaises(ValueError): + f = InvalidModelForm(instance=Category) + + def test_subcategory_form(self): class SubCategoryForm(BaseCategoryForm): """ Subclassing without specifying a Meta on the class will use