49f53f35a5
Currently we run tests which uses real backend or real daemons with other unit tests. This CR is initial for sequence of functional tests implementation. It contains only moving files and modules to right directories and fixing tox.ini. This approach allows to avoid constantly rebase conflicts, because git handles file removing correct. Next step - separate classes and functions from moved files to right test types. Depends-On: Ifdb0de150b2c738117308b2aae6c0c197e162821 Change-Id: I16b84ed83ac075658626f3ec6a35a24e228b61e7 Partialy-Implement: blueprint ceilometer-functional-tests
123 lines
3.8 KiB
INI
123 lines
3.8 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
envlist = py27,py34,py-mysql,py-pgsql,pep8
|
|
|
|
[testenv]
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
install_command = pip install -U {opts} {packages}
|
|
usedevelop = True
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
EVENTLET_NO_GREENDNS=yes
|
|
OS_TEST_PATH=ceilometer/tests/unit
|
|
commands =
|
|
python setup.py testr --slowest --testr-args="{posargs}"
|
|
whitelist_externals = bash
|
|
|
|
# TODO(ityaptin): With separation tests to unit and functional folders we need
|
|
# set environment variable OS_TEST_PATH=./ceilometer/tests/functional
|
|
# in "py-<backend>" jobs
|
|
|
|
[testenv:py-mongodb]
|
|
setenv = OS_TEST_PATH=ceilometer/tests/functional/
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-mongodb.sh python setup.py testr --slowest --testr-args="{posargs}"
|
|
|
|
[testenv:py-mysql]
|
|
setenv = OS_TEST_PATH=ceilometer/tests/functional/
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-mysql.sh python setup.py testr --slowest --testr-args="{posargs}"
|
|
|
|
[testenv:py-pgsql]
|
|
setenv = OS_TEST_PATH=ceilometer/tests/functional/
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-postgresql.sh python setup.py testr --slowest --testr-args="{posargs}"
|
|
|
|
# Functional tests for elastic search
|
|
[testenv:py-elastic]
|
|
setenv = OS_TEST_PATH=ceilometer/tests/functional/
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-es.sh python setup.py testr --slowest --testr-args="{posargs}"
|
|
|
|
[testenv:functional]
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
EVENTLET_NO_GREENDNS=yes
|
|
OS_TEST_PATH=ceilometer/tests/functional/
|
|
commands =
|
|
bash -x {toxinidir}/run-functional-tests.sh "{posargs}"
|
|
|
|
[testenv:integration]
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
EVENTLET_NO_GREENDNS=yes
|
|
OS_TEST_PATH=./ceilometer/tests/integration
|
|
OS_TEST_TIMEOUT=2400
|
|
GABBI_LIVE_FAIL_IF_NO_TEST=1
|
|
passenv = HEAT_* CEILOMETER_* GNOCCHI_* AODH_* GLANCE_* NOVA_* ADMIN_*
|
|
commands =
|
|
bash -x {toxinidir}/tools/pretty_tox.sh "{posargs}"
|
|
|
|
# NOTE(chdent): The gabbi tests are also run under the primary tox
|
|
# targets. This target simply provides a target to directly run just
|
|
# gabbi tests without needing to discovery across the entire body of
|
|
# tests.
|
|
[testenv:gabbi]
|
|
setenv = OS_TEST_PATH=ceilometer/tests/functional/gabbi
|
|
commands =
|
|
bash -x {toxinidir}/setup-test-env-mongodb.sh \
|
|
python setup.py testr --testr-args="{posargs}"
|
|
|
|
[testenv:cover]
|
|
commands = bash -x {toxinidir}/setup-test-env-mongodb.sh python setup.py testr --slowest --coverage --testr-args="{posargs}"
|
|
|
|
[testenv:pep8]
|
|
commands =
|
|
flake8
|
|
# Check that .po and .pot files are valid:
|
|
bash -c "find ceilometer -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"
|
|
|
|
[testenv:genconfig]
|
|
commands =
|
|
oslo-config-generator --output-file etc/ceilometer/ceilometer.conf \
|
|
--namespace ceilometer \
|
|
--namespace oslo.concurrency \
|
|
--namespace oslo.db \
|
|
--namespace oslo.log \
|
|
--namespace oslo.messaging \
|
|
--namespace oslo.policy \
|
|
--namespace oslo.service.service \
|
|
--namespace keystonemiddleware.auth_token
|
|
|
|
[testenv:docs]
|
|
commands = python setup.py build_sphinx
|
|
setenv = PYTHONHASHSEED=0
|
|
|
|
[testenv:pylint]
|
|
commands = bash tools/lintstack.sh
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
setenv = PYTHONHASHSEED=0
|
|
|
|
[testenv:debug]
|
|
commands = bash -x {toxinidir}/setup-test-env-mongodb.sh oslo_debug_helper {posargs}
|
|
|
|
[testenv:debug-mysql]
|
|
commands = bash -x {toxinidir}/setup-test-env-mysql.sh oslo_debug_helper {posargs}
|
|
|
|
[testenv:debug-pgsql]
|
|
commands = bash -x {toxinidir}/setup-test-env-postgresql.sh oslo_debug_helper {posargs}
|
|
|
|
[testenv:debug-elastic]
|
|
commands = bash -x {toxinidir}/setup-test-env-elastic.sh oslo_debug_helper {posargs}
|
|
|
|
[flake8]
|
|
ignore =
|
|
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build
|
|
show-source = True
|
|
|
|
[hacking]
|
|
import_exceptions =
|
|
ceilometer.i18n
|
|
local-check-factory = ceilometer.hacking.checks.factory
|