Author: jezdez
Date: 2011-05-03 04:52:04 -0700 (Tue, 03 May 2011)
New Revision: 16146

Modified:
   django/trunk/django/contrib/localflavor/ar/forms.py
   django/trunk/django/contrib/localflavor/at/forms.py
   django/trunk/django/contrib/localflavor/au/forms.py
   django/trunk/django/contrib/localflavor/be/forms.py
   django/trunk/django/contrib/localflavor/br/forms.py
   django/trunk/django/contrib/localflavor/ca/forms.py
   django/trunk/django/contrib/localflavor/ch/forms.py
   django/trunk/django/contrib/localflavor/cz/forms.py
   django/trunk/django/contrib/localflavor/de/forms.py
   django/trunk/django/contrib/localflavor/es/forms.py
   django/trunk/django/contrib/localflavor/fi/forms.py
   django/trunk/django/contrib/localflavor/fr/forms.py
   django/trunk/django/contrib/localflavor/hr/forms.py
   django/trunk/django/contrib/localflavor/in_/forms.py
   django/trunk/django/contrib/localflavor/is_/forms.py
   django/trunk/django/contrib/localflavor/it/forms.py
   django/trunk/django/contrib/localflavor/jp/forms.py
   django/trunk/django/contrib/localflavor/no/forms.py
   django/trunk/django/contrib/localflavor/pe/forms.py
   django/trunk/django/contrib/localflavor/pl/forms.py
   django/trunk/django/contrib/localflavor/pt/forms.py
   django/trunk/django/contrib/localflavor/ro/forms.py
   django/trunk/django/contrib/localflavor/ru/forms.py
   django/trunk/django/contrib/localflavor/sk/forms.py
   django/trunk/django/contrib/localflavor/tr/forms.py
   django/trunk/django/contrib/localflavor/us/forms.py
   django/trunk/django/contrib/localflavor/za/forms.py
   django/trunk/tests/regressiontests/forms/localflavor/utils.py
Log:
Fixed #12595 -- Fixed bad arguments handling in localflavor form fields.

Modified: django/trunk/django/contrib/localflavor/ar/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/ar/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/ar/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -28,9 +28,9 @@
         'invalid': _("Enter a postal code in the format NNNN or ANNNNAAA."),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=8, min_length=4, *args, **kwargs):
         super(ARPostalCodeField, 
self).__init__(r'^\d{4}$|^[A-HJ-NP-Za-hj-np-z]\d{4}\D{3}$',
-            min_length=4, max_length=8, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         value = super(ARPostalCodeField, self).clean(value)
@@ -51,8 +51,8 @@
         'max_digits': _("This field requires 7 or 8 digits."),
     }
 
-    def __init__(self, *args, **kwargs):
-        super(ARDNIField, self).__init__(max_length=10, min_length=7, *args,
+    def __init__(self, max_length=10, min_length=7, *args, **kwargs):
+        super(ARDNIField, self).__init__(max_length, min_length, *args,
                 **kwargs)
 
     def clean(self, value):
@@ -81,9 +81,9 @@
         'checksum': _("Invalid CUIT."),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(ARCUITField, self).__init__(r'^\d{2}-?\d{8}-?\d$',
-            *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         """

Modified: django/trunk/django/contrib/localflavor/at/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/at/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/at/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -21,9 +21,9 @@
     default_error_messages = {
         'invalid': _('Enter a zip code in the format XXXX.'),
     }
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(ATZipCodeField, self).__init__(r'^\d{4}$',
-                max_length=None, min_length=None, *args, **kwargs)
+                max_length, min_length, *args, **kwargs)
 
 class ATStateSelect(Select):
     """

Modified: django/trunk/django/contrib/localflavor/au/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/au/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/au/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -21,11 +21,9 @@
         'invalid': _('Enter a 4 digit postcode.'),
     }
 
-    def __init__(self, *args, **kwargs):
-        if 'max_length' in kwargs:
-            kwargs.pop('max_length')
+    def __init__(self, max_length=4, min_length=None, *args, **kwargs):
         super(AUPostCodeField, self).__init__(r'^\d{4}$',
-            max_length=4, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 
 class AUPhoneNumberField(Field):

Modified: django/trunk/django/contrib/localflavor/be/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/be/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/be/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -23,9 +23,9 @@
             'Enter a valid postal code in the range and format 1XXX - 9XXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(BEPostalCodeField, self).__init__(r'^[1-9]\d{3}$',
-                max_length=None, min_length=None, *args, **kwargs)
+                max_length, min_length, *args, **kwargs)
 
 class BEPhoneNumberField(RegexField):
     """
@@ -50,9 +50,9 @@
                      '0xxxxxxxx or 04xxxxxxxx.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(BEPhoneNumberField, self).__init__(r'^[0]\d{1}[/. ]?\d{3}[. 
]\d{2}[. ]?\d{2}$|^[0]\d{2}[/. ]?\d{2}[. ]?\d{2}[. ]?\d{2}$|^[0][4]\d{2}[/. 
]?\d{2}[. ]?\d{2}[. ]?\d{2}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 class BERegionSelect(Select):
     """

