From a4b427c5e8a0bcd59c21d821c9a305cf1a54b159 Mon Sep 17 00:00:00 2001 From: Sean McGinnis Date: Wed, 24 Jan 2018 09:41:32 -0600 Subject: [PATCH] Simplify keystone password assertions With an update to keystoneauth1 > 3.3.0, some of the arguments to the password plugin change. Some of our unit tests were a little too zealous in checking the expected parameters that get passed in to this. Since we just need to verify that the password plugin is being used, and we don't necessarily care about each of the values being passed, just assert that the password plugin was called, check some specific values, and keep it simple. Change-Id: Id0d3b06b2debad70d36c253a3c1ee9d561a22e64 --- cinder/tests/unit/compute/test_nova.py | 41 +++++++++++--------------- 1 file changed, 17 insertions(+), 24 deletions(-) diff --git a/cinder/tests/unit/compute/test_nova.py b/cinder/tests/unit/compute/test_nova.py index aa2eae842ae..2eb6bc79ad1 100644 --- a/cinder/tests/unit/compute/test_nova.py +++ b/cinder/tests/unit/compute/test_nova.py @@ -109,14 +109,11 @@ class NovaClientTestCase(test.TestCase): p_client, p_api_version): nova.novaclient(self.ctx, privileged_user=True) - p_password_plugin.assert_called_once_with( - auth_url='http://keystonehost:5000', default_domain_id=None, - default_domain_name=None, domain_id=None, domain_name=None, - password='strongpassword', project_domain_id=None, - project_domain_name=None, project_id=None, project_name=None, - trust_id=None, user_domain_id=None, user_domain_name=None, - user_id=None, username='adminuser' - ) + p_password_plugin.assert_called_once() + self.assertEqual('adminuser', + p_password_plugin.call_args[1]['username']) + self.assertEqual('http://keystonehost:5000', + p_password_plugin.call_args[1]['auth_url']) p_client.assert_called_once_with( p_api_version(nova.NOVA_API_VERSION), session=p_session.return_value, region_name=None, @@ -137,14 +134,11 @@ class NovaClientTestCase(test.TestCase): 'http://privatekeystonehost:5000', group='nova') nova.novaclient(self.ctx, privileged_user=True) - p_password_plugin.assert_called_once_with( - auth_url='http://privatekeystonehost:5000', default_domain_id=None, - default_domain_name=None, domain_id=None, domain_name=None, - password='strongpassword', project_domain_id=None, - project_domain_name=None, project_id=None, project_name=None, - trust_id=None, user_domain_id=None, user_domain_name=None, - user_id=None, username='adminuser' - ) + p_password_plugin.assert_called_once() + self.assertEqual('http://privatekeystonehost:5000', + p_password_plugin.call_args[1]['auth_url']) + self.assertEqual('adminuser', + p_password_plugin.call_args[1]['username']) p_client.assert_called_once_with( p_api_version(nova.NOVA_API_VERSION), session=p_session.return_value, region_name=None, @@ -161,14 +155,13 @@ class NovaClientTestCase(test.TestCase): CONF.set_override('region_name', 'farfaraway', group='nova') nova.novaclient(self.ctx, privileged_user=True) - p_password_plugin.assert_called_once_with( - auth_url='http://keystonehost:5000', default_domain_id=None, - default_domain_name=None, domain_id=None, domain_name=None, - password='strongpassword', project_domain_id=None, - project_domain_name=None, project_id=None, project_name=None, - trust_id=None, user_domain_id=None, user_domain_name=None, - user_id=None, username='adminuser' - ) + # This doesn't impact the password plugin, just make sure it was called + # with expected default values + p_password_plugin.assert_called_once() + self.assertEqual('http://keystonehost:5000', + p_password_plugin.call_args[1]['auth_url']) + self.assertEqual('adminuser', + p_password_plugin.call_args[1]['username']) p_client.assert_called_once_with( p_api_version(nova.NOVA_API_VERSION), session=p_session.return_value, region_name='farfaraway',