Commit 65a70b23dbba68e19858d79e5af8821b5d9cc5c3
1 parent
b71fe737
Exists in
master
and in
31 other branches
Test settings validation for db
Showing
7 changed files
with
26 additions
and
61 deletions
Show diff stats
colab/settings.py
colab/utils/conf.py
@@ -5,7 +5,6 @@ import importlib | @@ -5,7 +5,6 @@ import importlib | ||
5 | import warnings | 5 | import warnings |
6 | 6 | ||
7 | from django.core.exceptions import ImproperlyConfigured | 7 | from django.core.exceptions import ImproperlyConfigured |
8 | -from django.utils.translation import ugettext as _ | ||
9 | 8 | ||
10 | 9 | ||
11 | class InaccessibleSettings(ImproperlyConfigured): | 10 | class InaccessibleSettings(ImproperlyConfigured): |
@@ -108,6 +107,6 @@ def load_colab_apps(): | @@ -108,6 +107,6 @@ def load_colab_apps(): | ||
108 | def validate_database(database_dict, default_db, debug): | 107 | def validate_database(database_dict, default_db, debug): |
109 | db_name = database_dict.get('default', {}).get('NAME') | 108 | db_name = database_dict.get('default', {}).get('NAME') |
110 | if not debug and db_name == default_db: | 109 | if not debug and db_name == default_db: |
111 | - msg = _('Since DEBUG is set to False DATABASE must be set on ' | ||
112 | - 'colab settings') | 110 | + msg = ('Since DEBUG is set to False DATABASE must be set on ' |
111 | + 'Colab settings') | ||
113 | raise DatabaseUndefined(msg) | 112 | raise DatabaseUndefined(msg) |
@@ -0,0 +1,18 @@ | @@ -0,0 +1,18 @@ | ||
1 | + | ||
2 | +from django.test import TestCase, override_settings | ||
3 | +from django.conf import settings | ||
4 | + | ||
5 | +from ..conf import DatabaseUndefined, validate_database | ||
6 | + | ||
7 | + | ||
8 | +class TestConf(TestCase): | ||
9 | + | ||
10 | + @override_settings(DEBUG=False, DATABASES={ | ||
11 | + 'default': { | ||
12 | + 'NAME': settings.DEFAULT_DATABASE, | ||
13 | + }, | ||
14 | + }) | ||
15 | + def test_database_undefined(self): | ||
16 | + with self.assertRaises(DatabaseUndefined): | ||
17 | + validate_database(settings.DATABASES, settings.DEFAULT_DATABASE, | ||
18 | + settings.DEBUG) |
tests/colab_settings.py
1 | 1 | ||
2 | ## Set to false in production | 2 | ## Set to false in production |
3 | -DEBUG = False | 3 | +DEBUG = True |
4 | TEMPLATE_DEBUG = False | 4 | TEMPLATE_DEBUG = False |
5 | 5 | ||
6 | ## System admins | 6 | ## System admins |
@@ -25,15 +25,7 @@ ALLOWED_HOSTS = [ | @@ -25,15 +25,7 @@ ALLOWED_HOSTS = [ | ||
25 | ] | 25 | ] |
26 | 26 | ||
27 | ### Uncomment to enable social networks fields profile | 27 | ### Uncomment to enable social networks fields profile |
28 | -# SOCIAL_NETWORK_ENABLED = True | ||
29 | - | ||
30 | -## Database settings | ||
31 | -DATABASES = { | ||
32 | - 'default': { | ||
33 | - 'ENGINE': 'django.db.backends.sqlite3', | ||
34 | - 'NAME': 'colab.sqlite3', | ||
35 | - } | ||
36 | -} | 28 | +SOCIAL_NETWORK_ENABLED = True |
37 | 29 | ||
38 | ## Disable indexing | 30 | ## Disable indexing |
39 | ROBOTS_NOINDEX = True | 31 | ROBOTS_NOINDEX = True |
@@ -59,3 +51,5 @@ LOGGING = { | @@ -59,3 +51,5 @@ LOGGING = { | ||
59 | }, | 51 | }, |
60 | }, | 52 | }, |
61 | } | 53 | } |
54 | + | ||
55 | +STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesStorage' |
tests/run.py
@@ -3,7 +3,7 @@ | @@ -3,7 +3,7 @@ | ||
3 | import os | 3 | import os |
4 | import sys | 4 | import sys |
5 | 5 | ||
6 | -os.environ['DJANGO_SETTINGS_MODULE'] = 'tests.settings' | 6 | +os.environ['DJANGO_SETTINGS_MODULE'] = 'colab.settings' |
7 | os.environ['COLAB_SETTINGS'] = 'tests/colab_settings.py' | 7 | os.environ['COLAB_SETTINGS'] = 'tests/colab_settings.py' |
8 | os.environ['COLAB_PLUGINS'] = 'tests/plugins.d' | 8 | os.environ['COLAB_PLUGINS'] = 'tests/plugins.d' |
9 | os.environ['COVERAGE_PROCESS_START'] = '.coveragerc' | 9 | os.environ['COVERAGE_PROCESS_START'] = '.coveragerc' |
tests/settings.py
@@ -1,47 +0,0 @@ | @@ -1,47 +0,0 @@ | ||
1 | -from colab.settings import * # noqa | ||
2 | - | ||
3 | -SOCIAL_NETWORK_ENABLED = True | ||
4 | -STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesStorage' | ||
5 | - | ||
6 | -LOGGING = { | ||
7 | - 'version': 1, | ||
8 | - | ||
9 | - 'handlers': { | ||
10 | - 'null': { | ||
11 | - 'level': 'DEBUG', | ||
12 | - 'class': 'logging.NullHandler', | ||
13 | - }, | ||
14 | - }, | ||
15 | - | ||
16 | - 'loggers': { | ||
17 | - 'colab.mailman': { | ||
18 | - 'handlers': ['null'], | ||
19 | - 'propagate': False, | ||
20 | - }, | ||
21 | - 'haystack': { | ||
22 | - 'handlers': ['null'], | ||
23 | - 'propagate': False, | ||
24 | - }, | ||
25 | - 'pysolr': { | ||
26 | - 'handlers': ['null'], | ||
27 | - 'propagate': False, | ||
28 | - }, | ||
29 | - }, | ||
30 | -} | ||
31 | - | ||
32 | -import os | ||
33 | -HAYSTACK_CONNECTIONS = { | ||
34 | - 'default': { | ||
35 | - 'ENGINE': 'haystack.backends.whoosh_backend.WhooshEngine', | ||
36 | - 'PATH': os.path.join(os.path.dirname(__file__), 'whoosh_index'), | ||
37 | - }, | ||
38 | -} | ||
39 | - | ||
40 | -SECRET_KEY = 'not-a-secret' | ||
41 | - | ||
42 | -DATABASES = { | ||
43 | - 'default': { | ||
44 | - 'ENGINE': 'django.db.backends.sqlite3', | ||
45 | - 'NAME': 'colab.sqlite', | ||
46 | - } | ||
47 | -} |