dmyersturnbull/service-it

View on GitHub
tox.ini

Summary

Maintainability
Test Coverage
[tox]
minversion = 3.20
extras = dev
isolated_build = True
envlist = py39

[testenv]
whitelist_externals =
    poetry
skipdist = True
# the - prefix means ignore nonzero exit codes
commands =
    poetry check
    poetry build
    poetry install -v
    poetry run pre-commit run check-toml
    poetry run pre-commit run check-yaml
    poetry run pre-commit run check-json
    poetry run pytest --cov-report term-missing --cov=chemserve tests/
    - poetry run bandit -r serviceit
    - poetry run bandit -r tests --skip B101
    - poetry run flake8 serviceit
    - poetry run flake8 docs
    - poetry run flake8 --ignore=D100,D101,D102,D103,D104,S101,W503,E203,E225,E301,E302,E501,D107,D200,D205,D400,D403,D409,D410,D411,D212,W391,W293 tests


[coverage:run]
source = 'serviceit'

[coverage:html]
directory = .coverage_report

[flake8]
max-line-length = 100
# black contradicts W503
# D107 is for missing docstring in __init__, which isn't a problem if the args are listed in the class docstring
# the rest just seem overly picky, which obscures real problems
# I'm ignoring D101,D102,D105 for now -- the code is in an alpha state
# S404,S603,S607 are security issues with subprocess that are unavoidable for tyrannosaurus
ignore = W503,E203,E225,E301,E302,E501,D107,D200,D205,D400,D403,D409,D410,D411,D212,W391,W293,S404,S603,S607,D101,D102,D105
doctests = true
exclude =  .git
           __pycache__/
           build/
           dist/
import-order-style = google
docstring-convention = google