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
|
[tox]
envlist = lint,typing,py37,py38,py39,py310,py311,py312,pypy3
skip_missing_interpreters = True
isolated_build = True
minversion = 3.3.0
[testenv]
deps =
coverage
pytest
pytest-mock
commands =
coverage erase
coverage run -m pytest {posargs} --doctest-modules --pyargs headerparser
coverage run -m pytest {posargs} test README.rst docs/index.rst
coverage combine
coverage report
[testenv:lint]
skip_install = True
deps =
flake8
flake8-bugbear
flake8-builtins
flake8-unused-arguments
commands =
flake8 src test
[testenv:typing]
deps =
mypy
types-Deprecated
{[testenv]deps}
commands =
mypy src test
[pytest]
doctest_optionflags = IGNORE_EXCEPTION_DETAIL
filterwarnings = error
[coverage:run]
branch = True
parallel = True
source = headerparser
[coverage:paths]
source =
src
.tox/**/site-packages
[coverage:report]
precision = 2
show_missing = True
[flake8]
doctests = True
exclude = .*/,build/,dist/,test/data,venv/
hang-closing = False
max-doc-length = 100
max-line-length = 80
unused-arguments-ignore-stub-functions = True
select = A,B,B902,B950,C,E,E242,F,U100,W
ignore = B005,E203,E262,E266,E501,W503
[isort]
atomic = True
force_sort_within_sections = True
honor_noqa = True
lines_between_sections = 0
profile = black
reverse_relative = True
sort_relative_in_force_sorted_sections = True
src_paths = src
[testenv:docs]
basepython = python3
deps = -rdocs/requirements.txt
changedir = docs
commands = sphinx-build -E -W -b html . _build/html
|