Skip to content

Commit

Permalink
Fixed django#12295 -- Issue had already been fixed, but added test. T…
Browse files Browse the repository at this point in the history
…hanks tomevans222 and dpn.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@15158 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information
andrewgodwin committed Jan 8, 2011
1 parent 6b5e98a commit 634af57
Showing 1 changed file with 15 additions and 0 deletions.
15 changes: 15 additions & 0 deletions tests/regressiontests/forms/tests/formsets.py
Expand Up @@ -29,6 +29,11 @@ def clean(self):
seen_drinks.append(drink['name'])


class EmptyFsetWontValidate(BaseFormSet):
def clean(self):
raise ValidationError("Clean method called")


# Let's define a FormSet that takes a list of favorite drinks, but raises an
# error if there are any duplicates. Used in ``test_clean_hook``,
# ``test_regression_6926`` & ``test_regression_12878``.
Expand Down Expand Up @@ -872,3 +877,13 @@ def test_form_errors_are_cought_by_formset(self):
formset = ArticleFormSet(data)
self.assertFalse(formset.is_valid())
self.assertEquals([{}, {'pub_date': [u'This field is required.']}], formset.errors)

class TestEmptyFormSet(TestCase):
"Test that an empty formset still calls clean()"
def test_empty_formset_is_valid(self):
EmptyFsetWontValidateFormset = formset_factory(FavoriteDrinkForm, extra=0, formset=EmptyFsetWontValidate)
formset = EmptyFsetWontValidateFormset(data={'form-INITIAL_FORMS':'0', 'form-TOTAL_FORMS':'0'},prefix="form")
formset2 = EmptyFsetWontValidateFormset(data={'form-INITIAL_FORMS':'0', 'form-TOTAL_FORMS':'1', 'form-0-name':'bah' },prefix="form")
self.assertFalse(formset.is_valid())
self.assertFalse(formset2.is_valid())

0 comments on commit 634af57

Please sign in to comment.