Author: Alex
Date: 2010-12-18 14:33:13 -0600 (Sat, 18 Dec 2010)
New Revision: 14953

Modified:
   django/trunk/tests/regressiontests/forms/localflavor/uk.py
   django/trunk/tests/regressiontests/forms/localflavortests.py
   django/trunk/tests/regressiontests/forms/tests/__init__.py
Log:
Converted United Kingdom localflavor doctests into unittests.  We have always 
been at war with doctests.  Thanks to Idan Gazit.

Modified: django/trunk/tests/regressiontests/forms/localflavor/uk.py
===================================================================
--- django/trunk/tests/regressiontests/forms/localflavor/uk.py  2010-12-18 
20:33:04 UTC (rev 14952)
+++ django/trunk/tests/regressiontests/forms/localflavor/uk.py  2010-12-18 
20:33:13 UTC (rev 14953)
@@ -1,66 +1,30 @@
-# -*- coding: utf-8 -*-
-# Tests for the contrib/localflavor/ UK form fields.
+from django.contrib.localflavor.uk.forms import UKPostcodeField
 
-tests = r"""
-# UKPostcodeField #############################################################
+from utils import LocalFlavorTestCase
 
-UKPostcodeField validates that the data is a valid UK postcode.
->>> from django.contrib.localflavor.uk.forms import UKPostcodeField
->>> f = UKPostcodeField()
->>> f.clean('BT32 4PX')
-u'BT32 4PX'
->>> f.clean('GIR 0AA')
-u'GIR 0AA'
->>> f.clean('BT324PX')
-u'BT32 4PX'
->>> f.clean('1NV 4L1D')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a valid postcode.']
->>> f.clean('1NV4L1D')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a valid postcode.']
->>> f.clean(None)
-Traceback (most recent call last):
-...
-ValidationError: [u'This field is required.']
->>> f.clean('')
-Traceback (most recent call last):
-...
-ValidationError: [u'This field is required.']
->>> f.clean(' so11aa ')
-u'SO1 1AA'
->>> f.clean(' so1  1aa ')
-u'SO1 1AA'
->>> f.clean('G2 3wt')
-u'G2 3WT'
->>> f.clean('EC1A 1BB')
-u'EC1A 1BB'
->>> f.clean('Ec1a1BB')
-u'EC1A 1BB'
->>> f.clean(' b0gUS')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a valid postcode.']
->>> f = UKPostcodeField(required=False)
->>> f.clean('BT32 4PX')
-u'BT32 4PX'
->>> f.clean('GIR 0AA')
-u'GIR 0AA'
->>> f.clean('1NV 4L1D')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a valid postcode.']
->>> f.clean('BT324PX')
-u'BT32 4PX'
->>> f.clean(None)
-u''
->>> f.clean('')
-u''
->>> f = UKPostcodeField(error_messages={'invalid': 'Enter a bloody postcode!'})
->>> f.clean('1NV 4L1D')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a bloody postcode!']
-"""
+
+class UKLocalFlavorTests(LocalFlavorTestCase):
+    def test_UKPostcodeField(self):
+        error_invalid = [u'Enter a valid postcode.']
+        valid = {
+            'BT32 4PX': 'BT32 4PX',
+            'GIR 0AA': 'GIR 0AA',
+            'BT324PX': 'BT32 4PX',
+            ' so11aa ': 'SO1 1AA',
+            ' so1  1aa ': 'SO1 1AA',
+            'G2 3wt': 'G2 3WT',
+            'EC1A 1BB': 'EC1A 1BB',
+            'Ec1a1BB': 'EC1A 1BB',
+        }
+        invalid = {
+            '1NV 4L1D': error_invalid,
+            '1NV4L1D': error_invalid,
+            ' b0gUS': error_invalid,
+        }
+        self.assertFieldOutput(UKPostcodeField, valid, invalid)
+        valid = {}
+        invalid = {
+            '1NV 4L1D': [u'Enter a bloody postcode!'],
+        }
+        kwargs = {'error_messages': {'invalid': 'Enter a bloody postcode!'}}
+        self.assertFieldOutput(UKPostcodeField, valid, invalid, 
field_kwargs=kwargs)

Modified: django/trunk/tests/regressiontests/forms/localflavortests.py
===================================================================
--- django/trunk/tests/regressiontests/forms/localflavortests.py        
2010-12-18 20:33:04 UTC (rev 14952)
+++ django/trunk/tests/regressiontests/forms/localflavortests.py        
2010-12-18 20:33:13 UTC (rev 14953)
@@ -1,7 +1,6 @@
 # -*- coding: utf-8 -*-
 from localflavor.cz import tests as localflavor_cz_tests
 from localflavor.se import tests as localflavor_se_tests
-from localflavor.uk import tests as localflavor_uk_tests
 from localflavor.us import tests as localflavor_us_tests
 from localflavor.uy import tests as localflavor_uy_tests
 from localflavor.za import tests as localflavor_za_tests
@@ -32,12 +31,12 @@
 from localflavor.ro import ROLocalFlavorTests
 from localflavor.sk import SKLocalFlavorTests
 from localflavor.tr import TRLocalFlavorTests
+from localflavor.uk import UKLocalFlavorTests
 
 
 __test__ = {
     'localflavor_cz_tests': localflavor_cz_tests,
     'localflavor_se_tests': localflavor_se_tests,
-    'localflavor_uk_tests': localflavor_uk_tests,
     'localflavor_us_tests': localflavor_us_tests,
     'localflavor_uy_tests': localflavor_uy_tests,
     'localflavor_za_tests': localflavor_za_tests,

Modified: django/trunk/tests/regressiontests/forms/tests/__init__.py
===================================================================
--- django/trunk/tests/regressiontests/forms/tests/__init__.py  2010-12-18 
20:33:04 UTC (rev 14952)
+++ django/trunk/tests/regressiontests/forms/tests/__init__.py  2010-12-18 
20:33:13 UTC (rev 14953)
@@ -39,4 +39,5 @@
     ROLocalFlavorTests,
     SKLocalFlavorTests,
     TRLocalFlavorTests,
+    UKLocalFlavorTests,
 )

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

Reply via email to