diff options
| author | Dean Troyer <dtroyer@gmail.com> | 2014-09-18 00:56:38 -0500 |
|---|---|---|
| committer | Dean Troyer <dtroyer@gmail.com> | 2015-01-20 17:01:23 -0600 |
| commit | 1ecf1bee2d5c1566533cdd8fad99733ea8336aa8 (patch) | |
| tree | aaf60bd664d98b17dbb703f7b14fb681ccf24aaf /openstackclient/tests/image/v2 | |
| parent | 95fe3fda3d041a4fa761040c80214d4ca5f29aaa (diff) | |
| download | python-openstackclient-1ecf1bee2d5c1566533cdd8fad99733ea8336aa8.tar.gz | |
Begin low-level API for Image v1 and v2
image list for v1 and v2:
* Add --public|--private to command parsers
* Implement local public/private filtering for v1 image_list()
* Pass public/private filter to server for v2 image_list()
Change-Id: Ie7c24ea2d1bf2b3b1b7fa342eb45fee45894634d
Diffstat (limited to 'openstackclient/tests/image/v2')
| -rw-r--r-- | openstackclient/tests/image/v2/test_image.py | 94 |
1 files changed, 86 insertions, 8 deletions
diff --git a/openstackclient/tests/image/v2/test_image.py b/openstackclient/tests/image/v2/test_image.py index bc61a89f..8fb31caa 100644 --- a/openstackclient/tests/image/v2/test_image.py +++ b/openstackclient/tests/image/v2/test_image.py @@ -14,6 +14,7 @@ # import copy +import mock from openstackclient.image.v2 import image from openstackclient.tests import fakes @@ -68,18 +69,93 @@ class TestImageList(TestImage): def setUp(self): super(TestImageList, self).setUp() - # This is the return value for utils.find_resource() - self.images_mock.list.return_value = [ - fakes.FakeResource( - None, - copy.deepcopy(image_fakes.IMAGE), - loaded=True, - ), + self.api_mock = mock.Mock() + self.api_mock.image_list.return_value = [ + copy.deepcopy(image_fakes.IMAGE), ] + self.app.client_manager.image.api = self.api_mock # Get the command object to test self.cmd = image.ListImage(self.app, None) + def test_image_list_no_options(self): + arglist = [] + verifylist = [ + ('public', False), + ('private', False), + ('long', False), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + # DisplayCommandBase.take_action() returns two tuples + columns, data = self.cmd.take_action(parsed_args) + self.api_mock.image_list.assert_called_with( + detailed=False, + ) + + collist = ('ID', 'Name') + + self.assertEqual(columns, collist) + datalist = (( + image_fakes.image_id, + image_fakes.image_name, + ), ) + self.assertEqual(datalist, tuple(data)) + + def test_image_list_public_option(self): + arglist = [ + '--public', + ] + verifylist = [ + ('public', True), + ('private', False), + ('long', False), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + # DisplayCommandBase.take_action() returns two tuples + columns, data = self.cmd.take_action(parsed_args) + self.api_mock.image_list.assert_called_with( + detailed=False, + public=True, + ) + + collist = ('ID', 'Name') + + self.assertEqual(columns, collist) + datalist = (( + image_fakes.image_id, + image_fakes.image_name, + ), ) + self.assertEqual(datalist, tuple(data)) + + def test_image_list_private_option(self): + arglist = [ + '--private', + ] + verifylist = [ + ('public', False), + ('private', True), + ('long', False), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + # DisplayCommandBase.take_action() returns two tuples + columns, data = self.cmd.take_action(parsed_args) + self.api_mock.image_list.assert_called_with( + detailed=False, + private=True, + ) + + collist = ('ID', 'Name') + + self.assertEqual(columns, collist) + datalist = (( + image_fakes.image_id, + image_fakes.image_name, + ), ) + self.assertEqual(datalist, tuple(data)) + def test_image_list_long_option(self): arglist = [ '--long', @@ -91,7 +167,9 @@ class TestImageList(TestImage): # DisplayCommandBase.take_action() returns two tuples columns, data = self.cmd.take_action(parsed_args) - self.images_mock.list.assert_called_with() + self.api_mock.image_list.assert_called_with( + detailed=True, + ) collist = ('ID', 'Name', 'Disk Format', 'Container Format', 'Size', 'Status') |
