[lldb] Start from end of previous substr when checking ordered substrs
authorArthur Eubanks <aeubanks@google.com>
Wed, 12 Oct 2022 23:07:44 +0000 (16:07 -0700)
committerArthur Eubanks <aeubanks@google.com>
Fri, 14 Oct 2022 18:16:51 +0000 (11:16 -0700)
I'm trying to add a test which tests that the same substr occurs twice in a row, but it matches even if only one of the substr occurs.

This found a bug in concurrent_base.py.

Reviewed By: DavidSpickett

Differential Revision: https://reviews.llvm.org/D135826

lldb/packages/Python/lldbsuite/test/concurrent_base.py
lldb/packages/Python/lldbsuite/test/lldbtest.py
lldb/test/API/functionalities/data-formatter/data-formatter-cpp/TestDataFormatterCpp.py

index 6acd71c..a235ceb 100644 (file)
@@ -74,9 +74,7 @@ class ConcurrentEventsBase(TestBase):
         bpno = lldbutil.run_break_set_by_file_and_line(
             self, self.filename, line, num_expected_locations=-1)
         bp = self.inferior_target.FindBreakpointByID(bpno)
-        descriptions.append(
-            ": file = 'main.cpp', line = %d" %
-            self.finish_breakpoint_line)
+        descriptions.append(": file = 'main.cpp', line = %d" % line)
         return bp
 
     def inferior_done(self):
index 1ea29b3..2d054f9 100644 (file)
@@ -2358,7 +2358,7 @@ FileCheck output:
             start = 0
             for substr in substrs:
                 index = output[start:].find(substr)
-                start = start + index if ordered and matching else 0
+                start = start + index + len(substr) if ordered and matching else 0
                 matched = index != -1
                 log_lines.append("{} sub string: \"{}\" ({})".format(
                         expecting_str, substr, found_str(matched)))
index d4d6d24..c4d4c46 100644 (file)
@@ -116,7 +116,7 @@ class CppDataFormatterTestCase(TestBase):
             substrs=[
                 '(char *) $',
                 ' = ptr = ',
-                ' "1234567890123456789012345678901234567890123456789012345678901234ABC"'])
+                '"1234567890123456789012345678901234567890123456789012345678901234ABC"'])
 
         self.runCmd("type summary add -c TestPoint")