Merge "Decouple tests from default quota size option values"
This commit is contained in:
commit
bc711b1513
|
@ -23,24 +23,34 @@ QUOTA_DB_DRIVER = '%s.DbQuotaDriver' % QUOTA_DB_MODULE
|
|||
QUOTA_CONF_DRIVER = 'neutron.quota.ConfDriver'
|
||||
QUOTAS_CFG_GROUP = 'QUOTAS'
|
||||
|
||||
DEFAULT_QUOTA = -1
|
||||
DEFAULT_QUOTA_NETWORK = 10
|
||||
DEFAULT_QUOTA_SUBNET = 10
|
||||
DEFAULT_QUOTA_PORT = 50
|
||||
DEFAULT_QUOTA_SG = 10
|
||||
DEFAULT_QUOTA_SG_RULE = 100
|
||||
DEFAULT_QUOTA_ROUTER = 10
|
||||
DEFAULT_QUOTA_FIP = 50
|
||||
DEFAULT_QUOTA_RBAC = 10
|
||||
|
||||
|
||||
# quota_opts from neutron/quota/__init__.py
|
||||
# renamed quota_opts to core_quota_opts
|
||||
core_quota_opts = [
|
||||
cfg.IntOpt('default_quota',
|
||||
default=-1,
|
||||
default=DEFAULT_QUOTA,
|
||||
help=_('Default number of resource allowed per tenant. '
|
||||
'A negative value means unlimited.')),
|
||||
cfg.IntOpt('quota_network',
|
||||
default=10,
|
||||
default=DEFAULT_QUOTA_NETWORK,
|
||||
help=_('Number of networks allowed per tenant. '
|
||||
'A negative value means unlimited.')),
|
||||
cfg.IntOpt('quota_subnet',
|
||||
default=10,
|
||||
default=DEFAULT_QUOTA_SUBNET,
|
||||
help=_('Number of subnets allowed per tenant, '
|
||||
'A negative value means unlimited.')),
|
||||
cfg.IntOpt('quota_port',
|
||||
default=50,
|
||||
default=DEFAULT_QUOTA_PORT,
|
||||
help=_('Number of ports allowed per tenant. '
|
||||
'A negative value means unlimited.')),
|
||||
cfg.StrOpt('quota_driver',
|
||||
|
@ -56,11 +66,11 @@ core_quota_opts = [
|
|||
# security_group_quota_opts from neutron/extensions/securitygroup.py
|
||||
security_group_quota_opts = [
|
||||
cfg.IntOpt('quota_security_group',
|
||||
default=10,
|
||||
default=DEFAULT_QUOTA_SG,
|
||||
help=_('Number of security groups allowed per tenant. '
|
||||
'A negative value means unlimited.')),
|
||||
cfg.IntOpt('quota_security_group_rule',
|
||||
default=100,
|
||||
default=DEFAULT_QUOTA_SG_RULE,
|
||||
help=_('Number of security rules allowed per tenant. '
|
||||
'A negative value means unlimited.')),
|
||||
]
|
||||
|
@ -68,18 +78,18 @@ security_group_quota_opts = [
|
|||
# l3_quota_opts from neutron/extensions/l3.py
|
||||
l3_quota_opts = [
|
||||
cfg.IntOpt('quota_router',
|
||||
default=10,
|
||||
default=DEFAULT_QUOTA_ROUTER,
|
||||
help=_('Number of routers allowed per tenant. '
|
||||
'A negative value means unlimited.')),
|
||||
cfg.IntOpt('quota_floatingip',
|
||||
default=50,
|
||||
default=DEFAULT_QUOTA_FIP,
|
||||
help=_('Number of floating IPs allowed per tenant. '
|
||||
'A negative value means unlimited.')),
|
||||
]
|
||||
|
||||
# rbac_quota_opts from neutron/extensions/rbac.py
|
||||
rbac_quota_opts = [
|
||||
cfg.IntOpt('quota_rbac_policy', default=10,
|
||||
cfg.IntOpt('quota_rbac_policy', default=DEFAULT_QUOTA_RBAC,
|
||||
deprecated_name='quota_rbac_entry',
|
||||
help=_('Default number of RBAC entries allowed per tenant. '
|
||||
'A negative value means unlimited.'))
|
||||
|
|
|
@ -24,6 +24,7 @@ import pecan
|
|||
from pecan import request
|
||||
|
||||
from neutron.api import extensions
|
||||
from neutron.conf import quota as qconf
|
||||
from neutron import manager
|
||||
from neutron.pecan_wsgi.controllers import root as controllers
|
||||
from neutron.pecan_wsgi.controllers import utils as controller_utils
|
||||
|
@ -159,9 +160,9 @@ class TestQuotasController(test_functional.PecanFunctionalTest):
|
|||
|
||||
base_url = '/v2.0/quotas'
|
||||
default_expected_limits = {
|
||||
'network': 10,
|
||||
'port': 50,
|
||||
'subnet': 10}
|
||||
'network': qconf.DEFAULT_QUOTA_NETWORK,
|
||||
'port': qconf.DEFAULT_QUOTA_PORT,
|
||||
'subnet': qconf.DEFAULT_QUOTA_SUBNET}
|
||||
|
||||
def _verify_limits(self, response, limits):
|
||||
for resource, limit in limits.items():
|
||||
|
|
|
@ -27,6 +27,7 @@ from neutron.api.v2 import router
|
|||
from neutron.common import config
|
||||
from neutron.common import constants
|
||||
from neutron.common import exceptions
|
||||
from neutron.conf import quota as qconf
|
||||
from neutron.db.quota import driver
|
||||
from neutron import quota
|
||||
from neutron.quota import resource_registry
|
||||
|
@ -99,10 +100,10 @@ class QuotaExtensionDbTestCase(QuotaExtensionTestCase):
|
|||
|
||||
def test_quotas_default_values(self):
|
||||
self._test_quota_default_values(
|
||||
{'network': 10,
|
||||
'subnet': 10,
|
||||
'port': 50,
|
||||
'extra1': -1})
|
||||
{'network': qconf.DEFAULT_QUOTA_NETWORK,
|
||||
'subnet': qconf.DEFAULT_QUOTA_SUBNET,
|
||||
'port': qconf.DEFAULT_QUOTA_PORT,
|
||||
'extra1': qconf.DEFAULT_QUOTA})
|
||||
|
||||
def test_quotas_negative_default_value(self):
|
||||
cfg.CONF.set_override(
|
||||
|
@ -112,10 +113,10 @@ class QuotaExtensionDbTestCase(QuotaExtensionTestCase):
|
|||
cfg.CONF.set_override(
|
||||
'quota_subnet', -50, group='QUOTAS')
|
||||
self._test_quota_default_values(
|
||||
{'network': -1,
|
||||
'subnet': -1,
|
||||
'port': -1,
|
||||
'extra1': -1})
|
||||
{'network': qconf.DEFAULT_QUOTA,
|
||||
'subnet': qconf.DEFAULT_QUOTA,
|
||||
'port': qconf.DEFAULT_QUOTA,
|
||||
'extra1': qconf.DEFAULT_QUOTA})
|
||||
|
||||
def test_show_default_quotas_with_admin(self):
|
||||
tenant_id = 'tenant_id1'
|
||||
|
@ -127,9 +128,12 @@ class QuotaExtensionDbTestCase(QuotaExtensionTestCase):
|
|||
extra_environ=env)
|
||||
self.assertEqual(200, res.status_int)
|
||||
quota = self.deserialize(res)
|
||||
self.assertEqual(10, quota['quota']['network'])
|
||||
self.assertEqual(10, quota['quota']['subnet'])
|
||||
self.assertEqual(50, quota['quota']['port'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_NETWORK, quota['quota']['network'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_SUBNET, quota['quota']['subnet'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_PORT, quota['quota']['port'])
|
||||
|
||||
def test_show_default_quotas_with_owner_tenant(self):
|
||||
tenant_id = 'tenant_id1'
|
||||
|
@ -141,9 +145,12 @@ class QuotaExtensionDbTestCase(QuotaExtensionTestCase):
|
|||
extra_environ=env)
|
||||
self.assertEqual(200, res.status_int)
|
||||
quota = self.deserialize(res)
|
||||
self.assertEqual(10, quota['quota']['network'])
|
||||
self.assertEqual(10, quota['quota']['subnet'])
|
||||
self.assertEqual(50, quota['quota']['port'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_NETWORK, quota['quota']['network'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_SUBNET, quota['quota']['subnet'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_PORT, quota['quota']['port'])
|
||||
|
||||
def test_show_default_quotas_without_admin_forbidden_returns_403(self):
|
||||
tenant_id = 'tenant_id1'
|
||||
|
@ -163,9 +170,12 @@ class QuotaExtensionDbTestCase(QuotaExtensionTestCase):
|
|||
extra_environ=env)
|
||||
self.assertEqual(200, res.status_int)
|
||||
quota = self.deserialize(res)
|
||||
self.assertEqual(10, quota['quota']['network'])
|
||||
self.assertEqual(10, quota['quota']['subnet'])
|
||||
self.assertEqual(50, quota['quota']['port'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_NETWORK, quota['quota']['network'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_SUBNET, quota['quota']['subnet'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_PORT, quota['quota']['port'])
|
||||
|
||||
def test_show_quotas_without_admin_forbidden_returns_403(self):
|
||||
tenant_id = 'tenant_id1'
|
||||
|
@ -183,9 +193,12 @@ class QuotaExtensionDbTestCase(QuotaExtensionTestCase):
|
|||
extra_environ=env)
|
||||
self.assertEqual(200, res.status_int)
|
||||
quota = self.deserialize(res)
|
||||
self.assertEqual(10, quota['quota']['network'])
|
||||
self.assertEqual(10, quota['quota']['subnet'])
|
||||
self.assertEqual(50, quota['quota']['port'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_NETWORK, quota['quota']['network'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_SUBNET, quota['quota']['subnet'])
|
||||
self.assertEqual(
|
||||
qconf.DEFAULT_QUOTA_PORT, quota['quota']['port'])
|
||||
|
||||
def test_list_quotas_with_admin(self):
|
||||
tenant_id = 'tenant_id1'
|
||||
|
@ -288,8 +301,8 @@ class QuotaExtensionDbTestCase(QuotaExtensionTestCase):
|
|||
extra_environ=env2)
|
||||
quota = self.deserialize(res)
|
||||
self.assertEqual(100, quota['quota']['network'])
|
||||
self.assertEqual(10, quota['quota']['subnet'])
|
||||
self.assertEqual(50, quota['quota']['port'])
|
||||
self.assertEqual(qconf.DEFAULT_QUOTA_SUBNET, quota['quota']['subnet'])
|
||||
self.assertEqual(qconf.DEFAULT_QUOTA_PORT, quota['quota']['port'])
|
||||
|
||||
def test_update_attributes(self):
|
||||
tenant_id = 'tenant_id1'
|
||||
|
@ -416,19 +429,19 @@ class QuotaExtensionCfgTestCase(QuotaExtensionTestCase):
|
|||
|
||||
def test_quotas_default_values(self):
|
||||
self._test_quota_default_values(
|
||||
{'network': 10,
|
||||
'subnet': 10,
|
||||
'port': 50,
|
||||
'extra1': -1})
|
||||
{'network': qconf.DEFAULT_QUOTA_NETWORK,
|
||||
'subnet': qconf.DEFAULT_QUOTA_SUBNET,
|
||||
'port': qconf.DEFAULT_QUOTA_PORT,
|
||||
'extra1': qconf.DEFAULT_QUOTA})
|
||||
|
||||
def test_quotas_negative_default_value(self):
|
||||
cfg.CONF.set_override(
|
||||
'quota_port', -666, group='QUOTAS')
|
||||
self._test_quota_default_values(
|
||||
{'network': 10,
|
||||
'subnet': 10,
|
||||
'port': -1,
|
||||
'extra1': -1})
|
||||
{'network': qconf.DEFAULT_QUOTA_NETWORK,
|
||||
'subnet': qconf.DEFAULT_QUOTA_SUBNET,
|
||||
'port': qconf.DEFAULT_QUOTA,
|
||||
'extra1': qconf.DEFAULT_QUOTA})
|
||||
|
||||
def test_show_quotas_with_admin(self):
|
||||
tenant_id = 'tenant_id1'
|
||||
|
|
Loading…
Reference in New Issue