[Lldb-commits] [lldb] r372914 - [lit] Do a better job at parsing unsupported tests.

Jonas Devlieghere via lldb-commits lldb-commits at lists.llvm.org
Wed Sep 25 12:31:55 PDT 2019

Author: jdevlieghere
Date: Wed Sep 25 12:31:54 2019
New Revision: 372914

URL: http://llvm.org/viewvc/llvm-project?rev=372914&view=rev
[lit] Do a better job at parsing unsupported tests.

When all the tests run by dotest are unsupported, it still reports
RESULT: PASSED which we translate to success for lit. We can better
report the status as unsupported when we see that there are unsupported
tests but no passing tests. This will not affect the situation where
there are failures or unexpected passes, because those report a non-zero
exit code.

Differential revision: https://reviews.llvm.org/D68039


Modified: lldb/trunk/lit/Suite/lldbtest.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/lit/Suite/lldbtest.py?rev=372914&r1=372913&r2=372914&view=diff
--- lldb/trunk/lit/Suite/lldbtest.py (original)
+++ lldb/trunk/lit/Suite/lldbtest.py Wed Sep 25 12:31:54 2019
@@ -102,6 +102,11 @@ class LLDBTest(TestFormat):
             if 'XPASS:' in out or 'XPASS:' in err:
                 return lit.Test.XPASS, out + err
+        has_unsupported_tests = 'UNSUPPORTED:' in out or 'UNSUPPORTED:' in err
+        has_passing_tests = 'PASS:' in out or 'PASS:' in err
+        if has_unsupported_tests and not has_passing_tests:
+            return lit.Test.UNSUPPORTED, out + err
         passing_test_line = 'RESULT: PASSED'
         if passing_test_line not in out and passing_test_line not in err:
             msg = ('Unable to find %r in dotest output (exit code %d):\n\n%s%s'

More information about the lldb-commits mailing list