Merge "Moving of CeilometerQueries scenarios into separate classes"

This commit is contained in:
Jenkins 2016-08-24 14:15:36 +00:00 committed by Gerrit Code Review
commit 4a91652be3
2 changed files with 52 additions and 52 deletions

View File

@ -20,14 +20,15 @@ from rally.plugins.openstack.scenarios.ceilometer import utils as ceiloutils
from rally.task import validation
class CeilometerQueries(ceiloutils.CeilometerScenario):
@validation.required_services(consts.Service.CEILOMETER)
@validation.required_openstack(users=True)
@scenario.configure(context={"cleanup": ["ceilometer"]},
name="CeilometerQueries.create_and_query_alarms")
class CeilometerQueriesCreateAndQueryAlarms(ceiloutils.CeilometerScenario):
"""Benchmark scenarios for Ceilometer Queries API."""
@validation.required_services(consts.Service.CEILOMETER)
@validation.required_openstack(users=True)
@scenario.configure(context={"cleanup": ["ceilometer"]})
def create_and_query_alarms(self, meter_name, threshold, filter=None,
orderby=None, limit=None, **kwargs):
def run(self, meter_name, threshold, filter=None, orderby=None,
limit=None, **kwargs):
"""Create an alarm and then query it with specific parameters.
This scenario tests POST /v2/query/alarms
@ -46,11 +47,16 @@ class CeilometerQueries(ceiloutils.CeilometerScenario):
self._create_alarm(meter_name, threshold, kwargs)
self._query_alarms(filter, orderby, limit)
@validation.required_services(consts.Service.CEILOMETER)
@validation.required_openstack(users=True)
@scenario.configure(context={"cleanup": ["ceilometer"]})
def create_and_query_alarm_history(self, meter_name, threshold,
orderby=None, limit=None, **kwargs):
@validation.required_services(consts.Service.CEILOMETER)
@validation.required_openstack(users=True)
@scenario.configure(context={"cleanup": ["ceilometer"]},
name="CeilometerQueries.create_and_query_alarm_history")
class CeilometerQueriesCreateAndQueryAlarmHistory(ceiloutils
.CeilometerScenario):
"""Benchmark scenarios for Ceilometer Queries API."""
def run(self, meter_name, threshold, orderby=None, limit=None, **kwargs):
"""Create an alarm and then query for its history.
This scenario tests POST /v2/query/alarms/history
@ -67,13 +73,16 @@ class CeilometerQueries(ceiloutils.CeilometerScenario):
alarm_filter = json.dumps({"=": {"alarm_id": alarm.alarm_id}})
self._query_alarm_history(alarm_filter, orderby, limit)
@validation.required_services(consts.Service.CEILOMETER)
@validation.required_openstack(users=True)
@scenario.configure(context={"cleanup": ["ceilometer"]})
def create_and_query_samples(self, counter_name, counter_type,
counter_unit, counter_volume, resource_id,
filter=None, orderby=None, limit=None,
**kwargs):
@validation.required_services(consts.Service.CEILOMETER)
@validation.required_openstack(users=True)
@scenario.configure(context={"cleanup": ["ceilometer"]},
name="CeilometerQueries.create_and_query_samples")
class CeilometerQueriesCreateAndQuerySamples(ceiloutils.CeilometerScenario):
"""Benchmark scenarios for Ceilometer Queries API."""
def run(self, counter_name, counter_type, counter_unit, counter_volume,
resource_id, filter=None, orderby=None, limit=None, **kwargs):
"""Create a sample and then query it with specific parameters.
This scenario tests POST /v2/query/samples

View File

@ -22,28 +22,26 @@ from tests.unit import test
class CeilometerQueriesTestCase(test.ScenarioTestCase):
def test_create_and_query_alarms(self):
scenario = queries.CeilometerQueries(self.context)
scenario = queries.CeilometerQueriesCreateAndQueryAlarms(self.context)
scenario._create_alarm = mock.MagicMock()
scenario._query_alarms = mock.MagicMock()
scenario.create_and_query_alarms("fake_meter_name",
100, "fake_filter",
"fake_orderby_attribute", 10,
fakearg="f")
scenario.run("fake_meter_name", 100, "fake_filter",
"fake_orderby_attribute", 10, fakearg="f")
scenario._create_alarm.assert_called_once_with("fake_meter_name",
100, {"fakearg": "f"})
scenario._query_alarms.assert_called_once_with(
json.dumps("fake_filter"), "fake_orderby_attribute", 10)
def test_create_and_query_alarms_no_filter(self):
scenario = queries.CeilometerQueries(self.context)
scenario = queries.CeilometerQueriesCreateAndQueryAlarms(self.context)
scenario._create_alarm = mock.MagicMock()
scenario._query_alarms = mock.MagicMock()
scenario.create_and_query_alarms("fake_meter_name",
100, None,
"fake_orderby_attribute", 10,
fakearg="f")
scenario.run("fake_meter_name", 100, None, "fake_orderby_attribute",
10, fakearg="f")
scenario._create_alarm.assert_called_once_with("fake_meter_name",
100, {"fakearg": "f"})
scenario._query_alarms.assert_called_once_with(
@ -52,33 +50,30 @@ class CeilometerQueriesTestCase(test.ScenarioTestCase):
def test_create_and_query_alarm_history(self):
fake_alarm = mock.MagicMock()
fake_alarm.alarm_id = "fake_alarm_id"
scenario = queries.CeilometerQueries(self.context)
scenario = queries.CeilometerQueriesCreateAndQueryAlarmHistory(
self.context)
scenario._create_alarm = mock.MagicMock(return_value=fake_alarm)
scenario._query_alarm_history = mock.MagicMock()
fake_filter = json.dumps({"=": {"alarm_id": fake_alarm.alarm_id}})
scenario.create_and_query_alarm_history("fake_meter_name", 100,
"fake_orderby_attribute", 10,
fakearg="f")
scenario.run("fake_meter_name", 100, "fake_orderby_attribute",
10, fakearg="f")
scenario._create_alarm.assert_called_once_with("fake_meter_name", 100,
{"fakearg": "f"})
scenario._query_alarm_history.assert_called_once_with(
fake_filter, "fake_orderby_attribute", 10)
def test_create_and_query_samples(self):
scenario = queries.CeilometerQueries(self.context)
scenario = queries.CeilometerQueriesCreateAndQuerySamples(self.context)
scenario._create_sample = mock.MagicMock()
scenario._query_samples = mock.MagicMock()
scenario.create_and_query_samples("fake_counter_name",
"fake_counter_type",
"fake_counter_unit",
"fake_counter_volume",
"fake_resource_id",
"fake_filter",
"fake_orderby_attribute",
10,
fakearg="f")
scenario.run("fake_counter_name", "fake_counter_type",
"fake_counter_unit", "fake_counter_volume",
"fake_resource_id", "fake_filter",
"fake_orderby_attribute", 10, fakearg="f")
scenario._create_sample.assert_called_once_with("fake_counter_name",
"fake_counter_type",
"fake_counter_unit",
@ -89,19 +84,15 @@ class CeilometerQueriesTestCase(test.ScenarioTestCase):
json.dumps("fake_filter"), "fake_orderby_attribute", 10)
def test_create_and_query_samples_no_filter(self):
scenario = queries.CeilometerQueries(self.context)
scenario = queries.CeilometerQueriesCreateAndQuerySamples(self.context)
scenario._create_sample = mock.MagicMock()
scenario._query_samples = mock.MagicMock()
scenario.create_and_query_samples("fake_counter_name",
"fake_counter_type",
"fake_counter_unit",
"fake_counter_volume",
"fake_resource_id",
None,
"fake_orderby_attribute",
10,
fakearg="f")
scenario.run("fake_counter_name", "fake_counter_type",
"fake_counter_unit", "fake_counter_volume",
"fake_resource_id", None,
"fake_orderby_attribute", 10, fakearg="f")
scenario._create_sample.assert_called_once_with("fake_counter_name",
"fake_counter_type",
"fake_counter_unit",