Skip to content

Commit b284523

Browse files
committed
feat(image): Add delete image tool (#20)
1 parent 7f09983 commit b284523

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

tests/tools/test_image_tools.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
from unittest.mock import Mock
44

5+
import pytest
6+
7+
from openstack.exceptions import NotFoundException
8+
59
from openstack_mcp_server.tools.image_tools import ImageTools
610
from openstack_mcp_server.tools.request.image import CreateImage
711
from openstack_mcp_server.tools.response.image import Image
@@ -281,3 +285,27 @@ def test_create_image_success_with_import_options(
281285
assert mock_get_openstack_conn_image.get_image.called_once_with(
282286
mock_image["id"],
283287
)
288+
289+
def test_delete_image_success(self, mock_get_openstack_conn_image):
290+
"""Test deleting an image successfully."""
291+
mock_conn = mock_get_openstack_conn_image
292+
image_id = "img-delete-123-456"
293+
294+
mock_conn.image.delete_image.return_value = None
295+
296+
image_tools = ImageTools()
297+
result = image_tools.delete_image(image_id)
298+
299+
assert result is None
300+
mock_conn.image.delete_image.assert_called_once_with(image_id)
301+
302+
def test_delete_image_not_found(self, mock_get_openstack_conn_image):
303+
"""Test deleting an image that does not exist."""
304+
mock_conn = mock_get_openstack_conn_image
305+
image_id = "img-delete-123-456"
306+
mock_conn.image.delete_image.side_effect = NotFoundException()
307+
308+
image_tools = ImageTools()
309+
with pytest.raises(NotFoundException):
310+
image_tools.delete_image(image_id)
311+
mock_conn.image.delete_image.assert_called_once_with(image_id)

0 commit comments

Comments
 (0)