[tox]
envlist = py26,py27,pypy,py34,py35,lint,cover,py27oldoauth2client

[testenv]
deps = nose
commands =
    pip install google-apitools[testing]
    nosetests []
passenv = TRAVIS*

[testenv:py27oldoauth2client]
commands =
    pip install oauth2client==1.5.2
    {[testenv]commands}
deps = {[testenv]deps}

[testenv:py34]
basepython = python3.4
deps =
    mock
    nose
    unittest2
commands = nosetests []

[testenv:py35]
basepython = python3.5
deps =
    mock
    nose
    unittest2
commands = nosetests []

[pep8]
exclude = samples/storage_sample/storage,samples/storage_sample/testdata,*.egg/,*.egg-info/,.*/,ez_setup.py,build
verbose = 1

[testenv:lint]
basepython =
    python2.7
commands =
    pip install six google-apitools[testing]
    pep8
    python run_pylint.py
deps =
    pep8
    pylint
    unittest2

[testenv:cover]
basepython =
    python2.7
commands =
    nosetests --with-xunit --with-xcoverage --cover-package=apitools --nocapture --cover-erase --cover-tests --cover-branches []
deps =
    google-apputils
    python-gflags
    mock
    nose
    unittest2
    coverage
    nosexcover

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

[testenv:transfer_coverage]
basepython =
    python2.7
deps =
    mock
    nose
    unittest2
    coverage
commands =
    coverage run --branch -p samples/storage_sample/downloads_test.py
    coverage run --branch -p samples/storage_sample/uploads_test.py
    coverage run --branch -p apitools/base/py/transfer_test.py
    coverage combine
    coverage html
