mirror of
https://github.com/sigmasternchen/xtext-core
synced 2025-03-15 08:18:55 +00:00
GH-1074: Exposed the language client class for the LS tests.
Closes #1074. Signed-off-by: Akos Kitta <kittaakos@typefox.io>
This commit is contained in:
parent
f987acc0cf
commit
07e7288a19
4 changed files with 30 additions and 3 deletions
|
@ -7,6 +7,7 @@
|
|||
*******************************************************************************/
|
||||
package org.eclipse.xtext.ide.tests.server
|
||||
|
||||
import org.eclipse.lsp4j.services.LanguageClientExtensions
|
||||
import org.junit.Test
|
||||
|
||||
/**
|
||||
|
@ -58,4 +59,8 @@ class ColoringTest extends AbstractTestLangLanguageServerTest {
|
|||
* [[15, 4] .. [15, 8]] -> [1]''', expectation);
|
||||
}
|
||||
|
||||
override protected getLanguageClientClass() {
|
||||
return LanguageClientExtensions;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -12,6 +12,8 @@ import java.nio.file.Path;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import org.eclipse.lsp4j.ColoringInformation;
|
||||
import org.eclipse.lsp4j.services.LanguageClient;
|
||||
import org.eclipse.lsp4j.services.LanguageClientExtensions;
|
||||
import org.eclipse.xtend2.lib.StringConcatenation;
|
||||
import org.eclipse.xtext.ide.tests.server.AbstractTestLangLanguageServerTest;
|
||||
import org.eclipse.xtext.xbase.lib.Functions.Function0;
|
||||
|
@ -129,4 +131,9 @@ public class ColoringTest extends AbstractTestLangLanguageServerTest {
|
|||
_builder_1.append("* [[15, 4] .. [15, 8]] -> [1]");
|
||||
this.assertEquals(_builder_1.toString(), expectation);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<? extends LanguageClient> getLanguageClientClass() {
|
||||
return LanguageClientExtensions.class;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -83,6 +83,7 @@ import org.junit.Assert
|
|||
import org.junit.Before
|
||||
import org.junit.jupiter.api.AfterEach
|
||||
import org.junit.jupiter.api.BeforeEach
|
||||
import org.eclipse.lsp4j.services.LanguageClient
|
||||
|
||||
/**
|
||||
* @author Sven Efftinge - Initial contribution and API
|
||||
|
@ -105,7 +106,7 @@ abstract class AbstractLanguageServerTest implements Endpoint {
|
|||
languageInfo = resourceServiceProvider.get(LanguageInfo)
|
||||
|
||||
// register notification callbacks
|
||||
languageServer.connect(ServiceEndpoints.toServiceObject(this, LanguageClientExtensions))
|
||||
languageServer.connect(ServiceEndpoints.toServiceObject(this, languageClientClass))
|
||||
// initialize
|
||||
languageServer.supportedMethods()
|
||||
|
||||
|
@ -120,6 +121,13 @@ abstract class AbstractLanguageServerTest implements Endpoint {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @since 2.18
|
||||
*/
|
||||
protected def Class<? extends LanguageClient> getLanguageClientClass() {
|
||||
return LanguageClient;
|
||||
}
|
||||
|
||||
protected def Module getServerModule() {
|
||||
Modules2.mixin(new ServerModule, [
|
||||
bind(RequestManager).toInstance(new RequestManager() {
|
||||
|
|
|
@ -77,7 +77,7 @@ import org.eclipse.lsp4j.WorkspaceSymbolParams;
|
|||
import org.eclipse.lsp4j.jsonrpc.Endpoint;
|
||||
import org.eclipse.lsp4j.jsonrpc.messages.Either;
|
||||
import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints;
|
||||
import org.eclipse.lsp4j.services.LanguageClientExtensions;
|
||||
import org.eclipse.lsp4j.services.LanguageClient;
|
||||
import org.eclipse.lsp4j.util.SemanticHighlightingTokens;
|
||||
import org.eclipse.xtend.lib.annotations.Accessors;
|
||||
import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor;
|
||||
|
@ -195,7 +195,7 @@ public abstract class AbstractLanguageServerTest implements Endpoint {
|
|||
if ((resourceServiceProvider instanceof IResourceServiceProvider)) {
|
||||
this.languageInfo = ((IResourceServiceProvider)resourceServiceProvider).<LanguageInfo>get(LanguageInfo.class);
|
||||
}
|
||||
this.languageServer.connect(ServiceEndpoints.<LanguageClientExtensions>toServiceObject(this, LanguageClientExtensions.class));
|
||||
this.languageServer.connect(ServiceEndpoints.toServiceObject(this, this.getLanguageClientClass()));
|
||||
this.languageServer.supportedMethods();
|
||||
File _absoluteFile = new File("").getAbsoluteFile();
|
||||
File _file = new File(_absoluteFile, AbstractLanguageServerTest.TEST_PROJECT_PATH);
|
||||
|
@ -215,6 +215,13 @@ public abstract class AbstractLanguageServerTest implements Endpoint {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @since 2.18
|
||||
*/
|
||||
protected Class<? extends LanguageClient> getLanguageClientClass() {
|
||||
return LanguageClient.class;
|
||||
}
|
||||
|
||||
protected com.google.inject.Module getServerModule() {
|
||||
ServerModule _serverModule = new ServerModule();
|
||||
final com.google.inject.Module _function = (Binder it) -> {
|
||||
|
|
Loading…
Reference in a new issue