mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Fixed #28164 -- Improved float conversions in DecimalField.to_python
Thanks Tim Graham and Adam Johnson for the reviews.
This commit is contained in:
@@ -15,6 +15,12 @@ class DecimalFieldTests(TestCase):
|
||||
f = models.DecimalField(max_digits=4, decimal_places=2)
|
||||
self.assertEqual(f.to_python(3), Decimal('3'))
|
||||
self.assertEqual(f.to_python('3.14'), Decimal('3.14'))
|
||||
# to_python() converts floats and honors max_digits.
|
||||
self.assertEqual(f.to_python(3.1415926535897), Decimal('3.142'))
|
||||
self.assertEqual(f.to_python(2.4), Decimal('2.400'))
|
||||
# Uses default rounding of ROUND_HALF_EVEN.
|
||||
self.assertEqual(f.to_python(2.0625), Decimal('2.062'))
|
||||
self.assertEqual(f.to_python(2.1875), Decimal('2.188'))
|
||||
with self.assertRaises(ValidationError):
|
||||
f.to_python('abc')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user