1
0
mirror of https://github.com/django/django.git synced 2025-10-24 06:06:09 +00:00

[1.0.X] Fixed #7064: Made DemicmalField validation support max_digits equal to decimal_places.

r9387 and r9388 from trunk.


git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.0.X@9389 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Karen Tracey
2008-11-10 20:04:42 +00:00
parent 8c31bb7ca3
commit 21e0efcd64
2 changed files with 21 additions and 11 deletions

View File

@@ -366,7 +366,7 @@ True
Traceback (most recent call last):
...
ValidationError: [u'Ensure that there are no more than 2 decimal places.']
>>> f.clean('-000.1234')
>>> f.clean('-000.12345')
Traceback (most recent call last):
...
ValidationError: [u'Ensure that there are no more than 4 digits in total.']
@@ -416,18 +416,28 @@ ValidationError: [u'Ensure that there are no more than 2 decimal places.']
# Leading whole zeros "collapse" to one digit.
>>> f.clean('0000000.10') == Decimal("0.1")
True
>>> f.clean('0000000.100')
Traceback (most recent call last):
...
ValidationError: [u'Ensure that there are no more than 3 digits in total.']
# But a leading 0 before the . doesn't count towards max_digits
>>> f.clean('0000000.100') == Decimal("0.100")
True
# Only leading whole zeros "collapse" to one digit.
>>> f.clean('000000.02') == Decimal('0.02')
True
>>> f.clean('000000.002')
>>> f.clean('000000.0002')
Traceback (most recent call last):
...
ValidationError: [u'Ensure that there are no more than 3 digits in total.']
>>> f.clean('.002') == Decimal("0.002")
True
>>> f = DecimalField(max_digits=2, decimal_places=2)
>>> f.clean('.01') == Decimal(".01")
True
>>> f.clean('1.1')
Traceback (most recent call last):
...
ValidationError: [u'Ensure that there are no more than 0 digits before the decimal point.']
# DateField ###################################################################