From f83db056d8eefe98c8eca66a6a1d66f0463c7dc2 Mon Sep 17 00:00:00 2001 From: Zhi Zhang Date: Mon, 6 Jun 2016 13:01:27 +0800 Subject: [PATCH] Adjust wait_for_health to be more flexsible Signed-off-by: Zhi Zhang --- tasks/cephfs/cephfs_test_case.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/tasks/cephfs/cephfs_test_case.py b/tasks/cephfs/cephfs_test_case.py index 1d8ce13e953a2..29855d90d5a70 100644 --- a/tasks/cephfs/cephfs_test_case.py +++ b/tasks/cephfs/cephfs_test_case.py @@ -385,7 +385,7 @@ class CephFSTestCase(unittest.TestCase): def wait_for_health(self, pattern, timeout): """ - Wait until 'ceph health' contains a single message matching the pattern + Wait until 'ceph health' contains messages matching the pattern """ def seen_health_warning(): health = self.fs.mon_manager.get_mon_health() @@ -393,10 +393,13 @@ class CephFSTestCase(unittest.TestCase): if len(summary_strings) == 0: log.debug("Not expected number of summary strings ({0})".format(summary_strings)) return False - elif len(summary_strings) == 1 and pattern in summary_strings[0]: - return True else: - raise RuntimeError("Unexpected health messages: {0}".format(summary_strings)) + for ss in summary_strings: + if pattern in ss: + return True + + log.debug("Not found expected summary strings yet ({0})".format(summary_strings)) + return False self.wait_until_true(seen_health_warning, timeout) -- 2.39.5