summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-09-01 14:06:45 +0000
committerGerrit Code Review <review@openstack.org>2016-09-01 14:06:45 +0000
commitcf463e766cd3826b0df99d407ea6f4cd6326fc90 (patch)
tree51d81e2f141cc970c3991d95fdd0bb4e3de0cb4b
parent29099bbc68496645a44e9bd0c32d189b8e91f7ab (diff)
parentff564a783f2243664963b12e446288ece1ffc2e0 (diff)
downloadpython-cinderclient-cf463e766cd3826b0df99d407ea6f4cd6326fc90.tar.gz
Merge "Make Resource class's function can be wraped by api_version"
-rw-r--r--cinderclient/openstack/common/apiclient/base.py4
-rw-r--r--cinderclient/tests/unit/test_base.py10
2 files changed, 14 insertions, 0 deletions
diff --git a/cinderclient/openstack/common/apiclient/base.py b/cinderclient/openstack/common/apiclient/base.py
index 2503898..bea1520 100644
--- a/cinderclient/openstack/common/apiclient/base.py
+++ b/cinderclient/openstack/common/apiclient/base.py
@@ -506,6 +506,10 @@ class Resource(RequestIdMixin):
else:
return self.__dict__[k]
+ @property
+ def api_version(self):
+ return self.manager.api_version
+
def get(self):
# set_loaded() first ... so if we have to bail, we know we tried.
self.set_loaded(True)
diff --git a/cinderclient/tests/unit/test_base.py b/cinderclient/tests/unit/test_base.py
index 437ff2e..613d09b 100644
--- a/cinderclient/tests/unit/test_base.py
+++ b/cinderclient/tests/unit/test_base.py
@@ -13,11 +13,14 @@
from requests import Response
+from cinderclient import api_versions
from cinderclient import base
+from cinderclient.v3 import client
from cinderclient import exceptions
from cinderclient.openstack.common.apiclient import base as common_base
from cinderclient.v1 import volumes
from cinderclient.tests.unit import utils
+from cinderclient.tests.unit import test_utils
from cinderclient.tests.unit.v1 import fakes
@@ -87,6 +90,13 @@ class BaseTest(utils.TestCase):
r = base.Resource(None, {"name": "1"}, resp=resp_obj)
self.assertEqual([REQUEST_ID], r.request_ids)
+ def test_api_version(self):
+ version = api_versions.APIVersion('3.1')
+ api = client.Client(api_version=version)
+ manager = test_utils.FakeManagerWithApi(api)
+ r1 = base.Resource(manager, {'id': 1})
+ self.assertEqual(version, r1.api_version)
+
class ListWithMetaTest(utils.TestCase):
def test_list_with_meta(self):