summaryrefslogtreecommitdiff
path: root/tox.ini
blob: 07c0ffb0717b5e4e47fc3f1a7538b6a0a41ebc2d (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
[tox]
envlist = py27,py26,py34,py33,py35,py36,pypy,flakes,py26-bare
minversion = 2.7.0

[testenv:X]
commands = echo {posargs}
description = print the positional arguments passed in with echo

[testenv]
commands = pytest --timeout=180 {posargs:tests}
description = run the unit tests with pytest under the current Python env
deps = pytest >= 3.0.0
       pytest-timeout

[testenv:py26-bare]
deps =
commands = tox -h
install_command = pip install {opts} {packages}
list_dependencies_command = pip freeze
description = invoke the tox help message under Python 2.6

[testenv:py26]
install_command = pip install {opts} {packages}
list_dependencies_command = pip freeze

[testenv:docs]
basepython = python
changedir = doc
deps = sphinx
       {[testenv]deps}
commands = pytest -v check_sphinx.py {posargs}
description = invoke sphinx-build and try to build the HTML page (also check link validity)

[testenv:flakes]
deps = pytest-flakes >= 0.2
       pytest-pep8
description = run static analysis and style check using flakes and pep-8
commands = pytest --flakes -m flakes tox tests
           pytest --pep8 -m pep8 tox tests

[testenv:dev]
# required to make looponfail reload on every source code change
usedevelop = True

deps = pytest-xdist >= 1.11
commands = {posargs:py.test -s -x -f -v}
description = DEV enviroment, if no posarg is specified: run pytest

[pytest]
rsyncdirs = tests tox
addopts = -rsxX
# pytest-xdist plugin configuration
looponfailroots = tox tests
norecursedirs = .hg .tox

# pytest-pep8 plugin configuration
pep8maxlinelength = 99
# W503 - line break before binary operator
# E402 - module level import not at top of file
# E731 - do not assign a lambda expression, use a def
pep8ignore = *.py W503 E402 E731
flakes-ignore = ImportStarUsage