Skip to content
Snippets Groups Projects
Verified Commit 39b05359 authored by Jonathan Weth's avatar Jonathan Weth :keyboard:
Browse files

Enable testsuite

parent 7561bb70
No related branches found
No related tags found
No related merge requests found
......@@ -53,3 +53,8 @@ db.sqlite3
# Sphinx
docs/_build/
# Testing
.tox
.coverage
htmlcov/
include:
- project: "AlekSIS/official/AlekSIS"
file: /ci/general.yml
- project: "AlekSIS/official/AlekSIS"
file: /ci/test.yml
- project: "AlekSIS/official/AlekSIS"
file: /ci/build_dist.yml
This diff is collapsed.
......@@ -22,6 +22,31 @@ classifiers = [
python = "^3.7"
AlekSIS = "^2.0a2"
[tool.poetry.dev-dependencies]
sphinx = "^3.0"
sphinxcontrib-django = "^0.5.0"
sphinx-autodoc-typehints = "^1.7"
django-stubs = "^1.1"
pytest = "^5.3"
pytest-django = "^3.7"
pytest-django-testing-postgresql = "^0.1"
selenium = "^3.141.0"
safety = "^1.8.5"
flake8 = "^3.7.9"
flake8-django = "^1.0.0"
flake8-fixme = "^1.1.1"
flake8-mypy = "^17.8.0"
flake8-bandit = "^2.1.2"
flake8-builtins = "^1.4.1"
flake8-docstrings = "^1.5.0"
flake8-rst-docstrings = "^0.0.13"
black = "^19.10b0"
flake8-black = "^0.1.1"
isort = "^4.3.21"
flake8-isort = "^3.0.0"
pytest-cov = "^2.8.1"
pytest-sugar = "^0.9.2"
[build-system]
requires = ["poetry>=0.12"]
build-backend = "poetry.masonry.api"
tox.ini 0 → 100644
[tox]
skipsdist = True
skip_missing_interpreters = true
envlist = py37,py38
[testenv]
whitelist_externals = poetry
sudo
skip_install = true
envdir = {toxworkdir}/globalenv
commands_pre =
- poetry install
commands =
- poetry run pytest --cov=. {posargs} aleksis/
[testenv:selenium]
setenv =
TEST_SCREENSHOT_PATH = {env:TEST_SCREENSHOT_PATH:.tox/screenshots}
TEST_SELENIUM_HUB = {env:TEST_SELENIUM_HUB:http://127.0.0.1:4444/wd/hub}
TEST_SELENIUM_BROWSERS = {env:TEST_SELENIUM_BROWSERS:chrome,firefox}
TEST_HOST = {env:TEST_HOST:172.17.0.1}
[testenv:lint]
commands =
- poetry run black --check --diff aleksis/ --exclude "migrations"
- poetry run isort -c --diff --stdout -rc -s migrations aleksis/
- poetry run flake8 {posargs} --exclude-from-doctest migrations aleksis/
[testenv:security]
commands =
poetry show --no-dev
poetry run safety check --full-report
[testenv:build]
commands_pre =
commands = poetry build
[testenv:docs]
commands = poetry run make -C docs/ html {posargs}
[testenv:reformat]
commands =
poetry run isort -rc aleksis/
poetry run black aleksis/
[flake8]
max_line_length = 100
exclude = migrations,tests
ignore = BLK100,E203,E231,W503,D100,D101,D102,D103,D104,D105,D106,D107,RST215,RST214,F821,F841,S106,T100,T101,DJ05
[isort]
line_length = 100
multi_line_output = 3
include_trailing_comma = 1
use_parantheses = 1
default_section = THIRDPARTY
known_first_party = aleksis
known_django = django
sections = FUTURE,STDLIB,DJANGO,THIRDPARTY,FIRSTPARTY,LOCALFOLDER
[mypy]
plugins = mypy_django_plugin.main
python_version = 3.8
platform = linux
show_column_numbers = True
follow_imports = skip
ignore_missing_imports = True
cache_dir = /dev/null
[mypy.plugins.django-stubs]
django_settings_module = aleksis.core.settings
[pytest]
DJANGO_SETTINGS_MODULE = aleksis.core.settings
junit_family = legacy
[coverage:run]
omit =
*/migrations/*
*/tests/*
.tox/*
manage.py
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment