-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tox.ini
110 lines (99 loc) · 1.9 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
[testenv:bootstrap]
deps =
jinja2
matrix
tox
skip_install = true
commands =
python ci/bootstrap.py --no-env
passenv =
*
; a generative tox configuration, see: https://tox.readthedocs.io/en/latest/config.html#generative-envlist
[tox]
envlist =
clean,
check,
docs,
{py37,py38,py39},
report
ignore_basepython_conflict = true
# https://tox.readthedocs.io/en/latest/example/package.html#setuptools
isolated_build = True
[gh-actions]
python =
3.7: py37
3.8: py38, clean, check, docs, report
3.9: py39
[testenv]
setenv =
PYTHONPATH={toxinidir}/tests
PYTHONUNBUFFERED=yes
passenv =
*
usedevelop = false
deps =
pytest
pytest-cov
commands =
{posargs:pytest --cov --cov-report=term-missing -vv tests}
[testenv:check]
deps =
pre-commit
skip_install = true
commands =
pre-commit run --all-files
[testenv:docs]
; usedevelop = true
deps =
poetry
commands =
poetry install --extras docs
poetry run sphinx-build {posargs:-E} -b doctest docs dist/docs
poetry run sphinx-build {posargs:-E} -b html docs dist/docs
; TODO fix links
; sphinx-build -b linkcheck docs dist/docs
[testenv:codecov]
deps =
codecov
skip_install = true
commands =
codecov []
[testenv:report]
deps =
coverage
skip_install = true
commands =
coverage report
coverage html
[testenv:clean]
commands = coverage erase
skip_install = true
deps =
coverage
; https://coverage.readthedocs.io/en/coverage-5.3.1/config.html
[coverage:paths]
source =
src
*/site-packages
[coverage:run]
branch = true
source =
cdown
tests
parallel = true
[coverage:report]
show_missing = true
skip_covered = true
precision = 2
omit =
*migrations*
src/cdown/__main__.py
exclude_lines =
pragma: no cover
def __repr__
if self.debug:
if settings.DEBUG
raise AssertionError
raise NotImplementedError
if 0:
if __name__ == .__main__.: