This revision was automatically updated to reflect the committed changes.
Closed by commit rG343f3de559c6: [lldb] Fix a bug in the decorator matching
logic. (authored by JDevlieghere).
Herald added a project: LLDB.
Changed prior to commit:
https://reviews.llvm.org/D123401?vs=421548&id=422673#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D123401/new/
https://reviews.llvm.org/D123401
Files:
lldb/packages/Python/lldbsuite/test/decorators.py
lldb/test/API/test_utils/TestDecorators.py
Index: lldb/test/API/test_utils/TestDecorators.py
===================================================================
--- /dev/null
+++ lldb/test/API/test_utils/TestDecorators.py
@@ -0,0 +1,13 @@
+from lldbsuite.test.lldbtest import Base
+from lldbsuite.test.decorators import *
+
+
+class TestDecorators(Base):
+
+ mydir = Base.compute_mydir(__file__)
+ NO_DEBUG_INFO_TESTCASE = True
+
+ @expectedFailureAll(debug_info="dwarf")
+ def test_decorator_skip_no_debug_info(self):
+ """Test that specifying a debug info category works for a
NO_DEBUG_INFO_TESTCASE"""
+ pass
Index: lldb/packages/Python/lldbsuite/test/decorators.py
===================================================================
--- lldb/packages/Python/lldbsuite/test/decorators.py
+++ lldb/packages/Python/lldbsuite/test/decorators.py
@@ -73,18 +73,23 @@
_re_pattern_type = type(re.compile(''))
def _match_decorator_property(expected, actual):
- if actual is None or expected is None:
+ if expected is None:
return True
+ if actual is None :
+ return False
+
if isinstance(expected, no_match):
return not _match_decorator_property(expected.item, actual)
- elif isinstance(expected, (_re_pattern_type,) + six.string_types):
+
+ if isinstance(expected, (_re_pattern_type,) + six.string_types):
return re.search(expected, actual) is not None
- elif hasattr(expected, "__iter__"):
+
+ if hasattr(expected, "__iter__"):
return any([x is not None and _match_decorator_property(x, actual)
for x in expected])
- else:
- return expected == actual
+
+ return expected == actual
def _compiler_supports(compiler,
Index: lldb/test/API/test_utils/TestDecorators.py
===================================================================
--- /dev/null
+++ lldb/test/API/test_utils/TestDecorators.py
@@ -0,0 +1,13 @@
+from lldbsuite.test.lldbtest import Base
+from lldbsuite.test.decorators import *
+
+
+class TestDecorators(Base):
+
+ mydir = Base.compute_mydir(__file__)
+ NO_DEBUG_INFO_TESTCASE = True
+
+ @expectedFailureAll(debug_info="dwarf")
+ def test_decorator_skip_no_debug_info(self):
+ """Test that specifying a debug info category works for a NO_DEBUG_INFO_TESTCASE"""
+ pass
Index: lldb/packages/Python/lldbsuite/test/decorators.py
===================================================================
--- lldb/packages/Python/lldbsuite/test/decorators.py
+++ lldb/packages/Python/lldbsuite/test/decorators.py
@@ -73,18 +73,23 @@
_re_pattern_type = type(re.compile(''))
def _match_decorator_property(expected, actual):
- if actual is None or expected is None:
+ if expected is None:
return True
+ if actual is None :
+ return False
+
if isinstance(expected, no_match):
return not _match_decorator_property(expected.item, actual)
- elif isinstance(expected, (_re_pattern_type,) + six.string_types):
+
+ if isinstance(expected, (_re_pattern_type,) + six.string_types):
return re.search(expected, actual) is not None
- elif hasattr(expected, "__iter__"):
+
+ if hasattr(expected, "__iter__"):
return any([x is not None and _match_decorator_property(x, actual)
for x in expected])
- else:
- return expected == actual
+
+ return expected == actual
def _compiler_supports(compiler,
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits