[tox]
envlist = py{27,35},pep8,cover
minversion = 2.5
skipsdist = True

[testenv]
passenv = http_proxy
          HTTP_PROXY
          https_proxy
          HTTPS_PROXY
          no_proxy
          NO_PROXY
usedevelop = True
install_command = pip install {opts} {packages}
deps =
       -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
       -r{toxinidir}/requirements.txt
       -r{toxinidir}/test-requirements.txt
whitelist_externals = bash
                      find
                      rm
commands =
    find . -type f -name "*.py[c|o]" -delete
    stestr run {posargs}

[testenv:cover]
basepython = python3

commands =
  coverage erase
  python setup.py test --coverage --testr-args='{posargs}' --coverage-package-name=monascastatsd
  coverage report

[testenv:debug]
basepython = python3
commands =
  oslo_debug_helper -t {toxinidir}/tests {posargs}

[testenv:docs]
basepython = python3
commands =
  rm -rf doc/build
  python setup.py build_sphinx

[testenv:bandit]
basepython = python3
commands = bandit -r monascastatsd -s B311 -n5 -x monascastatsd/tests

[testenv:flake8]
basepython = python3
commands = flake8 monascastatsd

[testenv:pep8]
basepython = python3
commands =
  {[testenv:flake8]commands}
  {[testenv:bandit]commands}

[testenv:venv]
basepython = python3
commands = {posargs}

[flake8]
show-source = True
exclude=.venv,.git,.tox,dist,*egg,build,docs,cover
max-line-length = 100

[testenv:lower-constraints]
basepython = python3
deps =
  -c{toxinidir}/lower-constraints.txt
  -r{toxinidir}/test-requirements.txt
  -r{toxinidir}/requirements.txt
