# Tox (http://codespeak.net/~hpk/tox/) is a tool for running tests # in multiple virtualenvs. This configuration file will run the # test suite on all supported python versions. To use it, "pip install tox" # and then run "tox" from this directory. [tox] envlist = # core py{27,34,35,36,37} pypy flake8 # contrib {py35,py36,py37}-django-{200} {py27,py35}-django-111 {py27,py34,py35,py36}-django-{18,19,110} {py27,py34,py35,py36}-django-18 {py27,py34}-django-17 py27-django-16 {py27,py35,py36,py37}-flask-{10,11} py37-flask-12 py37-flask-dev py27-celery-{3,4} py{27,37}-lambda py{35,36,37}-sanic-07 [testenv] deps = py27: gevent django-{16,17,18}: pytest-django<3.0 django-{19,110,110,111,200,dev}: pytest-django>=3.0,<3.3 django-{18,19,110}: django-tastypie==0.14 django-16: Django>=1.6,<1.7 django-17: Django>=1.7,<1.8 django-18: Django>=1.8,<1.9 django-19: Django>=1.9,<1.10 django-110: Django>=1.10,<1.11 django-111: Django>=1.11,<1.12 django-200: Django>=2.0,<2.1 flask-10: Flask>=0.10,<0.11 flask-11: Flask>=0.11,<0.12 flask-12: Flask>=0.12,<0.13 flask-dev: git+https://github.com/pallets/flask.git#egg=flask flask-dev: flask-login celery-3: Celery>=3.1,<3.2 celery-4: Celery>=4.0,<4.1 sanic-07: sanic>=0.7,<0.8 sanic-07: aiohttp # fix: git+https://github.com/pytest-dev/pytest-django.git#egg=pytest_django setenv = PYTHONDONTWRITEBYTECODE=1 TESTPATH=tests DJANGO_SETTINGS_MODULE=tests.contrib.django.settings django: TESTPATH=tests/contrib/django flask: TESTPATH=tests/contrib/flask sanic: TESTPATH=tests/contrib/sanic celery: TESTPATH=tests/contrib/test_celery.py lambda: TESTPATH=tests/contrib/awslambda usedevelop = true extras = tests basepython = py27: python2.7 py34: python3.4 py35: python3.5 py36: python3.6 py37: python3.7 pypy: pypy commands = py.test {env:TESTPATH} {posargs} --max-slave-restart=4 [testenv:pypy] commands: pypy: py.test {env:TESTPATH} {posargs} -n0 # Linters [testenv:flake8] basepython = python3.7 skip_install = true deps = flake8 flake8-import-order>=0.9 commands = flake8 raven/ setup.py [testenv:pylint] basepython = python3.6 skip_install = true deps = pyflakes pylint commands = pylint raven/ setup.py [testenv:bandit] basepython = python3.6 skip_install = true deps = bandit commands = bandit -r raven/ -c .bandit.yml [testenv:linters] basepython = python3.6 skip_install = true deps = {[testenv:flake8]deps} {[testenv:pylint]deps} {[testenv:readme]deps} {[testenv:bandit]deps} commands = {[testenv:flake8]commands} {[testenv:pylint]commands} {[testenv:readme]commands} {[testenv:bandit]commands} [testenv:readme] basepython = python3.6 deps = readme_renderer commands = python setup.py check -r -s # Release tooling [testenv:build] basepython = python3.6 skip_install = true deps = wheel setuptools commands = python setup.py -q sdist bdist_wheel [testenv:release] basepython = python3.6 skip_install = true deps = bumpversion commands = bumpversion --tag --commit {posargs} release [testenv:minor] basepython = python3.6 skip_install = true deps = bumpversion commands = bumpversion --commit {posargs} minor [testenv:dev] basepython = python3.6 skip_install = true deps = bumpversion commands = bumpversion {posargs} --commit {posargs} patch