Merge "Fix `NoopQuotaDriver.get_(project|user)_quotas` format" into stable/havana

This commit is contained in:
Jenkins 2014-02-09 23:14:21 +00:00 committed by Gerrit Code Review
commit bcdc813194
2 changed files with 33 additions and 19 deletions

View File

@ -662,6 +662,18 @@ class NoopQuotaDriver(object):
quotas[resource.name] = -1
return quotas
def _get_noop_quotas(self, resources, usages=None, remains=False):
quotas = {}
for resource in resources.values():
quotas[resource.name] = {}
quotas[resource.name]['limit'] = -1
if usages:
quotas[resource.name]['in_use'] = -1
quotas[resource.name]['reserved'] = -1
if remains:
quotas[resource.name]['remains'] = -1
return quotas
def get_user_quotas(self, context, resources, project_id, user_id,
quota_class=None, defaults=True,
usages=True):
@ -685,10 +697,7 @@ class NoopQuotaDriver(object):
:param usages: If True, the current in_use and reserved counts
will also be returned.
"""
quotas = {}
for resource in resources.values():
quotas[resource.name] = -1
return quotas
return self._get_noop_quotas(resources, usages=usages)
def get_project_quotas(self, context, resources, project_id,
quota_class=None, defaults=True,
@ -714,10 +723,7 @@ class NoopQuotaDriver(object):
:param remains: If True, the current remains of the project will
will be returned.
"""
quotas = {}
for resource in resources.values():
quotas[resource.name] = -1
return quotas
return self._get_noop_quotas(resources, usages=usages, remains=remains)
def get_settable_quotas(self, context, resources, project_id,
user_id=None):

View File

@ -2415,47 +2415,55 @@ class NoopQuotaDriverTestCase(test.TestCase):
max_age=0,
)
self.expected_quotas = dict([(r, -1)
for r in quota.QUOTAS._resources])
self.expected_with_usages = {}
self.expected_without_usages = {}
self.expected_without_dict = {}
for r in quota.QUOTAS._resources:
self.expected_with_usages[r] = dict(limit=-1,
in_use=-1,
reserved=-1)
self.expected_without_usages[r] = dict(limit=-1)
self.expected_without_dict[r] = -1
self.driver = quota.NoopQuotaDriver()
def test_get_defaults(self):
# Use our pre-defined resources
result = self.driver.get_defaults(None, quota.QUOTAS._resources)
self.assertEqual(self.expected_quotas, result)
self.assertEqual(self.expected_without_dict, result)
def test_get_class_quotas(self):
result = self.driver.get_class_quotas(None,
quota.QUOTAS._resources,
'test_class')
self.assertEqual(self.expected_quotas, result)
self.assertEqual(self.expected_without_dict, result)
def test_get_class_quotas_no_defaults(self):
result = self.driver.get_class_quotas(None,
quota.QUOTAS._resources,
'test_class',
False)
self.assertEqual(self.expected_quotas, result)
self.assertEqual(self.expected_without_dict, result)
def test_get_project_quotas(self):
result = self.driver.get_project_quotas(None,
quota.QUOTAS._resources,
'test_project')
self.assertEqual(self.expected_quotas, result)
self.assertEqual(self.expected_with_usages, result)
def test_get_user_quotas(self):
result = self.driver.get_user_quotas(None,
quota.QUOTAS._resources,
'test_project',
'fake_user')
self.assertEqual(self.expected_quotas, result)
self.assertEqual(self.expected_with_usages, result)
def test_get_project_quotas_no_defaults(self):
result = self.driver.get_project_quotas(None,
quota.QUOTAS._resources,
'test_project',
defaults=False)
self.assertEqual(self.expected_quotas, result)
self.assertEqual(self.expected_with_usages, result)
def test_get_user_quotas_no_defaults(self):
result = self.driver.get_user_quotas(None,
@ -2463,14 +2471,14 @@ class NoopQuotaDriverTestCase(test.TestCase):
'test_project',
'fake_user',
defaults=False)
self.assertEqual(self.expected_quotas, result)
self.assertEqual(self.expected_with_usages, result)
def test_get_project_quotas_no_usages(self):
result = self.driver.get_project_quotas(None,
quota.QUOTAS._resources,
'test_project',
usages=False)
self.assertEqual(self.expected_quotas, result)
self.assertEqual(self.expected_without_usages, result)
def test_get_user_quotas_no_usages(self):
result = self.driver.get_user_quotas(None,
@ -2478,4 +2486,4 @@ class NoopQuotaDriverTestCase(test.TestCase):
'test_project',
'fake_user',
usages=False)
self.assertEqual(self.expected_quotas, result)
self.assertEqual(self.expected_without_usages, result)