Revision: 3806
Author: pekka.klarck
Date: Mon Jul 12 13:28:17 2010
Log: report continuable failures correctly with `run keywords` (issue 586)
http://code.google.com/p/robotframework/source/detail?r=3806

Modified:
 /trunk/atest/robot/standard_libraries/builtin/run_keywords.txt
 /trunk/atest/testdata/standard_libraries/builtin/run_keywords.txt
 /trunk/src/robot/libraries/BuiltIn.py

=======================================
--- /trunk/atest/robot/standard_libraries/builtin/run_keywords.txt Tue Jun 8 13:43:04 2010 +++ /trunk/atest/robot/standard_libraries/builtin/run_keywords.txt Mon Jul 12 13:28:17 2010
@@ -12,6 +12,10 @@
 Failing keyword
     Test Should Have Correct Keywords  Passing  Failing

+Continuable failures
+    Test Should Have Correct Keywords  Continuable failure
+    ...  Multiple continuables  Failing
+
 Keywords as variables
     Test Should Have Correct Keywords  BuiltIn.No Operation  Passing
     ...  BuiltIn.No Operation  Passing  BuiltIn.Log Variables  Failing
=======================================
--- /trunk/atest/testdata/standard_libraries/builtin/run_keywords.txt Tue Jun 8 13:43:04 2010 +++ /trunk/atest/testdata/standard_libraries/builtin/run_keywords.txt Mon Jul 12 13:28:17 2010
@@ -21,6 +21,16 @@
     [Documentation]  FAIL  Expected error message${ATD ERR}
     Run keywords  Passing  Failing  Not Executed

+Continuable failures
+    [Documentation]  FAIL  Several failures occurred:\n\n
+    ...  1) Expected continuable failure\n\n
+    ...  2) Continuable 1/4\n\n
+    ...  3) Continuable 2/4\n\n
+    ...  4) Continuable 3/4\n\n
+    ...  5) Continuable 4/4\n\n
+    ...  6) Expected error message${ATD ERR}
+ Run keywords Continuable failure Multiple continuables Failing Not Exec
+
 Keywords as variables
     [Documentation]  FAIL  Expected error message${ATD ERR}
     Run keywords  ${NOOP}  ${PASSING}  @{KEYWORDS}  ${FAILING}
@@ -60,3 +70,12 @@

 Failing
     Fail  Expected error message
+
+Continuable failure  [Arguments]  ${msg}=Expected continuable failure
+    Run keyword and continue on failure  Fail  ${msg}
+
+Multiple continuables
+    Continuable failure  Continuable 1/4
+    Continuable failure  Continuable 2/4
+    Continuable failure  Continuable 3/4
+    Continuable failure  Continuable 4/4
=======================================
--- /trunk/src/robot/libraries/BuiltIn.py       Mon Jul 12 13:03:19 2010
+++ /trunk/src/robot/libraries/BuiltIn.py       Mon Jul 12 13:28:17 2010
@@ -773,7 +773,7 @@
             try:
                 self.run_keyword(kw)
             except ExecutionFailed, err:
-                errors.append(err)
+                errors.extend(err.get_errors())
                 if not err.cont:
                     break
         if errors:

Reply via email to