Skip to content

Commit ee365a3

Browse files
committed
Merge branch 'feature/report-progress' into develop
2 parents 30e132b + 7aa5546 commit ee365a3

File tree

2 files changed

+26
-30
lines changed

2 files changed

+26
-30
lines changed

src/main/java/com/github/_1c_syntax/bsl/languageserver/WorkDoneProgressHelper.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,9 +114,9 @@ public void tick() {
114114

115115
var currentCounter = counter.incrementAndGet();
116116
var message = String.format("%d/%d%s", currentCounter, size, messagePostfix);
117-
var percentage = currentCounter / size;
117+
var percentage = (double) currentCounter / size * 100;
118118

119-
tick(message, percentage);
119+
tick(message, (int) percentage);
120120
}
121121

122122
public void endProgress(String message) {

src/test/java/com/github/_1c_syntax/bsl/languageserver/WorkDoneProgressHelperTest.java

Lines changed: 24 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@
3333

3434
import static org.mockito.ArgumentMatchers.any;
3535
import static org.mockito.ArgumentMatchers.refEq;
36-
import static org.mockito.Mockito.atMostOnce;
3736
import static org.mockito.Mockito.mock;
3837
import static org.mockito.Mockito.never;
38+
import static org.mockito.Mockito.times;
3939
import static org.mockito.Mockito.verify;
4040

4141
class WorkDoneProgressHelperTest {
@@ -51,38 +51,38 @@ void noOpProgressWithoutWorkDoneSupport() {
5151

5252
// when
5353
var progress = workDoneProgressHelper.createProgress(1, "");
54+
progress.beginProgress("test");
55+
progress.tick();
56+
progress.endProgress("");
5457

5558
// then
5659
verify(languageClient, never()).createProgress(any());
60+
verify(languageClient, never()).notifyProgress(any());
5761
}
5862

5963
@Test
6064
void createProgressWithWorkDoneSupport() {
6165
// given
62-
var languageClient = mock(LanguageClient.class);
63-
var languageClientHolder = new LanguageClientHolder();
64-
languageClientHolder.connect(languageClient);
65-
66-
var clientCapabilitiesHolder = new ClientCapabilitiesHolder();
66+
var languageClientHolder = getLanguageClientHolder();
67+
var languageClient = languageClientHolder.getClient().orElseThrow();
6768

69+
var clientCapabilitiesHolder = getClientCapabilitiesHolder(Boolean.TRUE);
6870
var workDoneProgressHelper = new WorkDoneProgressHelper(languageClientHolder, clientCapabilitiesHolder);
6971

7072
// when
71-
var progress = workDoneProgressHelper.createProgress(1, "");
73+
workDoneProgressHelper.createProgress(1, "");
7274

7375
// then
74-
verify(languageClient, atMostOnce()).createProgress(any());
76+
verify(languageClient, times(1)).createProgress(any());
7577
}
7678

7779
@Test
7880
void beginProgress() {
7981
// given
80-
var languageClient = mock(LanguageClient.class);
81-
var languageClientHolder = new LanguageClientHolder();
82-
languageClientHolder.connect(languageClient);
83-
84-
var clientCapabilitiesHolder = new ClientCapabilitiesHolder();
82+
var languageClientHolder = getLanguageClientHolder();
83+
var languageClient = languageClientHolder.getClient().orElseThrow();
8584

85+
var clientCapabilitiesHolder = getClientCapabilitiesHolder(Boolean.TRUE);
8686
var workDoneProgressHelper = new WorkDoneProgressHelper(languageClientHolder, clientCapabilitiesHolder);
8787

8888
var progress = workDoneProgressHelper.createProgress(1, "");
@@ -95,7 +95,7 @@ void beginProgress() {
9595
begin.setTitle("test");
9696
var progressParams = new ProgressParams(Either.forLeft("token"), Either.forLeft(begin));
9797

98-
verify(languageClient, atMostOnce())
98+
verify(languageClient, times(1))
9999
.notifyProgress(
100100
refEq(
101101
progressParams,
@@ -107,15 +107,13 @@ void beginProgress() {
107107
@Test
108108
void tick() {
109109
// given
110-
var languageClient = mock(LanguageClient.class);
111-
var languageClientHolder = new LanguageClientHolder();
112-
languageClientHolder.connect(languageClient);
113-
114-
var clientCapabilitiesHolder = new ClientCapabilitiesHolder();
110+
var languageClientHolder = getLanguageClientHolder();
111+
var languageClient = languageClientHolder.getClient().orElseThrow();
115112

113+
var clientCapabilitiesHolder = getClientCapabilitiesHolder(Boolean.TRUE);
116114
var workDoneProgressHelper = new WorkDoneProgressHelper(languageClientHolder, clientCapabilitiesHolder);
117115

118-
var progress = workDoneProgressHelper.createProgress(2, "files");
116+
var progress = workDoneProgressHelper.createProgress(2, " files");
119117
progress.beginProgress("test");
120118

121119
// when
@@ -129,7 +127,7 @@ void tick() {
129127

130128
var progressParams = new ProgressParams(Either.forLeft("token"), Either.forLeft(report));
131129

132-
verify(languageClient, atMostOnce())
130+
verify(languageClient, times(1))
133131
.notifyProgress(
134132
refEq(
135133
progressParams,
@@ -145,7 +143,7 @@ void tick() {
145143
report.setMessage("2/2 files");
146144
progressParams = new ProgressParams(Either.forLeft("token"), Either.forLeft(report));
147145

148-
verify(languageClient, atMostOnce())
146+
verify(languageClient, times(1))
149147
.notifyProgress(
150148
refEq(
151149
progressParams,
@@ -157,12 +155,10 @@ void tick() {
157155
@Test
158156
void endProgress() {
159157
// given
160-
var languageClient = mock(LanguageClient.class);
161-
var languageClientHolder = new LanguageClientHolder();
162-
languageClientHolder.connect(languageClient);
163-
164-
var clientCapabilitiesHolder = new ClientCapabilitiesHolder();
158+
var languageClientHolder = getLanguageClientHolder();
159+
var languageClient = languageClientHolder.getClient().orElseThrow();
165160

161+
var clientCapabilitiesHolder = getClientCapabilitiesHolder(Boolean.TRUE);
166162
var workDoneProgressHelper = new WorkDoneProgressHelper(languageClientHolder, clientCapabilitiesHolder);
167163

168164
var progress = workDoneProgressHelper.createProgress(1, "");
@@ -177,7 +173,7 @@ void endProgress() {
177173
end.setMessage("end");
178174
var progressParams = new ProgressParams(Either.forLeft("token"), Either.forLeft(end));
179175

180-
verify(languageClient, atMostOnce())
176+
verify(languageClient, times(1))
181177
.notifyProgress(
182178
refEq(
183179
progressParams,

0 commit comments

Comments
 (0)