-
-
Notifications
You must be signed in to change notification settings - Fork 31.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[1.2.X] Converted Chilean localflavor doctests to unittests. We have …
…always been at war with doctests. Thanks to Idan Gazit. Backport of [14936]. git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@14961 bcc190cf-cafb-0310-a4f2-bffc1f526a37
- Loading branch information
Showing
4 changed files
with
66 additions
and
81 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,74 +1,56 @@ | ||
|
||
# Tests for the contrib/localflavor/ CL form fields. | ||
|
||
tests = r""" | ||
## CLRutField ############################################################# | ||
CLRutField is a Field that checks the validity of the Chilean | ||
personal identification number (RUT). It has two modes relaxed (default) and | ||
strict. | ||
>>> from django.contrib.localflavor.cl.forms import CLRutField | ||
>>> rut = CLRutField() | ||
>>> rut.clean('11-6') | ||
u'11-6' | ||
>>> rut.clean('116') | ||
u'11-6' | ||
# valid format, bad verifier. | ||
>>> rut.clean('11.111.111-0') | ||
Traceback (most recent call last): | ||
... | ||
ValidationError: [u'The Chilean RUT is not valid.'] | ||
>>> rut.clean('111') | ||
Traceback (most recent call last): | ||
... | ||
ValidationError: [u'The Chilean RUT is not valid.'] | ||
>>> rut.clean('767484100') | ||
u'76.748.410-0' | ||
>>> rut.clean('78.412.790-7') | ||
u'78.412.790-7' | ||
>>> rut.clean('8.334.6043') | ||
u'8.334.604-3' | ||
>>> rut.clean('76793310-K') | ||
u'76.793.310-K' | ||
Strict RUT usage (does not allow imposible values) | ||
>>> rut = CLRutField(strict=True) | ||
>>> rut.clean('11-6') | ||
Traceback (most recent call last): | ||
... | ||
ValidationError: [u'Enter a valid Chilean RUT. The format is XX.XXX.XXX-X.'] | ||
# valid format, bad verifier. | ||
>>> rut.clean('11.111.111-0') | ||
Traceback (most recent call last): | ||
... | ||
ValidationError: [u'The Chilean RUT is not valid.'] | ||
# Correct input, invalid format. | ||
>>> rut.clean('767484100') | ||
Traceback (most recent call last): | ||
... | ||
ValidationError: [u'Enter a valid Chilean RUT. The format is XX.XXX.XXX-X.'] | ||
>>> rut.clean('78.412.790-7') | ||
u'78.412.790-7' | ||
>>> rut.clean('8.334.6043') | ||
Traceback (most recent call last): | ||
... | ||
ValidationError: [u'Enter a valid Chilean RUT. The format is XX.XXX.XXX-X.'] | ||
>>> rut.clean('76793310-K') | ||
Traceback (most recent call last): | ||
... | ||
ValidationError: [u'Enter a valid Chilean RUT. The format is XX.XXX.XXX-X.'] | ||
## CLRegionSelect ######################################################### | ||
>>> from django.contrib.localflavor.cl.forms import CLRegionSelect | ||
>>> f = CLRegionSelect() | ||
>>> f.render('foo', 'bar') | ||
u'<select name="foo">\n<option value="RM">Regi\xf3n Metropolitana de Santiago</option>\n<option value="I">Regi\xf3n de Tarapac\xe1</option>\n<option value="II">Regi\xf3n de Antofagasta</option>\n<option value="III">Regi\xf3n de Atacama</option>\n<option value="IV">Regi\xf3n de Coquimbo</option>\n<option value="V">Regi\xf3n de Valpara\xedso</option>\n<option value="VI">Regi\xf3n del Libertador Bernardo O'Higgins</option>\n<option value="VII">Regi\xf3n del Maule</option>\n<option value="VIII">Regi\xf3n del B\xedo B\xedo</option>\n<option value="IX">Regi\xf3n de la Araucan\xeda</option>\n<option value="X">Regi\xf3n de los Lagos</option>\n<option value="XI">Regi\xf3n de Ays\xe9n del General Carlos Ib\xe1\xf1ez del Campo</option>\n<option value="XII">Regi\xf3n de Magallanes y la Ant\xe1rtica Chilena</option>\n<option value="XIV">Regi\xf3n de Los R\xedos</option>\n<option value="XV">Regi\xf3n de Arica-Parinacota</option>\n</select>' | ||
""" | ||
from django.contrib.localflavor.cl.forms import CLRutField, CLRegionSelect | ||
from django.core.exceptions import ValidationError | ||
|
||
from utils import LocalFlavorTestCase | ||
|
||
|
||
class CLLocalFlavorTests(LocalFlavorTestCase): | ||
def test_CLRegionSelect(self): | ||
f = CLRegionSelect() | ||
out = u'''<select name="foo"> | ||
<option value="RM">Regi\xf3n Metropolitana de Santiago</option> | ||
<option value="I">Regi\xf3n de Tarapac\xe1</option> | ||
<option value="II">Regi\xf3n de Antofagasta</option> | ||
<option value="III">Regi\xf3n de Atacama</option> | ||
<option value="IV">Regi\xf3n de Coquimbo</option> | ||
<option value="V">Regi\xf3n de Valpara\xedso</option> | ||
<option value="VI">Regi\xf3n del Libertador Bernardo O'Higgins</option> | ||
<option value="VII">Regi\xf3n del Maule</option> | ||
<option value="VIII">Regi\xf3n del B\xedo B\xedo</option> | ||
<option value="IX">Regi\xf3n de la Araucan\xeda</option> | ||
<option value="X">Regi\xf3n de los Lagos</option> | ||
<option value="XI">Regi\xf3n de Ays\xe9n del General Carlos Ib\xe1\xf1ez del Campo</option> | ||
<option value="XII">Regi\xf3n de Magallanes y la Ant\xe1rtica Chilena</option> | ||
<option value="XIV">Regi\xf3n de Los R\xedos</option> | ||
<option value="XV">Regi\xf3n de Arica-Parinacota</option> | ||
</select>''' | ||
self.assertEqual(f.render('foo', 'bar'), out) | ||
|
||
def test_CLRutField(self): | ||
error_invalid = [u'The Chilean RUT is not valid.'] | ||
error_format = [u'Enter a valid Chilean RUT. The format is XX.XXX.XXX-X.'] | ||
valid = { | ||
'11-6': '11-6', | ||
'116': '11-6', | ||
'767484100': '76.748.410-0', | ||
'78.412.790-7': '78.412.790-7', | ||
'8.334.6043': '8.334.604-3', | ||
'76793310-K': '76.793.310-K', | ||
} | ||
invalid = { | ||
'11.111.111-0': error_invalid, | ||
'111': error_invalid, | ||
} | ||
self.assertFieldOutput(CLRutField, valid, invalid) | ||
|
||
# deal with special "Strict Mode". | ||
invalid = { | ||
'11-6': error_format, | ||
'767484100': error_format, | ||
'8.334.6043': error_format, | ||
'76793310-K': error_format, | ||
'11.111.111-0': error_invalid | ||
} | ||
self.assertFieldOutput(CLRutField, | ||
{}, invalid, field_kwargs={"strict": True} | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -19,5 +19,6 @@ | |
BRLocalFlavorTests, | ||
CALocalFlavorTests, | ||
CHLocalFlavorTests, | ||
CLLocalFlavorTests, | ||
DELocalFlavorTests, | ||
) |