mirror of
https://github.com/JetBrains/intellij-sdk-code-samples.git
synced 2025-07-27 16:57:49 +08:00
Feat doc provider test case (#467)
* Add test-case for DocumentationProvider * Remove non-relevant parts from .simple file for Documentation test
This commit is contained in:
parent
615bec38ce
commit
cbc681cb93
@ -4,8 +4,11 @@ package org.intellij.sdk.language;
|
|||||||
|
|
||||||
import com.intellij.application.options.CodeStyle;
|
import com.intellij.application.options.CodeStyle;
|
||||||
import com.intellij.codeInsight.completion.CompletionType;
|
import com.intellij.codeInsight.completion.CompletionType;
|
||||||
|
import com.intellij.codeInsight.documentation.DocumentationManager;
|
||||||
import com.intellij.codeInsight.generation.actions.CommentByLineCommentAction;
|
import com.intellij.codeInsight.generation.actions.CommentByLineCommentAction;
|
||||||
|
import com.intellij.lang.documentation.DocumentationProvider;
|
||||||
import com.intellij.openapi.command.WriteCommandAction;
|
import com.intellij.openapi.command.WriteCommandAction;
|
||||||
|
import com.intellij.psi.PsiElement;
|
||||||
import com.intellij.psi.PsiReference;
|
import com.intellij.psi.PsiReference;
|
||||||
import com.intellij.psi.codeStyle.CodeStyleManager;
|
import com.intellij.psi.codeStyle.CodeStyleManager;
|
||||||
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase;
|
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase;
|
||||||
@ -84,4 +87,21 @@ public class SimpleCodeInsightTest extends LightJavaCodeInsightFixtureTestCase {
|
|||||||
assertEquals("https://en.wikipedia.org/", resolvedSimpleProperty.getValue());
|
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);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,2 @@
|
|||||||
|
<div class='definition'><pre>Simple Property</pre></div><div class='content'>https://en.wikipedia.org/</div><table class='sections'><tr><td valign='top' class='section'><p>Key:</td><td valign='top'><p>website</td><tr><td valign='top' class='section'><p>Value:</td><td valign='top'><p>https://en.wikipedia.org/</td><tr><td valign='top' class='section'><p>File:</td><td valign='top'><p>DocumentationTestData.simple</td><tr><td valign='top' class='section'><p>Comment:</td><td valign='top'><p>You are reading the ".properties" entry.
|
||||||
|
The exclamation mark can also mark text as comments.</td></table>
|
@ -0,0 +1,5 @@
|
|||||||
|
public class Test {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
System.out.println("simple:website<caret>");
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
# You are reading the ".properties" entry.
|
||||||
|
! The exclamation mark can also mark text as comments.
|
||||||
|
website = https://en.wikipedia.org/
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user