| [tox] |
| envlist = py26,py27,py33,py34,py35,pypy,gae,cover |
| |
| [testenv] |
| basedeps = mock>=1.3.0 |
| pycrypto>=2.6 |
| cryptography>=1.0 |
| pyopenssl>=0.14 |
| webtest |
| nose |
| flask |
| unittest2 |
| sqlalchemy |
| fasteners |
| deps = {[testenv]basedeps} |
| django |
| keyring |
| setenv = |
| pypy: with_gmp=no |
| DJANGO_SETTINGS_MODULE=tests.contrib.django_util.settings |
| commands = nosetests --ignore-files=test_appengine\.py --ignore-files=test__appengine_ndb\.py {posargs} |
| |
| [coverbase] |
| basepython = python2.7 |
| commands = |
| nosetests \ |
| --with-coverage \ |
| --cover-package=oauth2client \ |
| --cover-package=tests \ |
| --cover-erase \ |
| --cover-tests \ |
| --cover-branches \ |
| --ignore-files=test_appengine\.py \ |
| --ignore-files=test__appengine_ndb\.py |
| nosetests \ |
| --with-coverage \ |
| --cover-package=oauth2client.contrib.appengine \ |
| --cover-package=oauth2client.contrib._appengine_ndb \ |
| --cover-package=tests.contrib.test_appengine \ |
| --cover-package=tests.contrib.test__appengine_ndb \ |
| --with-gae \ |
| --cover-tests \ |
| --cover-branches \ |
| --gae-application=tests/data \ |
| --gae-lib-root={env:GAE_PYTHONPATH:google_appengine} \ |
| --logging-level=INFO \ |
| tests/contrib/test_appengine.py \ |
| tests/contrib/test__appengine_ndb.py |
| deps = {[testenv]deps} |
| coverage |
| nosegae |
| |
| [testenv:py26] |
| basepython = |
| python2.6 |
| commands = |
| nosetests \ |
| --ignore-files=test_appengine\.py \ |
| --ignore-files=test__appengine_ndb\.py \ |
| --ignore-files=test_keyring_storage\.py \ |
| --exclude-dir=oauth2client/contrib/django_util \ |
| --exclude-dir=tests/contrib/django_util \ |
| {posargs} |
| deps = {[testenv]basedeps} |
| nose-exclude |
| |
| [testenv:py33] |
| basepython = |
| python3.3 |
| commands = |
| nosetests \ |
| --ignore-files=test_appengine\.py \ |
| --ignore-files=test__appengine_ndb\.py \ |
| --ignore-files=test_django_orm\.py \ |
| --ignore-files=test_django_settings\.py \ |
| --ignore-files=test_django_util\.py \ |
| --exclude-dir=oauth2client/contrib/django_util \ |
| --exclude-dir=tests/contrib/django_util \ |
| {posargs} |
| deps = {[testenv]basedeps} |
| keyring |
| nose-exclude |
| |
| [testenv:cover] |
| basepython = {[coverbase]basepython} |
| commands = |
| {[coverbase]commands} |
| coverage report --show-missing --cover-min-percentage=100 |
| deps = |
| {[coverbase]deps} |
| |
| [testenv:coveralls] |
| basepython = {[coverbase]basepython} |
| commands = |
| {[coverbase]commands} |
| coverage report --show-missing |
| coveralls |
| deps = |
| {[coverbase]deps} |
| coveralls |
| passenv = {[testenv:system-tests]passenv} |
| |
| [testenv:docs] |
| basepython = python2.7 |
| deps = |
| {[testenv:cover]deps} |
| python-gflags |
| pyyaml |
| sphinx>=1.3b2 |
| sphinx-rtd-theme |
| webapp2 |
| commands = {toxinidir}/scripts/build_docs.sh |
| |
| [testenv:gae] |
| basepython = python2.7 |
| deps = {[testenv]basedeps} |
| nosegae |
| commands = |
| nosetests \ |
| --with-gae \ |
| --gae-lib-root={env:GAE_PYTHONPATH:google_appengine} \ |
| --gae-application=tests/data \ |
| --logging-level=INFO \ |
| tests/contrib/test_appengine.py \ |
| tests/contrib/test__appengine_ndb.py |
| |
| [testenv:system-tests] |
| basepython = |
| python2.7 |
| commands = |
| {toxinidir}/scripts/run_system_tests.sh |
| deps = |
| pycrypto>=2.6 |
| cryptography>=1.0 |
| pyopenssl>=0.14 |
| passenv = GOOGLE_* OAUTH2CLIENT_* TRAVIS* |
| |
| [testenv:system-tests3] |
| basepython = |
| python3.4 |
| commands = |
| {toxinidir}/scripts/run_system_tests.sh |
| deps = |
| pycrypto>=2.6 |
| cryptography>=1.0 |
| pyopenssl>=0.14 |
| passenv = {[testenv:system-tests]passenv} |
| |
| [testenv:gce-system-tests] |
| basepython = |
| python2.7 |
| commands = |
| python {toxinidir}/scripts/run_gce_system_tests.py |
| deps = |
| pycrypto>=2.6 |
| unittest2 |
| passenv = {[testenv:system-tests]passenv} |
| |
| [testenv:flake8] |
| commands = flake8 --import-order-style google {posargs} |
| deps = |
| flake8-putty |
| flake8-import-order |
| |
| [flake8] |
| exclude = .tox,.git,./*.egg,build, |
| application-import-names = oauth2client |
| putty-ignore = |
| # E402 module level import not at top of file |
| # These files have needed configurations defined before import |
| docs/conf.py : E402 |
| tests/contrib/test_appengine.py : E402 |
| # Additionally, ignore E100 (imports in wrong order) for Django configuration |
| tests/contrib/test_django_orm.py : E402,I100 |
| # E501 line too long |
| # Ignore lines over 80 chars that include "http:" or "https:" |
| /http:/ : E501 |
| /https:/ : E501 |