Merge pull request #1075 from kittaakos/GH-1074

GH-1074: Exposed the language client class for the LS tests.
This commit is contained in:
Akos Kitta 2019-03-15 08:16:23 +01:00 committed by GitHub
commit a77c17dea0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 30 additions and 3 deletions

View file

@ -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;
}
}

View file

@ -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;
}
}

View file

@ -85,6 +85,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
@ -107,7 +108,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()
@ -122,6 +123,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() {

View file

@ -78,7 +78,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;
@ -196,7 +196,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);
@ -216,6 +216,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) -> {