Skip to content

Commit

Permalink
Simplify keystone password assertions
Browse files Browse the repository at this point in the history
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
  • Loading branch information
stmcginnis committed Jan 24, 2018
1 parent 6bbab2f commit a4b427c
Showing 1 changed file with 17 additions and 24 deletions.
41 changes: 17 additions & 24 deletions cinder/tests/unit/compute/test_nova.py
Original file line number Diff line number Diff line change
Expand Up @@ -109,14 +109,11 @@ def test_nova_client_privileged_user(self, p_session, p_password_plugin,
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,
Expand All @@ -137,14 +134,11 @@ def test_nova_client_privileged_user_custom_auth_url(self, p_session,
'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,
Expand All @@ -161,14 +155,13 @@ def test_nova_client_custom_region(self, p_session, p_password_plugin,

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',
Expand Down

0 comments on commit a4b427c

Please sign in to comment.