|
@@ -1,132 +0,0 @@
|
|
|
-from django.apps import apps
|
|
|
-from django.conf import settings as dj_settings
|
|
|
-from django.test import TestCase, override_settings
|
|
|
-
|
|
|
-from misago.conf import defaults
|
|
|
-from misago.conf.dbsettings import db_settings
|
|
|
-from misago.conf.gateway import settings as gateway
|
|
|
-from misago.conf.migrationutils import migrate_settings_group
|
|
|
-from misago.core import threadstore
|
|
|
-from misago.core.cache import cache
|
|
|
-
|
|
|
-
|
|
|
-class DBSettingsTests(TestCase):
|
|
|
- def test_get_existing_setting(self):
|
|
|
- """forum_name is defined"""
|
|
|
- self.assertEqual(db_settings.forum_name, 'Misago')
|
|
|
-
|
|
|
- with self.assertRaises(AttributeError):
|
|
|
- db_settings.MISAGO_THREADS_PER_PAGE
|
|
|
-
|
|
|
-
|
|
|
-class GatewaySettingsTests(TestCase):
|
|
|
- def tearDown(self):
|
|
|
- cache.clear()
|
|
|
- threadstore.clear()
|
|
|
-
|
|
|
- def test_get_existing_setting(self):
|
|
|
- """forum_name is defined"""
|
|
|
- self.assertEqual(gateway.forum_name, db_settings.forum_name)
|
|
|
- self.assertEqual(gateway.INSTALLED_APPS, dj_settings.INSTALLED_APPS)
|
|
|
- self.assertEqual(gateway.MISAGO_THREADS_PER_PAGE, defaults.MISAGO_THREADS_PER_PAGE)
|
|
|
-
|
|
|
- with self.assertRaises(AttributeError):
|
|
|
- gateway.LoremIpsum
|
|
|
-
|
|
|
- @override_settings(MISAGO_THREADS_PER_PAGE=1234)
|
|
|
- def test_override_file_setting(self):
|
|
|
- """file settings are overrideable"""
|
|
|
- self.assertEqual(gateway.MISAGO_THREADS_PER_PAGE, 1234)
|
|
|
-
|
|
|
- def test_setting_public(self):
|
|
|
- """get_public_settings returns public settings"""
|
|
|
- test_group = {
|
|
|
- 'key': 'test_group',
|
|
|
- 'name': "Test settings",
|
|
|
- 'description': "Those are test settings.",
|
|
|
- 'settings': [
|
|
|
- {
|
|
|
- 'setting': 'fish_name',
|
|
|
- 'name': "Fish's name",
|
|
|
- 'value': "Public Eric",
|
|
|
- 'field_extra': {
|
|
|
- 'min_length': 2,
|
|
|
- 'max_length': 255,
|
|
|
- },
|
|
|
- 'is_public': True,
|
|
|
- },
|
|
|
- {
|
|
|
- 'setting': 'private_fish_name',
|
|
|
- 'name': "Fish's name",
|
|
|
- 'value': "Private Eric",
|
|
|
- 'field_extra': {
|
|
|
- 'min_length': 2,
|
|
|
- 'max_length': 255,
|
|
|
- },
|
|
|
- 'is_public': False,
|
|
|
- },
|
|
|
- ],
|
|
|
- }
|
|
|
-
|
|
|
- migrate_settings_group(apps, test_group)
|
|
|
-
|
|
|
- self.assertEqual(gateway.fish_name, 'Public Eric')
|
|
|
- self.assertEqual(gateway.private_fish_name, 'Private Eric')
|
|
|
-
|
|
|
- public_settings = gateway.get_public_settings().keys()
|
|
|
- self.assertIn('fish_name', public_settings)
|
|
|
- self.assertNotIn('private_fish_name', public_settings)
|
|
|
-
|
|
|
- def test_setting_lazy(self):
|
|
|
- """lazy settings work"""
|
|
|
- test_group = {
|
|
|
- 'key': 'test_group',
|
|
|
- 'name': "Test settings",
|
|
|
- 'description': "Those are test settings.",
|
|
|
- 'settings': [
|
|
|
- {
|
|
|
- 'setting': 'fish_name',
|
|
|
- 'name': "Fish's name",
|
|
|
- 'value': "Greedy Eric",
|
|
|
- 'field_extra': {
|
|
|
- 'min_length': 2,
|
|
|
- 'max_length': 255,
|
|
|
- },
|
|
|
- 'is_lazy': False,
|
|
|
- },
|
|
|
- {
|
|
|
- 'setting': 'lazy_fish_name',
|
|
|
- 'name': "Fish's name",
|
|
|
- 'value': "Lazy Eric",
|
|
|
- 'field_extra': {
|
|
|
- 'min_length': 2,
|
|
|
- 'max_length': 255,
|
|
|
- },
|
|
|
- 'is_lazy': True,
|
|
|
- },
|
|
|
- {
|
|
|
- 'setting': 'lazy_empty_setting',
|
|
|
- 'name': "Fish's name",
|
|
|
- 'field_extra': {
|
|
|
- 'min_length': 2,
|
|
|
- 'max_length': 255,
|
|
|
- },
|
|
|
- 'is_lazy': True,
|
|
|
- },
|
|
|
- ],
|
|
|
- }
|
|
|
-
|
|
|
- migrate_settings_group(apps, test_group)
|
|
|
-
|
|
|
- self.assertTrue(gateway.lazy_fish_name)
|
|
|
- self.assertTrue(db_settings.lazy_fish_name)
|
|
|
-
|
|
|
- self.assertTrue(gateway.lazy_fish_name)
|
|
|
- self.assertEqual(gateway.get_lazy_setting('lazy_fish_name'), 'Lazy Eric')
|
|
|
- self.assertTrue(db_settings.lazy_fish_name)
|
|
|
- self.assertEqual(db_settings.get_lazy_setting('lazy_fish_name'), 'Lazy Eric')
|
|
|
-
|
|
|
- self.assertTrue(gateway.lazy_empty_setting is None)
|
|
|
- self.assertTrue(db_settings.lazy_empty_setting is None)
|
|
|
- with self.assertRaises(ValueError):
|
|
|
- db_settings.get_lazy_setting('fish_name')
|