diff options
Diffstat (limited to 'glanceclient/tests')
-rw-r--r-- | glanceclient/tests/unit/v1/test_shell.py | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/glanceclient/tests/unit/v1/test_shell.py b/glanceclient/tests/unit/v1/test_shell.py index 4c74ca0..963c560 100644 --- a/glanceclient/tests/unit/v1/test_shell.py +++ b/glanceclient/tests/unit/v1/test_shell.py @@ -233,6 +233,24 @@ class ShellInvalidEndpointandParameterTest(utils.TestCase): self.shell = shell.OpenStackImagesShell() + self.gc = self._mock_glance_client() + + def _make_args(self, args): + #NOTE(venkatesh): this conversion from a dict to an object + # is required because the test_shell.do_xxx(gc, args) methods + # expects the args to be attributes of an object. If passed as + # dict directly, it throws an AttributeError. + class Args(): + def __init__(self, entries): + self.__dict__.update(entries) + + return Args(args) + + def _mock_glance_client(self): + my_mocked_gc = mock.Mock() + my_mocked_gc.get.return_value = {} + return my_mocked_gc + def tearDown(self): super(ShellInvalidEndpointandParameterTest, self).tearDown() os.environ = self.old_environment @@ -335,6 +353,45 @@ class ShellInvalidEndpointandParameterTest(utils.TestCase): SystemExit, self.run_command, 'image-list --size-max 10gb') + def test_do_image_list_with_changes_since(self): + input = { + 'name': None, + 'limit': None, + 'status': None, + 'container_format': 'bare', + 'size_min': None, + 'size_max': None, + 'is_public': True, + 'disk_format': 'raw', + 'page_size': 20, + 'visibility': True, + 'member_status': 'Fake', + 'owner': 'test', + 'checksum': 'fake_checksum', + 'tag': 'fake tag', + 'properties': [], + 'sort_key': None, + 'sort_dir': None, + 'all_tenants': False, + 'human_readable': True, + 'changes_since': '2011-1-1' + } + args = self._make_args(input) + with mock.patch.object(self.gc.images, 'list') as mocked_list: + mocked_list.return_value = {} + + v1shell.do_image_list(self.gc, args) + + exp_img_filters = {'container_format': 'bare', + 'changes-since': '2011-1-1', + 'disk_format': 'raw', + 'is_public': True} + mocked_list.assert_called_once_with(sort_dir=None, + sort_key=None, + owner='test', + page_size=20, + filters=exp_img_filters) + class ShellStdinHandlingTests(testtools.TestCase): |