test_models.py 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. from django.test import TestCase
  2. from misago.conf.models import Setting
  3. class SettingModelTests(TestCase):
  4. def test_real_value(self):
  5. """setting returns real value correctyly"""
  6. setting_model = Setting(
  7. python_type='list',
  8. dry_value='',
  9. )
  10. self.assertEqual(setting_model.value, [])
  11. setting_model = Setting(
  12. python_type='list',
  13. dry_value='Arthur,Lancelot,Patsy',
  14. )
  15. self.assertEqual(setting_model.value, ['Arthur', 'Lancelot', 'Patsy'])
  16. setting_model = Setting(
  17. python_type='list',
  18. default_value='Arthur,Patsy',
  19. )
  20. self.assertEqual(setting_model.value, ['Arthur', 'Patsy'])
  21. setting_model = Setting(
  22. python_type='list',
  23. dry_value='Arthur,Robin,Patsy',
  24. default_value='Arthur,Patsy',
  25. )
  26. self.assertEqual(setting_model.value, ['Arthur', 'Robin', 'Patsy'])
  27. def test_set_value(self):
  28. """setting sets value correctyly"""
  29. setting_model = Setting(
  30. python_type='int',
  31. dry_value='42',
  32. default_value='9001',
  33. )
  34. setting_model.value = 3000
  35. self.assertEqual(setting_model.value, 3000)
  36. self.assertEqual(setting_model.dry_value, '3000')
  37. setting_model.value = None
  38. self.assertEqual(setting_model.value, 9001)
  39. self.assertEqual(setting_model.dry_value, None)
  40. def test_field_extra(self):
  41. """field extra is set correctly"""
  42. setting_model = Setting()
  43. test_extra = {}
  44. setting_model.field_extra = test_extra
  45. self.assertEqual(setting_model.field_extra, test_extra)
  46. test_extra = {'min_lenght': 5, 'max_length': 12}
  47. setting_model.field_extra = test_extra
  48. self.assertEqual(setting_model.field_extra, test_extra)