diff options
| author | Ramiro Morales <cramm0@gmail.com> | 2012-01-15 01:36:14 +0000 |
|---|---|---|
| committer | Ramiro Morales <cramm0@gmail.com> | 2012-01-15 01:36:14 +0000 |
| commit | e308cfc0e155f51f14c8eb4e678c15c5f632ae30 (patch) | |
| tree | 037ed46d6790adc32e1483c7240317e5ef31e38c /tests/regressiontests/model_formsets_regress/tests.py | |
| parent | 4e29b70b9dfb836a6ece537728f1ad9702786948 (diff) | |
Added support for specifying initial values to model formsets and inline formsets.
This make them consistent with the similar capability of regular
formsets. Thanks to simon29 form the report and to Claude Paroz for the
patch.
Fixes #14574.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17373 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'tests/regressiontests/model_formsets_regress/tests.py')
| -rw-r--r-- | tests/regressiontests/model_formsets_regress/tests.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/regressiontests/model_formsets_regress/tests.py b/tests/regressiontests/model_formsets_regress/tests.py index 35a794aa78..613d77616c 100644 --- a/tests/regressiontests/model_formsets_regress/tests.py +++ b/tests/regressiontests/model_formsets_regress/tests.py @@ -204,6 +204,17 @@ class InlineFormsetTests(TestCase): ["<Host: matrix.de.eu.dal.net>", "<Host: tranquility.hub.dal.net>"] ) + def test_initial_data(self): + user = User.objects.create(username="bibi", serial=1) + UserSite.objects.create(user=user, data=7) + FormSet = inlineformset_factory(User, UserSite, extra=2) + + formset = FormSet(instance=user, initial=[{'data': 41}, {'data': 42}]) + self.assertEqual(formset.forms[0].initial['data'], 7) + self.assertEqual(formset.extra_forms[0].initial['data'], 41) + self.assertTrue(u'value="42"' in formset.extra_forms[1].as_p()) + + class FormsetTests(TestCase): def test_error_class(self): ''' @@ -230,6 +241,14 @@ class FormsetTests(TestCase): self.assertTrue(isinstance(form.errors, ErrorDict)) self.assertTrue(isinstance(form.non_field_errors(), ErrorList)) + def test_initial_data(self): + User.objects.create(username="bibi", serial=1) + Formset = modelformset_factory(User, extra=2) + formset = Formset(initial=[{'username': u'apollo11'}, {'username': u'apollo12'}]) + self.assertEqual(formset.forms[0].initial['username'], "bibi") + self.assertEqual(formset.extra_forms[0].initial['username'], "apollo11") + self.assertTrue(u'value="apollo12"' in formset.extra_forms[1].as_p()) + class CustomWidget(forms.CharField): pass |
