This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG8be41c787f9e: [test] Allow skipTestIfFn to apply to entire classes for skipIfNoSBHeaders (authored by rupprecht).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D138181/new/ https://reviews.llvm.org/D138181 Files: lldb/packages/Python/lldbsuite/test/decorators.py lldb/test/API/api/check_public_api_headers/TestPublicAPIHeaders.py lldb/test/API/api/multithreaded/TestMultithreaded.py lldb/test/API/functionalities/plugins/command_plugin/TestPluginCommands.py
Index: lldb/test/API/functionalities/plugins/command_plugin/TestPluginCommands.py =================================================================== --- lldb/test/API/functionalities/plugins/command_plugin/TestPluginCommands.py +++ lldb/test/API/functionalities/plugins/command_plugin/TestPluginCommands.py @@ -12,7 +12,6 @@ def setUp(self): TestBase.setUp(self) - self.generateSource('plugin.cpp') @skipIfNoSBHeaders # Requires a compatible arch and platform to link against the host's built @@ -22,6 +21,7 @@ @no_debug_info_test def test_load_plugin(self): """Test that plugins that load commands work correctly.""" + self.generateSource('plugin.cpp') plugin_name = "plugin" if sys.platform.startswith("darwin"): Index: lldb/test/API/api/multithreaded/TestMultithreaded.py =================================================================== --- lldb/test/API/api/multithreaded/TestMultithreaded.py +++ lldb/test/API/api/multithreaded/TestMultithreaded.py @@ -9,6 +9,7 @@ from lldbsuite.test import lldbutil +@skipIfNoSBHeaders class SBBreakpointCallbackCase(TestBase): NO_DEBUG_INFO_TESTCASE = True @@ -25,7 +26,6 @@ self.generateSource('test_stop-hook.cpp') @skipIfRemote - @skipIfNoSBHeaders # clang-cl does not support throw or catch (llvm.org/pr24538) @skipIfWindows def test_python_stop_hook(self): @@ -34,7 +34,6 @@ 'test_python_stop_hook') @skipIfRemote - @skipIfNoSBHeaders # clang-cl does not support throw or catch (llvm.org/pr24538) @skipIfWindows def test_breakpoint_callback(self): @@ -43,7 +42,6 @@ 'test_breakpoint_callback') @skipIfRemote - @skipIfNoSBHeaders # clang-cl does not support throw or catch (llvm.org/pr24538) @skipIfWindows def test_breakpoint_location_callback(self): @@ -52,7 +50,6 @@ 'test_breakpoint_location_callback') @skipIfRemote - @skipIfNoSBHeaders # clang-cl does not support throw or catch (llvm.org/pr24538) @skipIfWindows @expectedFlakeyFreeBSD @@ -63,7 +60,6 @@ 'test_listener_event_description') @skipIfRemote - @skipIfNoSBHeaders # clang-cl does not support throw or catch (llvm.org/pr24538) @skipIfWindows @expectedFlakeyFreeBSD @@ -76,7 +72,6 @@ 'test_listener_event_process_state') @skipIfRemote - @skipIfNoSBHeaders # clang-cl does not support throw or catch (llvm.org/pr24538) @skipIfWindows @expectedFlakeyFreeBSD Index: lldb/test/API/api/check_public_api_headers/TestPublicAPIHeaders.py =================================================================== --- lldb/test/API/api/check_public_api_headers/TestPublicAPIHeaders.py +++ lldb/test/API/api/check_public_api_headers/TestPublicAPIHeaders.py @@ -8,6 +8,7 @@ from lldbsuite.test import lldbutil +@skipIfNoSBHeaders class SBDirCheckerCase(TestBase): NO_DEBUG_INFO_TESTCASE = True @@ -16,7 +17,6 @@ self.source = 'main.cpp' self.generateSource(self.source) - @skipIfNoSBHeaders def test_sb_api_directory(self): """Test the SB API directory and make sure there's no unwanted stuff.""" Index: lldb/packages/Python/lldbsuite/test/decorators.py =================================================================== --- lldb/packages/Python/lldbsuite/test/decorators.py +++ lldb/packages/Python/lldbsuite/test/decorators.py @@ -140,8 +140,10 @@ def skipTestIfFn(expected_fn, bugnumber=None): def skipTestIfFn_impl(func): if isinstance(func, type) and issubclass(func, unittest2.TestCase): - raise Exception( - "@skipTestIfFn can only be used to decorate a test method") + reason = expected_fn() + # The return value is the reason (or None if we don't skip), so + # reason is used for both args. + return unittest2.skipIf(condition=reason, reason=reason)(func) @wraps(func) def wrapper(*args, **kwargs):
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits