summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2010-12-18 22:14:20 +0000
committerAlex Gaynor <alex.gaynor@gmail.com>2010-12-18 22:14:20 +0000
commit5c3ede2171ba6b7f2fb30956cb1ecb84064f143f (patch)
tree95508be3dff345f4343ad194f98d63610287c295
parentf2a8534d7b2ddc70c9a3855c0c54e5ec4e88df05 (diff)
[1.2.X] Converted Japanese localflavor doctests to unittests. We have always been at war with doctests. Thanks to Idan Gazit. Backport of [14946].
git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@14970 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--tests/regressiontests/forms/localflavor/jp.py79
-rw-r--r--tests/regressiontests/forms/localflavortests.py3
-rw-r--r--tests/regressiontests/forms/tests/__init__.py1
3 files changed, 25 insertions, 58 deletions
diff --git a/tests/regressiontests/forms/localflavor/jp.py b/tests/regressiontests/forms/localflavor/jp.py
index 7b5b82667c..1f8362a092 100644
--- a/tests/regressiontests/forms/localflavor/jp.py
+++ b/tests/regressiontests/forms/localflavor/jp.py
@@ -1,60 +1,13 @@
-# -*- coding: utf-8 -*-
-# Tests for the contrib/localflavor/ JP form fields.
+from django.contrib.localflavor.jp.forms import (JPPostalCodeField,
+ JPPrefectureSelect)
-tests = r"""
-# JPPostalCodeField ###############################################################
+from utils import LocalFlavorTestCase
-A form field that validates its input is a Japanese postcode.
-Accepts 7 digits(with/out hyphen).
->>> from django.contrib.localflavor.jp.forms import JPPostalCodeField
->>> f = JPPostalCodeField()
->>> f.clean('251-0032')
-u'2510032'
->>> f.clean('2510032')
-u'2510032'
->>> f.clean('2510-032')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
->>> f.clean('251a0032')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
->>> f.clean('a51-0032')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
->>> f.clean('25100321')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
->>> f.clean('')
-Traceback (most recent call last):
-...
-ValidationError: [u'This field is required.']
-
->>> f = JPPostalCodeField(required=False)
->>> f.clean('251-0032')
-u'2510032'
->>> f.clean('2510032')
-u'2510032'
->>> f.clean('2510-032')
-Traceback (most recent call last):
-...
-ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
->>> f.clean('')
-u''
->>> f.clean(None)
-u''
-
-# JPPrefectureSelect ###############################################################
-
-A Select widget that uses a list of Japanese prefectures as its choices.
->>> from django.contrib.localflavor.jp.forms import JPPrefectureSelect
->>> w = JPPrefectureSelect()
->>> print w.render('prefecture', 'kanagawa')
-<select name="prefecture">
+class JPLocalFlavorTests(LocalFlavorTestCase):
+ def test_JPPrefectureSelect(self):
+ f = JPPrefectureSelect()
+ out = u'''<select name="prefecture">
<option value="hokkaido">Hokkaido</option>
<option value="aomori">Aomori</option>
<option value="iwate">Iwate</option>
@@ -102,5 +55,19 @@ A Select widget that uses a list of Japanese prefectures as its choices.
<option value="miyazaki">Miyazaki</option>
<option value="kagoshima">Kagoshima</option>
<option value="okinawa">Okinawa</option>
-</select>
-"""
+</select>'''
+ self.assertEqual(f.render('prefecture', 'kanagawa'), out)
+
+ def test_JPPostalCodeField(self):
+ error_format = [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
+ valid = {
+ '251-0032': '2510032',
+ '2510032': '2510032',
+ }
+ invalid = {
+ '2510-032': error_format,
+ '251a0032': error_format,
+ 'a51-0032': error_format,
+ '25100321': error_format,
+ }
+ self.assertFieldOutput(JPPostalCodeField, valid, invalid)
diff --git a/tests/regressiontests/forms/localflavortests.py b/tests/regressiontests/forms/localflavortests.py
index 393f3d88c7..19b9700e7a 100644
--- a/tests/regressiontests/forms/localflavortests.py
+++ b/tests/regressiontests/forms/localflavortests.py
@@ -1,6 +1,5 @@
# -*- coding: utf-8 -*-
from localflavor.cz import tests as localflavor_cz_tests
-from localflavor.jp import tests as localflavor_jp_tests
from localflavor.kw import tests as localflavor_kw_tests
from localflavor.nl import tests as localflavor_nl_tests
from localflavor.pl import tests as localflavor_pl_tests
@@ -30,11 +29,11 @@ from localflavor.id import IDLocalFlavorTests
from localflavor.ie import IELocalFlavorTests
from localflavor.is_ import ISLocalFlavorTests
from localflavor.it import ITLocalFlavorTests
+from localflavor.jp import JPLocalFlavorTests
__test__ = {
'localflavor_cz_tests': localflavor_cz_tests,
- 'localflavor_jp_tests': localflavor_jp_tests,
'localflavor_kw_tests': localflavor_kw_tests,
'localflavor_nl_tests': localflavor_nl_tests,
'localflavor_pl_tests': localflavor_pl_tests,
diff --git a/tests/regressiontests/forms/tests/__init__.py b/tests/regressiontests/forms/tests/__init__.py
index 29c46ba6e8..26af6b51fc 100644
--- a/tests/regressiontests/forms/tests/__init__.py
+++ b/tests/regressiontests/forms/tests/__init__.py
@@ -29,4 +29,5 @@ from regressiontests.forms.localflavortests import (
IELocalFlavorTests,
ISLocalFlavorTests,
ITLocalFlavorTests,
+ JPLocalFlavorTests,
)