test_models.py 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  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', dry_value='Arthur,Robin,Patsy', default_value='Arthur,Patsy'
  23. )
  24. self.assertEqual(setting_model.value, ['Arthur', 'Robin', 'Patsy'])
  25. def test_set_value(self):
  26. """setting sets value correctyly"""
  27. setting_model = Setting(
  28. python_type='int',
  29. dry_value='42',
  30. default_value='9001',
  31. )
  32. setting_model.value = 3000
  33. self.assertEqual(setting_model.value, 3000)
  34. self.assertEqual(setting_model.dry_value, '3000')
  35. setting_model.value = None
  36. self.assertEqual(setting_model.value, 9001)
  37. self.assertEqual(setting_model.dry_value, None)
  38. def test_field_extra(self):
  39. """field extra is set correctly"""
  40. setting_model = Setting()
  41. test_extra = {}
  42. setting_model.field_extra = test_extra
  43. self.assertEqual(setting_model.field_extra, test_extra)
  44. test_extra = {'min_lenght': 5, 'max_length': 12}
  45. setting_model.field_extra = test_extra
  46. self.assertEqual(setting_model.field_extra, test_extra)