Refactor the quotas tests
Refactoring as part of bug 1157950 to limit the amount of copy-pasting required when adding a new quota Change-Id: I32fb28da0d4640c463fb6e22ee04763012d12190
This commit is contained in:
parent
cf8d5d92da
commit
e65e3e8bc3
@ -24,7 +24,7 @@ from openstack_dashboard import api
|
||||
INDEX_URL = reverse('horizon:admin:info:index')
|
||||
|
||||
|
||||
class ServicessViewTests(test.BaseAdminViewTests):
|
||||
class ServicesViewTests(test.BaseAdminViewTests):
|
||||
def test_index(self):
|
||||
self.mox.StubOutWithMock(api.nova, 'default_quota_get')
|
||||
self.mox.StubOutWithMock(api.cinder, 'default_quota_get')
|
||||
|
@ -31,6 +31,24 @@ from openstack_dashboard.usage import quotas
|
||||
|
||||
|
||||
class QuotaTests(test.APITestCase):
|
||||
|
||||
def get_usages(self, with_volume=True):
|
||||
quotas = {'injected_file_content_bytes': {'quota': 1},
|
||||
'metadata_items': {'quota': 1},
|
||||
'injected_files': {'quota': 1},
|
||||
'security_groups': {'quota': 10},
|
||||
'security_group_rules': {'quota': 20},
|
||||
'fixed_ips': {'quota': 10},
|
||||
'ram': {'available': 8976, 'used': 1024, 'quota': 10000},
|
||||
'floating_ips': {'available': 0, 'used': 2, 'quota': 1},
|
||||
'instances': {'available': 8, 'used': 2, 'quota': 10},
|
||||
'cores': {'available': 8, 'used': 2, 'quota': 10}}
|
||||
if with_volume:
|
||||
quotas.update({'volumes': {'available': 0, 'used': 3, 'quota': 1},
|
||||
'gigabytes': {'available': 920, 'used': 80,
|
||||
'quota': 1000}})
|
||||
return quotas
|
||||
|
||||
@test.create_stubs({api.nova: ('server_list',
|
||||
'flavor_list',
|
||||
'tenant_quota_get',),
|
||||
@ -56,20 +74,7 @@ class QuotaTests(test.APITestCase):
|
||||
self.mox.ReplayAll()
|
||||
|
||||
quota_usages = quotas.tenant_quota_usages(self.request)
|
||||
expected_output = {
|
||||
'injected_file_content_bytes': {'quota': 1},
|
||||
'metadata_items': {'quota': 1},
|
||||
'injected_files': {'quota': 1},
|
||||
'security_groups': {'quota': 10},
|
||||
'security_group_rules': {'quota': 20},
|
||||
'fixed_ips': {'quota': 10},
|
||||
'gigabytes': {'available': 920, 'used': 80, 'quota': 1000},
|
||||
'ram': {'available': 8976, 'used': 1024, 'quota': 10000},
|
||||
'floating_ips': {'available': 0, 'used': 2, 'quota': 1},
|
||||
'instances': {'available': 8, 'used': 2, 'quota': 10},
|
||||
'volumes': {'available': 0, 'used': 3, 'quota': 1},
|
||||
'cores': {'available': 8, 'used': 2, 'quota': 10}
|
||||
}
|
||||
expected_output = self.get_usages()
|
||||
|
||||
# Compare internal structure of usages to expected.
|
||||
self.assertEquals(quota_usages.usages, expected_output)
|
||||
@ -94,18 +99,7 @@ class QuotaTests(test.APITestCase):
|
||||
self.mox.ReplayAll()
|
||||
|
||||
quota_usages = quotas.tenant_quota_usages(self.request)
|
||||
expected_output = {
|
||||
'injected_file_content_bytes': {'quota': 1},
|
||||
'metadata_items': {'quota': 1},
|
||||
'injected_files': {'quota': 1},
|
||||
'security_groups': {'quota': 10},
|
||||
'security_group_rules': {'quota': 20},
|
||||
'fixed_ips': {'quota': 10},
|
||||
'ram': {'available': 8976, 'used': 1024, 'quota': 10000},
|
||||
'floating_ips': {'available': 0, 'used': 2, 'quota': 1},
|
||||
'instances': {'available': 8, 'used': 2, 'quota': 10},
|
||||
'cores': {'available': 8, 'used': 2, 'quota': 10}
|
||||
}
|
||||
expected_output = self.get_usages(with_volume=False)
|
||||
|
||||
# Compare internal structure of usages to expected.
|
||||
self.assertEquals(quota_usages.usages, expected_output)
|
||||
@ -129,18 +123,13 @@ class QuotaTests(test.APITestCase):
|
||||
self.mox.ReplayAll()
|
||||
|
||||
quota_usages = quotas.tenant_quota_usages(self.request)
|
||||
expected_output = {
|
||||
'injected_file_content_bytes': {'quota': 1},
|
||||
'metadata_items': {'quota': 1},
|
||||
'injected_files': {'quota': 1},
|
||||
'security_groups': {'quota': 10},
|
||||
'security_group_rules': {'quota': 20},
|
||||
'fixed_ips': {'quota': 10},
|
||||
expected_output = self.get_usages(with_volume=False)
|
||||
|
||||
expected_output.update({
|
||||
'ram': {'available': 10000, 'used': 0, 'quota': 10000},
|
||||
'floating_ips': {'available': 1, 'used': 0, 'quota': 1},
|
||||
'instances': {'available': 10, 'used': 0, 'quota': 10},
|
||||
'cores': {'available': 10, 'used': 0, 'quota': 10}
|
||||
}
|
||||
'cores': {'available': 10, 'used': 0, 'quota': 10}})
|
||||
|
||||
# Compare internal structure of usages to expected.
|
||||
self.assertEquals(quota_usages.usages, expected_output)
|
||||
@ -173,21 +162,10 @@ class QuotaTests(test.APITestCase):
|
||||
self.mox.ReplayAll()
|
||||
|
||||
quota_usages = quotas.tenant_quota_usages(self.request)
|
||||
expected_output = {
|
||||
'injected_file_content_bytes': {'quota': 1},
|
||||
'metadata_items': {'quota': 1},
|
||||
'injected_files': {'quota': 1},
|
||||
'security_groups': {'quota': 10},
|
||||
'security_group_rules': {'quota': 20},
|
||||
'fixed_ips': {'quota': 10},
|
||||
'gigabytes': {'available': 920, 'used': 80, 'quota': 1000},
|
||||
'ram': {'available': float("inf"), 'used': 1024,
|
||||
'quota': float("inf")},
|
||||
'floating_ips': {'available': 0, 'used': 2, 'quota': 1},
|
||||
'instances': {'available': 8, 'used': 2, 'quota': 10},
|
||||
'volumes': {'available': 0, 'used': 3, 'quota': 1},
|
||||
'cores': {'available': 8, 'used': 2, 'quota': 10}
|
||||
}
|
||||
expected_output = self.get_usages()
|
||||
expected_output.update({'ram': {'available': float("inf"),
|
||||
'used': 1024,
|
||||
'quota': float("inf")}})
|
||||
|
||||
# Compare internal structure of usages to expected.
|
||||
self.assertEquals(quota_usages.usages, expected_output)
|
||||
|
Loading…
Reference in New Issue
Block a user