summaryrefslogtreecommitdiff
path: root/tox.ini
blob: 0e4db1693be3acf95e52eb30a5c6c0af5e2c6617 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
[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]
deps =
   https://github.com/PyCQA/astroid/tarball/master#egg=astroid-master-2.0
   coverage
   isort
   mccabe
   pytest
   pytest-xdist
   pyenchant

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: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
   restructuredtext_lint

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