/tests/regressiontests/forms/localflavor/uy.py

https://code.google.com/p/mango-py/ · Python · 52 lines · 47 code · 5 blank · 0 comment · 0 complexity · 5aed3941e36bf9227159fc907ee675a9 MD5 · raw file

  1. from django.contrib.localflavor.uy.forms import UYDepartamentSelect, UYCIField
  2. from django.contrib.localflavor.uy.util import get_validation_digit
  3. from utils import LocalFlavorTestCase
  4. class UYLocalFlavorTests(LocalFlavorTestCase):
  5. def test_UYDepartmentSelect(self):
  6. f = UYDepartamentSelect()
  7. out = u'''<select name="departamentos">
  8. <option value="G">Artigas</option>
  9. <option value="A">Canelones</option>
  10. <option value="E">Cerro Largo</option>
  11. <option value="L">Colonia</option>
  12. <option value="Q">Durazno</option>
  13. <option value="N">Flores</option>
  14. <option value="O">Florida</option>
  15. <option value="P">Lavalleja</option>
  16. <option value="B">Maldonado</option>
  17. <option value="S" selected="selected">Montevideo</option>
  18. <option value="I">Paysand\xfa</option>
  19. <option value="J">R\xedo Negro</option>
  20. <option value="F">Rivera</option>
  21. <option value="C">Rocha</option>
  22. <option value="H">Salto</option>
  23. <option value="M">San Jos\xe9</option>
  24. <option value="K">Soriano</option>
  25. <option value="R">Tacuaremb\xf3</option>
  26. <option value="D">Treinta y Tres</option>
  27. </select>'''
  28. self.assertEqual(f.render('departamentos', 'S'), out)
  29. def test_UYCIField(self):
  30. error_format = [u'Enter a valid CI number in X.XXX.XXX-X,XXXXXXX-X or XXXXXXXX format.']
  31. error_invalid = [u'Enter a valid CI number.']
  32. valid = {
  33. '4098053': '4098053',
  34. '409805-3': '409805-3',
  35. '409.805-3': '409.805-3',
  36. '10054112': '10054112',
  37. '1005411-2': '1005411-2',
  38. '1.005.411-2': '1.005.411-2',
  39. }
  40. invalid = {
  41. 'foo': [u'Enter a valid CI number in X.XXX.XXX-X,XXXXXXX-X or XXXXXXXX format.'],
  42. '409805-2': [u'Enter a valid CI number.'],
  43. '1.005.411-5': [u'Enter a valid CI number.'],
  44. }
  45. self.assertFieldOutput(UYCIField, valid, invalid)
  46. self.assertEqual(get_validation_digit(409805), 3)
  47. self.assertEqual(get_validation_digit(1005411), 2)