Author: Slava Gurevich
Date: 2022-07-28T16:08:35-07:00
New Revision: 2e6b6522296e40304ccd2766ad3233af8a0851bb

URL: 
https://github.com/llvm/llvm-project/commit/2e6b6522296e40304ccd2766ad3233af8a0851bb
DIFF: 
https://github.com/llvm/llvm-project/commit/2e6b6522296e40304ccd2766ad3233af8a0851bb.diff

LOG: [LLDB] Fix missing return value in SBBreakpointLocation::GetQueueName()

- Fix a typo in the function that never returns a significant value

- Add unit tests for the getters/setters in SBBreakpointLocation

- Verified the newly added unit test succeeds after the fix:
llvm-lit -sv  
lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py

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

Added: 
    

Modified: 
    lldb/source/API/SBBreakpointLocation.cpp
    
lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py

Removed: 
    


################################################################################
diff  --git a/lldb/source/API/SBBreakpointLocation.cpp 
b/lldb/source/API/SBBreakpointLocation.cpp
index 9143174377236..6c03aba15447f 100644
--- a/lldb/source/API/SBBreakpointLocation.cpp
+++ b/lldb/source/API/SBBreakpointLocation.cpp
@@ -374,7 +374,7 @@ const char *SBBreakpointLocation::GetQueueName() const {
   if (loc_sp) {
     std::lock_guard<std::recursive_mutex> guard(
         loc_sp->GetTarget().GetAPIMutex());
-    loc_sp->GetQueueName();
+    return loc_sp->GetQueueName();
   }
   return nullptr;
 }

diff  --git 
a/lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
 
b/lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
index 85c55a44d7226..982e56a74e260 100644
--- 
a/lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
+++ 
b/lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
@@ -89,6 +89,53 @@ def shadowed_bkpt_cond_test(self):
         bkpt.SetCondition(bkpt_new_cond)
         self.assertEqual(bkpt.location[0].GetCondition(), bkpt_new_cond, 
"Didn't go back to tracking condition")
 
+        # Test that set/get accessor methods on BreakpointLocation behave 
correctly.
+        bkpt_loc = bkpt.GetLocationAtIndex(0)
+
+        value = "MyQueue"
+        bkpt_loc.SetQueueName(value)
+        self.assertEqual(bkpt_loc.GetQueueName(), value,"Successfully set/get 
bp location QueueName")
+
+        value = 5
+        bkpt_loc.SetThreadID(value)
+        self.assertEqual(bkpt_loc.GetThreadID(), value,"Successfully set/get 
bp location ThreadID")
+
+        value = "1 == 0"
+        bkpt_loc.SetCondition(value)
+        self.assertEqual(bkpt_loc.GetCondition(), value,"Successfully set/get 
bp location Condition")
+
+        value = 6
+        bkpt_loc.SetThreadIndex(value)
+        self.assertEqual(bkpt_loc.GetThreadIndex(), value,"Successfully 
set/get bp location ThreadIndex")
+
+        value = "MyThread"
+        bkpt_loc.SetThreadName(value)
+        self.assertEqual(bkpt_loc.GetThreadName(), value,"Successfully set/get 
bp location ThreadName")
+
+        value = 5
+        bkpt_loc.SetIgnoreCount(value)
+        self.assertEqual(bkpt_loc.GetIgnoreCount(), value,"Successfully 
set/get bp location IgnoreCount")
+
+        for value in [True,False]:
+            bkpt_loc.SetAutoContinue(value)
+            self.assertEqual(bkpt_loc.GetAutoContinue(), value,"Successfully 
set/get bp location AutoContinue")
+
+        for value in [True,False]:
+            bkpt_loc.SetEnabled(value)
+            self.assertEqual(bkpt_loc.IsEnabled(), value,"Successfully set/get 
bp location SetEnabled")
+
+        # test set/get CommandLineCommands
+        set_cmds = lldb.SBStringList()
+        set_cmds.AppendString("frame var")
+        set_cmds.AppendString("bt")
+        bkpt_loc.SetCommandLineCommands(set_cmds)
+
+        get_cmds = lldb.SBStringList()
+        bkpt_loc.GetCommandLineCommands(get_cmds)
+        self.assertEqual(set_cmds.GetSize(), get_cmds.GetSize(), "Size of 
command line commands")
+        for idx, _ in  enumerate(set_cmds):
+            self.assertEqual(set_cmds.GetStringAtIndex(idx), 
get_cmds.GetStringAtIndex(idx), "Command %d"%(idx))
+
     def shadowed_bkpt_command_test(self):
         """Test that options set on the breakpoint and location behave 
correctly."""
         # Breakpoint option propagation from bkpt to loc used to be done the 
first time


        
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to