[tox]
envlist =
    py26,py27,cover,docs,lint

[testenv:py26]
commands =
    nosetests
deps =
    nose
    unittest2
    protobuf==2.6.0

[testenv]
install_command =
    {toxinidir}/scripts/custom_pip_install.sh {opts} {packages}
commands =
    nosetests
deps =
    nose
    unittest2

[testenv:cover]
basepython =
    python2.7
commands =
    nosetests --with-xunit --with-xcoverage --cover-package=gcloud --nocapture --cover-erase --cover-tests --cover-branches --cover-min-percentage=100
deps =
    nose
    unittest2
    coverage
    nosexcover

[testenv:coveralls]
basepython = {[testenv:cover]basepython}
commands =
    {[testenv:cover]commands}
    coveralls
deps =
    {[testenv:cover]deps}
    coveralls

[testenv:docs]
basepython =
    python2.7
commands =
    python -c "import shutil; shutil.rmtree('docs/_build', ignore_errors=True)"
    sphinx-build -W -b html -d docs/_build/doctrees docs docs/_build/html
deps =
    Sphinx

[pep8]
exclude = gcloud/datastore/datastore_v1_pb2.py,docs/conf.py,*.egg/,.*/
verbose = 1

[testenv:lint]
basepython =
    python2.7
commands =
    pep8
    python run_pylint.py
deps =
    pep8
    pylint
    unittest2

[testenv:regression]
basepython =
    python2.7
commands =
    {toxinidir}/scripts/run_regression.sh
deps =
    unittest2
