summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-09-01 04:01:05 +0000
committerGerrit Code Review <review@openstack.org>2016-09-01 04:01:05 +0000
commit29099bbc68496645a44e9bd0c32d189b8e91f7ab (patch)
treee6d1718058fc6bc47a34ef4940784b4d6088ff44
parent099a135bef557e667bd2dd76bfdcb5cc191db95a (diff)
parent23aa30f02517d6335c191a3a893ab70c70193a36 (diff)
downloadpython-cinderclient-29099bbc68496645a44e9bd0c32d189b8e91f7ab.tar.gz
Merge "Wrap cluster related function with api_version"
-rw-r--r--cinderclient/tests/unit/v3/test_clusters.py11
-rw-r--r--cinderclient/v3/clusters.py4
2 files changed, 14 insertions, 1 deletions
diff --git a/cinderclient/tests/unit/v3/test_clusters.py b/cinderclient/tests/unit/v3/test_clusters.py
index 9b788e7..c2045b6 100644
--- a/cinderclient/tests/unit/v3/test_clusters.py
+++ b/cinderclient/tests/unit/v3/test_clusters.py
@@ -13,12 +13,14 @@
# License for the specific language governing permissions and limitations
# under the License.
+from cinderclient import api_versions
+from cinderclient import exceptions as exc
from cinderclient.tests.unit import utils
from cinderclient.tests.unit.v3 import fakes
import ddt
-cs = fakes.FakeClient()
+cs = fakes.FakeClient(api_version=api_versions.APIVersion('3.7'))
@ddt.ddt
@@ -55,6 +57,13 @@ class ClusterTest(utils.TestCase):
self._check_fields_present(lst, detailed)
@ddt.data(True, False)
+ def test_clusters_list_pre_version(self, detailed):
+ pre_cs = fakes.FakeClient(api_version=
+ api_versions.APIVersion('3.6'))
+ self.assertRaises(exc.VersionNotFoundForAPIMethod,
+ pre_cs.clusters.list, detailed=detailed)
+
+ @ddt.data(True, False)
def test_cluster_list_name(self, detailed):
lst = cs.clusters.list(name='cluster1@lvmdriver-1',
detailed=detailed)
diff --git a/cinderclient/v3/clusters.py b/cinderclient/v3/clusters.py
index 96f7497..bc50010 100644
--- a/cinderclient/v3/clusters.py
+++ b/cinderclient/v3/clusters.py
@@ -16,6 +16,7 @@
"""
Interface to clusters API
"""
+from cinderclient import api_versions
from cinderclient import base
@@ -35,6 +36,7 @@ class ClusterManager(base.ManagerWithFind):
url = "%s?%s" % (url, "&".join(filters))
return url
+ @api_versions.wraps("3.7")
def list(self, name=None, binary=None, is_up=None, disabled=None,
num_hosts=None, num_down_hosts=None, detailed=False):
"""Clustered Service list.
@@ -53,6 +55,7 @@ class ClusterManager(base.ManagerWithFind):
num_down_hosts=num_down_hosts)
return self._list(url, 'clusters')
+ @api_versions.wraps("3.7")
def show(self, name, binary=None):
"""Clustered Service show.
@@ -64,6 +67,7 @@ class ClusterManager(base.ManagerWithFind):
return self.resource_class(self, body['cluster'], loaded=True,
resp=resp)
+ @api_versions.wraps("3.7")
def update(self, name, binary, disabled, disabled_reason=None):
"""Enable or disable a clustered service.