def test_project_cache(self, keystone_mock): project = fakes.FakeProject('project_a') keystone_mock.projects.list.return_value = [project] self.assertEqual({'project_a': project}, self.cloud.project_cache) project_b = fakes.FakeProject('project_b') keystone_mock.projects.list.return_value = [project, project_b] self.assertEqual({'project_a': project}, self.cloud.project_cache) self.cloud.get_project_cache.invalidate(self.cloud) self.assertEqual({ 'project_a': project, 'project_b': project_b }, self.cloud.project_cache)
def test_list_projects_v2(self, keystone_mock): project = fakes.FakeProject('project_a') keystone_mock.tenants.list.return_value = [project] self.cloud.cloud_config.config['identity_api_version'] = '2' self.assertEqual(meta.obj_list_to_dict([project]), self.cloud.list_projects()) project_b = fakes.FakeProject('project_b') keystone_mock.tenants.list.return_value = [project, project_b] self.assertEqual(meta.obj_list_to_dict([project]), self.cloud.list_projects()) self.cloud.list_projects.invalidate(self.cloud) self.assertEqual(meta.obj_list_to_dict([project, project_b]), self.cloud.list_projects())
def test_neutron_update_quotas(self, mock_keystone, mock_neutron): project = fakes.FakeProject('project_a') mock_keystone.tenants.list.return_value = [project] self.op_cloud.set_network_quotas(project, network=1) mock_neutron.update_quota.assert_called_once_with( body={'quota': {'network': 1}}, tenant_id='project_a')
def test_cinder_delete_quotas(self, mock_keystone, mock_cinder): project = fakes.FakeProject('project_a') mock_keystone.tenants.list.return_value = [project] self.op_cloud.delete_volume_quotas(project) mock_cinder.quotas.delete.assert_called_once_with( tenant_id='project_a')
def test_cinder_update_quotas(self, mock_keystone, mock_cinder): project = fakes.FakeProject('project_a') mock_keystone.tenants.list.return_value = [project] self.op_cloud.set_volume_quotas(project, volumes=1) mock_cinder.quotas.update.assert_called_once_with( volumes=1, tenant_id='project_a')
def test_neutron_delete_quotas(self, mock_keystone, mock_neutron): project = fakes.FakeProject('project_a') mock_keystone.tenants.list.return_value = [project] self.op_cloud.delete_network_quotas(project) mock_neutron.delete_quota.assert_called_once_with( tenant_id='project_a')
def test_get_usage(self, mock_keystone, mock_nova): project = fakes.FakeProject('project_a') start = end = datetime.datetime.now() mock_keystone.tenants.list.return_value = [project] self.op_cloud.get_compute_usage(project, start, end) mock_nova.usage.get.assert_called_once_with(start=start, end=end, tenant_id='project_a')
def test_update_quotas(self, mock_keystone, mock_nova): project = fakes.FakeProject('project_a') mock_keystone.tenants.list.return_value = [project] self.cloud.set_compute_quotas(project, cores=1) mock_nova.quotas.update.assert_called_once_with(cores=1, force=True, tenant_id='project_a')
def test_delete_quotas(self, mock_keystone, mock_nova): project = fakes.FakeProject('project_a') mock_keystone.tenants.list.return_value = [project] self.op_cloud.delete_compute_quotas(project) mock_nova.quotas.delete.assert_called_once_with(tenant_id='project_a') mock_nova.quotas.delete.side_effect = nova_exceptions.BadRequest(400) self.assertRaises(exc.OpenStackCloudException, self.op_cloud.delete_compute_quotas, project)
def test_get_quotas(self, mock_keystone, mock_nova): project = fakes.FakeProject('project_a') mock_keystone.tenants.list.return_value = [project] self.op_cloud.get_compute_quotas(project) mock_nova.quotas.get.assert_called_once_with(tenant_id='project_a')
def setUp(self): super(TestRoleAssignment, self).setUp() self.fake_role = obj_to_dict(fakes.FakeRole('12345', 'test')) self.fake_user = obj_to_dict( fakes.FakeUser('12345', '*****@*****.**', 'test', domain_id='test-domain')) self.fake_group = obj_to_dict( fakes.FakeGroup('12345', 'test', 'test group', domain_id='test-domain')) self.fake_project = obj_to_dict( fakes.FakeProject('12345', domain_id='test-domain')) self.fake_domain = obj_to_dict( fakes.FakeDomain('test-domain', 'test', 'test domain', enabled=True)) self.user_project_assignment = obj_to_dict({ 'role': { 'id': self.fake_role['id'] }, 'scope': { 'project': { 'id': self.fake_project['id'] } }, 'user': { 'id': self.fake_user['id'] } }) self.group_project_assignment = obj_to_dict({ 'role': { 'id': self.fake_role['id'] }, 'scope': { 'project': { 'id': self.fake_project['id'] } }, 'group': { 'id': self.fake_group['id'] } }) self.user_domain_assignment = obj_to_dict({ 'role': { 'id': self.fake_role['id'] }, 'scope': { 'domain': { 'id': self.fake_domain['id'] } }, 'user': { 'id': self.fake_user['id'] } }) self.group_domain_assignment = obj_to_dict({ 'role': { 'id': self.fake_role['id'] }, 'scope': { 'domain': { 'id': self.fake_domain['id'] } }, 'group': { 'id': self.fake_group['id'] } })