[Lldb-commits] [lldb] [lldb/test] Narrow @expectedFailureAll(remote=True) to non-Darwin remotes (PR #200529)

Med Ismail Bennani via lldb-commits lldb-commits at lists.llvm.org
Fri May 29 20:48:06 PDT 2026


https://github.com/medismailben updated https://github.com/llvm/llvm-project/pull/200529

>From d7993af36b728806046e370a85504f57c3cb1132 Mon Sep 17 00:00:00 2001
From: Med Ismail Bennani <ismail at bennani.ma>
Date: Fri, 29 May 2026 20:47:52 -0700
Subject: [PATCH] [lldb/test] Trim @expectedFailureAll(remote=True) decorators
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

These three tests pass when run against a remote-darwin platform
backed by lldb-platform on device. Update each decorator to reflect
where it's still expected to fail rather than blanket-XFAILing every
remote run.

- TestAssertMessages.test_createTestTarget: was XFAIL on
  oslist=no_match(["linux"]) + remote=True. Add darwin_all to the
  no_match list so the XFAIL stays only on remote-windows /
  remote-freebsd / remote-netbsd / remote-android.
- TestDebuggerAPI.test_CreateTarget_platform: scope to non-Darwin
  remotes (bug llvm/llvm-project#92419 still tracks the underlying
  issue on those platforms).
- TestObjcOptimized: drop @expectedFailureAll(remote=True) from the
  test method and put @skipUnlessDarwin on the class. The Makefile
  depends on `-framework Foundation` and `-lobjc`, so the test cannot
  build on non-Darwin platforms — skip it there outright instead of
  pretending it could XFAIL.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
---
 lldb/test/API/assert_messages_test/TestAssertMessages.py    | 6 +++++-
 lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py | 2 +-
 lldb/test/API/python_api/debugger/TestDebuggerAPI.py        | 2 ++
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/lldb/test/API/assert_messages_test/TestAssertMessages.py b/lldb/test/API/assert_messages_test/TestAssertMessages.py
index 27d18e5ae99b9..45d3c184662f1 100644
--- a/lldb/test/API/assert_messages_test/TestAssertMessages.py
+++ b/lldb/test/API/assert_messages_test/TestAssertMessages.py
@@ -5,6 +5,7 @@
 
 import lldb
 import lldbsuite.test.lldbutil as lldbutil
+from lldbsuite.test import lldbplatform
 from lldbsuite.test.lldbtest import *
 from lldbsuite.test.decorators import *
 from textwrap import dedent
@@ -23,7 +24,10 @@ def assert_expect_fails_with(self, cmd, expect_args, expected_msg):
         else:
             self.fail("Initial expect should have raised AssertionError!")
 
-    @expectedFailureAll(oslist=no_match(["linux"]), remote=True)
+    @expectedFailureAll(
+        oslist=no_match(["linux"] + lldbplatform.translate(lldbplatform.darwin_all)),
+        remote=True,
+    )
     def test_createTestTarget(self):
         try:
             self.createTestTarget("doesnt_exist")
diff --git a/lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py b/lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py
index 387a3e11e0c0f..ebff8896acf20 100644
--- a/lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py
+++ b/lldb/test/API/lang/objc/objc-optimized/TestObjcOptimized.py
@@ -17,12 +17,12 @@
 # test failure: objc_optimized does not work for "-C clang -A i386"
 
 
+ at skipUnlessDarwin
 class ObjcOptimizedTestCase(TestBase):
     myclass = "MyClass"
     mymethod = "description"
     method_spec = "-[%s %s]" % (myclass, mymethod)
 
-    @expectedFailureAll(remote=True)
     def test_break(self):
         """Test 'expr member' continues to work for optimized build."""
         self.build()
diff --git a/lldb/test/API/python_api/debugger/TestDebuggerAPI.py b/lldb/test/API/python_api/debugger/TestDebuggerAPI.py
index 93ee52dc88ef8..488878b0436cd 100644
--- a/lldb/test/API/python_api/debugger/TestDebuggerAPI.py
+++ b/lldb/test/API/python_api/debugger/TestDebuggerAPI.py
@@ -4,6 +4,7 @@
 
 import lldb
 
+from lldbsuite.test import lldbplatform
 from lldbsuite.test.decorators import *
 from lldbsuite.test.lldbtest import *
 from lldbsuite.test import lldbutil
@@ -94,6 +95,7 @@ def get_cache_line_size():
         self.assertEqual(get_cache_line_size(), new_cache_line_size)
 
     @expectedFailureAll(
+        oslist=no_match(lldbplatform.translate(lldbplatform.darwin_all)),
         remote=True,
         bugnumber="github.com/llvm/llvm-project/issues/92419",
     )



More information about the lldb-commits mailing list