Simplify test suit.
This commit is contained in:
parent
b32fa6c17c
commit
d519e49acb
14 changed files with 99 additions and 137 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -12,3 +12,4 @@ src/
|
|||
docs/_build/
|
||||
.eggs/
|
||||
.python-version
|
||||
.pytest_cache/
|
||||
|
|
79
oidc_provider/tests/settings.py
Normal file
79
oidc_provider/tests/settings.py
Normal file
|
@ -0,0 +1,79 @@
|
|||
DEBUG = False
|
||||
|
||||
SECRET_KEY = 'this-should-be-top-secret'
|
||||
|
||||
DATABASES = {
|
||||
'default': {
|
||||
'ENGINE': 'django.db.backends.sqlite3',
|
||||
'NAME': ':memory:',
|
||||
}
|
||||
}
|
||||
|
||||
SITE_ID = 1
|
||||
|
||||
MIDDLEWARE_CLASSES = [
|
||||
'django.middleware.common.CommonMiddleware',
|
||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||
'django.contrib.auth.middleware.AuthenticationMiddleware',
|
||||
]
|
||||
|
||||
MIDDLEWARE = [
|
||||
'django.middleware.common.CommonMiddleware',
|
||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||
'django.contrib.auth.middleware.AuthenticationMiddleware',
|
||||
]
|
||||
|
||||
TEMPLATES = [
|
||||
{
|
||||
'BACKEND': 'django.template.backends.django.DjangoTemplates',
|
||||
'DIRS': [],
|
||||
'APP_DIRS': True,
|
||||
'OPTIONS': {
|
||||
'context_processors': [
|
||||
'django.template.context_processors.debug',
|
||||
'django.template.context_processors.request',
|
||||
'django.contrib.auth.context_processors.auth',
|
||||
'django.contrib.messages.context_processors.messages',
|
||||
],
|
||||
},
|
||||
},
|
||||
]
|
||||
|
||||
INSTALLED_APPS = [
|
||||
'django.contrib.auth',
|
||||
'django.contrib.contenttypes',
|
||||
'django.contrib.sessions',
|
||||
'django.contrib.sites',
|
||||
'django.contrib.messages',
|
||||
'django.contrib.admin',
|
||||
'oidc_provider',
|
||||
]
|
||||
|
||||
ROOT_URLCONF = 'oidc_provider.tests.app.urls'
|
||||
|
||||
TEMPLATE_DIRS = [
|
||||
'oidc_provider/tests/templates',
|
||||
]
|
||||
|
||||
USE_TZ = True
|
||||
|
||||
LOGGING = {
|
||||
'version': 1,
|
||||
'disable_existing_loggers': False,
|
||||
'handlers': {
|
||||
'console': {
|
||||
'class': 'logging.StreamHandler',
|
||||
},
|
||||
},
|
||||
'loggers': {
|
||||
'oidc_provider': {
|
||||
'handlers': ['console'],
|
||||
'level': 'DEBUG',
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
# OIDC Provider settings.
|
||||
|
||||
SITE_URL = 'http://localhost:8000'
|
||||
OIDC_USERINFO = 'oidc_provider.tests.app.utils.userinfo'
|
120
runtests.py
120
runtests.py
|
@ -1,120 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
import os
|
||||
import sys
|
||||
|
||||
import django
|
||||
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
DEFAULT_SETTINGS = dict(
|
||||
|
||||
DEBUG=False,
|
||||
|
||||
DATABASES={
|
||||
'default': {
|
||||
'ENGINE': 'django.db.backends.sqlite3',
|
||||
'NAME': ':memory:',
|
||||
}
|
||||
},
|
||||
|
||||
SITE_ID=1,
|
||||
|
||||
MIDDLEWARE_CLASSES=[
|
||||
'django.middleware.common.CommonMiddleware',
|
||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||
'django.contrib.auth.middleware.AuthenticationMiddleware',
|
||||
],
|
||||
|
||||
MIDDLEWARE=[
|
||||
'django.middleware.common.CommonMiddleware',
|
||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||
'django.contrib.auth.middleware.AuthenticationMiddleware',
|
||||
],
|
||||
|
||||
TEMPLATES=[
|
||||
{
|
||||
'BACKEND': 'django.template.backends.django.DjangoTemplates',
|
||||
'DIRS': [],
|
||||
'APP_DIRS': True,
|
||||
'OPTIONS': {
|
||||
'context_processors': [
|
||||
'django.template.context_processors.debug',
|
||||
'django.template.context_processors.request',
|
||||
'django.contrib.auth.context_processors.auth',
|
||||
'django.contrib.messages.context_processors.messages',
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
|
||||
LOGGING={
|
||||
'version': 1,
|
||||
'disable_existing_loggers': False,
|
||||
'handlers': {
|
||||
'console': {
|
||||
'class': 'logging.StreamHandler',
|
||||
},
|
||||
},
|
||||
'loggers': {
|
||||
'oidc_provider': {
|
||||
'handlers': ['console'],
|
||||
'level': os.getenv('DJANGO_LOG_LEVEL', 'DEBUG'),
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
INSTALLED_APPS=[
|
||||
'django.contrib.auth',
|
||||
'django.contrib.contenttypes',
|
||||
'django.contrib.sessions',
|
||||
'django.contrib.sites',
|
||||
'django.contrib.messages',
|
||||
'django.contrib.admin',
|
||||
'oidc_provider',
|
||||
],
|
||||
|
||||
SECRET_KEY='this-should-be-top-secret',
|
||||
|
||||
ROOT_URLCONF='oidc_provider.tests.app.urls',
|
||||
|
||||
TEMPLATE_DIRS=[
|
||||
'oidc_provider/tests/templates',
|
||||
],
|
||||
|
||||
USE_TZ=True,
|
||||
|
||||
# OIDC Provider settings.
|
||||
|
||||
SITE_URL='http://localhost:8000',
|
||||
OIDC_USERINFO='oidc_provider.tests.app.utils.userinfo',
|
||||
|
||||
)
|
||||
|
||||
|
||||
def runtests(*test_args):
|
||||
if not settings.configured:
|
||||
settings.configure(**DEFAULT_SETTINGS)
|
||||
|
||||
django.setup()
|
||||
|
||||
parent = os.path.dirname(os.path.abspath(__file__))
|
||||
sys.path.insert(0, parent)
|
||||
|
||||
try:
|
||||
from django.test.runner import DiscoverRunner
|
||||
runner_class = DiscoverRunner
|
||||
if not test_args:
|
||||
test_args = ["oidc_provider.tests"]
|
||||
except ImportError:
|
||||
from django.test.simple import DjangoTestSuiteRunner
|
||||
runner_class = DjangoTestSuiteRunner
|
||||
if not test_args:
|
||||
test_args = ["tests"]
|
||||
|
||||
failures = runner_class(verbosity=1, interactive=True, failfast=False).run_tests(test_args)
|
||||
sys.exit(failures)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
runtests(*sys.argv[1:])
|
36
tox.ini
36
tox.ini
|
@ -1,33 +1,35 @@
|
|||
[tox]
|
||||
|
||||
envlist=
|
||||
clean,
|
||||
py27-django{17,18,19,110,111},
|
||||
py34-django{17,18,19,110,111,20},
|
||||
py35-django{18,19,110,111,20},
|
||||
py36-django{18,19,110,111,20},
|
||||
|
||||
[testenv]
|
||||
|
||||
changedir=
|
||||
oidc_provider/tests/cases
|
||||
deps =
|
||||
mock
|
||||
psycopg2
|
||||
pytest
|
||||
pytest-django
|
||||
pytest-flake8
|
||||
pytest-cov
|
||||
django17: django>=1.7,<1.8
|
||||
django18: django>=1.8,<1.9
|
||||
django19: django>=1.9,<1.10
|
||||
django110: django>=1.10,<1.11
|
||||
django111: django>=1.11,<1.12
|
||||
django20: django>=2.0,<2.1
|
||||
coverage
|
||||
mock
|
||||
|
||||
commands =
|
||||
coverage run setup.py test
|
||||
pytest --flake8 --cov=oidc_provider {posargs}
|
||||
|
||||
[testenv:clean]
|
||||
|
||||
commands=
|
||||
coverage erase
|
||||
|
||||
[testenv:stats]
|
||||
|
||||
commands=
|
||||
coverage report -m
|
||||
[pytest]
|
||||
DJANGO_SETTINGS_MODULE = oidc_provider.tests.settings
|
||||
python_files = test_*.py
|
||||
flake8-max-line-length = 99
|
||||
flake8-ignore =
|
||||
.git ALL
|
||||
__pycache__ ALL
|
||||
.ropeproject ALL
|
||||
*/migrations ALL
|
||||
manage.py ALL
|
||||
|
|
Loading…
Reference in a new issue