diff --git a/simple_language_plugin/src/test/java/org/intellij/sdk/language/SimpleCodeInsightTest.java b/simple_language_plugin/src/test/java/org/intellij/sdk/language/SimpleCodeInsightTest.java index 35fc0f525..fe489838c 100644 --- a/simple_language_plugin/src/test/java/org/intellij/sdk/language/SimpleCodeInsightTest.java +++ b/simple_language_plugin/src/test/java/org/intellij/sdk/language/SimpleCodeInsightTest.java @@ -4,8 +4,11 @@ package org.intellij.sdk.language; import com.intellij.application.options.CodeStyle; import com.intellij.codeInsight.completion.CompletionType; +import com.intellij.codeInsight.documentation.DocumentationManager; import com.intellij.codeInsight.generation.actions.CommentByLineCommentAction; +import com.intellij.lang.documentation.DocumentationProvider; import com.intellij.openapi.command.WriteCommandAction; +import com.intellij.psi.PsiElement; import com.intellij.psi.PsiReference; import com.intellij.psi.codeStyle.CodeStyleManager; import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase; @@ -84,4 +87,21 @@ public class SimpleCodeInsightTest extends LightJavaCodeInsightFixtureTestCase { assertEquals("https://en.wikipedia.org/", resolvedSimpleProperty.getValue()); } + public void testDocumentation() { + myFixture.configureByFiles("DocumentationTestData.java", "DocumentationTestData.simple"); + final PsiElement originalElement = myFixture.getElementAtCaret(); + PsiElement element = DocumentationManager + .getInstance(getProject()) + .findTargetElement(myFixture.getEditor(), originalElement.getContainingFile(), originalElement); + + if (element == null) { + element = originalElement; + } + + final DocumentationProvider documentationProvider = DocumentationManager.getProviderFromElement(element); + final String generateDoc = documentationProvider.generateDoc(element, originalElement); + assertNotNull(generateDoc); + assertSameLinesWithFile(getTestDataPath() + "/" + "DocumentationTest.html.expected", generateDoc); + } + } diff --git a/simple_language_plugin/src/test/testData/DocumentationTest.html.expected b/simple_language_plugin/src/test/testData/DocumentationTest.html.expected new file mode 100644 index 000000000..454fd78ee --- /dev/null +++ b/simple_language_plugin/src/test/testData/DocumentationTest.html.expected @@ -0,0 +1,2 @@ +
Simple Property
Key: | website |
Value: | https://en.wikipedia.org/ |
File: | DocumentationTestData.simple |
Comment: | You are reading the ".properties" entry. + The exclamation mark can also mark text as comments. |