[tox] envlist = docs,pep8,pylint,yamllint,bashate,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 \ --cover-package=functest \ --cover-xml \ --cover-html \ functest/tests/unit [testenv:docs] basepython = python2.7 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 commands = flake8 [testenv:pylint] basepython = python2.7 whitelist_externals = bash 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/ci functest/tests/unit/cli functest/tests/unit/odl functest/tests/unit/utils commands = nosetests {[testenv:py35]dirs} [testenv:bashate] basepython = python2.7 files = functest/opnfv_tests/openstack/rally/scenario/support/instance_dd_test.sh functest/ci/download_images.sh build.sh commands = bashate {[testenv:bashate]files} [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"