1
0
mirror of https://github.com/django/django.git synced 2025-07-04 17:59:13 +00:00

[1.2.X] Fixed #14860 -- PLPESELField, PLNIPField, and PLREGONField didn't handle all EMPTY_VALUES correctly. Also converted teh Polish localflavor doctests into unittests. We have always been at war with doctests. Thanks to Idan Gazit. Backport of [14949].

git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@14973 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Alex Gaynor 2010-12-18 22:14:52 +00:00
parent a15aa66917
commit 4b3198d15d
4 changed files with 467 additions and 89 deletions

View File

@ -7,6 +7,7 @@ import re
from django.forms import ValidationError from django.forms import ValidationError
from django.forms.fields import Select, RegexField from django.forms.fields import Select, RegexField
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from django.core.validators import EMPTY_VALUES
class PLProvinceSelect(Select): class PLProvinceSelect(Select):
""" """
@ -45,6 +46,8 @@ class PLPESELField(RegexField):
def clean(self,value): def clean(self,value):
super(PLPESELField, self).clean(value) super(PLPESELField, self).clean(value)
if value in EMPTY_VALUES:
return u''
if not self.has_valid_checksum(value): if not self.has_valid_checksum(value):
raise ValidationError(self.error_messages['checksum']) raise ValidationError(self.error_messages['checksum'])
return u'%s' % value return u'%s' % value
@ -78,6 +81,8 @@ class PLNIPField(RegexField):
def clean(self,value): def clean(self,value):
super(PLNIPField, self).clean(value) super(PLNIPField, self).clean(value)
if value in EMPTY_VALUES:
return u''
value = re.sub("[-]", "", value) value = re.sub("[-]", "", value)
if not self.has_valid_checksum(value): if not self.has_valid_checksum(value):
raise ValidationError(self.error_messages['checksum']) raise ValidationError(self.error_messages['checksum'])
@ -116,6 +121,8 @@ class PLREGONField(RegexField):
def clean(self,value): def clean(self,value):
super(PLREGONField, self).clean(value) super(PLREGONField, self).clean(value)
if value in EMPTY_VALUES:
return u''
if not self.has_valid_checksum(value): if not self.has_valid_checksum(value):
raise ValidationError(self.error_messages['checksum']) raise ValidationError(self.error_messages['checksum'])
return u'%s' % value return u'%s' % value

File diff suppressed because one or more lines are too long

View File

@ -1,6 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from localflavor.cz import tests as localflavor_cz_tests from localflavor.cz import tests as localflavor_cz_tests
from localflavor.pl import tests as localflavor_pl_tests
from localflavor.pt import tests as localflavor_pt_tests from localflavor.pt import tests as localflavor_pt_tests
from localflavor.ro import tests as localflavor_ro_tests from localflavor.ro import tests as localflavor_ro_tests
from localflavor.se import tests as localflavor_se_tests from localflavor.se import tests as localflavor_se_tests
@ -30,11 +29,11 @@ from localflavor.it import ITLocalFlavorTests
from localflavor.jp import JPLocalFlavorTests from localflavor.jp import JPLocalFlavorTests
from localflavor.kw import KWLocalFlavorTests from localflavor.kw import KWLocalFlavorTests
from localflavor.nl import NLLocalFlavorTests from localflavor.nl import NLLocalFlavorTests
from localflavor.pl import PLLocalFlavorTests
__test__ = { __test__ = {
'localflavor_cz_tests': localflavor_cz_tests, 'localflavor_cz_tests': localflavor_cz_tests,
'localflavor_pl_tests': localflavor_pl_tests,
'localflavor_pt_tests': localflavor_pt_tests, 'localflavor_pt_tests': localflavor_pt_tests,
'localflavor_ro_tests': localflavor_ro_tests, 'localflavor_ro_tests': localflavor_ro_tests,
'localflavor_se_tests': localflavor_se_tests, 'localflavor_se_tests': localflavor_se_tests,

View File

@ -32,4 +32,5 @@ from regressiontests.forms.localflavortests import (
JPLocalFlavorTests, JPLocalFlavorTests,
KWLocalFlavorTests, KWLocalFlavorTests,
NLLocalFlavorTests, NLLocalFlavorTests,
PLLocalFlavorTests,
) )