Private flavor tenant minor fix (python2)
Issue error message when tenant list in add_tenant request does not contain any valid tenant for flavor already assigned to region(s). Also update corresponding unit tests. Change-Id: Id1a532b60f35a4c3fef8f9bcd16b13334bf5b2ff
This commit is contained in:
@@ -381,13 +381,11 @@ def add_tenants(flavor_uuid, tenants, transaction_id):
|
||||
validate_tenants_regions_list(tenants.tenants,
|
||||
existing_region_list,
|
||||
'create', datamanager)
|
||||
# replace tenants.tenants with only the valid tenants
|
||||
tenants.tenants = valid_tenants_list
|
||||
|
||||
else:
|
||||
if not valid_tenants_list:
|
||||
raise ValueError("At least one valid tenant must be provided")
|
||||
|
||||
for tenant in tenants.tenants:
|
||||
for tenant in valid_tenants_list:
|
||||
if not isinstance(tenant, basestring):
|
||||
raise ValueError("tenant type must be a string type,"
|
||||
" got {} type".format(type(tenant)))
|
||||
|
@@ -502,11 +502,13 @@ class TestFlavorLogic(FunctionalTest):
|
||||
|
||||
@patch.object(flavor_logic, 'send_to_rds_if_needed')
|
||||
@patch.object(flavor_logic, 'get_flavor_by_uuid')
|
||||
def test_add_tenants_success(self, mock_gfbu, mock_strin):
|
||||
@patch.object(flavor_logic, 'validate_tenants_regions_list')
|
||||
def test_add_tenants_success(self, mock_val, mock_gfbu, mock_strin):
|
||||
ret_flavor = MagicMock()
|
||||
tenants = ['test_tenant']
|
||||
ret_flavor.flavor.tenants = tenants
|
||||
mock_gfbu.return_value = ret_flavor
|
||||
mock_val.return_value = ['test_tenant'], ['test_region']
|
||||
global error
|
||||
error = 31
|
||||
injector.override_injected_dependency(
|
||||
@@ -519,11 +521,13 @@ class TestFlavorLogic(FunctionalTest):
|
||||
|
||||
@patch.object(flavor_logic, 'send_to_rds_if_needed')
|
||||
@patch.object(flavor_logic, 'get_flavor_by_uuid')
|
||||
def test_add_tenants_errors(self, mock_gfbu, mock_strin):
|
||||
@patch.object(flavor_logic, 'validate_tenants_regions_list')
|
||||
def test_add_tenants_errors(self, mock_val, mock_gfbu, mock_strin):
|
||||
ret_flavor = MagicMock()
|
||||
tenants = ['test_tenant']
|
||||
ret_flavor.flavor.tenants = tenants
|
||||
mock_gfbu.return_value = ret_flavor
|
||||
mock_val.return_value = ['test_tenant'], ['test_region']
|
||||
global error
|
||||
|
||||
error = 1
|
||||
@@ -541,15 +545,16 @@ class TestFlavorLogic(FunctionalTest):
|
||||
TenantWrapper(tenants),
|
||||
'transaction')
|
||||
|
||||
# test that no valid tenant found
|
||||
error = 31
|
||||
moq = MagicMock()
|
||||
mock_strin.side_effect = exc.FlushError(
|
||||
'conflicts with persistent instance')
|
||||
self.assertRaises(flavor_logic.ConflictError,
|
||||
mock_val.return_value = [], ['test_region']
|
||||
self.assertRaises(ValueError,
|
||||
flavor_logic.add_tenants, 'uuid',
|
||||
TenantWrapper(tenants),
|
||||
'transaction')
|
||||
|
||||
mock_val.return_value = ['test_tenant'], ['test_region']
|
||||
|
||||
mock_strin.side_effect = exc.FlushError('')
|
||||
self.assertRaises(exc.FlushError,
|
||||
flavor_logic.add_tenants, 'uuid',
|
||||
|
Reference in New Issue
Block a user