Skip to content

Commit 0273101

Browse files
committed
Simplify LanguageServerFixture interface
1 parent 8835fd6 commit 0273101

2 files changed

Lines changed: 17 additions & 31 deletions

File tree

‎src/test/java/org/javacs/CodeActionsTest.java‎

Lines changed: 4 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -28,32 +28,10 @@ public void before() {
2828
diagnostics.clear();
2929
}
3030

31-
private static final JavaLanguageServer server = LanguageServerFixture.getJavaLanguageServer(new LanguageClient() {
32-
@Override
33-
public void telemetryEvent(Object o) {
34-
35-
}
36-
37-
@Override
38-
public void publishDiagnostics(PublishDiagnosticsParams publishDiagnosticsParams) {
39-
diagnostics.addAll(publishDiagnosticsParams.getDiagnostics());
40-
}
41-
42-
@Override
43-
public void showMessage(MessageParams messageParams) {
44-
45-
}
46-
47-
@Override
48-
public CompletableFuture<MessageActionItem> showMessageRequest(ShowMessageRequestParams showMessageRequestParams) {
49-
return null;
50-
}
51-
52-
@Override
53-
public void logMessage(MessageParams messageParams) {
54-
55-
}
56-
});
31+
private static final JavaLanguageServer server = LanguageServerFixture.getJavaLanguageServer(
32+
LanguageServerFixture.DEFAULT_WORKSPACE_ROOT,
33+
diagnostics::add
34+
);
5735

5836
@Test
5937
public void addImport() {

‎src/test/java/org/javacs/LanguageServerFixture.java‎

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package org.javacs;
22

3+
import java.util.function.Consumer;
4+
import java.util.logging.Logger;
35
import org.eclipse.lsp4j.*;
46
import org.eclipse.lsp4j.services.LanguageClient;
57

@@ -9,20 +11,26 @@
911

1012
class LanguageServerFixture {
1113

14+
public static Path DEFAULT_WORKSPACE_ROOT = Paths.get("src/test/test-project/workspace").toAbsolutePath();
15+
1216
static {
1317
Main.setRootFormat();
1418
}
1519

1620
static JavaLanguageServer getJavaLanguageServer() {
17-
return getJavaLanguageServer(new LanguageClient() {
21+
return getJavaLanguageServer(DEFAULT_WORKSPACE_ROOT, diagnostic -> LOG.info(diagnostic.getMessage()));
22+
}
23+
24+
static JavaLanguageServer getJavaLanguageServer(Path workspaceRoot, Consumer<Diagnostic> onError) {
25+
return getJavaLanguageServer(workspaceRoot, new LanguageClient() {
1826
@Override
1927
public void telemetryEvent(Object o) {
2028

2129
}
2230

2331
@Override
2432
public void publishDiagnostics(PublishDiagnosticsParams publishDiagnosticsParams) {
25-
33+
publishDiagnosticsParams.getDiagnostics().forEach(onError);
2634
}
2735

2836
@Override
@@ -42,10 +50,8 @@ public void logMessage(MessageParams messageParams) {
4250
});
4351
}
4452

45-
static JavaLanguageServer getJavaLanguageServer(LanguageClient client) {
46-
Path workspaceRoot = Paths.get("src/test/test-project/workspace").toAbsolutePath();
53+
private static JavaLanguageServer getJavaLanguageServer(Path workspaceRoot, LanguageClient client) {
4754
JavaLanguageServer server = new JavaLanguageServer();
48-
4955
InitializeParams init = new InitializeParams();
5056

5157
init.setRootPath(workspaceRoot.toString());
@@ -57,4 +63,6 @@ static JavaLanguageServer getJavaLanguageServer(LanguageClient client) {
5763

5864
return server;
5965
}
66+
67+
private static final Logger LOG = Logger.getLogger("main");
6068
}

0 commit comments

Comments
 (0)