diff options
| author | Tim Graham <timograham@gmail.com> | 2015-08-12 11:10:52 -0400 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2015-08-14 08:53:35 -0400 |
| commit | 825429c1f7cb1856b23ba194a66acf9dc2cde4be (patch) | |
| tree | 0d67b0f12501da65dd3195c75a9e40a2c5899618 /tests/foreign_object/test_forms.py | |
| parent | 5b5a27942b2fa113df4d6eb3d77a33c85f58634f (diff) | |
Moved foreign_object models.py into a module.
Diffstat (limited to 'tests/foreign_object/test_forms.py')
| -rw-r--r-- | tests/foreign_object/test_forms.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/foreign_object/test_forms.py b/tests/foreign_object/test_forms.py new file mode 100644 index 0000000000..32a8fc3876 --- /dev/null +++ b/tests/foreign_object/test_forms.py @@ -0,0 +1,29 @@ +import datetime + +from django import forms +from django.test import TestCase + +from .models import Article + + +class FormsTests(TestCase): + # ForeignObjects should not have any form fields, currently the user needs + # to manually deal with the foreignobject relation. + class ArticleForm(forms.ModelForm): + class Meta: + model = Article + fields = '__all__' + + def test_foreign_object_form(self): + # A very crude test checking that the non-concrete fields do not get form fields. + form = FormsTests.ArticleForm() + self.assertIn('id_pub_date', form.as_table()) + self.assertNotIn('active_translation', form.as_table()) + form = FormsTests.ArticleForm(data={'pub_date': str(datetime.date.today())}) + self.assertTrue(form.is_valid()) + a = form.save() + self.assertEqual(a.pub_date, datetime.date.today()) + form = FormsTests.ArticleForm(instance=a, data={'pub_date': '2013-01-01'}) + a2 = form.save() + self.assertEqual(a.pk, a2.pk) + self.assertEqual(a2.pub_date, datetime.date(2013, 1, 1)) |
