third_party.pylibs.pylint.src/tox.ini
Claudiu Popa a83ef077d3 Separate pyenchant into a separate step
pyenchant is no longer maintained and doesn't seem to install correctly on all systems.
But it is installable on Travis, so instead we separated that from the main test suite in order
to run it in its own step.

Close #1900
2018-09-29 10:30:45 +02:00

102 lines
2.6 KiB
INI

[tox]
envlist = py34, py35, py36, py37, pypy, pylint
skip_missing_interpreters = true
[testenv:pylint]
deps =
git+https://github.com/pycqa/astroid@master
isort
commands = pylint -rn --rcfile={toxinidir}/pylintrc --load-plugins=pylint.extensions.docparams, pylint.extensions.mccabe {envsitepackagesdir}/pylint
[testenv:formatting]
basepython = python3
deps = black==18.6b4
commands = black --check --exclude "functional|input|test/extension|test/regrtest_data|test/data" pylint
changedir = {toxinidir}
[testenv:mypy]
basepython = python3
deps =
mypy
commands =
python -m mypy {toxinidir}/pylint/checkers --ignore-missing-imports
[testenv]
deps =
https://github.com/PyCQA/astroid/tarball/master#egg=astroid-master-2.0
coverage
isort
mccabe
pytest
pytest-xdist
setenv =
COVERAGE_FILE = {toxinidir}/.coverage.{envname}
commands =
python -Wi {envsitepackagesdir}/coverage run -m pytest {envsitepackagesdir}/pylint/test/ {posargs:}
; Transform absolute path to relative path
; for compatibility with coveralls.io and fix 'source not available' error.
; If you can find a cleaner way is welcome
python -c "import os;cov_strip_abspath = open(os.environ['COVERAGE_FILE'], 'r').read().replace('.tox' + os.sep + os.path.relpath('{envsitepackagesdir}', '{toxworkdir}') + os.sep, '');open(os.environ['COVERAGE_FILE'], 'w').write(cov_strip_abspath)"
changedir = {toxworkdir}
[testenv:spelling]
deps =
https://github.com/PyCQA/astroid/tarball/master#egg=astroid-master-2.0
pytest
pytest-xdist
pyenchant
commands =
python -Wi -m pytest {envsitepackagesdir}/pylint/test/ {posargs:} -k unittest_checker_spelling
changedir = {toxworkdir}
[testenv:coveralls]
setenv =
COVERAGE_FILE = {toxinidir}/.coverage
passenv =
*
deps =
coverage
coveralls
skip_install = true
commands =
python {envsitepackagesdir}/coverage combine
python {envsitepackagesdir}/coverage report --rcfile={toxinidir}/.coveragerc -m
- coveralls --rcfile={toxinidir}/.coveragerc
changedir = {toxinidir}
[testenv:coverage-erase]
setenv =
COVERAGE_FILE = {toxinidir}/.coverage
deps =
coverage
skip_install = true
commands =
python {envsitepackagesdir}/coverage erase
changedir = {toxinidir}
[testenv:docs]
skipsdist = True
usedevelop = True
changedir = doc/
whitelist_externals = rm
deps =
sphinx
python-docs-theme
commands =
pip install python_docs_theme
rm -f features.rst
python ./exts/pylint_features.py
rm -f extensions.rst
python ./exts/pylint_extensions.py
sphinx-build -W -b html -d _build/doctrees . _build/html