PageRenderTime 31ms CodeModel.GetById 22ms RepoModel.GetById 1ms app.codeStats 0ms

/tests/regressiontests/forms/localflavor/it.py

https://code.google.com/p/mango-py/
Python | 70 lines | 67 code | 3 blank | 0 comment | 0 complexity | e68d7bc9dcb6496996881a73d5afe787 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. from django.contrib.localflavor.it.forms import (ITZipCodeField, ITRegionSelect,
  2. ITSocialSecurityNumberField, ITVatNumberField)
  3. from utils import LocalFlavorTestCase
  4. class ITLocalFlavorTests(LocalFlavorTestCase):
  5. def test_ITRegionSelect(self):
  6. f = ITRegionSelect()
  7. out = u'''<select name="regions">
  8. <option value="ABR">Abruzzo</option>
  9. <option value="BAS">Basilicata</option>
  10. <option value="CAL">Calabria</option>
  11. <option value="CAM">Campania</option>
  12. <option value="EMR">Emilia-Romagna</option>
  13. <option value="FVG">Friuli-Venezia Giulia</option>
  14. <option value="LAZ">Lazio</option>
  15. <option value="LIG">Liguria</option>
  16. <option value="LOM">Lombardia</option>
  17. <option value="MAR">Marche</option>
  18. <option value="MOL">Molise</option>
  19. <option value="PMN" selected="selected">Piemonte</option>
  20. <option value="PUG">Puglia</option>
  21. <option value="SAR">Sardegna</option>
  22. <option value="SIC">Sicilia</option>
  23. <option value="TOS">Toscana</option>
  24. <option value="TAA">Trentino-Alto Adige</option>
  25. <option value="UMB">Umbria</option>
  26. <option value="VAO">Valle d\u2019Aosta</option>
  27. <option value="VEN">Veneto</option>
  28. </select>'''
  29. self.assertEqual(f.render('regions', 'PMN'), out)
  30. def test_ITZipCodeField(self):
  31. error_invalid = [u'Enter a valid zip code.']
  32. valid = {
  33. '00100': '00100',
  34. }
  35. invalid = {
  36. ' 00100': error_invalid,
  37. }
  38. self.assertFieldOutput(ITZipCodeField, valid, invalid)
  39. def test_ITSocialSecurityNumberField(self):
  40. error_invalid = [u'Enter a valid Social Security number.']
  41. valid = {
  42. 'LVSGDU99T71H501L': 'LVSGDU99T71H501L',
  43. 'LBRRME11A01L736W': 'LBRRME11A01L736W',
  44. 'lbrrme11a01l736w': 'LBRRME11A01L736W',
  45. 'LBR RME 11A01 L736W': 'LBRRME11A01L736W',
  46. }
  47. invalid = {
  48. 'LBRRME11A01L736A': error_invalid,
  49. '%BRRME11A01L736W': error_invalid,
  50. }
  51. self.assertFieldOutput(ITSocialSecurityNumberField, valid, invalid)
  52. def test_ITVatNumberField(self):
  53. error_invalid = [u'Enter a valid VAT number.']
  54. valid = {
  55. '07973780013': '07973780013',
  56. '7973780013': '07973780013',
  57. 7973780013: '07973780013',
  58. }
  59. invalid = {
  60. '07973780014': error_invalid,
  61. 'A7973780013': error_invalid,
  62. }
  63. self.assertFieldOutput(ITVatNumberField, valid, invalid)