1# Tox (http://codespeak.net/~hpk/tox/) is a tool for running tests 2# in multiple virtualenvs. This configuration file will run the 3# test suite on all supported python versions. To use it, "pip install tox" 4# and then run "tox" from this directory. 5 6[tox] 7envlist = 8 # core 9 py{27,34,35,36,37} 10 pypy 11 flake8 12 # contrib 13 {py35,py36,py37}-django-dev 14 {py35,py36,py37}-django-{200} 15 {py27,py35}-django-111 16 {py27,py34,py35,py36}-django-{18,19,110} 17 {py27,py34,py35,py36}-django-18 18 {py27,py34}-django-17 19 py27-django-16 20 {py27,py35,py36,py37}-flask-{10,11} 21 py37-flask-12 22 py37-flask-dev 23 py27-celery-{3,4} 24 py{27,37}-lambda 25 py{35,36,37}-sanic-07 26 27[testenv] 28deps = 29 py27: gevent 30 django-{16,17,18}: pytest-django<3.0 31 django-{19,110,110,111,200,dev}: pytest-django>=3.0,<3.3 32 django-{18,19,110}: django-tastypie==0.14 33 django-16: Django>=1.6,<1.7 34 django-17: Django>=1.7,<1.8 35 django-18: Django>=1.8,<1.9 36 django-19: Django>=1.9,<1.10 37 django-110: Django>=1.10,<1.11 38 django-111: Django>=1.11,<1.12 39 django-200: Django>=2.0,<2.1 40 django-dev: git+https://github.com/django/django.git#egg=Django 41 flask-10: Flask>=0.10,<0.11 42 flask-11: Flask>=0.11,<0.12 43 flask-12: Flask>=0.12,<0.13 44 flask-dev: git+https://github.com/pallets/flask.git#egg=flask 45 flask-dev: flask-login 46 celery-3: Celery>=3.1,<3.2 47 celery-4: Celery>=4.0,<4.1 48 sanic-07: sanic>=0.7,<0.8 49 sanic-07: aiohttp 50 # fix: git+https://github.com/pytest-dev/pytest-django.git#egg=pytest_django 51setenv = 52 PYTHONDONTWRITEBYTECODE=1 53 TESTPATH=tests 54 DJANGO_SETTINGS_MODULE=tests.contrib.django.settings 55 django: TESTPATH=tests/contrib/django 56 flask: TESTPATH=tests/contrib/flask 57 sanic: TESTPATH=tests/contrib/sanic 58 celery: TESTPATH=tests/contrib/test_celery.py 59 lambda: TESTPATH=tests/contrib/awslambda 60usedevelop = true 61extras = tests 62 63basepython = 64 py27: python2.7 65 py34: python3.4 66 py35: python3.5 67 py36: python3.6 68 py37: python3.7 69 pypy: pypy 70 71commands = 72 py.test {env:TESTPATH} {posargs} --max-slave-restart=4 73 74[testenv:pypy] 75commands: 76 pypy: py.test {env:TESTPATH} {posargs} -n0 77 78# Linters 79 80 81 82[testenv:flake8] 83basepython = python3.6 84skip_install = true 85deps = 86 flake8 87 flake8-docstrings>=0.2.7 88 flake8-import-order>=0.9 89commands = 90 flake8 raven/ setup.py 91 92[testenv:pylint] 93basepython = python3.6 94skip_install = true 95deps = 96 pyflakes 97 pylint 98commands = 99 pylint raven/ setup.py 100 101 102[testenv:bandit] 103basepython = python3.6 104skip_install = true 105deps = 106 bandit 107commands = 108 bandit -r raven/ -c .bandit.yml 109 110[testenv:linters] 111basepython = python3.6 112skip_install = true 113deps = 114 {[testenv:flake8]deps} 115 {[testenv:pylint]deps} 116 {[testenv:readme]deps} 117 {[testenv:bandit]deps} 118commands = 119 {[testenv:flake8]commands} 120 {[testenv:pylint]commands} 121 {[testenv:readme]commands} 122 {[testenv:bandit]commands} 123 124[testenv:readme] 125basepython = python3.6 126deps = 127 readme_renderer 128commands = 129 python setup.py check -r -s 130 131# Release tooling 132[testenv:build] 133basepython = python3.6 134skip_install = true 135deps = 136 wheel 137 setuptools 138commands = 139 python setup.py -q sdist bdist_wheel 140 141[testenv:release] 142basepython = python3.6 143skip_install = true 144deps = 145 bumpversion 146commands = 147 bumpversion --tag --commit {posargs} release 148 149[testenv:minor] 150basepython = python3.6 151skip_install = true 152deps = 153 bumpversion 154commands = 155 bumpversion --commit {posargs} minor 156 157[testenv:dev] 158basepython = python3.6 159skip_install = true 160deps = 161 bumpversion 162commands = 163 bumpversion {posargs} --commit {posargs} patch 164