diff options
author | Jenkins <jenkins@review.openstack.org> | 2015-06-15 18:11:27 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2015-06-15 18:11:27 +0000 |
commit | 0d22e821f9df4247e16a115f8b486d9bdd68eea1 (patch) | |
tree | 45f8aa6eb5a0815e18c5e7c87b4be7d0a193c0c1 /glanceclient/tests | |
parent | e863cb3f94d3c9841a9ea5506a2fdfd795e348d1 (diff) | |
parent | 116fac8ae81a154f64be8e3b9629cedf7d4eaad1 (diff) | |
download | python-glanceclient-0d22e821f9df4247e16a115f8b486d9bdd68eea1.tar.gz |
Merge "Add parameter 'changes-since' for image-list of v1"
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): |