summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorviswesn <viswesn@gmail.com>2016-11-12 12:29:04 +0530
committerviswesn <viswesn@gmail.com>2016-11-12 12:29:04 +0530
commit6dc5c7028e32d7055ed532cf1e47963fa1a46dec (patch)
treee301166669f5649ec499e660f1e2afd284f73ae1
parent12b8abf3cf9a7946d578cc66aa7f7d69a582e6aa (diff)
downloadcharm-murano-6dc5c7028e32d7055ed532cf1e47963fa1a46dec.zip
charm-murano-6dc5c7028e32d7055ed532cf1e47963fa1a46dec.tar.gz
charm-murano-6dc5c7028e32d7055ed532cf1e47963fa1a46dec.tar.bz2
Updated unit and amulet testing for Murano charm
-rw-r--r--.testr.conf8
-rw-r--r--unit_tests/test_lib_charm_openstack_murano.py86
2 files changed, 94 insertions, 0 deletions
diff --git a/.testr.conf b/.testr.conf
new file mode 100644
index 0000000..801646b
--- /dev/null
+++ b/.testr.conf
@@ -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
diff --git a/unit_tests/test_lib_charm_openstack_murano.py b/unit_tests/test_lib_charm_openstack_murano.py
new file mode 100644
index 0000000..b200486
--- /dev/null
+++ b/unit_tests/test_lib_charm_openstack_murano.py
@@ -0,0 +1,86 @@
+# Copyright 2016 Canonical Ltd
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from __future__ import absolute_import
+from __future__ import print_function
+
+import unittest
+
+import mock
+
+import charm.openstack.murano as murano
+
+
+def FakeConfig(init_dict):
+
+ def _config(key=None):
+ return init_dict[key] if key else init_dict
+
+ return _config
+
+
+class Helper(unittest.TestCase):
+
+ def setUp(self):
+ self._patches = {}
+ self._patches_start = {}
+ self.ch_config_patch = mock.patch('charmhelpers.core.hookenv.config')
+ self.ch_config = self.ch_config_patch.start()
+ self.ch_config.side_effect = lambda: {'ssl_param': None}
+
+ def tearDown(self):
+ for k, v in self._patches.items():
+ v.stop()
+ setattr(self, k, None)
+ self._patches = None
+ self._patches_start = None
+ self.ch_config_patch.stop()
+
+ def patch(self, obj, attr, return_value=None, **kwargs):
+ mocked = mock.patch.object(obj, attr, **kwargs)
+ self._patches[attr] = mocked
+ started = mocked.start()
+ started.return_value = return_value
+ self._patches_start[attr] = started
+ setattr(self, attr, started)
+
+ def patch_object(self, obj, attr, return_value=None, name=None, new=None):
+ if name is None:
+ name = attr
+ if new is not None:
+ mocked = mock.patch.object(obj, attr, new=new)
+ else:
+ mocked = mock.patch.object(obj, attr)
+ self._patches[name] = mocked
+ started = mocked.start()
+ if new is None:
+ started.return_value = return_value
+ self._patches_start[name] = started
+ setattr(self, name, started)
+
+
+class TestMuranoCharm(Helper):
+
+ def test_install(self):
+ self.patch(murano.MuranoCharm, 'configure_source')
+ a = murano.MuranoCharm(release='mitaka')
+ a.install()
+ self.configure_source.assert_called_with()
+
+ def test__init__(self):
+ self.patch(murano.MuranoCharm,
+ 'set_config_defined_certs_and_keys')
+ self.patch(murano.ch_utils, 'os_release')
+ murano.MuranoCharm()
+ self.os_release.assert_called_once_with('python-keystonemiddleware')

This mirror site include all the OpenStack related repositories under: openstack, openstack-dev and openstack-infra.

NOTE: All repositories are updated every one hour.

Usage

For Git Clone
 git clone http://git.trystack.cn/openstack/nova.git 
For DevStack

Add GIT_BASE, NOVNC_REPO and SPICE_REPO variables to local.conf file.

[[local|localrc]]

# use TryStack git mirror
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git