| [tox] |
| minversion = 2.0 |
| distshare = {homedir}/.tox/distshare |
| # make sure to update environment list in travis.yml and appveyor.yml |
| envlist = |
| linting |
| py27 |
| py34 |
| py35 |
| py36 |
| py37 |
| pypy |
| {py27,py36}-{pexpect,xdist,trial,numpy,pluggymaster} |
| py27-nobyte |
| doctesting |
| py36-freeze |
| docs |
| |
| [testenv] |
| commands = pytest --lsof -ra {posargs:testing} |
| passenv = USER USERNAME |
| deps = |
| hypothesis>=3.56 |
| nose |
| mock |
| requests |
| |
| [testenv:py27-subprocess] |
| changedir = . |
| deps = |
| pytest-xdist>=1.13 |
| mock |
| nose |
| commands = |
| pytest -n3 -ra --runpytest=subprocess {posargs:testing} |
| |
| |
| [testenv:linting] |
| skipsdist = True |
| usedevelop = True |
| basepython = python3.6 |
| deps = pre-commit |
| commands = pre-commit run --all-files --show-diff-on-failure |
| |
| [testenv:py27-xdist] |
| deps = |
| pytest-xdist>=1.13 |
| mock |
| nose |
| hypothesis>=3.56 |
| changedir=testing |
| commands = |
| pytest -n8 -ra {posargs:.} |
| |
| [testenv:py36-xdist] |
| deps = {[testenv:py27-xdist]deps} |
| commands = {[testenv:py27-xdist]commands} |
| |
| [testenv:py27-pexpect] |
| changedir = testing |
| platform = linux|darwin |
| deps = pexpect |
| commands = |
| pytest -ra test_pdb.py test_terminal.py test_unittest.py |
| |
| [testenv:py36-pexpect] |
| changedir = {[testenv:py27-pexpect]changedir} |
| platform = {[testenv:py27-pexpect]platform} |
| deps = {[testenv:py27-pexpect]deps} |
| commands = {[testenv:py27-pexpect]commands} |
| |
| [testenv:py27-nobyte] |
| deps = |
| pytest-xdist>=1.13 |
| hypothesis>=3.56 |
| mock |
| distribute = true |
| changedir=testing |
| setenv = |
| PYTHONDONTWRITEBYTECODE=1 |
| commands = |
| pytest -n3 -ra {posargs:.} |
| |
| [testenv:py27-trial] |
| deps = twisted |
| commands = |
| pytest -ra {posargs:testing/test_unittest.py} |
| |
| [testenv:py36-trial] |
| deps = {[testenv:py27-trial]deps} |
| commands = {[testenv:py27-trial]commands} |
| |
| [testenv:py27-numpy] |
| deps = numpy |
| commands= |
| pytest -ra {posargs:testing/python/approx.py} |
| |
| [testenv:py36-numpy] |
| deps = {[testenv:py27-numpy]deps} |
| commands = {[testenv:py27-numpy]commands} |
| |
| [testenv:py27-pluggymaster] |
| setenv= |
| _PYTEST_SETUP_SKIP_PLUGGY_DEP=1 |
| deps = |
| {[testenv]deps} |
| git+https://github.com/pytest-dev/pluggy.git@master |
| |
| [testenv:py36-pluggymaster] |
| setenv = {[testenv:py27-pluggymaster]setenv} |
| deps = {[testenv:py27-pluggymaster]deps} |
| |
| [testenv:docs] |
| skipsdist = True |
| usedevelop = True |
| changedir = doc/en |
| deps = |
| attrs |
| more-itertools |
| PyYAML |
| sphinx |
| sphinxcontrib-trio |
| |
| commands = |
| sphinx-build -W -b html . _build |
| |
| [testenv:doctesting] |
| basepython = python |
| usedevelop = True |
| skipsdist = True |
| # ensure the given pyargs can't mean anything else |
| changedir = doc/ |
| deps = |
| PyYAML |
| commands = |
| pytest -ra en |
| pytest --doctest-modules --pyargs _pytest |
| |
| [testenv:regen] |
| changedir = doc/en |
| skipsdist = True |
| basepython = python3.5 |
| deps = |
| sphinx |
| PyYAML |
| regendoc>=0.6.1 |
| whitelist_externals = |
| rm |
| make |
| commands = |
| rm -rf /tmp/doc-exec* |
| make regen |
| |
| [testenv:fix-lint] |
| skipsdist = True |
| usedevelop = True |
| deps = |
| autopep8 |
| commands = |
| autopep8 --in-place -r --max-line-length=120 --exclude=test_source_multiline_block.py _pytest testing setup.py pytest.py |
| |
| [testenv:jython] |
| changedir = testing |
| commands = |
| {envpython} {envbindir}/py.test-jython -ra {posargs} |
| |
| [testenv:py36-freeze] |
| changedir = testing/freeze |
| deps = pyinstaller |
| commands = |
| {envpython} create_executable.py |
| {envpython} tox_run.py |
| |
| |
| [testenv:coveralls] |
| passenv = TRAVIS TRAVIS_JOB_ID TRAVIS_BRANCH COVERALLS_REPO_TOKEN |
| usedevelop = True |
| changedir = . |
| deps = |
| {[testenv]deps} |
| coveralls |
| commands = |
| coverage run --source=_pytest -m pytest testing |
| coverage report -m |
| coveralls |
| |
| [pytest] |
| minversion = 2.0 |
| plugins = pytester |
| addopts = -ra -p pytester --ignore=testing/cx_freeze |
| rsyncdirs = tox.ini pytest.py _pytest testing |
| python_files = test_*.py *_test.py testing/*/*.py |
| python_classes = Test Acceptance |
| python_functions = test |
| norecursedirs = .tox ja .hg cx_freeze_source |
| xfail_strict=true |
| filterwarnings = |
| error |
| # produced by path.local |
| ignore:bad escape.*:DeprecationWarning:re |
| # produced by path.readlines |
| ignore:.*U.*mode is deprecated:DeprecationWarning |
| # produced by pytest-xdist |
| ignore:.*type argument to addoption.*:DeprecationWarning |
| # produced by python >=3.5 on execnet (pytest-xdist) |
| ignore:.*inspect.getargspec.*deprecated, use inspect.signature.*:DeprecationWarning |
| # ignore warning about package resolution using __spec__ or __package__ |
| # should be a temporary solution, see #3061 for discussion |
| ignore:.*can't resolve package from __spec__ or __package__.*:ImportWarning |
| |
| [flake8] |
| max-line-length = 120 |