[tox]
minversion = 4.0.2
envlist = py3,pep8,cover
skipsdist = True

[testenv]
usedevelop = True
setenv = VIRTUAL_ENV={envdir}
deps =
  -r{toxinidir}/test-requirements.txt
  -r{toxinidir}/requirements.txt
commands = stestr run --slowest {posargs}

[testenv:pep8]
commands = flake8 {posargs}

[testenv:cover]
setenv =
  {[testenv]setenv}
  PYTHON=coverage run --source coriolis --parallel-mode
commands =
  stestr run --no-subunit-trace {posargs}
  coverage combine
  coverage report --fail-under=82 --skip-covered
  coverage html -d cover
  coverage xml -o cover/coverage.xml

[testenv:venv]
commands = {posargs}

[coverage:run]
source = coriolis
omit = coriolis/tests/*

[flake8]
# E125 is deliberately excluded. See https://github.com/jcrocholl/pep8/issues/126
# E251 Skipped due to https://github.com/jcrocholl/pep8/issues/301

ignore = E125,E251,W503,W504,E305,E731,E117,W605,F632,H401,H403,H404,H405,H202
exclude =  .venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,tools
