Add tox support

This commit is contained in:
James Page 2015-11-02 09:28:57 +00:00
parent 40b4e9a687
commit 0379ccb303
7 changed files with 61 additions and 2 deletions

View File

@ -1,3 +1,5 @@
bin bin
.coverage .coverage
.testrepository
.tox
tags tags

8
.testr.conf Normal file
View File

@ -0,0 +1,8 @@
[DEFAULT]
test_command=OS_STDOUT_CAPTURE=${OS_STDOUT_CAPTURE:-1} \
OS_STDERR_CAPTURE=${OS_STDERR_CAPTURE:-1} \
OS_TEST_TIMEOUT=${OS_TEST_TIMEOUT:-60} \
${PYTHON:-python} -m subunit.run discover -t ./ ./unit_tests $LISTOPT $IDOPTION
test_id_option=--load-list $IDFILE
test_list_option=--list

12
requirements.txt Normal file
View File

@ -0,0 +1,12 @@
# The order of packages is significant, because pip processes them in the order
# of appearance. Changing the order has an impact on the overall integration
# process, which may cause wedges in the gate later.
PyYAML>=3.1.0
simplejson>=2.2.0
netifaces>=0.10.4
netaddr>=0.7.12,!=0.7.16
Jinja2>=2.6 # BSD License (3 clause)
six>=1.9.0
dnspython>=1.12.0
psutil>=1.1.1,<2.0.0
python-neutronclient>=2.6.0

8
test-requirements.txt Normal file
View File

@ -0,0 +1,8 @@
# The order of packages is significant, because pip processes them in the order
# of appearance. Changing the order has an impact on the overall integration
# process, which may cause wedges in the gate later.
coverage>=3.6
mock>=1.2
flake8>=2.2.4,<=2.4.1
os-testr>=0.4.1
charm-tools

View File

@ -466,7 +466,7 @@ class NeutronAPIBasicDeployment(OpenStackAmuletDeployment):
'service_port': rel_napi_ks['service_port'], 'service_port': rel_napi_ks['service_port'],
'auth_host': rel_napi_ks['auth_host'], 'auth_host': rel_napi_ks['auth_host'],
'auth_port': rel_napi_ks['auth_port'], 'auth_port': rel_napi_ks['auth_port'],
'auth_protocol': rel_napi_ks['auth_protocol'] 'auth_protocol': rel_napi_ks['auth_protocol']
}) })
for section, pairs in expected.iteritems(): for section, pairs in expected.iteritems():

29
tox.ini Normal file
View File

@ -0,0 +1,29 @@
[tox]
envlist = lint,py27
skipsdist = True
[testenv]
setenv = VIRTUAL_ENV={envdir}
PYTHONHASHSEED=0
install_command =
pip install --allow-unverified python-apt {opts} {packages}
commands = ostestr {posargs}
[testenv:py27]
basepython = python2.7
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
[testenv:lint]
basepython = python2.7
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = flake8 {posargs} hooks unit_tests tests actions
charm proof
[testenv:venv]
commands = {posargs}
[flake8]
ignore = E402,E226
exclude = hooks/charmhelpers

View File

@ -217,7 +217,7 @@ class HAProxyContextTest(CharmTestCase):
@patch('__builtin__.__import__') @patch('__builtin__.__import__')
@patch('__builtin__.open') @patch('__builtin__.open')
def test_context_peers(self, _open, _import, _log, _rids, _runits, _rget, def test_context_peers(self, _open, _import, _log, _rids, _runits, _rget,
_uget, _lunit, _config, _get_address_in_network, _uget, _lunit, _config, _get_address_in_network,
_get_netmask_for_address): _get_netmask_for_address):
unit_addresses = { unit_addresses = {
'neutron-api-0': '10.10.10.10', 'neutron-api-0': '10.10.10.10',