diff options
author | Vladyslav Drok <vdrok@mirantis.com> | 2016-03-03 20:09:33 +0200 |
---|---|---|
committer | Jim Rollenhagen <jim@jimrollenhagen.com> | 2016-03-03 17:02:50 -0800 |
commit | e9f49ad195884a973e32105f4e3f22512d967f0e (patch) | |
tree | a45394d2499ffc08a5c775f5dfb03657c7238083 | |
parent | b50435cf85d081065221f04ad916b61bd720189c (diff) | |
download | ironic-e9f49ad195884a973e32105f4e3f22512d967f0e.tar.gz |
Fix unittests after new release of glanceclient
Two unittests in the test_glance_service.py module was depending on
getting an instance of the real glanceclient and it was failing due a
new glanceclient release. This patch is fixing the problem by mocking
the client instanciation.
Closes-bug: #1552839
Closes-Bug: #1552834
Co-Authored-By: Lucas Alvares Gomes <lucasagomes@gmail.com>
Change-Id: Ic9dc3f1016667c6d7ec5ee324d5fff48af82c581
(cherry picked from commit 036b959b9245ba44b5ea895ea48584dedc282fdf)
-rw-r--r-- | ironic/tests/common/test_glance_service.py | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/ironic/tests/common/test_glance_service.py b/ironic/tests/common/test_glance_service.py index 37bfbe0ff..e2364dfdb 100644 --- a/ironic/tests/common/test_glance_service.py +++ b/ironic/tests/common/test_glance_service.py @@ -20,6 +20,7 @@ import os import tempfile import time +from glanceclient import client as glance_client from glanceclient import exc as glance_exc import mock from oslo_config import cfg @@ -600,28 +601,44 @@ class TestGlanceImageService(base.TestCase): wrapped_func = base_image_service.check_image_service(func) self.assertTrue(wrapped_func(self.service)) - def test_check_image_service__no_client_set_http(self): + @mock.patch.object(glance_client, 'Client', autospec=True) + def test_check_image_service__no_client_set_http(self, mock_gclient): def func(service, *args, **kwargs): return (self.endpoint, args, kwargs) + endpoint = 'http://123.123.123.123:9292' + mock_gclient.return_value.endpoint = endpoint self.service.client = None - params = {'image_href': 'http://123.123.123.123:9292/image_uuid'} + + params = {'image_href': '%s/image_uuid' % endpoint} self.config(auth_strategy='keystone', group='glance') wrapped_func = base_image_service.check_image_service(func) - self.assertEqual(('http://123.123.123.123:9292', (), params), + self.assertEqual((endpoint, (), params), wrapped_func(self.service, **params)) + mock_gclient.assert_called_once_with( + 1, endpoint, + **{'insecure': CONF.glance.glance_api_insecure, + 'token': self.context.auth_token}) - def test_get_image_service__no_client_set_https(self): + @mock.patch.object(glance_client, 'Client', autospec=True) + def test_get_image_service__no_client_set_https(self, mock_gclient): def func(service, *args, **kwargs): return (self.endpoint, args, kwargs) + endpoint = 'https://123.123.123.123:9292' + mock_gclient.return_value.endpoint = endpoint self.service.client = None - params = {'image_href': 'https://123.123.123.123:9292/image_uuid'} + + params = {'image_href': '%s/image_uuid' % endpoint} self.config(auth_strategy='keystone', group='glance') wrapped_func = base_image_service.check_image_service(func) - self.assertEqual(('https://123.123.123.123:9292', (), params), + self.assertEqual((endpoint, (), params), wrapped_func(self.service, **params)) + mock_gclient.assert_called_once_with( + 1, endpoint, + **{'insecure': CONF.glance.glance_api_insecure, + 'token': self.context.auth_token}) def _create_failing_glance_client(info): |