commit 5e8f044538e9cc5e5495dd1aa481799da4db37ba Author: wanglbj Date: Mon Apr 13 16:27:37 2020 +0800 Add show types API to v3 types client library add show default volume types api to v3 types client Change-Id: I3053c49a5ce6bac33c91170978bef2d14375d3fa diff --git a/releasenotes/notes/add-show-default-volume-types-api-to-v3-types-client-44b2676f217d78dc.yaml b/releasenotes/notes/add-show-default-volume-types-api-to-v3-types-client-44b2676f217d78dc.yaml new file mode 100644 index 0000000..2cd5af6 --- /dev/null +++ b/releasenotes/notes/add-show-default-volume-types-api-to-v3-types-client-44b2676f217d78dc.yaml @@ -0,0 +1,6 @@ +--- +features: + - | + Add show type API to v3 types_client library. + + * default_volume_type diff --git a/tempest/lib/services/volume/v3/types_client.py b/tempest/lib/services/volume/v3/types_client.py index 7fa24a4..1ebd447 100644 --- a/tempest/lib/services/volume/v3/types_client.py +++ b/tempest/lib/services/volume/v3/types_client.py @@ -65,6 +65,19 @@ class TypesClient(rest_client.RestClient): self.validate_response(schema.show_volume_type, resp, body) return rest_client.ResponseBody(resp, body) + def show_default_volume_type(self): + """Returns the details of a single volume type. + + For a full list of available parameters, please refer to the official + API reference: + https://docs.openstack.org/api-ref/block-storage/v3/index.html#show-default-volume-type + """ + url = "types/default" + resp, body = self.get(url) + body = json.loads(body) + self.validate_response(schema.show_volume_type, resp, body) + return rest_client.ResponseBody(resp, body) + def create_volume_type(self, **kwargs): """Create volume type. diff --git a/tempest/tests/lib/services/volume/v3/test_types_client.py b/tempest/tests/lib/services/volume/v3/test_types_client.py index 336aa32..19d6591 100644 --- a/tempest/tests/lib/services/volume/v3/test_types_client.py +++ b/tempest/tests/lib/services/volume/v3/test_types_client.py @@ -121,6 +121,13 @@ class TestTypesClient(base.BaseServiceTest): to_utf=bytes_body, volume_type_id="6685584b-1eac-4da6-b5c3-555430cf68ff") + def _test_show_default_volume_type(self, bytes_body=False): + self.check_service_client_function( + self.client.show_default_volume_type, + 'tempest.lib.common.rest_client.RestClient.get', + self.FAKE_DEFAULT_VOLUME_TYPE_INFO, + to_utf=bytes_body) + def _test_create_volume_type(self, bytes_body=False): self.check_service_client_function( self.client.create_volume_type, @@ -224,6 +231,12 @@ class TestTypesClient(base.BaseServiceTest): def test_show_volume_type_with_bytes_body(self): self._test_show_volume_type(bytes_body=True) + def test_show_default_volume_type_with_str_body(self): + self._test_show_default_volume_type() + + def test_show_default_volume_type_with_bytes_body(self): + self._test_show_default_volume_type(bytes_body=True) + def test_create_volume_type_str_body(self): self._test_create_volume_type()