refstack/tox.ini
Vladislav Kuzmin 16affe2d12 Improve database creation for testing
Create MySQL database before starting tests and cleanup after that.
MySQL database is able to work in standalone mode where establish
connection using a Unix domain socket.
This patch makes it possible to perform functional tests with `tox -e py27-func-mysql`.
If an enviroment variable REFSTACK_TEST_MYSQL_URL is set then tests will run with it
and a database will not be created.
Update test requirements.

Change-Id: I0cdba19701bbf06109e78f78f275038caeecd881
2015-03-06 10:14:04 +03:00

61 lines
1.6 KiB
INI

[tox]
# py33/py34 tests should be run before py27
# it is a workaround for testr bug
# https://bugs.launchpad.net/testrepository/+bug/1229445
envlist = py33,py34,py27,pep8
minversion = 1.6
skipsdist = True
[testenv]
usedevelop = True
install_command = pip install -U {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_ALL=C
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = python setup.py testr --testr-args='{posargs}'
distribute = false
[testenv:py27-func-mysql]
basepython = python2.7
# Integration/functional tests
# must not be run in parallel (--concurrency=1),
# because each of these tests
# require cleanup of database
commands = {toxinidir}/setup-mysql-tests.sh python setup.py testr --slowest --testr-args='{posargs:--concurrency=1}'
[testenv:pep8]
commands =
flake8 {posargs}
flake8 --filename=refstack* bin
distribute = false
[testenv:genconfig]
commands =
oslo-config-generator --output-file etc/refstack.conf.sample \
--namespace refstack \
--namespace oslo.db \
--namespace oslo.log
[testenv:venv]
commands = {posargs}
[testenv:cover]
commands = python setup.py testr --coverage --testr-args='{posargs}'
[tox:jenkins]
downloadcache = ~/cache/pip
[testenv:docs]
commands = python setup.py build_sphinx
[flake8]
# E125 continuation line does not distinguish itself from next logical line
# H404 multi line docstring should start with a summary
ignore = E125,H404
show-source = true
builtins = _
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,tools,build