313279f99a
pep8 and hacking.py (by inheritance) have the ability to run self tests via docstrings, if we format the comments correctly, and change the docstring test regex. Include self testing in our normal pep8 tests. fix the comments to actually be test case compliant fix nova_import_alphabetical to pass on short import lists (only 2 lines, starting at the beginning of a file) comment where it doesn't appear that hacking.py tests are working (though there could be deeper black magic in some of them). fix a doc string in pep8 self tests that breaks N301 fix the fact that pep8 error strings are supposed to start with \w\d\d\d, we were just lucking out on some formatting because the string NOVA happened to be only 4 chars long. Add a couple of escapes so that we don't recursively fail on our own fail self tests for comments. (boy that's fun) Change-Id: I14d5e04cfc092b37ec4967cd7485e9975a5eb820
48 lines
1.6 KiB
INI
48 lines
1.6 KiB
INI
[tox]
|
|
envlist = py26,py27,pep8
|
|
|
|
[testenv]
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
LANG=en_US.UTF-8
|
|
LANGUAGE=en_US:en
|
|
LC_ALL=C
|
|
deps = -r{toxinidir}/tools/pip-requires
|
|
-r{toxinidir}/tools/test-requires
|
|
commands = bash -c 'if [ ! -d ./.testrepository ] ; then testr init ; fi'
|
|
bash -c 'testr run --parallel {posargs} ; RET=$? ; echo "Slowest Tests" ; testr slowest && exit $RET'
|
|
|
|
[tox:jenkins]
|
|
sitepackages = True
|
|
downloadcache = ~/cache/pip
|
|
|
|
[testenv:pep8]
|
|
deps=pep8==1.3.3
|
|
commands =
|
|
python tools/hacking.py --doctest
|
|
python tools/hacking.py --ignore=E12,E711,E721,E712 --repeat --show-source \
|
|
--exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg .
|
|
python tools/hacking.py --ignore=E12,E711,E721,E712 --repeat --show-source \
|
|
--filename=nova* bin
|
|
|
|
[testenv:pylint]
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
deps = -r{toxinidir}/tools/pip-requires
|
|
pylint==0.26.0
|
|
commands = bash tools/lintstack.sh
|
|
|
|
[testenv:pyflakes]
|
|
deps = pyflakes
|
|
commands = python tools/flakes.py nova
|
|
|
|
[testenv:cover]
|
|
# Need to omit DynamicallyCompiledCheetahTemplate.py from coverage because
|
|
# it ceases to exist post test run. Also do not run test_coverage_ext tests
|
|
# while gathering coverage as those tests conflict with coverage.
|
|
setenv = OMIT=--omit=DynamicallyCompiledCheetahTemplate.py
|
|
PYTHON=coverage run --source nova --parallel-mode
|
|
commands = bash -c 'if [ ! -d ./.testrepository ] ; then testr init ; fi'
|
|
bash -c 'testr run --parallel \^\(\?\!\.\*test_coverage_ext\)\.\*\$ ; RET=$? ; coverage combine ; coverage html -d ./cover $OMIT && exit $RET'
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|