Merge "Updating yaml file to match other standalone test cases"
[yardstick.git] / yardstick / benchmark / runners / duration.py
index 60f1fa5..55c3690 100644 (file)
@@ -74,6 +74,7 @@ def _worker_process(queue, cls, method_name, scenario_cfg,
         except y_exc.SLAValidationError as error:
             # SLA validation failed in scenario, determine what to do now
             if sla_action == "assert":
+                benchmark.teardown()
                 raise
             elif sla_action == "monitor":
                 LOG.warning("SLA validation failed: %s", error.args)
@@ -105,7 +106,8 @@ def _worker_process(queue, cls, method_name, scenario_cfg,
 
         sequence += 1
 
-        if (errors and sla_action is None) or time.time() > timeout or aborted.is_set():
+        if ((errors and sla_action is None) or time.time() > timeout
+                or aborted.is_set() or benchmark.is_ended()):
             LOG.info("Worker END")
             break