summaryrefslogtreecommitdiff
path: root/tox.ini
blob: 0348ee88f26001487bf154e6201689fc9efadd96 (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
[tox]
envlist = sa,
          docs,
          py26,
          py27,
          py33,
          py34,
          pypy

skip_missing_interpreters = true

[testenv]
whitelist_externals = /bin/mv
setenv = PYTHONIOENCODING=UTF8
deps = pytest-xdist
       pytest-cov
       pytest
       mock
commands = {envbindir}/py.test \
               --strict --junit-xml=results.{envname}.xml \
               --verbose --verbose \
               --cov blessings --cov-report=term-missing \
               blessings/tests \
               {posargs}
           /bin/mv {toxinidir}/.coverage {toxinidir}/.coverage.{envname}

[testenv:sa]
# Instead of trusting whichever developer's environment python is used to
# invoke tox, explicitly define python2.7  because the 'doc8' tool does not
# appear to be python3-compatible:
# https://github.com/stackforge/doc8/commit/4d82c269ab46f0c5370c1f00be06e0c406164e85#commitcomment-10725927
basepython=python2.7
deps = prospector[with_frosted,with_pyroma]
       restructuredtext_lint
       doc8

# - prospector is configured using .prospector.yaml, and wraps several
#   static analysis/linting and style-checker tools.
# - rst-lint ensures that README.rst will present correctly on pypi.
# - doc8 is like pep8 for rst documents.  Namely, enforcing styling.
#   ignore docs/further.rst:21: D000 Bullet list ends without a blank line;
#          unexpected unindent.  This is a tool error
commands = {envbindir}/prospector \
               --die-on-tool-error \
               --doc-warnings \
               {toxinidir}
           {envbindir}/rst-lint README.rst
           {envbindir}/doc8 --ignore-path docs/_build --ignore D000 docs

[testenv:docs]
whitelist_externals=echo
basepython=python3.4
deps=sphinx
     sphinx_rtd_theme
     sphinx-paramlinks

commands = {envbindir}/sphinx-build -v -W -b html -blinkcheck \
               -d {toxinidir}/docs/_build/doctrees \
               docs \
               {toxinidir}/docs/_build/html
           echo "open {toxinidir}/docs/_build/html/index.html for review"


[pytest]
# py.test fixtures conflict with pyflakes
flakes-ignore =
       UnusedImport
       RedefinedWhileUnused