Apply delete changes to image proxies
There was no v2 test_proxy, so this change adds one and adds tests for the delete calls. Change-Id: I558d9a75a31772e7f1c758293c67bc8198ab3fae
This commit is contained in:
committed by
Brian Curtin
parent
cedaff450c
commit
09fc9d90ed
@@ -19,8 +19,20 @@ class Proxy(proxy.BaseProxy):
|
||||
def create_image(self, **data):
|
||||
return image.Image(data).create(self.session)
|
||||
|
||||
def delete_image(self, **data):
|
||||
return image.Image(data).delete(self.session)
|
||||
def delete_image(self, value, ignore_missing=True):
|
||||
"""Delete an image
|
||||
|
||||
:param value: The value can be either the ID of an image or a
|
||||
:class:`~openstack.image.v1.image.Image` instance.
|
||||
:param bool ignore_missing: When set to ``False``
|
||||
:class:`~openstack.exceptions.ResourceNotFound` will be
|
||||
raised when the image does not exist.
|
||||
When set to ``True``, no exception will be set when
|
||||
attempting to delete a nonexistent server.
|
||||
|
||||
:returns: ``None``
|
||||
"""
|
||||
self._delete(image.Image, value, ignore_missing)
|
||||
|
||||
def find_image(self, name_or_id):
|
||||
return image.Image.find(self.session, name_or_id)
|
||||
|
||||
@@ -21,8 +21,20 @@ class Proxy(proxy.BaseProxy):
|
||||
def create_image(self, **data):
|
||||
return image.Image(data).create(self.session)
|
||||
|
||||
def delete_image(self, **data):
|
||||
return image.Image(data).delete(self.session)
|
||||
def delete_image(self, value, ignore_missing=True):
|
||||
"""Delete an image
|
||||
|
||||
:param value: The value can be either the ID of an image or a
|
||||
:class:`~openstack.image.v2.image.Image` instance.
|
||||
:param bool ignore_missing: When set to ``False``
|
||||
:class:`~openstack.exceptions.ResourceNotFound` will be
|
||||
raised when the image does not exist.
|
||||
When set to ``True``, no exception will be set when
|
||||
attempting to delete a nonexistent server.
|
||||
|
||||
:returns: ``None``
|
||||
"""
|
||||
self._delete(image.Image, value, ignore_missing)
|
||||
|
||||
def find_image(self, name_or_id):
|
||||
return image.Image.find(self.session, name_or_id)
|
||||
@@ -39,8 +51,20 @@ class Proxy(proxy.BaseProxy):
|
||||
def create_member(self, **data):
|
||||
return member.Member(data).create(self.session)
|
||||
|
||||
def delete_member(self, **data):
|
||||
return member.Member(data).delete(self.session)
|
||||
def delete_member(self, value, ignore_missing=True):
|
||||
"""Delete a member
|
||||
|
||||
:param value: The value can be either the ID of a member or a
|
||||
:class:`~openstack.image.v2.member.Member` instance.
|
||||
:param bool ignore_missing: When set to ``False``
|
||||
:class:`~openstack.exceptions.ResourceNotFound` will be
|
||||
raised when the member does not exist.
|
||||
When set to ``True``, no exception will be set when
|
||||
attempting to delete a nonexistent server.
|
||||
|
||||
:returns: ``None``
|
||||
"""
|
||||
self._delete(member.Member, value, ignore_missing)
|
||||
|
||||
def find_member(self, name_or_id):
|
||||
return member.Member.find(self.session, name_or_id)
|
||||
@@ -57,5 +81,17 @@ class Proxy(proxy.BaseProxy):
|
||||
def create_tag(self, **data):
|
||||
return tag.Tag(data).create(self.session)
|
||||
|
||||
def delete_tag(self, **data):
|
||||
return member.Tag(data).delete(self.session)
|
||||
def delete_tag(self, value, ignore_missing=True):
|
||||
"""Delete a tag
|
||||
|
||||
:param value: The value can be either the ID of a tag or a
|
||||
:class:`~openstack.image.v2.tag.Tag` instance.
|
||||
:param bool ignore_missing: When set to ``False``
|
||||
:class:`~openstack.exceptions.ResourceNotFound` will be
|
||||
raised when the tag does not exist.
|
||||
When set to ``True``, no exception will be set when
|
||||
attempting to delete a nonexistent server.
|
||||
|
||||
:returns: ``None``
|
||||
"""
|
||||
self._delete(tag.Tag, value, ignore_missing)
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
# under the License.
|
||||
|
||||
from openstack.image.v1 import _proxy
|
||||
from openstack.image.v1 import image
|
||||
from openstack.tests.unit import test_proxy_base
|
||||
|
||||
|
||||
@@ -24,8 +25,10 @@ class TestImageProxy(test_proxy_base.TestProxyBase):
|
||||
self.proxy.create_image)
|
||||
|
||||
def test_image_delete(self):
|
||||
self.verify_delete('openstack.image.v1.image.Image.delete',
|
||||
self.proxy.delete_image)
|
||||
self.verify_delete2(image.Image, self.proxy.delete_image, False)
|
||||
|
||||
def test_image_delete_ignore(self):
|
||||
self.verify_delete2(image.Image, self.proxy.delete_image, True)
|
||||
|
||||
def test_image_find(self):
|
||||
self.verify_find('openstack.image.v1.image.Image.find',
|
||||
|
||||
41
openstack/tests/unit/image/v2/test_proxy.py
Normal file
41
openstack/tests/unit/image/v2/test_proxy.py
Normal file
@@ -0,0 +1,41 @@
|
||||
# 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 openstack.image.v2 import _proxy
|
||||
from openstack.image.v2 import image
|
||||
from openstack.image.v2 import member
|
||||
from openstack.image.v2 import tag
|
||||
from openstack.tests.unit import test_proxy_base
|
||||
|
||||
|
||||
class TestImageProxy(test_proxy_base.TestProxyBase):
|
||||
def setUp(self):
|
||||
super(TestImageProxy, self).setUp()
|
||||
self.proxy = _proxy.Proxy(self.session)
|
||||
|
||||
def test_image_delete(self):
|
||||
self.verify_delete2(image.Image, self.proxy.delete_image, False)
|
||||
|
||||
def test_image_delete_ignore(self):
|
||||
self.verify_delete2(image.Image, self.proxy.delete_image, True)
|
||||
|
||||
def test_member_delete(self):
|
||||
self.verify_delete2(member.Member, self.proxy.delete_member, False)
|
||||
|
||||
def test_member_delete_ignore(self):
|
||||
self.verify_delete2(member.Member, self.proxy.delete_member, True)
|
||||
|
||||
def test_tag_delete(self):
|
||||
self.verify_delete2(tag.Tag, self.proxy.delete_tag, False)
|
||||
|
||||
def test_tag_delete_ignore(self):
|
||||
self.verify_delete2(tag.Tag, self.proxy.delete_tag, True)
|
||||
Reference in New Issue
Block a user