From a32f8dd195866c2be95d7e71f311a805a6fed4cd Mon Sep 17 00:00:00 2001 From: Jonas Devlieghere Date: Fri, 20 Dec 2019 21:01:23 -0800 Subject: [lldb/test] Skip editline tests when LLDB_ENABLE_LIBEDIT is off. Add a new decorator that checks if LLDB was build with editline support and mark the relevant tests as skipped when that's not the case. --- .../expression/multiline-completion/TestMultilineCompletion.py | 1 + .../expression/multiline-navigation/TestMultilineNavigation.py | 2 ++ lldb/packages/Python/lldbsuite/test/decorators.py | 3 +++ .../lldbsuite/test/iohandler/completion/TestIOHandlerCompletion.py | 1 + lldb/packages/Python/lldbsuite/test/terminal/TestEditline.py | 1 + 5 files changed, 8 insertions(+) (limited to 'lldb/packages/Python/lldbsuite') diff --git a/lldb/packages/Python/lldbsuite/test/commands/expression/multiline-completion/TestMultilineCompletion.py b/lldb/packages/Python/lldbsuite/test/commands/expression/multiline-completion/TestMultilineCompletion.py index 1275595a793..9b2b71230e5 100644 --- a/lldb/packages/Python/lldbsuite/test/commands/expression/multiline-completion/TestMultilineCompletion.py +++ b/lldb/packages/Python/lldbsuite/test/commands/expression/multiline-completion/TestMultilineCompletion.py @@ -15,6 +15,7 @@ class MultilineCompletionTest(PExpectTest): # under ASAN on a loaded machine.. @skipIfAsan @skipIfRemote # test is written to explicitly "run" the binary + @skipIfEditlineSupportMissing def test_basic_completion(self): """Test that we can complete a simple multiline expression""" self.build() diff --git a/lldb/packages/Python/lldbsuite/test/commands/expression/multiline-navigation/TestMultilineNavigation.py b/lldb/packages/Python/lldbsuite/test/commands/expression/multiline-navigation/TestMultilineNavigation.py index 71211120921..743e7994536 100644 --- a/lldb/packages/Python/lldbsuite/test/commands/expression/multiline-navigation/TestMultilineNavigation.py +++ b/lldb/packages/Python/lldbsuite/test/commands/expression/multiline-navigation/TestMultilineNavigation.py @@ -17,6 +17,7 @@ class TestCase(PExpectTest): # PExpect uses many timeouts internally and doesn't play well # under ASAN on a loaded machine.. @skipIfAsan + @skipIfEditlineSupportMissing def test_nav_arrow_up(self): """Tests that we can navigate back to the previous line with the up arrow""" self.launch() @@ -38,6 +39,7 @@ class TestCase(PExpectTest): self.quit() @skipIfAsan + @skipIfEditlineSupportMissing def test_nav_arrow_down(self): """Tests that we can navigate to the next line with the down arrow""" self.launch() diff --git a/lldb/packages/Python/lldbsuite/test/decorators.py b/lldb/packages/Python/lldbsuite/test/decorators.py index 7009767f63a..ec17cb7c256 100644 --- a/lldb/packages/Python/lldbsuite/test/decorators.py +++ b/lldb/packages/Python/lldbsuite/test/decorators.py @@ -808,6 +808,9 @@ def skipIfCursesSupportMissing(func): def skipIfXmlSupportMissing(func): return _get_bool_config_skip_if_decorator("xml")(func) +def skipIfEditlineSupportMissing(func): + return _get_bool_config_skip_if_decorator("editline")(func) + def skipIfLLVMTargetMissing(target): config = lldb.SBDebugger.GetBuildConfiguration() targets = config.GetValueForKey("targets").GetValueForKey("value") diff --git a/lldb/packages/Python/lldbsuite/test/iohandler/completion/TestIOHandlerCompletion.py b/lldb/packages/Python/lldbsuite/test/iohandler/completion/TestIOHandlerCompletion.py index b4858514637..610bf019436 100644 --- a/lldb/packages/Python/lldbsuite/test/iohandler/completion/TestIOHandlerCompletion.py +++ b/lldb/packages/Python/lldbsuite/test/iohandler/completion/TestIOHandlerCompletion.py @@ -16,6 +16,7 @@ class IOHandlerCompletionTest(PExpectTest): # PExpect uses many timeouts internally and doesn't play well # under ASAN on a loaded machine.. @skipIfAsan + @skipIfEditlineSupportMissing def test_completion(self): self.launch(dimensions=(100,500)) diff --git a/lldb/packages/Python/lldbsuite/test/terminal/TestEditline.py b/lldb/packages/Python/lldbsuite/test/terminal/TestEditline.py index cf82f5d8ab1..8e1652a5041 100644 --- a/lldb/packages/Python/lldbsuite/test/terminal/TestEditline.py +++ b/lldb/packages/Python/lldbsuite/test/terminal/TestEditline.py @@ -16,6 +16,7 @@ class EditlineTest(PExpectTest): mydir = TestBase.compute_mydir(__file__) @skipIfAsan + @skipIfEditlineSupportMissing def test_left_right_arrow(self): """Test that ctrl+left/right arrow navigates words correctly. -- cgit v1.2.3