Added checking of event-log in scenario tests

Added checking provision_progress of cluster, for checking
event-log in scenario tests
Closes-bug: #1456282

Change-Id: Ibc438fdb87c2d036eeee0a627f58b710712dc558
This commit is contained in:
Evgeny Sikachev 2015-05-19 18:37:39 +03:00
parent cf8d03cd42
commit e3210153a0
2 changed files with 16 additions and 21 deletions

View File

@ -117,6 +117,10 @@ class BaseTestCase(base.BaseTestCase):
cl_tmpl_id = self._create_cluster_template()
self.cluster_id = self._create_cluster(cl_tmpl_id)
self._poll_cluster_status_tracked(self.cluster_id)
cluster = self.sahara.get_cluster(self.cluster_id, show_progress=True)
if not getattr(cluster, "provision_progress", None):
return
self._check_event_logs(cluster)
@track_result("Check transient")
def check_transient(self):
@ -356,8 +360,8 @@ class BaseTestCase(base.BaseTestCase):
return self.__create_cluster_template(**kwargs)
def _check_event_log_feature(self, cluster_id):
cluster = self.sahara.get_cluster(cluster_id, show_progress=True)
@track_result("Check event logs")
def _check_event_logs(self, cluster):
invalid_steps = []
if cluster.is_transient:
# skip event log testing
@ -409,7 +413,6 @@ class BaseTestCase(base.BaseTestCase):
if status == 'Error':
raise exc.TempestException("Cluster in %s state" % status)
time.sleep(3)
self._check_event_log_feature(cluster_id)
# client ops

View File

@ -221,10 +221,9 @@ class TestBase(testtools.TestCase):
return_value='mock_net')
@mock.patch('saharaclient.api.base.ResourceManager._get',
return_value=FakeResponse(set_status='Active'))
@mock.patch('sahara.tests.scenario.base.BaseTestCase.'
'_check_event_log_feature')
@mock.patch('sahara.tests.scenario.base.BaseTestCase._check_event_logs')
def test__poll_cluster_status(self, mock_status, mock_neutron,
mock_saharaclient, mock_check_event_log):
mock_saharaclient, mock_check_event_logs):
self.base_scenario._init_clients()
self.assertIsNone(
self.base_scenario._poll_cluster_status('id_cluster'))
@ -233,26 +232,19 @@ class TestBase(testtools.TestCase):
@mock.patch('saharaclient.api.base.ResourceManager._get')
def test_check_event_log_feature(self, mock_resp, mock_saharaclient):
self.base_scenario._init_clients()
mock_resp.side_effect = [
FakeCluster(is_transient=True, provision_progress=[]),
FakeCluster(is_transient=False,
provision_progress=[{'successful': True}]),
FakeCluster(is_transient=False,
provision_progress=[{'successful': False}]),
FakeCluster(is_transient=False,
provision_progress=[{'successful': None}])
]
self.assertIsNone(
self.base_scenario._check_event_log_feature('fake_id'))
self.assertIsNone(
self.base_scenario._check_event_log_feature('fake_id'))
self.assertIsNone(self.base_scenario._check_event_logs(
FakeCluster(True, [])))
self.assertIsNone(self.base_scenario._check_event_logs(
FakeCluster(False, [{'successful': True}])))
with testtools.ExpectedException(exc.TempestException):
self.base_scenario._check_event_log_feature('fake_id')
self.base_scenario._check_event_logs(
FakeCluster(False, [{'successful': False}]))
with testtools.ExpectedException(exc.TempestException):
self.base_scenario._check_event_log_feature('fake_id')
self.base_scenario._check_event_logs(
FakeCluster(False, [{'successful': None}]))
@mock.patch('saharaclient.api.base.ResourceManager._update',
return_value=FakeResponse(set_id='id_internal_db_data'))