[tox]
envlist =
    py26-oauth2client4
    py27-oauth2client{1,2,3,4}
    py33-oauth2client41
    py34-oauth2client41
    py35-oauth2client{1,2,3,4}

[testenv]
deps =
    nose
    python-gflags==3.0.6
    oauth2client1: oauth2client<1.5dev
    oauth2client2: oauth2client>=2,<=3dev
    oauth2client3: oauth2client>=3,<=4dev
    oauth2client4: oauth2client>=4,<=5dev
commands =
    pip install google-apitools[testing]
    nosetests []
passenv = TRAVIS*

[testenv:lint]
basepython =
    python2.7
commands =
    pip install six google-apitools
    pycodestyle apitools
deps =
    pycodestyle
    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==3.0.6
    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