Add code coverage for all platforms
[dotbot.git] / tox.ini
blob4b0ad6c1d98f18b676915d92ef492e19ad1c5e81
1 [tox]
2 ; On Windows, only CPython >= 3.8 is supported.
3 ; All older versions, and PyPy, lack full symlink support.
4 envlist =
5 coverage_erase
6 py{38, 39, 310}-all_platforms
7 py{27, 35, 36, 37}-most_platforms
8 pypy{2, 3}-most_platforms
9 coverage_report
10 skip_missing_interpreters = true
13 [testenv]
14 platform =
15 all_platforms: cygwin|darwin|linux|win32
16 most_platforms: cygwin|darwin|linux
18 deps =
19 coverage
20 pytest
21 pytest-randomly
22 pyyaml
23 mock; python_version == "2.7"
25 commands =
26 coverage run -m pytest tests/
29 [testenv:coverage_erase]
30 skipsdist = true
31 skip_install = true
32 deps = coverage
33 commands = coverage erase
36 [testenv:coverage_report]
37 skipsdist = true
38 skip_install = true
39 deps = coverage
40 commands_pre =
41 coverage combine
43 commands =
44 coverage report
45 coverage html
46 coverage xml
49 [coverage:run]
50 branch = true
51 parallel = true
52 source =
53 dotbot/
54 tests/
57 [coverage:html]
58 directory = htmlcov
61 [gh-actions]
62 python =
63 ; Run on all platforms (Linux, Mac, and Windows)
64 3.8: py38-all_platforms
65 3.9: py39-all_platforms
66 3.10: py310-all_platforms
68 ; Run on most platforms (Linux and Mac)
69 pypy-2.7: pypy2-most_platforms
70 pypy-3.9: pypy3-most_platforms
71 2.7: py27-most_platforms
72 3.5: py35-most_platforms
73 3.6: py36-most_platforms
74 3.7: py37-most_platforms