forked from behave/behave
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tox.ini
125 lines (112 loc) · 4.23 KB
/
tox.ini
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# ============================================================================
# TOX CONFIGURATION: behave
# ============================================================================
# REQUIRES: pip install tox
# DESCRIPTION:
# Use tox to run tasks (tests, ...) in a clean virtual environment.
#
# USAGE:
# tox -e py39 #< Run tests with python3.9
# tox -e py27 #< Run tests with python2.7
#
# SEE ALSO:
# * https://tox.wiki/en/latest/config.html
# ============================================================================
# PIP_INDEX_URL = http://pypi.org/simple
[tox]
minversion = 2.3
envlist = py39, py27, py310, py38, pypy3, pypy, docs
skip_missing_interpreters = true
# -----------------------------------------------------------------------------
# TEST ENVIRONMENTS:
# -----------------------------------------------------------------------------
[testenv]
install_command = pip install -U {opts} {packages}
changedir = {toxinidir}
commands=
pytest {posargs:tests}
behave --format=progress {posargs:features}
behave --format=progress {posargs:tools/test-features}
behave --format=progress {posargs:issue.features}
deps= -r {toxinidir}/py.requirements/ci.tox.txt
setenv =
PYTHONPATH = {toxinidir}
# -- HINT: Script(s) seems to be no longer installed on Python 2.7.
# WEIRD: pip-install seems to need "--user" option.
# RELATED: https://github.com/pypa/virtualenv/issues/2284 -- macOS 12 Monterey related
[testenv:py27]
# MAYBE: platform = darwin
install_command = pip install --user -U {opts} {packages}
changedir = {toxinidir}
commands=
python -m pytest {posargs:tests}
python -m behave --format=progress {posargs:features}
python -m behave --format=progress {posargs:tools/test-features}
python -m behave --format=progress {posargs:issue.features}
deps=
{[testenv]deps}
setenv =
PYTHONPATH = {toxinidir}
[testenv:docs]
changedir = docs
commands =
sphinx-build -W -b html -D language=en -d {toxinidir}/build/docs/doctrees . {toxinidir}/build/docs/html/en
deps = -r{toxinidir}/py.requirements/docs.txt
[testenv:cleanroom2]
basepython = python2
changedir = {envdir}
commands=
behave --version
{toxinidir}/bin/toxcmd.py copytree ../../behave4cmd0 .
{toxinidir}/bin/toxcmd.py copytree ../../tests .
{toxinidir}/bin/toxcmd.py copytree ../../features .
{toxinidir}/bin/toxcmd.py copytree ../../tools .
{toxinidir}/bin/toxcmd.py copytree ../../issue.features .
{toxinidir}/bin/toxcmd.py copy ../../behave.ini .
pytest {posargs:tests}
behave --format=progress {posargs:features}
behave --format=progress {posargs:tools/test-features}
behave --format=progress {posargs:issue.features}
deps=
{[testenv]deps}
setenv =
PYTHONPATH = .:{envdir}
[testenv:cleanroom3]
basepython = python3
changedir = {envdir}
commands=
behave --version
{toxinidir}/bin/toxcmd.py copytree ../../behave4cmd0 .
{toxinidir}/bin/toxcmd.py copytree ../../tests .
{toxinidir}/bin/toxcmd.py copytree ../../features .
{toxinidir}/bin/toxcmd.py copytree ../../tools .
{toxinidir}/bin/toxcmd.py copytree ../../issue.features .
{toxinidir}/bin/toxcmd.py copy ../../behave.ini .
{toxinidir}/bin/toxcmd.py 2to3 -w -n --no-diffs behave4cmd0
{toxinidir}/bin/toxcmd.py 2to3 -w -n --no-diffs tools
{toxinidir}/bin/toxcmd.py 2to3 -w -n --no-diffs features
{toxinidir}/bin/toxcmd.py 2to3 -w -n --no-diffs issue.features
pytest {posargs:tests}
behave --format=progress {posargs:features}
behave --format=progress {posargs:tools/test-features}
behave --format=progress {posargs:issue.features}
deps=
{[testenv]deps}
setenv =
PYTHONPATH = .:{envdir}
# ---------------------------------------------------------------------------
# SELDOM-USED: OPTIONAL TEST ENVIRONMENTS:
# ---------------------------------------------------------------------------
# -- SELDOM-USED, TESTED-WITH: jython2.7
# JYTHON INSTALL RELATED (jit):
# http://sikulix-2014.readthedocs.org/en/latest/scenarios.html
[testenv:jy27]
basepython= jython
commands=
pytest {posargs:tests}
behave --format=progress {posargs:features}
behave --format=progress {posargs:tools/test-features}
behave --format=progress {posargs:issue.features}
deps=
jit
{[testenv]deps}