Skip to content

Commit dabda3b

Browse files
committed
Format, add regex to test, and check if progress is nullopt instead of comparing total.
1 parent 0673dc5 commit dabda3b

File tree

3 files changed

+10
-7
lines changed

3 files changed

+10
-7
lines changed

lldb/test/API/tools/lldb-dap/progress/TestDAP_Progress.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import json
88
import os
99
import time
10+
import re
1011

1112
import lldbdap_testcase
1213

@@ -16,6 +17,7 @@ def verify_progress_events(
1617
self,
1718
expected_title,
1819
expected_message=None,
20+
expected_message_regex=None,
1921
expected_not_in_message=None,
2022
only_verify_first_update=False,
2123
):
@@ -36,6 +38,8 @@ def verify_progress_events(
3638
continue
3739
if expected_message is not None:
3840
self.assertIn(expected_message, message)
41+
if expected_message_regex is not None:
42+
self.assertTrue(re.match(expected_message_regex, message))
3943
if expected_not_in_message is not None:
4044
self.assertNotIn(expected_not_in_message, message)
4145
update_found = True
@@ -81,8 +85,7 @@ def test(self):
8185

8286
self.verify_progress_events(
8387
expected_title="Progress tester: Initial Indeterminate Detail",
84-
expected_message="Step 2",
85-
only_verify_first_update=True,
88+
expected_message_regex=r"Step [0-9]+",
8689
)
8790

8891
# Test no details indeterminate.

lldb/tools/lldb-dap/ProgressEvent.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,19 +77,19 @@ ProgressEvent::Create(uint64_t progress_id, std::optional<StringRef> message,
7777
if (event.GetEventType() == progressStart && event.GetEventName().empty())
7878
return std::nullopt;
7979

80-
if (prev_event && prev_event->EqualsForIDE(event, total))
80+
if (prev_event && prev_event->EqualsForIDE(event))
8181
return std::nullopt;
8282

8383
return event;
8484
}
8585

86-
bool ProgressEvent::EqualsForIDE(const ProgressEvent &other, uint64_t total) const {
86+
bool ProgressEvent::EqualsForIDE(const ProgressEvent &other) const {
8787
return m_progress_id == other.m_progress_id &&
88-
m_event_type == other.m_event_type &&
88+
m_event_type == other.m_event_type &&
8989
// If we check the percentage of a non-deterministic event
9090
// we will basically never send the event, because N+1/Uint64_max
9191
// will always be an infinitesimally small change.
92-
(total != UINT64_MAX && m_percentage == other.m_percentage);
92+
(m_percentage != std::nullopt && m_percentage == other.m_percentage);
9393
}
9494

9595
ProgressEventType ProgressEvent::GetEventType() const { return m_event_type; }

lldb/tools/lldb-dap/ProgressEvent.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ class ProgressEvent {
5454
/// \return
5555
/// \b true if two event messages would result in the same event for the
5656
/// IDE, e.g. same rounded percentage.
57-
bool EqualsForIDE(const ProgressEvent &other, uint64_t total) const;
57+
bool EqualsForIDE(const ProgressEvent &other) const;
5858

5959
llvm::StringRef GetEventName() const;
6060

0 commit comments

Comments
 (0)