Add tox support
This commit is contained in:
parent
acd500f953
commit
f3bebc3fc4
@ -1,2 +1,5 @@
|
||||
bin
|
||||
.coverage
|
||||
.testrepository
|
||||
.tox
|
||||
tags
|
||||
|
8
.testr.conf
Normal file
8
.testr.conf
Normal 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
|
11
requirements.txt
Normal file
11
requirements.txt
Normal file
@ -0,0 +1,11 @@
|
||||
# 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
|
8
test-requirements.txt
Normal file
8
test-requirements.txt
Normal 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
|
29
tox.ini
Normal file
29
tox.ini
Normal 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
|
@ -9,7 +9,8 @@ from test_utils import CharmTestCase
|
||||
|
||||
from mock import patch
|
||||
with patch('actions.hooks.lib.misc_utils.is_paused') as is_paused:
|
||||
import actions.actions
|
||||
with patch('actions.hooks.lib.swift_storage_utils.register_configs') as _:
|
||||
import actions.actions
|
||||
|
||||
|
||||
class PauseTestCase(CharmTestCase):
|
||||
|
@ -3,9 +3,8 @@ import os
|
||||
|
||||
os.environ['JUJU_UNIT_NAME'] = 'swift-storge'
|
||||
|
||||
with patch('charmhelpers.core.hookenv.config') as config:
|
||||
with patch('lib.misc_utils.is_paused') as is_paused:
|
||||
config.return_value = 'swift-storage'
|
||||
with patch('lib.misc_utils.is_paused') as is_paused:
|
||||
with patch('lib.swift_storage_utils.register_configs') as _:
|
||||
import actions.openstack_upgrade as openstack_upgrade
|
||||
|
||||
from test_utils import (
|
||||
|
@ -1,16 +1,10 @@
|
||||
from mock import patch, MagicMock
|
||||
from mock import patch
|
||||
|
||||
from test_utils import CharmTestCase, patch_open
|
||||
|
||||
import lib.swift_storage_utils as utils
|
||||
|
||||
_reg = utils.register_configs
|
||||
utils.register_configs = MagicMock()
|
||||
|
||||
with patch('hooks.lib.misc_utils.is_paused') as is_paused:
|
||||
import hooks.swift_storage_hooks as hooks
|
||||
|
||||
utils.register_configs = _reg
|
||||
with patch('hooks.lib.swift_storage_utils.register_configs') as _:
|
||||
import hooks.swift_storage_hooks as hooks
|
||||
|
||||
from lib.swift_storage_utils import PACKAGES
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user