Merge "Moving of Ceilometer Eventss scenarios into separate classes"

This commit is contained in:
Jenkins 2016-08-19 14:10:43 +00:00 committed by Gerrit Code Review
commit c83e37ad1f
2 changed files with 42 additions and 30 deletions

View File

@ -19,19 +19,20 @@ from rally.plugins.openstack.scenarios.keystone import utils as kutils
from rally.task import validation
class CeilometerEvents(cutils.CeilometerScenario, kutils.KeystoneScenario):
# NOTE(idegtiarov): to work with event we need to create it, there are
# no other way except emit suitable notification from one of services,
# for example create new user in keystone.
@validation.required_services(consts.Service.CEILOMETER,
consts.Service.KEYSTONE)
@validation.required_openstack(admin=True)
@scenario.configure(context={"admin_cleanup": ["keystone"],
"cleanup": ["ceilometer"]},
name="CeilometerEvents.create_user_and_list_events")
class CeilometerEventsCreateUserAndListEvents(cutils.CeilometerScenario,
kutils.KeystoneScenario):
"""Benchmark scenarios for Ceilometer Events API."""
# NOTE(idegtiarov): to work with event we need to create it, there are
# no other way except emit suitable notification from one of services,
# for example create new user in keystone.
@validation.required_services(consts.Service.CEILOMETER,
consts.Service.KEYSTONE)
@validation.required_openstack(admin=True)
@scenario.configure(context={"admin_cleanup": ["keystone"],
"cleanup": ["ceilometer"]})
def create_user_and_list_events(self):
def run(self):
"""Create user and fetch all events.
This scenario creates user to store new event and
@ -40,12 +41,17 @@ class CeilometerEvents(cutils.CeilometerScenario, kutils.KeystoneScenario):
self._user_create()
self._list_events()
@validation.required_services(consts.Service.CEILOMETER,
consts.Service.KEYSTONE)
@validation.required_openstack(admin=True)
@scenario.configure(context={"admin_cleanup": ["keystone"],
"cleanup": ["ceilometer"]})
def create_user_and_list_event_types(self):
@validation.required_services(consts.Service.CEILOMETER,
consts.Service.KEYSTONE)
@validation.required_openstack(admin=True)
@scenario.configure(context={"admin_cleanup": ["keystone"],
"cleanup": ["ceilometer"]},
name="CeilometerEvents.create_user_and_list_event_types")
class CeilometerEventsCreateUserAndListEventTypes(cutils.CeilometerScenario,
kutils.KeystoneScenario):
"""Benchmark scenarios for Ceilometer Events API."""
def run(self):
"""Create user and fetch all event types.
This scenario creates user to store new event and
@ -54,12 +60,17 @@ class CeilometerEvents(cutils.CeilometerScenario, kutils.KeystoneScenario):
self._user_create()
self._list_event_types()
@validation.required_services(consts.Service.CEILOMETER,
consts.Service.KEYSTONE)
@validation.required_openstack(admin=True)
@scenario.configure(context={"admin_cleanup": ["keystone"],
"cleanup": ["ceilometer"]})
def create_user_and_get_event(self):
@validation.required_services(consts.Service.CEILOMETER,
consts.Service.KEYSTONE)
@validation.required_openstack(admin=True)
@scenario.configure(context={"admin_cleanup": ["keystone"],
"cleanup": ["ceilometer"]},
name="CeilometerEvents.create_user_and_get_event")
class CeilometerEventsCreateUserAndGetEvent(cutils.CeilometerScenario,
kutils.KeystoneScenario):
"""Benchmark scenarios for Ceilometer Events API."""
def run(self):
"""Create user and gets event.
This scenario creates user to store new event and

View File

@ -21,31 +21,32 @@ from tests.unit import test
class CeilometerEventsTestCase(test.ScenarioTestCase):
def test_list_events(self):
scenario = events.CeilometerEvents(self.context)
scenario = events.CeilometerEventsCreateUserAndListEvents(self.context)
scenario._user_create = mock.MagicMock()
scenario._list_events = mock.MagicMock()
scenario.create_user_and_list_events()
scenario.run()
scenario._user_create.assert_called_once_with()
scenario._list_events.assert_called_once_with()
def test_list_event_types(self):
scenario = events.CeilometerEvents(self.context)
scenario = events.CeilometerEventsCreateUserAndListEventTypes(
self.context)
scenario._list_event_types = mock.MagicMock()
scenario._user_create = mock.MagicMock()
scenario.create_user_and_list_event_types()
scenario.run()
scenario._user_create.assert_called_once_with()
scenario._list_event_types.assert_called_once_with()
def test_get_event(self):
scenario = events.CeilometerEvents(self.context)
scenario = events.CeilometerEventsCreateUserAndGetEvent(self.context)
scenario._user_create = mock.MagicMock()
scenario._list_events = mock.MagicMock()
scenario._get_event = mock.MagicMock()
scenario._list_events.return_value = [mock.Mock(message_id="fake_id")]
scenario.create_user_and_get_event()
scenario.run()
scenario._user_create.assert_called_once_with()
scenario._list_events.assert_called_with()
scenario._get_event.assert_called_with(event_id="fake_id")