summaryrefslogtreecommitdiff
path: root/glanceclient/tests
diff options
context:
space:
mode:
authorDanny Al-Gaaf <danny.al-gaaf@bisect.de>2016-03-09 23:19:22 +0100
committerDanny Al-Gaaf <danny.al-gaaf@bisect.de>2016-03-09 23:27:02 +0100
commit860908c51791da9655d09fd176a1e7fcec6881b8 (patch)
tree05a198ea5236c4501186c4472aca1daa7dcc0e92 /glanceclient/tests
parent22a03fd475d1807dee41b24291862f1bdc361273 (diff)
downloadpython-glanceclient-860908c51791da9655d09fd176a1e7fcec6881b8.tar.gz
Catch InUseByStore case in do_image_delete
In case do_image_delete() is called on an image that is in use and can't be deleted by the driver a HTTPConflict error is raised in glance. Catch this error and print a propper error message. Closes-Bug: #1551037 Change-Id: Id17098f27511df8e05e56b8df21e748921223bd9 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Diffstat (limited to 'glanceclient/tests')
-rw-r--r--glanceclient/tests/unit/v2/test_shell_v2.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/glanceclient/tests/unit/v2/test_shell_v2.py b/glanceclient/tests/unit/v2/test_shell_v2.py
index cddb925..e79a42c 100644
--- a/glanceclient/tests/unit/v2/test_shell_v2.py
+++ b/glanceclient/tests/unit/v2/test_shell_v2.py
@@ -644,6 +644,20 @@ class ShellV2Test(testtools.TestCase):
self.assertEqual(2, mocked_print_err.call_count)
mocked_utils_exit.assert_called_once_with()
+ @mock.patch.object(utils, 'exit')
+ @mock.patch.object(utils, 'print_err')
+ def test_do_image_delete_with_image_in_use(self, mocked_print_err,
+ mocked_utils_exit):
+ args = argparse.Namespace(id=['image1', 'image2'])
+ with mock.patch.object(self.gc.images, 'delete') as mocked_delete:
+ mocked_delete.side_effect = exc.HTTPConflict
+
+ test_shell.do_image_delete(self.gc, args)
+
+ self.assertEqual(2, mocked_delete.call_count)
+ self.assertEqual(2, mocked_print_err.call_count)
+ mocked_utils_exit.assert_called_once_with()
+
def test_do_image_delete_deleted(self):
image_id = 'deleted-img'
args = argparse.Namespace(id=[image_id])