From de6c27e713a52f0a547c548781030e3352a04a77 Mon Sep 17 00:00:00 2001 From: Andrey Kurilin Date: Thu, 8 Sep 2016 15:48:01 +0300 Subject: [PATCH] refactor atomics actions We decided to still use atomic_actions field. First step, save new atomic actions format in database, and convert the new format to old format where the atomic actions needs to be used. Blueprint: improve-atomic-actions Co-Authored-By: chenhb-zte Change-Id: I8aecd5bad319aa61d5f8a20a2c2fe9bacdc0e81a --- rally-jobs/plugins/rally_profile.py | 6 ++---- tests/unit/plugins/openstack/services/heat/test_main.py | 5 +++-- tests/unit/test.py | 5 ++++- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/rally-jobs/plugins/rally_profile.py b/rally-jobs/plugins/rally_profile.py index 39951d15..d35250e2 100644 --- a/rally-jobs/plugins/rally_profile.py +++ b/rally-jobs/plugins/rally_profile.py @@ -41,12 +41,10 @@ class CalculateAtomic(scenario.Scenario, utils.RandomNameGeneratorMixin): :param number_of_atomics: int number of atomics to run """ tmp_name = "tmp_actions" + atomic_inst = atomic.ActionTimerMixin() calc_atomic_name = "calculate_%s_atomics" % number_of_atomics with atomic.ActionTimer(self, calc_atomic_name): for _ in range(number_of_atomics): - with atomic.ActionTimer(self, tmp_name): + with atomic.ActionTimer(atomic_inst, tmp_name): pass - - self._atomic_actions = { - calc_atomic_name: self._atomic_actions[calc_atomic_name]} diff --git a/tests/unit/plugins/openstack/services/heat/test_main.py b/tests/unit/plugins/openstack/services/heat/test_main.py index f8f4a8e5..5c002556 100644 --- a/tests/unit/plugins/openstack/services/heat/test_main.py +++ b/tests/unit/plugins/openstack/services/heat/test_main.py @@ -58,7 +58,7 @@ class StackTestCase(test.ScenarioTestCase): @mock.patch("rally.plugins.openstack.services.heat.main.open") @mock.patch("rally.plugins.openstack.services.heat.main.Stack._wait") def test_create(self, mock_stack__wait, mock_open, mock_task_atomic): - mock_scenario = mock.MagicMock() + mock_scenario = mock.MagicMock(_atomic_actions=[]) mock_scenario.generate_random_name.return_value = "fake_name" mock_open().read.return_value = "fake_content" mock_new_stack = { @@ -87,7 +87,8 @@ class StackTestCase(test.ScenarioTestCase): @mock.patch("rally.plugins.openstack.services.heat.main.open") @mock.patch("rally.plugins.openstack.services.heat.main.Stack._wait") def test_update(self, mock_stack__wait, mock_open, mock_task_atomic): - mock_scenario = mock.MagicMock(stack_id="fake_id") + mock_scenario = mock.MagicMock( + stack_id="fake_id", _atomic_actions=[]) mock_parameters = mock.Mock() mock_open().read.return_value = "fake_content" stack = main.Stack( diff --git a/tests/unit/test.py b/tests/unit/test.py index 4709672e..865c5d58 100644 --- a/tests/unit/test.py +++ b/tests/unit/test.py @@ -22,6 +22,7 @@ from oslotest import base from oslotest import mockpatch from rally.common import db +from rally.common import objects from rally import plugins from tests.unit import fakes @@ -46,7 +47,9 @@ class TestCase(base.BaseTestCase): plugins.load() def _test_atomic_action_timer(self, atomic_actions, name): - action_duration = atomic_actions.get(name) + _old_atomic_actions = objects.Task.convert_atomic_actions( + atomic_actions) + action_duration = _old_atomic_actions.get(name) self.assertIsNotNone(action_duration) self.assertIsInstance(action_duration, float)