[tox]
-envlist = docs,pep8,pylint,py35,py27
+envlist = docs,pep8,pylint,py35,py27,perm
[testenv]
usedevelop = True
deps =
+ -c{toxinidir}/upper-constraints.txt
+ -chttps://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/pike
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
+install_command = pip install {opts} {packages}
commands = nosetests --with-xunit \
--with-coverage \
--cover-tests \
[testenv:docs]
basepython = python2.7
-commands = sphinx-build -W -b html docs/api/ docs/api/_build
+commands = sphinx-build -W -b html api/ api/_build
[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.core
+ functest.opnfv_tests.sdn.odl
+ functest.tests.unit.core
+ functest.tests.unit.odl
+ functest.tests.unit.utils.test_decorators
+ functest.utils.decorators
+commands =
+ bash -c "\
+ pylint -f parseable --disable=locally-disabled functest | \
+ tee pylint.out | sed -ne '/Raw metrics/,//p'"
+ pylint --disable=locally-disabled --reports=n {[testenv:pylint]modules}
[testenv:py35]
dirs =
functest/tests/unit/core
functest/tests/unit/odl
functest/tests/unit/utils/test_decorators.py
-deps =
- -r{toxinidir}/requirements.py3.txt
- -r{toxinidir}/test-requirements.txt
-commands = nosetests --exclude=test_vnf {[testenv:py35]dirs}
+commands = nosetests {[testenv:py35]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"