[tox]
envlist = py26,py27,pep8
minversion = 1.6
skipsdist = True

[testenv]
usedevelop = True
install_command = pip install --allow-external netifaces --allow-insecure netifaces -U {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
         NOSE_WITH_OPENSTACK=1
         NOSE_OPENSTACK_COLOR=1
         NOSE_OPENSTACK_RED=0.05
         NOSE_OPENSTACK_YELLOW=0.025
         NOSE_OPENSTACK_SHOW_ELAPSED=1
         NOSE_OPENSTACK_STDOUT=1
         NOSE_WITH_COVERAGE=1
         NOSE_COVER_BRANCHES=1
deps =
  -r{toxinidir}/requirements.txt
  -r{toxinidir}/test-requirements.txt
commands = nosetests {posargs:test/unit}

[testenv:cover]
setenv = VIRTUAL_ENV={envdir}
         NOSE_WITH_COVERAGE=1
         NOSE_COVER_BRANCHES=1
         NOSE_COVER_HTML=1
         NOSE_COVER_HTML_DIR={toxinidir}/cover

[tox:jenkins]
downloadcache = ~/cache/pip

[testenv:pep8]
commands =
  flake8 swift test doc setup.py
  flake8 --filename=swift* bin

[testenv:venv]
commands = {posargs}

[flake8]
# it's not a bug that we aren't using all of hacking
# H102 -> apache2 license exists
# H103 -> license is apache
# H201 -> no bare excepts # add when hacking supports noqa
# H501 -> don't use locals() for str formatting
# H903 -> \n not \r\n
ignore = H
select = F,E,W,H102,H103,H501,H903
exclude = .venv,.tox,dist,doc,*egg
show-source = True
