diff options
| author | Jacob Lalonde <jalalonde@fb.com> | 2025-02-27 11:08:20 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-02-27 11:08:20 -0800 |
| commit | 10a9dcab0a5904ce6c12efb3555a2e31017bce92 (patch) | |
| tree | 6758151ccd020163a638352071a7991de2a1cbe1 /lldb/test/API/python_api | |
| parent | 440ea3ecdcd4aaf9d6c7d729fe7bc695365aed52 (diff) | |
| download | llvm-10a9dcab0a5904ce6c12efb3555a2e31017bce92.zip llvm-10a9dcab0a5904ce6c12efb3555a2e31017bce92.tar.gz llvm-10a9dcab0a5904ce6c12efb3555a2e31017bce92.tar.bz2 | |
[LLDB][SBProgress] Fix bad optional in sbprogress (#128971)
This fixes the obvious, but untested case of sending None/Null to
SBProgress.
Diffstat (limited to 'lldb/test/API/python_api')
| -rw-r--r-- | lldb/test/API/python_api/sbprogress/TestSBProgress.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/lldb/test/API/python_api/sbprogress/TestSBProgress.py b/lldb/test/API/python_api/sbprogress/TestSBProgress.py index c456247..1b8f01d 100644 --- a/lldb/test/API/python_api/sbprogress/TestSBProgress.py +++ b/lldb/test/API/python_api/sbprogress/TestSBProgress.py @@ -33,3 +33,35 @@ class SBProgressTestCase(TestBase): expected_string = "Test progress first increment" progress.Increment(1, expected_string) self.assertFalse(listener.PeekAtNextEvent(event)) + + def test_with_external_bit_set(self): + """Test SBProgress can handle null events.""" + + progress = lldb.SBProgress("Test SBProgress", "Test progress", 3, self.dbg) + listener = lldb.SBListener("Test listener") + broadcaster = self.dbg.GetBroadcaster() + broadcaster.AddListener(listener, lldb.eBroadcastBitExternalProgress) + event = lldb.SBEvent() + # Sample JSON we're expecting: + # { id = 2, title = "Test SBProgress", details = "Test progress", type = update, progress = 1 of 3} + # details remains the same as specified in the constructor of the progress + # until we update it in the increment function, so we check for the Null and empty string case + # that details hasn't changed, but progress x of 3 has. + progress.Increment(1, None) + self.assertTrue(listener.GetNextEvent(event)) + stream = lldb.SBStream() + event.GetDescription(stream) + self.assertIn("Test progress", stream.GetData()) + self.assertIn("1 of 3", stream.GetData()) + + progress.Increment(1, "") + self.assertTrue(listener.GetNextEvent(event)) + event.GetDescription(stream) + self.assertIn("Test progress", stream.GetData()) + self.assertIn("2 of 3", stream.GetData()) + + progress.Increment(1, "Step 3") + self.assertTrue(listener.GetNextEvent(event)) + stream = lldb.SBStream() + event.GetDescription(stream) + self.assertIn("Step 3", stream.GetData()) |
