X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=tox.ini;h=9fb5a416cb57bab2417eccdbdef9e29a322c16f0;hb=5270142e02cb28f88ea63fb8210e80f8a769eed7;hp=bde3a9757dc42efdbca4076c6e03b8c055421173;hpb=2d38d6ddfd88dd04fc3148984de6e633a545a456;p=functest.git diff --git a/tox.ini b/tox.ini index bde3a9757..9fb5a416c 100644 --- a/tox.ini +++ b/tox.ini @@ -1,11 +1,14 @@ [tox] -envlist = docs,pep8,pylint,py35,py27 +envlist = docs,pep8,pylint,yamllint,py35,py27,perm,cover [testenv] usedevelop = True deps = + -c{toxinidir}/upper-constraints.txt + -chttps://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/queens -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt +install_command = pip install {opts} {packages} commands = nosetests --with-xunit \ --with-coverage \ --cover-tests \ @@ -16,28 +19,108 @@ commands = nosetests --with-xunit \ [testenv:docs] basepython = python2.7 -commands = sphinx-build -W -b html docs/api/ docs/api/_build +commands = + doc8 \ + --ignore-path api/build \ + --ignore-path docs/release/release-notes/build \ + --ignore-path docs/testing/developer/devguide/build \ + --ignore-path docs/testing/developer/internship/security_group/build \ + --ignore-path docs/testing/developer/internship/testapi_evolution/build \ + --ignore-path docs/testing/developer/internship/unit_tests/build \ + --ignore-path docs/testing/developer/internship/vnf_catalog/build \ + --ignore-path docs/testing/user/configguide/build \ + --ignore-path docs/testing/user/userguide/build \ + api \ + docs/release/release-notes \ + docs/testing/user/configguide \ + docs/testing/user/userguide + sphinx-build -W -b html api/ api/build + sphinx-build -W -b html docs/release/release-notes docs/release/release-notes/build/html + sphinx-build -W -b html docs/testing/developer/devguide docs/testing/developer/devguide/build/html + sphinx-build -W -b html docs/testing/developer/internship/security_group docs/testing/developer/internship/security_group/build/html + sphinx-build -W -b html docs/testing/developer/internship/testapi_evolution docs/testing/developer/internship/testapi_evolution/build/html + sphinx-build -W -b html docs/testing/developer/internship/unit_tests docs/testing/developer/internship/unit_tests/build/html + sphinx-build -W -b html docs/testing/developer/internship/vnf_catalog docs/testing/developer/internship/vnf_catalog/build/html + sphinx-build -W -b html docs/testing/user/configguide docs/testing/user/configguide/build/html + sphinx-build -W -b html docs/testing/user/userguide docs/testing/user/userguide/build/html [testenv:pep8] basepython = python2.7 -deps = - {[testenv]deps} commands = flake8 [testenv:pylint] basepython = python2.7 -deps = - {[testenv]deps} whitelist_externals = bash -commands = bash -c \ - "pylint --persistent=n functest | sed -ne '/Raw metrics/,//p'" +modules = + functest.api + functest.ci + functest.cli + functest.opnfv_tests.openstack.rally + functest.opnfv_tests.openstack.refstack + functest.opnfv_tests.openstack.snaps + functest.opnfv_tests.openstack.tempest + functest.opnfv_tests.openstack.vping + functest.opnfv_tests.sdn.odl + functest.opnfv_tests.vnf.router + functest.tests.unit.ci + functest.tests.unit.cli + functest.tests.unit.odl + functest.tests.unit.openstack.rally + functest.tests.unit.openstack.snaps + functest.tests.unit.openstack.tempest + functest.tests.unit.openstack.vping + functest.tests.unit.vnf.router + functest.tests.unit.utils + functest.utils.config + functest.utils.constants + functest.utils.env + functest.utils.functest_utils +commands = + bash -c "\ + pylint -f parseable --ignore-imports=y --disable=locally-disabled functest | \ + tee pylint.out | sed -ne '/Raw metrics/,//p'" + pylint --reports=n --errors-only functest + pylint --disable=locally-disabled \ + --disable=duplicate-code \ + --ignore-imports=y --reports=n {[testenv:pylint]modules} + +[testenv:yamllint] +basepython = python2.7 +files = + .travis.yml + docker + functest/api + functest/ci + functest/opnfv_tests/vnf +commands = + yamllint -s {[testenv:yamllint]files} [testenv:py35] dirs = - functest/tests/unit/core + functest/tests/unit/ci + functest/tests/unit/cli functest/tests/unit/odl - functest/tests/unit/utils/test_decorators.py -deps = - -r{toxinidir}/requirements.py3.txt - -r{toxinidir}/test-requirements.txt + functest/tests/unit/utils commands = nosetests {[testenv:py35]dirs} + +[testenv:cover] +basepython = python2.7 +dirs = + functest/tests/unit/ci + functest/tests/unit/odl +commands = nosetests --with-coverage --cover-tests \ + --cover-package functest.ci.check_deployment \ + --cover-package functest.opnfv_tests.sdn.odl \ + --cover-package functest.tests.unit \ + --cover-min-percentage 100 {[testenv:cover]dirs} + +[testenv:perm] +basepython = python2.7 +whitelist_externals = bash +path=. -not -path './.tox/*' -not -path './.git/*' -not -path './docs/com/pres/reveal.js/*' +commands = + bash -c "\ + find {[testenv:perm]path} \( -type f -not -perm 644 -o -type d -not -perm 755 \) \ + -exec ls -l \{\} + | grep '.' && exit 1 || exit 0" + bash -c "\ + find {[testenv:perm]path} -exec file \{\} + | grep CRLF && exit 1 || exit 0"