Ensure waiters do not stuck when timeout is reached

Related-Prod: PRODX-3456
Change-Id: Ief32a3d4f1e4597624b23ec4c2bafa63b93ac34f
(cherry picked from commit 065a8482f493d964eec21ebd8af23a66bbd16a4f)
(cherry picked from commit 848057de04eaa0947b75a35cf386c1f937a466ac)
diff --git a/octavia_tempest_plugin/tests/waiters.py b/octavia_tempest_plugin/tests/waiters.py
index fa6c112..326b483 100644
--- a/octavia_tempest_plugin/tests/waiters.py
+++ b/octavia_tempest_plugin/tests/waiters.py
@@ -76,8 +76,8 @@
             if caller:
                 message = '({caller}) {message}'.format(caller=caller,
                                                         message=message)
-            raise exceptions.UnexpectedResponseCode(message)
-
+            if not error_ok:
+                raise exceptions.UnexpectedResponseCode(message)
         if int(time.time()) - start >= check_timeout:
             message = (
                 '{name} {field} failed to update to {expected_status} within '
@@ -165,7 +165,7 @@
             LOG.info('{name}\'s status updated to DELETED.'.format(
                 name=show_client.__name__))
             return
-        elif int(time.time()) - start >= check_timeout:
+        if int(time.time()) - start >= check_timeout:
             message = (
                 '{name} {field} failed to update to DELETED or become not '
                 'found (404) within the required time {timeout}. Current '