Modified: django/trunk/django/contrib/localflavor/br/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/br/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/br/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -17,9 +17,9 @@
         'invalid': _('Enter a zip code in the format XXXXX-XXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(BRZipCodeField, self).__init__(r'^\d{5}-\d{3}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 class BRPhoneNumberField(Field):
     default_error_messages = {
@@ -92,8 +92,8 @@
         'digits_only': _("This field requires only numbers."),
     }
 
-    def __init__(self, *args, **kwargs):
-        super(BRCPFField, self).__init__(max_length=14, min_length=11, *args, 
**kwargs)
+    def __init__(self, max_length=14, min_length=11, *args, **kwargs):
+        super(BRCPFField, self).__init__(max_length, min_length, *args, 
**kwargs)
 
     def clean(self, value):
         """

Modified: django/trunk/django/contrib/localflavor/ca/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/ca/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/ca/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -25,9 +25,9 @@
         'invalid': _(u'Enter a postal code in the format XXX XXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(CAPostalCodeField, 
self).__init__(r'^[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJKLMNPRSTVWXYZ] 
\d[ABCEGHJKLMNPRSTVWXYZ]\d$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 class CAPhoneNumberField(Field):
     """Canadian phone number field."""

Modified: django/trunk/django/contrib/localflavor/ch/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/ch/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/ch/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -17,9 +17,9 @@
         'invalid': _('Enter a zip code in the format XXXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(CHZipCodeField, self).__init__(r'^\d{4}$',
-        max_length=None, min_length=None, *args, **kwargs)
+        max_length, min_length, *args, **kwargs)
 
 class CHPhoneNumberField(Field):
     """

Modified: django/trunk/django/contrib/localflavor/cz/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/cz/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/cz/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -28,9 +28,9 @@
         'invalid': _(u'Enter a postal code in the format XXXXX or XXX XX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(CZPostalCodeField, self).__init__(r'^\d{5}$|^\d{3} \d{2}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         """

Modified: django/trunk/django/contrib/localflavor/de/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/de/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/de/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -14,9 +14,9 @@
     default_error_messages = {
         'invalid': _('Enter a zip code in the format XXXXX.'),
     }
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(DEZipCodeField, self).__init__(r'^\d{5}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 class DEStateSelect(Select):
     """

Modified: django/trunk/django/contrib/localflavor/es/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/es/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/es/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -20,10 +20,10 @@
         'invalid': _('Enter a valid postal code in the range and format 01XXX 
- 52XXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(ESPostalCodeField, self).__init__(
                 r'^(0[1-9]|[1-4][0-9]|5[0-2])\d{3}$',
-                max_length=None, min_length=None, *args, **kwargs)
+                max_length, min_length, *args, **kwargs)
 
 class ESPhoneNumberField(RegexField):
     """
@@ -40,9 +40,9 @@
         'invalid': _('Enter a valid phone number in one of the formats 
6XXXXXXXX, 8XXXXXXXX or 9XXXXXXXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(ESPhoneNumberField, self).__init__(r'^(6|7|8|9)\d{8}$',
-                max_length=None, min_length=None, *args, **kwargs)
+                max_length, min_length, *args, **kwargs)
 
 class ESIdentityCardNumberField(RegexField):
     """
@@ -71,14 +71,14 @@
         'invalid_cif': _('Invalid checksum for CIF.'),
     }
 
-    def __init__(self, only_nif=False, *args, **kwargs):
+    def __init__(self, only_nif=False, max_length=None, min_length=None, 
*args, **kwargs):
         self.only_nif = only_nif
         self.nif_control = 'TRWAGMYFPDXBNJZSQVHLCKE'
         self.cif_control = 'JABCDEFGHI'
         self.cif_types = 'ABCDEFGHKLMNPQS'
         self.nie_types = 'XT'
         id_card_re = re.compile(r'^([%s]?)[ -]?(\d+)[ -]?([%s]?)$' % 
(self.cif_types + self.nie_types, self.nif_control + self.cif_control), 
re.IGNORECASE)
-        super(ESIdentityCardNumberField, self).__init__(id_card_re, 
max_length=None, min_length=None,
+        super(ESIdentityCardNumberField, self).__init__(id_card_re, 
max_length, min_length,
                 error_message=self.default_error_messages['invalid%s' % 
(self.only_nif and '_only_nif' or '')],
                 *args, **kwargs)
 
@@ -144,9 +144,9 @@
         'checksum': _('Invalid checksum for bank account number.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(ESCCCField, self).__init__(r'^\d{4}[ -]?\d{4}[ -]?\d{2}[ 
-]?\d{10}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         super(ESCCCField, self).clean(value)

Modified: django/trunk/django/contrib/localflavor/fi/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/fi/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/fi/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -12,9 +12,9 @@
     default_error_messages = {
         'invalid': _('Enter a zip code in the format XXXXX.'),
     }
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(FIZipCodeField, self).__init__(r'^\d{5}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 class FIMunicipalitySelect(Select):
     """

Modified: django/trunk/django/contrib/localflavor/fr/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/fr/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/fr/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -16,9 +16,9 @@
         'invalid': _('Enter a zip code in the format XXXXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(FRZipCodeField, self).__init__(r'^\d{5}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 class FRPhoneNumberField(Field):
     """

Modified: django/trunk/django/contrib/localflavor/hr/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/hr/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/hr/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -120,9 +120,9 @@
         'invalid': _('Enter a valid 11 digit OIB'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, min_length=11, max_length=11, *args, **kwargs):
         super(HROIBField, self).__init__(r'^\d{11}$',
-            min_length=11, max_length=11, *args, **kwargs)
+            min_length, max_length, *args, **kwargs)
 
     def clean(self, value):
         super(HROIBField, self).clean(value)

Modified: django/trunk/django/contrib/localflavor/in_/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/in_/forms.py        2011-05-03 
11:51:37 UTC (rev 16145)
+++ django/trunk/django/contrib/localflavor/in_/forms.py        2011-05-03 
11:52:04 UTC (rev 16146)
@@ -15,9 +15,9 @@
         'invalid': gettext(u'Enter a zip code in the format XXXXXXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(INZipCodeField, self).__init__(r'^\d{6}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 class INStateField(Field):
     """

Modified: django/trunk/django/contrib/localflavor/is_/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/is_/forms.py        2011-05-03 
11:51:37 UTC (rev 16145)
+++ django/trunk/django/contrib/localflavor/is_/forms.py        2011-05-03 
11:52:04 UTC (rev 16146)
@@ -19,9 +19,9 @@
         'checksum': _(u'The Icelandic identification number is not valid.'),
     }
 
-    def __init__(self, *args, **kwargs):
-        kwargs['min_length'],kwargs['max_length'] = 10,11
-        super(ISIdNumberField, self).__init__(r'^\d{6}(-| )?\d{4}$', *args, 
**kwargs)
+    def __init__(self, max_length=11, min_length=10, *args, **kwargs):
+        super(ISIdNumberField, self).__init__(r'^\d{6}(-| )?\d{4}$',
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         value = super(ISIdNumberField, self).clean(value)
@@ -61,9 +61,9 @@
     Icelandic phone number. Seven digits with an optional hyphen or space after
     the first three digits.
     """
-    def __init__(self, *args, **kwargs):
-        kwargs['min_length'], kwargs['max_length'] = 7,8
-        super(ISPhoneNumberField, self).__init__(r'^\d{3}(-| )?\d{4}$', *args, 
**kwargs)
+    def __init__(self, max_length=8, min_length=7, *args, **kwargs):
+        super(ISPhoneNumberField, self).__init__(r'^\d{3}(-| )?\d{4}$',
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         value = super(ISPhoneNumberField, self).clean(value)

Modified: django/trunk/django/contrib/localflavor/it/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/it/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/it/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -14,9 +14,9 @@
     default_error_messages = {
         'invalid': _('Enter a valid zip code.'),
     }
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(ITZipCodeField, self).__init__(r'^\d{5}$',
-        max_length=None, min_length=None, *args, **kwargs)
+              max_length, min_length, *args, **kwargs)
 
 class ITRegionSelect(Select):
     """
@@ -44,9 +44,9 @@
         'invalid': _(u'Enter a valid Social Security number.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(ITSocialSecurityNumberField, 
self).__init__(r'^\w{3}\s*\w{3}\s*\w{5}\s*\w{5}$',
-        max_length=None, min_length=None, *args, **kwargs)
+              max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         value = super(ITSocialSecurityNumberField, self).clean(value)

Modified: django/trunk/django/contrib/localflavor/jp/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/jp/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/jp/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -16,9 +16,9 @@
         'invalid': _('Enter a postal code in the format XXXXXXX or XXX-XXXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(JPPostalCodeField, self).__init__(r'^\d{3}-\d{4}$|^\d{7}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         """

Modified: django/trunk/django/contrib/localflavor/no/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/no/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/no/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -13,9 +13,9 @@
         'invalid': _('Enter a zip code in the format XXXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(NOZipCodeField, self).__init__(r'^\d{4}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 class NOMunicipalitySelect(Select):
     """

Modified: django/trunk/django/contrib/localflavor/pe/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/pe/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/pe/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -25,8 +25,8 @@
         'max_digits': _("This field requires 8 digits."),
     }
 
-    def __init__(self, *args, **kwargs):
-        super(PEDNIField, self).__init__(max_length=8, min_length=8, *args,
+    def __init__(self, max_length=8, min_length=8, *args, **kwargs):
+        super(PEDNIField, self).__init__(max_length, min_length, *args,
                 **kwargs)
 
     def clean(self, value):
@@ -53,8 +53,8 @@
         'max_digits': _("This field requires 11 digits."),
     }
 
-    def __init__(self, *args, **kwargs):
-        super(PERUCField, self).__init__(max_length=11, min_length=11, *args,
+    def __init__(self, max_length=11, min_length=11, *args, **kwargs):
+        super(PERUCField, self).__init__(max_length, min_length, *args,
             **kwargs)
 
     def clean(self, value):

Modified: django/trunk/django/contrib/localflavor/pl/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/pl/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/pl/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -40,9 +40,9 @@
         'checksum': _(u'Wrong checksum for the National Identification 
Number.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(PLPESELField, self).__init__(r'^\d{11}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         super(PLPESELField, self).clean(value)
@@ -77,9 +77,9 @@
         'checksum': _(u'Wrong checksum for the National ID Card Number.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(PLNationalIDCardNumberField, 
self).__init__(r'^[A-Za-z]{3}\d{6}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self,value):
         super(PLNationalIDCardNumberField, self).clean(value)
@@ -129,9 +129,9 @@
         'checksum': _(u'Wrong checksum for the Tax Number (NIP).'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(PLNIPField, 
self).__init__(r'^\d{3}-\d{3}-\d{2}-\d{2}$|^\d{2}-\d{2}-\d{3}-\d{3}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self,value):
         super(PLNIPField, self).clean(value)
@@ -169,9 +169,9 @@
         'checksum': _(u'Wrong checksum for the National Business Register 
Number (REGON).'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(PLREGONField, self).__init__(r'^\d{9,14}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self,value):
         super(PLREGONField, self).clean(value)
@@ -209,7 +209,7 @@
         'invalid': _(u'Enter a postal code in the format XX-XXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(PLPostalCodeField, self).__init__(r'^\d{2}-\d{3}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 

Modified: django/trunk/django/contrib/localflavor/pt/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/pt/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/pt/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -17,9 +17,9 @@
         'invalid': _('Enter a zip code in the format XXXX-XXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(PTZipCodeField, self).__init__(r'^(\d{4}-\d{3}|\d{7})$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self,value):
         cleaned = super(PTZipCodeField, self).clean(value)

Modified: django/trunk/django/contrib/localflavor/ro/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/ro/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/ro/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -19,9 +19,9 @@
         'invalid': _("Enter a valid CIF."),
     }
 
-    def __init__(self, *args, **kwargs):
-        super(ROCIFField, self).__init__(r'^(RO)?[0-9]{2,10}', max_length=10,
-                min_length=2, *args, **kwargs)
+    def __init__(self, max_length=10, min_length=2, *args, **kwargs):
+        super(ROCIFField, self).__init__(r'^(RO)?[0-9]{2,10}', max_length,
+                min_length, *args, **kwargs)
 
     def clean(self, value):
         """
@@ -56,9 +56,9 @@
         'invalid': _("Enter a valid CNP."),
     }
 
-    def __init__(self, *args, **kwargs):
-        super(ROCNPField, self).__init__(r'^[1-9][0-9]{12}', max_length=13,
-            min_length=13, *args, **kwargs)
+    def __init__(self, max_length=13, min_length=13, *args, **kwargs):
+        super(ROCNPField, self).__init__(r'^[1-9][0-9]{12}', max_length,
+            min_length, *args, **kwargs)
 
     def clean(self, value):
         """
@@ -143,9 +143,9 @@
         'invalid': _('Enter a valid IBAN in ROXX-XXXX-XXXX-XXXX-XXXX-XXXX 
format'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=40, min_length=24, *args, **kwargs):
         super(ROIBANField, self).__init__(r'^[0-9A-Za-z\-\s]{24,40}$',
-                max_length=40, min_length=24, *args, **kwargs)
+                max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         """
@@ -175,9 +175,9 @@
         'invalid': _('Phone numbers must be in XXXX-XXXXXX format.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=20, min_length=10, *args, **kwargs):
         super(ROPhoneNumberField, self).__init__(r'^[0-9\-\(\)\s]{10,20}$',
-                max_length=20, min_length=10, *args, **kwargs)
+                max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         """
@@ -200,7 +200,7 @@
         'invalid': _('Enter a valid postal code in the format XXXXXX'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=6, min_length=6, *args, **kwargs):
         super(ROPostalCodeField, self).__init__(r'^[0-9][0-8][0-9]{4}$',
-                max_length=6, min_length=6, *args, **kwargs)
+                max_length, min_length, *args, **kwargs)
 

Modified: django/trunk/django/contrib/localflavor/ru/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/ru/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/ru/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -37,9 +37,9 @@
     default_error_messages = {
         'invalid': _(u'Enter a postal code in the format XXXXXX.'),
     }
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(RUPostalCodeField, self).__init__(r'^\d{6}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 
 class RUPassportNumberField(RegexField):
@@ -50,9 +50,9 @@
     default_error_messages = {
         'invalid': _(u'Enter a passport number in the format XXXX XXXXXX.'),
     }
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(RUPassportNumberField, self).__init__(r'^\d{4} \d{6}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 
 class RUAlienPassportNumberField(RegexField):
@@ -63,6 +63,6 @@
     default_error_messages = {
         'invalid': _(u'Enter a passport number in the format XX XXXXXXX.'),
     }
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(RUAlienPassportNumberField, self).__init__(r'^\d{2} \d{7}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)

Modified: django/trunk/django/contrib/localflavor/sk/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/sk/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/sk/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -30,9 +30,9 @@
         'invalid': _(u'Enter a postal code in the format XXXXX or XXX XX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(SKPostalCodeField, self).__init__(r'^\d{5}$|^\d{3} \d{2}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         """

Modified: django/trunk/django/contrib/localflavor/tr/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/tr/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/tr/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -16,9 +16,9 @@
         'invalid': _(u'Enter a postal code in the format XXXXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=5, min_length=5, *args, **kwargs):
         super(TRPostalCodeField, self).__init__(r'^\d{5}$',
-            max_length=5, min_length=5, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
     def clean(self, value):
         value = super(TRPostalCodeField, self).clean(value)

Modified: django/trunk/django/contrib/localflavor/us/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/us/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/us/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -17,9 +17,9 @@
         'invalid': _('Enter a zip code in the format XXXXX or XXXXX-XXXX.'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(USZipCodeField, self).__init__(r'^\d{5}(?:-\d{4})?$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)
 
 class USPhoneNumberField(CharField):
     default_error_messages = {

Modified: django/trunk/django/contrib/localflavor/za/forms.py
===================================================================
--- django/trunk/django/contrib/localflavor/za/forms.py 2011-05-03 11:51:37 UTC 
(rev 16145)
+++ django/trunk/django/contrib/localflavor/za/forms.py 2011-05-03 11:52:04 UTC 
(rev 16146)
@@ -4,7 +4,7 @@
 
 from django.core.validators import EMPTY_VALUES
 from django.forms import ValidationError
-from django.forms.fields import Field, RegexField
+from django.forms.fields import CharField, RegexField
 from django.utils.checksums import luhn
 from django.utils.translation import gettext as _
 import re
@@ -12,7 +12,7 @@
 
 id_re = 
re.compile(r'^(?P<yy>\d\d)(?P<mm>\d\d)(?P<dd>\d\d)(?P<mid>\d{4})(?P<end>\d{3})')
 
-class ZAIDField(Field):
+class ZAIDField(CharField):
     """A form field for South African ID numbers -- the checksum is validated
     using the Luhn checksum, and uses a simlistic (read: not entirely accurate)
     check for the birthdate
@@ -55,6 +55,6 @@
         'invalid': _(u'Enter a valid South African postal code'),
     }
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, max_length=None, min_length=None, *args, **kwargs):
         super(ZAPostCodeField, self).__init__(r'^\d{4}$',
-            max_length=None, min_length=None, *args, **kwargs)
+            max_length, min_length, *args, **kwargs)

Modified: django/trunk/tests/regressiontests/forms/localflavor/utils.py
===================================================================
--- django/trunk/tests/regressiontests/forms/localflavor/utils.py       
2011-05-03 11:51:37 UTC (rev 16145)
+++ django/trunk/tests/regressiontests/forms/localflavor/utils.py       
2011-05-03 11:52:04 UTC (rev 16146)
@@ -1,5 +1,6 @@
 from django.core.exceptions import ValidationError
 from django.core.validators import EMPTY_VALUES
+from django.forms.fields import CharField
 from django.test.utils import get_warnings_state, restore_warnings_state
 from django.utils.unittest import TestCase
 
@@ -13,8 +14,8 @@
     def restore_warnings_state(self):
         restore_warnings_state(self._warnings_state)
 
-    def assertFieldOutput(self, fieldclass, valid, invalid, field_args=[],
-            field_kwargs={}, empty_value=u''):
+    def assertFieldOutput(self, fieldclass, valid, invalid, field_args=None,
+            field_kwargs=None, empty_value=u''):
         """
         Asserts that a field behaves correctly with various inputs.
 
@@ -29,6 +30,10 @@
             empty_value: the expected clean output for inputs in EMPTY_VALUES
 
         """
+        if field_args is None:
+            field_args = []
+        if field_kwargs is None:
+            field_kwargs = {}
         required = fieldclass(*field_args, **field_kwargs)
         optional = fieldclass(*field_args, **dict(field_kwargs, 
required=False))
         # test valid inputs
@@ -49,3 +54,7 @@
             self.assertRaisesRegexp(ValidationError, error_required,
                 required.clean, e)
             self.assertEqual(optional.clean(e), empty_value)
+        # test that max_length and min_length are always accepted
+        if issubclass(fieldclass, CharField):
+            field_kwargs.update({'min_length':2, 'max_length':20})
+            self.assertTrue(isinstance(fieldclass(*field_args, 
**field_kwargs), fieldclass))

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to django-updates@googlegroups.com.
To unsubscribe from this group, send email to 
django-updates+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en.

Reply via email to