Add default quota limit config to functional tests

Expected quota limits were -1, but deployers can change these defaults
so functional tests should also allow for these default limits to be
configured. This CR adds those configurations.

Change-Id: I889227560206cd60f774157e690d9341441ee76b
Closes-Bug: #1498525
This commit is contained in:
jfwood 2015-09-22 09:55:19 -05:00
parent 9646c5aa96
commit dea3b4817c
3 changed files with 43 additions and 5 deletions

View File

@ -48,3 +48,25 @@ auditor_b_password=barbican
# or leave it blank.
# override_url=http://localhost:9311
# override_url_version=v1
[quotas]
# For each resource, the default maximum number that can be used for
# a project is set below. This value can be overridden for each
# project through the API. A negative value means no limit. A zero
# value effectively disables the resource.
# These should be set identically to the system under test.
# default number of secrets allowed per project
quota_secrets = -1
# default number of orders allowed per project
quota_orders = -1
# default number of containers allowed per project
quota_containers = -1
# default number of consumers allowed per project
quota_consumers = -1
# default number of CAs allowed per project
quota_cas = -1

View File

@ -50,11 +50,16 @@ class QuotasTestCase(base.TestCase):
resp = self.behaviors.get_quotas()
self.assertEqual(200, resp.status_code)
self.assertEqual(-1, resp.model.quotas.secrets)
self.assertEqual(-1, resp.model.quotas.orders)
self.assertEqual(-1, resp.model.quotas.containers)
self.assertEqual(-1, resp.model.quotas.consumers)
self.assertEqual(-1, resp.model.quotas.cas)
self.assertEqual(CONF.quotas.quota_secrets,
resp.model.quotas.secrets)
self.assertEqual(CONF.quotas.quota_orders,
resp.model.quotas.orders)
self.assertEqual(CONF.quotas.quota_containers,
resp.model.quotas.containers)
self.assertEqual(CONF.quotas.quota_consumers,
resp.model.quotas.consumers)
self.assertEqual(CONF.quotas.quota_cas,
resp.model.quotas.cas)
def test_get_project_quotas_by_project_id(self):
"""Get project quota information for specific project"""

View File

@ -71,6 +71,17 @@ def setup_config(config_file=''):
TEST_CONF.register_group(keymanager_group)
TEST_CONF.register_opts(keymanager_options, group=keymanager_group)
quotas_group = cfg.OptGroup(name='quotas')
quotas_options = [
cfg.IntOpt('quota_secrets', default=-1),
cfg.IntOpt('quota_orders', default=-1),
cfg.IntOpt('quota_containers', default=-1),
cfg.IntOpt('quota_consumers', default=-1),
cfg.IntOpt('quota_cas', default=-1)
]
TEST_CONF.register_group(quotas_group)
TEST_CONF.register_opts(quotas_options, group=quotas_group)
# Figure out which config to load
config_to_load = []
local_config = './etc/barbican/barbican-functional.conf'