forked from django-fluent/django-fluent-pages
-
Notifications
You must be signed in to change notification settings - Fork 0
/
runtests.py
executable file
·51 lines (43 loc) · 1.42 KB
/
runtests.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/usr/bin/env python
# Django environment setup:
from django.conf import settings, global_settings as default_settings
from django.core.management import call_command
from os.path import dirname, realpath
import sys
# Detect location and available modules
module_root = dirname(realpath(__file__))
# Inline settings file
settings.configure(
DEBUG = False, # will be False anyway by DjangoTestRunner.
TEMPLATE_DEBUG = True,
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': ':memory:'
}
},
TEMPLATE_LOADERS = (
'django.template.loaders.app_directories.Loader',
),
TEMPLATE_CONTEXT_PROCESSORS = default_settings.TEMPLATE_CONTEXT_PROCESSORS + (
'django.core.context_processors.request',
),
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sites',
'fluent_pages',
'fluent_pages.tests.testapp',
),
SITE_ID = 4,
ROOT_URLCONF = 'fluent_pages.tests.testapp.urls',
)
call_command('syncdb', verbosity=1, interactive=False)
# ---- app start
verbosity = 2 if '-v' in sys.argv else 1
from django.test.utils import get_runner
TestRunner = get_runner(settings) # DjangoTestSuiteRunner
runner = TestRunner(verbosity=verbosity, interactive=True, failfast=False)
failures = runner.run_tests(['fluent_pages'])
if failures:
sys.exit(bool(failures))