1#!/usr/bin/env python
2
3"""
4Adapted from django-constance, which itself was adapted from django-adminfiles.
5"""
6
7import os
8import sys
9import django
10
11here = os.path.dirname(os.path.abspath(__file__))
12parent = os.path.dirname(here)
13sys.path[0:0] = [here, parent]
14
15from django.conf import settings
16settings.configure(
17    DATABASES={'default': {'ENGINE': 'django.db.backends.sqlite3'}},
18    DEFAULT_AUTO_FIELD='django.db.models.BigAutoField',
19    INSTALLED_APPS=[
20        "django.contrib.auth",
21        "django.contrib.contenttypes",
22        "django.contrib.messages",
23        "django.contrib.sessions",
24        "django.contrib.sites",
25        "django.contrib.admin",
26        "django_comments",
27        "testapp",
28        "custom_comments",
29    ],
30    MIDDLEWARE=(
31        'django.contrib.sessions.middleware.SessionMiddleware',
32        'django.contrib.auth.middleware.AuthenticationMiddleware',
33        'django.contrib.messages.middleware.MessageMiddleware',
34    ),
35    ROOT_URLCONF='testapp.urls',
36    TEMPLATES=[
37        {
38            'BACKEND': 'django.template.backends.django.DjangoTemplates',
39            'APP_DIRS': True,
40            'OPTIONS': {
41                'context_processors': [
42                    'django.template.context_processors.request',
43                    'django.contrib.auth.context_processors.auth',
44                    'django.contrib.messages.context_processors.messages',
45                ]
46            },
47        },
48    ],
49    SECRET_KEY="it's a secret to everyone",
50    SITE_ID=1,
51)
52
53from django.test.runner import DiscoverRunner
54
55
56def main(test_labels=None):
57    django.setup()
58    runner = DiscoverRunner(failfast=True, verbosity=1)
59    failures = runner.run_tests(test_labels or ['testapp'], interactive=True)
60    sys.exit(failures)
61
62
63if __name__ == '__main__':
64    test_labels = None
65    if len(sys.argv) > 1:
66        test_labels = sys.argv[1:]
67    main(test_labels)
68