Add new Gnocchi resource scenario

New scenario: GnocchiResource.create_delete_resource

Change-Id: Ide2b8b60bc249276a9201b372e15d0798aa5920c
Signed-off-by: Juha Kosonen <juha.kosonen@nokia.com>
This commit is contained in:
Juha Kosonen 2018-04-20 11:58:26 +03:00
parent 5eb6ea487a
commit d2ac2b0327
6 changed files with 78 additions and 0 deletions

View File

@ -26,6 +26,7 @@ Added
* [scenario plugin] GnocchiMetric.create_metric * [scenario plugin] GnocchiMetric.create_metric
* [scenario plugin] GnocchiMetric.create_delete_metric * [scenario plugin] GnocchiMetric.create_delete_metric
* [scenario plugin] GnocchiResource.create_resource * [scenario plugin] GnocchiResource.create_resource
* [scenario plugin] GnocchiResource.create_delete_resource
Changed Changed
~~~~~~~ ~~~~~~~

View File

@ -229,3 +229,18 @@
sla: sla:
failure_rate: failure_rate:
max: 0 max: 0
-
title: GnocchiResource.create_delete_resource tests
scenario:
GnocchiResource.create_delete_resource: {}
runner:
constant:
times: 10
concurrency: 2
contexts:
users:
tenants: 2
users_per_tenant: 3
sla:
failure_rate:
max: 0

View File

@ -34,3 +34,20 @@ class CreateResource(gnocchiutils.GnocchiBase):
""" """
name = self.generate_random_name() name = self.generate_random_name()
self.gnocchi.create_resource(name, resource_type=resource_type) self.gnocchi.create_resource(name, resource_type=resource_type)
@validation.add("required_services", services=[consts.Service.GNOCCHI])
@validation.add("required_platform", platform="openstack", users=True)
@scenario.configure(context={"cleanup@openstack": ["gnocchi.resource"]},
name="GnocchiResource.create_delete_resource")
class CreateDeleteResource(gnocchiutils.GnocchiBase):
def run(self, resource_type="generic"):
"""Create resource and then delete it.
:param resource_type: Type of the resource
"""
name = self.generate_random_name()
resource = self.gnocchi.create_resource(name,
resource_type=resource_type)
self.gnocchi.delete_resource(resource["id"])

View File

@ -0,0 +1,22 @@
{
"GnocchiResource.create_delete_resource": [
{
"runner": {
"type": "constant",
"times": 10,
"concurrency": 2
},
"context": {
"users": {
"tenants": 2,
"users_per_tenant": 3
}
},
"sla": {
"failure_rate": {
"max": 0
}
}
}
]
}

View File

@ -0,0 +1,14 @@
---
GnocchiResource.create_delete_resource:
-
runner:
type: "constant"
times: 10
concurrency: 2
context:
users:
tenants: 2
users_per_tenant: 3
sla:
failure_rate:
max: 0

View File

@ -49,3 +49,12 @@ class GnocchiResourceTestCase(test.ScenarioTestCase):
scenario.run(resource_type="foo") scenario.run(resource_type="foo")
resource_service.create_resource.assert_called_once_with( resource_service.create_resource.assert_called_once_with(
"name", resource_type="foo") "name", resource_type="foo")
def test_create_delete_resource(self):
resource_service = self.mock_metric.return_value
scenario = resource.CreateDeleteResource(self.context)
scenario.generate_random_name = mock.MagicMock(return_value="name")
scenario.run(resource_type="foo")
resource_service.create_resource.assert_called_once_with(
"name", resource_type="foo")
self.assertEqual(1, resource_service.delete_resource.call_count)