diff options
| author | sunyajing <yajing.sun@easystack.cn> | 2016-06-01 13:48:23 +0800 |
|---|---|---|
| committer | sunyajing <yajing.sun@easystack.cn> | 2016-06-13 16:15:01 +0800 |
| commit | 8c7e34d65ca6217eee54389fcd40554a8cb454e6 (patch) | |
| tree | 86d60a88abdde220baf6fa5020940816841f42d1 /openstackclient/tests/image | |
| parent | 0695d1495e8337149850b8f753c603e7cac1989c (diff) | |
| download | python-openstackclient-8c7e34d65ca6217eee54389fcd40554a8cb454e6.tar.gz | |
Fix image delete multiple arguments error
Fix image delete command, support processing multiple arguments
delete error.
Fix doc/source/command-errors.rst, make the msg format correct.
Change-Id: Icbe347fe077bc148bf71ea8f7399b0e934b7cdf9
Partially-Implements: blueprint multi-argument-image
Diffstat (limited to 'openstackclient/tests/image')
| -rw-r--r-- | openstackclient/tests/image/v2/test_image.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/openstackclient/tests/image/v2/test_image.py b/openstackclient/tests/image/v2/test_image.py index ca20d83d..f940b865 100644 --- a/openstackclient/tests/image/v2/test_image.py +++ b/openstackclient/tests/image/v2/test_image.py @@ -473,6 +473,37 @@ class TestImageDelete(TestImage): self.images_mock.delete.assert_has_calls(calls) self.assertIsNone(result) + def test_image_delete_multi_images_exception(self): + + images = image_fakes.FakeImage.create_images(count=2) + arglist = [ + images[0].id, + images[1].id, + 'x-y-x', + ] + verifylist = [ + ('images', arglist) + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + # Fake exception in utils.find_resource() + # In image v2, we use utils.find_resource() to find a network. + # It calls get() several times, but find() only one time. So we + # choose to fake get() always raise exception, then pass through. + # And fake find() to find the real network or not. + ret_find = [ + images[0], + images[1], + exceptions.NotFound('404'), + ] + + self.images_mock.get = Exception() + self.images_mock.find.side_effect = ret_find + self.assertRaises(exceptions.CommandError, self.cmd.take_action, + parsed_args) + calls = [mock.call(i.id) for i in images] + self.images_mock.delete.assert_has_calls(calls) + class TestImageList(TestImage): |
