Merge "Ignore more exceptions in quota list"
This commit is contained in:
commit
8770b6ed5c
@ -135,7 +135,10 @@ class ListQuota(command.Lister):
|
|||||||
try:
|
try:
|
||||||
data = compute_client.quotas.get(p)
|
data = compute_client.quotas.get(p)
|
||||||
except Exception as ex:
|
except Exception as ex:
|
||||||
if type(ex).__name__ == 'NotFound':
|
if (
|
||||||
|
type(ex).__name__ == 'NotFound' or
|
||||||
|
ex.http_status >= 400 and ex.http_status <= 499
|
||||||
|
):
|
||||||
# Project not found, move on to next one
|
# Project not found, move on to next one
|
||||||
LOG.warning("Project %s not found: %s" % (p, ex))
|
LOG.warning("Project %s not found: %s" % (p, ex))
|
||||||
continue
|
continue
|
||||||
|
@ -242,7 +242,7 @@ class TestQuotaList(TestQuota):
|
|||||||
self.assertEqual(self.compute_reference_data, ret_quotas[0])
|
self.assertEqual(self.compute_reference_data, ret_quotas[0])
|
||||||
self.assertEqual(1, len(ret_quotas))
|
self.assertEqual(1, len(ret_quotas))
|
||||||
|
|
||||||
def test_quota_list_compute_no_project(self):
|
def test_quota_list_compute_no_project_not_found(self):
|
||||||
# Make one of the projects disappear
|
# Make one of the projects disappear
|
||||||
self.compute.quotas.get = mock.Mock(
|
self.compute.quotas.get = mock.Mock(
|
||||||
side_effect=[
|
side_effect=[
|
||||||
@ -266,6 +266,53 @@ class TestQuotaList(TestQuota):
|
|||||||
self.assertEqual(self.compute_reference_data, ret_quotas[0])
|
self.assertEqual(self.compute_reference_data, ret_quotas[0])
|
||||||
self.assertEqual(1, len(ret_quotas))
|
self.assertEqual(1, len(ret_quotas))
|
||||||
|
|
||||||
|
def test_quota_list_compute_no_project_4xx(self):
|
||||||
|
# Make one of the projects disappear
|
||||||
|
self.compute.quotas.get = mock.Mock(
|
||||||
|
side_effect=[
|
||||||
|
self.compute_quotas[0],
|
||||||
|
exceptions.BadRequest("Bad request"),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
|
arglist = [
|
||||||
|
'--compute',
|
||||||
|
]
|
||||||
|
verifylist = [
|
||||||
|
('compute', True),
|
||||||
|
]
|
||||||
|
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
||||||
|
|
||||||
|
columns, data = self.cmd.take_action(parsed_args)
|
||||||
|
ret_quotas = list(data)
|
||||||
|
|
||||||
|
self.assertEqual(self.compute_column_header, columns)
|
||||||
|
self.assertEqual(self.compute_reference_data, ret_quotas[0])
|
||||||
|
self.assertEqual(1, len(ret_quotas))
|
||||||
|
|
||||||
|
def test_quota_list_compute_no_project_5xx(self):
|
||||||
|
# Make one of the projects disappear
|
||||||
|
self.compute.quotas.get = mock.Mock(
|
||||||
|
side_effect=[
|
||||||
|
self.compute_quotas[0],
|
||||||
|
exceptions.HTTPNotImplemented("Not implemented??"),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
|
arglist = [
|
||||||
|
'--compute',
|
||||||
|
]
|
||||||
|
verifylist = [
|
||||||
|
('compute', True),
|
||||||
|
]
|
||||||
|
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
||||||
|
|
||||||
|
self.assertRaises(
|
||||||
|
exceptions.HTTPNotImplemented,
|
||||||
|
self.cmd.take_action,
|
||||||
|
parsed_args,
|
||||||
|
)
|
||||||
|
|
||||||
def test_quota_list_network(self):
|
def test_quota_list_network(self):
|
||||||
# Two projects with non-default quotas
|
# Two projects with non-default quotas
|
||||||
self.network.get_quota = mock.Mock(
|
self.network.get_quota = mock.Mock(
|
||||||
|
Loading…
Reference in New Issue
Block a user