use of org.eclipse.lsp4j.Hover in project eclipse.jdt.ls by eclipse.
the class HoverHandlerTest method testEmptyHover.
@Test
public void testEmptyHover() throws Exception {
// given
// Hovers on the System.out
URI standalone = Paths.get("projects", "maven", "salut", "src", "main", "java", "java", "Foo.java").toUri();
String payload = createHoverRequest(standalone, 1, 2);
TextDocumentPositionParams position = getParams(payload);
// when
Hover hover = handler.hover(position, monitor);
// then
assertNotNull(hover);
assertNotNull(hover.getContents());
assertEquals(1, hover.getContents().size());
assertEquals("Should find empty hover for " + payload, "", hover.getContents().get(0).getLeft());
}
use of org.eclipse.lsp4j.Hover in project eclipse.jdt.ls by eclipse.
the class HoverHandlerTest method testHover.
@Test
public void testHover() throws Exception {
// given
// Hovers on the System.out
String payload = createHoverRequest("src/java/Foo.java", 5, 15);
TextDocumentPositionParams position = getParams(payload);
// when
Hover hover = handler.hover(position, monitor);
// then
assertNotNull(hover);
assertNotNull(hover.getContents());
MarkedString signature = hover.getContents().get(0).getRight();
assertEquals("Unexpected hover " + signature, "java", signature.getLanguage());
assertEquals("Unexpected hover " + signature, "java.Foo", signature.getValue());
String doc = hover.getContents().get(1).getLeft();
assertEquals("Unexpected hover " + doc, "This is foo", doc);
}
use of org.eclipse.lsp4j.Hover in project eclipse.jdt.ls by eclipse.
the class HoverHandlerTest method testHoverWithAttachedJavadoc.
@Test
public void testHoverWithAttachedJavadoc() throws Exception {
File commonPrimitivesJdoc = DependencyUtil.getJavadoc("commons-primitives", "commons-primitives", "1.0");
assertNotNull("Unable to locate commons-primitives-1.0-javadoc.jar", commonPrimitivesJdoc);
importProjects("maven/attached-javadoc");
project = WorkspaceHelper.getProject("attached-javadoc");
handler = new HoverHandler(preferenceManager);
// given
// Hovers on org.apache.commons.collections.primitives.ShortCollections which has no source but an attached javadoc
String payload = createHoverRequest("src/main/java/org/sample/Bar.java", 2, 56);
TextDocumentPositionParams position = getParams(payload);
// when
Hover hover = handler.hover(position, monitor);
assertNotNull("Hover is null", hover);
assertEquals("Unexpected hover contents:\n" + hover.getContents(), 2, hover.getContents().size());
Either<String, MarkedString> javadoc = hover.getContents().get(1);
String content = null;
assertTrue("javadoc has null content", javadoc != null && javadoc.getLeft() != null && (content = javadoc.getLeft()) != null);
assertTrue("Unexpected hover :\n" + content, content.contains("This class consists exclusively of static methods that operate on or return ShortCollections"));
assertTrue("Unexpected hover :\n" + content, content.contains("**Author:**"));
}
use of org.eclipse.lsp4j.Hover in project eclipse.jdt.ls by eclipse.
the class HoverHandlerTest method testHoverPackage.
@Test
public void testHoverPackage() throws Exception {
// given
// Hovers on the java.internal package
String payload = createHoverRequest("src/java/Baz.java", 2, 16);
TextDocumentPositionParams position = getParams(payload);
// when
Hover hover = handler.hover(position, monitor);
// then
assertNotNull(hover);
//
String signature = hover.getContents().get(0).getRight().getValue();
assertEquals("Unexpected signature ", "java.internal", signature);
//
String result = hover.getContents().get(1).getLeft();
assertEquals("Unexpected hover ", "this is a **bold** package!", result);
}
use of org.eclipse.lsp4j.Hover in project eclipse.jdt.ls by eclipse.
the class HoverHandlerTest method testHoverVariable.
@Test
public void testHoverVariable() throws Exception {
// given
// Hover on args parameter
String argParam = createHoverRequest("src/java/Foo.java", 7, 37);
TextDocumentPositionParams position = getParams(argParam);
// when
Hover hover = handler.hover(position, monitor);
// then
assertNotNull(hover);
assertNotNull(hover.getContents());
MarkedString signature = hover.getContents().get(0).getRight();
assertEquals("Unexpected hover " + signature, "java", signature.getLanguage());
assertEquals("Unexpected hover " + signature, "String[] args - java.Foo.main(String[])", signature.getValue());
}
Aggregations