93 lines
2.5 KiB
Python
93 lines
2.5 KiB
Python
# -*- coding: utf-8 -*-
|
|
|
|
import django
|
|
from django.conf import settings
|
|
from django.core.exceptions import ImproperlyConfigured
|
|
from django.test import override_settings, TestCase
|
|
|
|
from admin_interface.settings import check_installed_apps
|
|
|
|
|
|
class AdminInterfaceSettingsTestCase(TestCase):
|
|
|
|
DJANGO_APPS = [
|
|
'django.contrib.admin',
|
|
'django.contrib.auth',
|
|
'django.contrib.contenttypes',
|
|
'django.contrib.messages',
|
|
'django.contrib.sessions',
|
|
]
|
|
|
|
def setUp(self):
|
|
pass
|
|
|
|
def tearDown(self):
|
|
pass
|
|
|
|
def __test_installed_apps(self):
|
|
dj_version = django.VERSION
|
|
installed_apps = settings.INSTALLED_APPS
|
|
|
|
if 'colorfield' not in installed_apps:
|
|
self.assertRaises(ImproperlyConfigured, check_installed_apps)
|
|
|
|
elif 'flat' not in installed_apps and dj_version < (1, 9):
|
|
self.assertRaises(ImproperlyConfigured, check_installed_apps)
|
|
|
|
elif 'flat' in installed_apps and dj_version >= (1, 9):
|
|
self.assertRaises(ImproperlyConfigured, check_installed_apps)
|
|
|
|
elif 'flat_responsive' not in installed_apps and dj_version < (2, 0):
|
|
self.assertRaises(ImproperlyConfigured, check_installed_apps)
|
|
|
|
elif 'flat_responsive' in installed_apps and dj_version >= (2, 0):
|
|
self.assertRaises(ImproperlyConfigured, check_installed_apps)
|
|
|
|
else:
|
|
check_installed_apps()
|
|
|
|
@override_settings(
|
|
INSTALLED_APPS = [
|
|
'admin_interface',
|
|
'colorfield',
|
|
'flat',
|
|
'flat_responsive',
|
|
] + DJANGO_APPS
|
|
)
|
|
def test_installed_apps_all(self):
|
|
self.__test_installed_apps()
|
|
|
|
@override_settings(
|
|
INSTALLED_APPS = [
|
|
'admin_interface',
|
|
# 'colorfield',
|
|
'flat',
|
|
'flat_responsive',
|
|
] + DJANGO_APPS
|
|
)
|
|
def test_installed_apps_no_colorfield(self):
|
|
self.__test_installed_apps()
|
|
|
|
@override_settings(
|
|
INSTALLED_APPS = [
|
|
'admin_interface',
|
|
'colorfield',
|
|
# 'flat',
|
|
'flat_responsive',
|
|
] + DJANGO_APPS
|
|
)
|
|
def test_installed_apps_no_flat(self):
|
|
self.__test_installed_apps()
|
|
|
|
@override_settings(
|
|
INSTALLED_APPS = [
|
|
'admin_interface',
|
|
'colorfield',
|
|
'flat',
|
|
# 'flat_responsive',
|
|
] + DJANGO_APPS
|
|
)
|
|
def test_installed_apps_no_flat_responsive(self):
|
|
self.__test_installed_apps()
|
|
|