[tox]
envlist = py35,py36,py37,linters
skipsdist = True

[testenv]
basepython = python3
deps =
    -r{toxinidir}/requirements.txt
    coverage
commands =
    ./manage.py makemigrations
    coverage run ./manage.py test {posargs}
    coverage report -m

[testenv:pre-commit]
deps = pre-commit
commands =
    pre-commit run --all-files --show-diff-on-failure

[testenv:linters]
deps =
    -r{toxinidir}/requirements.txt
    flake8
    flake8-colors
    flake8-import-order
    flake8-typing-imports
    pep8-naming
    pyflakes
    pylint
commands =
    flake8 logs med media search users
    pylint .

[flake8]
ignore = D203, W503, E203
exclude =
    .tox,
    .git,
    __pycache__,
    build,
    dist,
    *.pyc,
    *.egg-info,
    .cache,
    .eggs,
    *migrations*
max-complexity = 10
import-order-style = google
application-import-names = flake8
format = ${cyan}%(path)s${reset}:${yellow_bold}%(row)d${reset}:${green_bold}%(col)d${reset}: ${red_bold}%(code)s${reset} %(text)s

