diff options
Diffstat (limited to 'tests/model_fields')
| -rw-r--r-- | tests/model_fields/models.py | 3 | ||||
| -rw-r--r-- | tests/model_fields/tests.py | 12 |
2 files changed, 14 insertions, 1 deletions
diff --git a/tests/model_fields/models.py b/tests/model_fields/models.py index e110578ce9..b16287a66c 100644 --- a/tests/model_fields/models.py +++ b/tests/model_fields/models.py @@ -48,6 +48,9 @@ class Whiz(models.Model): class BigD(models.Model): d = models.DecimalField(max_digits=38, decimal_places=30) +class FloatModel(models.Model): + size = models.FloatField() + class BigS(models.Model): s = models.SlugField(max_length=255) diff --git a/tests/model_fields/tests.py b/tests/model_fields/tests.py index 194219a114..a39ad81f64 100644 --- a/tests/model_fields/tests.py +++ b/tests/model_fields/tests.py @@ -23,7 +23,7 @@ from django.utils.functional import lazy from .models import ( Foo, Bar, Whiz, BigD, BigS, BigInt, Post, NullBooleanModel, BooleanModel, PrimaryKeyCharModel, DataModel, Document, RenamedField, - VerboseNameField, FksToBooleans, FkToChar) + VerboseNameField, FksToBooleans, FkToChar, FloatModel) class BasicFieldTests(test.TestCase): @@ -78,6 +78,16 @@ class BasicFieldTests(test.TestCase): self.assertEqual(m._meta.get_field('id').verbose_name, 'verbose pk') + def test_float_validates_object(self): + instance = FloatModel(size=2.5) + instance.save() + self.assertTrue(instance.id) + + obj = FloatModel.objects.get(pk=1) + obj.size = obj + with self.assertRaises(TypeError): + obj.save() + def test_choices_form_class(self): """Can supply a custom choices form class. Regression for #20999.""" choices = [('a', 'a')] |
