diff options
| author | Jannis Leidel <jannis@leidel.info> | 2010-01-01 21:34:50 +0000 |
|---|---|---|
| committer | Jannis Leidel <jannis@leidel.info> | 2010-01-01 21:34:50 +0000 |
| commit | e0dc28df5517d44dab05c01d1e8855711dab6c0a (patch) | |
| tree | fa10c5ce2abdeb39f239d6b5b576257da9ea1f00 /tests/regressiontests/forms | |
| parent | 1295282c0aedb8dc2e6156f6df607cfcf5832842 (diff) | |
Fixed #8612 - Added Indonesian (id) localflavor. Thanks to Ronny Haryanto for the patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@12046 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'tests/regressiontests/forms')
| -rw-r--r-- | tests/regressiontests/forms/localflavor/id.py | 175 | ||||
| -rw-r--r-- | tests/regressiontests/forms/tests.py | 2 |
2 files changed, 177 insertions, 0 deletions
diff --git a/tests/regressiontests/forms/localflavor/id.py b/tests/regressiontests/forms/localflavor/id.py new file mode 100644 index 0000000000..9098b9d6c0 --- /dev/null +++ b/tests/regressiontests/forms/localflavor/id.py @@ -0,0 +1,175 @@ +# -*- coding: utf-8 -*- +# Tests for the contrib/localflavor/ ID form fields. + +tests = r""" + +# IDPhoneNumberField ######################################################## + +>>> from django.contrib.localflavor.id.forms import IDPhoneNumberField +>>> f = IDPhoneNumberField(required=False) +>>> f.clean('') +u'' +>>> f.clean('0812-3456789') +u'0812-3456789' +>>> f.clean('081234567890') +u'081234567890' +>>> f.clean('021 345 6789') +u'021 345 6789' +>>> f.clean('0213456789') +u'0213456789' +>>> f.clean('0123456789') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid phone number'] +>>> f.clean('+62-21-3456789') +u'+62-21-3456789' +>>> f.clean('+62-021-3456789') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid phone number'] +>>> f.clean('(021) 345 6789') +u'(021) 345 6789' +>>> f.clean('+62-021-3456789') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid phone number'] +>>> f.clean('+62-0812-3456789') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid phone number'] +>>> f.clean('0812345678901') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid phone number'] +>>> f.clean('foo') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid phone number'] + +# IDPostCodeField ############################################################ + +>>> from django.contrib.localflavor.id.forms import IDPostCodeField +>>> f = IDPostCodeField(required=False) +>>> f.clean('') +u'' +>>> f.clean('12340') +u'12340' +>>> f.clean('25412') +u'25412' +>>> f.clean(' 12340 ') +u'12340' +>>> f.clean('12 3 4 0') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid post code'] +>>> f.clean('12345') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid post code'] +>>> f.clean('10100') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid post code'] +>>> f.clean('123456') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid post code'] +>>> f.clean('foo') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid post code'] + +# IDNationalIdentityNumberField ######################################################### + +>>> from django.contrib.localflavor.id.forms import IDNationalIdentityNumberField +>>> f = IDNationalIdentityNumberField(required=False) +>>> f.clean('') +u'' +>>> f.clean(' 12.3456.010178 3456 ') +u'12.3456.010178.3456' +>>> f.clean('1234560101783456') +u'12.3456.010178.3456' +>>> f.clean('12.3456.010101.3456') +u'12.3456.010101.3456' +>>> f.clean('12.3456.310278.3456') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid NIK/KTP number'] +>>> f.clean('00.0000.010101.0000') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid NIK/KTP number'] +>>> f.clean('1234567890123456') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid NIK/KTP number'] +>>> f.clean('foo') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid NIK/KTP number'] + +# IDProvinceSelect ########################################################## + +>>> from django.contrib.localflavor.id.forms import IDProvinceSelect +>>> s = IDProvinceSelect() +>>> s.render('provinces', 'LPG') +u'<select name="provinces">\n<option value="BLI">Bali</option>\n<option value="BTN">Banten</option>\n<option value="BKL">Bengkulu</option>\n<option value="DIY">Yogyakarta</option>\n<option value="JKT">Jakarta</option>\n<option value="GOR">Gorontalo</option>\n<option value="JMB">Jambi</option>\n<option value="JBR">Jawa Barat</option>\n<option value="JTG">Jawa Tengah</option>\n<option value="JTM">Jawa Timur</option>\n<option value="KBR">Kalimantan Barat</option>\n<option value="KSL">Kalimantan Selatan</option>\n<option value="KTG">Kalimantan Tengah</option>\n<option value="KTM">Kalimantan Timur</option>\n<option value="BBL">Kepulauan Bangka-Belitung</option>\n<option value="KRI">Kepulauan Riau</option>\n<option value="LPG" selected="selected">Lampung</option>\n<option value="MLK">Maluku</option>\n<option value="MUT">Maluku Utara</option>\n<option value="NAD">Nanggroe Aceh Darussalam</option>\n<option value="NTB">Nusa Tenggara Barat</option>\n<option value="NTT">Nusa Tenggara Timur</option>\n<option value="PPA">Papua</option>\n<option value="PPB">Papua Barat</option>\n<option value="RIU">Riau</option>\n<option value="SLB">Sulawesi Barat</option>\n<option value="SLS">Sulawesi Selatan</option>\n<option value="SLT">Sulawesi Tengah</option>\n<option value="SLR">Sulawesi Tenggara</option>\n<option value="SLU">Sulawesi Utara</option>\n<option value="SMB">Sumatera Barat</option>\n<option value="SMS">Sumatera Selatan</option>\n<option value="SMU">Sumatera Utara</option>\n</select>' + +# IDLicensePlatePrefixelect ######################################################################## + +>>> from django.contrib.localflavor.id.forms import IDLicensePlatePrefixSelect +>>> s = IDLicensePlatePrefixSelect() +>>> s.render('codes', 'BE') +u'<select name="codes">\n<option value="A">Banten</option>\n<option value="AA">Magelang</option>\n<option value="AB">Yogyakarta</option>\n<option value="AD">Surakarta - Solo</option>\n<option value="AE">Madiun</option>\n<option value="AG">Kediri</option>\n<option value="B">Jakarta</option>\n<option value="BA">Sumatera Barat</option>\n<option value="BB">Tapanuli</option>\n<option value="BD">Bengkulu</option>\n<option value="BE" selected="selected">Lampung</option>\n<option value="BG">Sumatera Selatan</option>\n<option value="BH">Jambi</option>\n<option value="BK">Sumatera Utara</option>\n<option value="BL">Nanggroe Aceh Darussalam</option>\n<option value="BM">Riau</option>\n<option value="BN">Kepulauan Bangka Belitung</option>\n<option value="BP">Kepulauan Riau</option>\n<option value="CC">Corps Consulate</option>\n<option value="CD">Corps Diplomatic</option>\n<option value="D">Bandung</option>\n<option value="DA">Kalimantan Selatan</option>\n<option value="DB">Sulawesi Utara Daratan</option>\n<option value="DC">Sulawesi Barat</option>\n<option value="DD">Sulawesi Selatan</option>\n<option value="DE">Maluku</option>\n<option value="DG">Maluku Utara</option>\n<option value="DH">NTT - Timor</option>\n<option value="DK">Bali</option>\n<option value="DL">Sulawesi Utara Kepulauan</option>\n<option value="DM">Gorontalo</option>\n<option value="DN">Sulawesi Tengah</option>\n<option value="DR">NTB - Lombok</option>\n<option value="DS">Papua dan Papua Barat</option>\n<option value="DT">Sulawesi Tenggara</option>\n<option value="E">Cirebon</option>\n<option value="EA">NTB - Sumbawa</option>\n<option value="EB">NTT - Flores</option>\n<option value="ED">NTT - Sumba</option>\n<option value="F">Bogor</option>\n<option value="G">Pekalongan</option>\n<option value="H">Semarang</option>\n<option value="K">Pati</option>\n<option value="KB">Kalimantan Barat</option>\n<option value="KH">Kalimantan Tengah</option>\n<option value="KT">Kalimantan Timur</option>\n<option value="L">Surabaya</option>\n<option value="M">Madura</option>\n<option value="N">Malang</option>\n<option value="P">Jember</option>\n<option value="R">Banyumas</option>\n<option value="RI">Federal Government</option>\n<option value="S">Bojonegoro</option>\n<option value="T">Purwakarta</option>\n<option value="W">Sidoarjo</option>\n<option value="Z">Garut</option>\n</select>' + +# IDLicensePlateField ####################################################################### + +>>> from django.contrib.localflavor.id.forms import IDLicensePlateField +>>> f = IDLicensePlateField(required=False) +>>> f.clean('') +u'' +>>> f.clean(' b 1234 ab ') +u'B 1234 AB' +>>> f.clean('B 1234 ABC') +u'B 1234 ABC' +>>> f.clean('A 12') +u'A 12' +>>> f.clean('DK 12345 12') +u'DK 12345 12' +>>> f.clean('RI 10') +u'RI 10' +>>> f.clean('CD 12 12') +u'CD 12 12' +>>> f.clean('CD 10 12') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid vehicle license plate number'] +>>> f.clean('CD 1234 12') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid vehicle license plate number'] +>>> f.clean('RI 10 AB') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid vehicle license plate number'] +>>> f.clean('B 12345 01') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid vehicle license plate number'] +>>> f.clean('N 1234 12') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid vehicle license plate number'] +>>> f.clean('A 12 XYZ') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid vehicle license plate number'] +>>> f.clean('Q 1234 AB') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid vehicle license plate number'] +>>> f.clean('foo') +Traceback (most recent call last): + ... +ValidationError: [u'Enter a valid vehicle license plate number'] +"""
\ No newline at end of file diff --git a/tests/regressiontests/forms/tests.py b/tests/regressiontests/forms/tests.py index e246d7290c..72dcad89c9 100644 --- a/tests/regressiontests/forms/tests.py +++ b/tests/regressiontests/forms/tests.py @@ -15,6 +15,7 @@ from localflavor.es import tests as localflavor_es_tests from localflavor.fi import tests as localflavor_fi_tests from localflavor.fr import tests as localflavor_fr_tests from localflavor.generic import tests as localflavor_generic_tests +from localflavor.id import tests as localflavor_id_tests from localflavor.ie import tests as localflavor_ie_tests from localflavor.is_ import tests as localflavor_is_tests from localflavor.it import tests as localflavor_it_tests @@ -54,6 +55,7 @@ __test__ = { 'localflavor_fi_tests': localflavor_fi_tests, 'localflavor_fr_tests': localflavor_fr_tests, 'localflavor_generic_tests': localflavor_generic_tests, + 'localflavor_id_tests': localflavor_id_tests, 'localflavor_ie_tests': localflavor_ie_tests, 'localflavor_is_tests': localflavor_is_tests, 'localflavor_it_tests': localflavor_it_tests, |
