[tox]
envlist = py37,pep8
minversion = 2.6
skipsdist = True

[testenv]
basepython = python3
usedevelop = True
passenv =  http_proxy
           HTTP_PROXY
           https_proxy
           HTTPS_PROXY
           no_proxy
           NO_PROXY
deps = -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
       -r{toxinidir}/requirements.txt
       -r{toxinidir}/test-requirements.txt
install_command = pip install {opts} {packages}

whitelist_externals =
    /bin/bash
    find
commands =
    find . -type f -name "*.pyc" -delete
    /bin/bash run_tests.sh -N {posargs}

[testenv:pep8]
commands =
  /bin/bash run_tests.sh -N --pep8

[testenv:venv]
commands = {posargs}

[testenv:cover]
commands = /bin/bash run_tests.sh -N --coverage {posargs}

[flake8]
# F405 TEMPLATES may be undefined, or defined from star imports
# (because it is not easy to avoid this in openstack_dashboard.test.settings)
# W504 line break after binary operator
# (we use W503 instead)
ignore = F405,W504
max-line-length = 100
builtins = _
exclude = .venv,.git,.tox,dist,*lib/python*,*egg,build,panel_template,dash_template,local_settings.py,*/local/*,*/test/test_plugins/*

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