test_forms.py 943 B

123456789101112131415161718192021222324252627
  1. from django.test import TestCase
  2. from misago.core import forms
  3. class YesNoForm(forms.Form):
  4. test_field = forms.YesNoSwitch(label='Hello!')
  5. class YesNoSwitchTests(TestCase):
  6. def test_valid_inputs(self):
  7. """YesNoSwitch returns valid values for valid input"""
  8. for true in ('1', 'True', 'true', 1, True):
  9. form = YesNoForm({'test_field': true})
  10. form.full_clean()
  11. self.assertEqual(form.cleaned_data['test_field'], 1)
  12. for false in ('0', 'False', 'false', 'egebege', False, 0):
  13. form = YesNoForm({'test_field': false})
  14. form.full_clean()
  15. self.assertEqual(form.cleaned_data['test_field'], 0)
  16. def test_dontstripme_input_is_ignored(self):
  17. """YesNoSwitch returns valid values for invalid input"""
  18. form = YesNoForm({'test_field': u'221'})
  19. form.full_clean()
  20. self.assertFalse(form.cleaned_data.get('test_field'))