Merge "Add Quotas.nova_get The scenario list the quotas for nova"
This commit is contained in:
commit
454ba1d4a2
@ -35,6 +35,20 @@
|
|||||||
failure_rate:
|
failure_rate:
|
||||||
max: 0
|
max: 0
|
||||||
|
|
||||||
|
Quotas.nova_get:
|
||||||
|
-
|
||||||
|
runner:
|
||||||
|
type: "constant"
|
||||||
|
times: 10
|
||||||
|
concurrency: 2
|
||||||
|
context:
|
||||||
|
users:
|
||||||
|
tenants: 2
|
||||||
|
users_per_tenant: 2
|
||||||
|
sla:
|
||||||
|
failure_rate:
|
||||||
|
max: 0
|
||||||
|
|
||||||
Quotas.nova_update:
|
Quotas.nova_update:
|
||||||
-
|
-
|
||||||
args:
|
args:
|
||||||
|
@ -102,3 +102,15 @@ class NeutronUpdate(utils.QuotasScenario):
|
|||||||
quota_update_fn = self.admin_clients("neutron").update_quota
|
quota_update_fn = self.admin_clients("neutron").update_quota
|
||||||
self._update_quotas("neutron", self.context["tenant"]["id"],
|
self._update_quotas("neutron", self.context["tenant"]["id"],
|
||||||
max_quota, quota_update_fn)
|
max_quota, quota_update_fn)
|
||||||
|
|
||||||
|
|
||||||
|
@validation.required_services(consts.Service.NOVA)
|
||||||
|
@validation.required_openstack(admin=True, users=True)
|
||||||
|
@scenario.configure(context={"admin_cleanup": ["nova.quotas"]},
|
||||||
|
name="Quotas.nova_get")
|
||||||
|
class NovaGet(utils.QuotasScenario):
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
"""Get quotas for nova."""
|
||||||
|
|
||||||
|
self._get_quotas("nova", self.context["tenant"]["id"])
|
||||||
|
@ -77,3 +77,13 @@ class QuotasScenario(scenario.OpenStackScenario):
|
|||||||
quota[key] = random.randint(-1, max_quota)
|
quota[key] = random.randint(-1, max_quota)
|
||||||
quotas = {"body": {"quota": quota}}
|
quotas = {"body": {"quota": quota}}
|
||||||
return quotas
|
return quotas
|
||||||
|
|
||||||
|
@atomic.action_timer("quotas.get_quotas")
|
||||||
|
def _get_quotas(self, component, tenant_id):
|
||||||
|
"""Get quotas for a project.
|
||||||
|
|
||||||
|
:param component: Openstack component for the quotas.
|
||||||
|
:param tenant_id: The project_id for the quotas to show.
|
||||||
|
:return: Get quotas for a project.
|
||||||
|
"""
|
||||||
|
return self.admin_clients(component).quotas.get(tenant_id)
|
||||||
|
23
samples/tasks/scenarios/quotas/nova-get.json
Normal file
23
samples/tasks/scenarios/quotas/nova-get.json
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"Quotas.nova_get": [
|
||||||
|
{
|
||||||
|
"runner": {
|
||||||
|
"type": "constant",
|
||||||
|
"times": 10,
|
||||||
|
"concurrency": 2
|
||||||
|
},
|
||||||
|
"context": {
|
||||||
|
"users": {
|
||||||
|
"tenants": 2,
|
||||||
|
"users_per_tenant": 2
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sla": {
|
||||||
|
"failure_rate": {
|
||||||
|
"max": 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
14
samples/tasks/scenarios/quotas/nova-get.yaml
Normal file
14
samples/tasks/scenarios/quotas/nova-get.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
Quotas.nova_get:
|
||||||
|
-
|
||||||
|
runner:
|
||||||
|
type: "constant"
|
||||||
|
times: 10
|
||||||
|
concurrency: 2
|
||||||
|
context:
|
||||||
|
users:
|
||||||
|
tenants: 2
|
||||||
|
users_per_tenant: 2
|
||||||
|
sla:
|
||||||
|
failure_rate:
|
||||||
|
max: 0
|
@ -31,6 +31,12 @@ class QuotasTestCase(test.ScenarioTestCase):
|
|||||||
"tenant": {"id": "fake"}
|
"tenant": {"id": "fake"}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
def test_nova_get(self):
|
||||||
|
scenario = quotas.NovaGet(self.context)
|
||||||
|
scenario._get_quotas = mock.MagicMock()
|
||||||
|
scenario.run()
|
||||||
|
scenario._get_quotas.assert_called_once_with("nova", "fake")
|
||||||
|
|
||||||
def test_nova_update(self):
|
def test_nova_update(self):
|
||||||
scenario = quotas.NovaUpdate(self.context)
|
scenario = quotas.NovaUpdate(self.context)
|
||||||
scenario._update_quotas = mock.MagicMock()
|
scenario._update_quotas = mock.MagicMock()
|
||||||
|
@ -105,3 +105,13 @@ class QuotasScenarioTestCase(test.ScenarioTestCase):
|
|||||||
tenant_id)
|
tenant_id)
|
||||||
self._test_atomic_action_timer(scenario.atomic_actions(),
|
self._test_atomic_action_timer(scenario.atomic_actions(),
|
||||||
"quotas.delete_quotas")
|
"quotas.delete_quotas")
|
||||||
|
|
||||||
|
def test__get_quotas(self):
|
||||||
|
tenant_id = "fake_tenant"
|
||||||
|
scenario = utils.QuotasScenario(self.context)
|
||||||
|
scenario._get_quotas("nova", tenant_id)
|
||||||
|
|
||||||
|
self.admin_clients("nova").quotas.get.assert_called_once_with(
|
||||||
|
tenant_id)
|
||||||
|
self._test_atomic_action_timer(scenario.atomic_actions(),
|
||||||
|
"quotas.get_quotas")
|
||||||
|
Loading…
Reference in New Issue
Block a user