[tox] minversion = 2.0 envlist = pep8,docs,py{27,34,35}-django{18,19,110,111},py36-django111 skipsdist = True [testenv] deps = -r{toxinidir}/requirements-test.txt django18: django>=1.8,<1.9 django19: django>=1.9,<1.10 django110: django>=1.10,<1.11 django111: django>=1.11,<2.0 django{18,19,110}: djangorestframework>=3.4,<3.7 django111: djangorestframework>=3.6,<3.7 django{18,19,110,111}: django-filter>=1.0,<1.1 setenv = DJANGO_SETTINGS_MODULE = patchwork.settings.dev PYTHONDONTWRITEBYTECODE = 1 DJANGO_LIVE_TEST_SERVER_ADDRESS = localhost:9000-9200 passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY PW_TEST_DB_TYPE PW_TEST_DB_USER PW_TEST_DB_PASS PW_TEST_DB_HOST PW_TEST_DB_PORT DISPLAY SELENIUM_BROWSER PW_SKIP_BROWSER_TESTS DISPLAY HOME XAUTHORITY commands = python -Wonce {toxinidir}/manage.py test --noinput '{posargs:patchwork}' [testenv:bashate] deps = bashate>=0.5,<0.6 whitelist_externals = bash commands = bash -c "find {toxinidir} \ -not \( -type d -name .?\* -prune \) \ -not \( -type d -name db -prune \) \ -name \*.sh -print | xargs bashate" [testenv:pep8] basepython = python2.7 deps = flake8 commands = flake8 {posargs} patchwork patchwork/bin/pwclient [flake8] ignore = E129, F405 exclude = ./patchwork/migrations [testenv:docs] deps = -r{toxinidir}/docs/requirements.txt commands = sphinx-build -E -W -b html docs docs/_build/html [testenv:lint] basepython = python2.7 deps = pylint -r{toxinidir}/requirements-prod.txt commands = pylint patchwork --rcfile=pylint.rc [testenv:venv] commands = {posargs} [testenv:coverage] basepython = python2.7 deps = coverage -r{toxinidir}/requirements-dev.txt setenv = DJANGO_SETTINGS_MODULE = patchwork.settings.dev commands = coverage erase coverage run --omit=*tox*,patchwork/tests/*.py,manage.py,patchwork/migrations/*.py \ --branch {toxinidir}/manage.py test --noinput patchwork coverage report -m [travis] python = 2.7: py27, pep8