mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
test to ensure that vm class names are used through run markers (IDEA-CR-17024)
This commit is contained in:
@@ -18,13 +18,20 @@ package com.intellij.codeInsight.navigation;
|
||||
import com.intellij.application.options.editor.GutterIconsConfigurable;
|
||||
import com.intellij.codeInsight.daemon.GutterIconDescriptor;
|
||||
import com.intellij.codeInsight.daemon.GutterMark;
|
||||
import com.intellij.execution.TestStateStorage;
|
||||
import com.intellij.execution.lineMarker.RunLineMarkerContributor;
|
||||
import com.intellij.execution.testframework.sm.runner.states.TestStateInfo;
|
||||
import com.intellij.icons.AllIcons;
|
||||
import com.intellij.openapi.actionSystem.ActionGroup;
|
||||
import com.intellij.openapi.actionSystem.AnAction;
|
||||
import com.intellij.openapi.editor.markup.GutterIconRenderer;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.testFramework.TestActionEvent;
|
||||
import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase;
|
||||
import com.intellij.testIntegration.TestRunLineMarkerProvider;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
@@ -71,6 +78,28 @@ public class RunLineMarkerTest extends LightCodeInsightFixtureTestCase {
|
||||
assertEquals("Run 'MainTest'", event.getPresentation().getText());
|
||||
}
|
||||
|
||||
public void testNestedTestClass() throws Exception {
|
||||
TestStateStorage stateStorage = TestStateStorage.getInstance(getProject());
|
||||
String testUrl = "java:suite://Main$MainTest";
|
||||
try {
|
||||
stateStorage.writeState(testUrl, new TestStateStorage.Record(TestStateInfo.Magnitude.FAILED_INDEX.getValue(), new Date(), 0));
|
||||
myFixture.addClass("package junit.framework; public class TestCase {}");
|
||||
PsiFile file = myFixture.configureByText("MainTest.java", "public class Main {\n" +
|
||||
" public class Main<caret>Test extends junit.framework.TestCase {\n" +
|
||||
" public void testFoo() {\n" +
|
||||
" }\n" +
|
||||
" }" +
|
||||
"}");
|
||||
|
||||
RunLineMarkerContributor.Info info = new TestRunLineMarkerProvider().getInfo(file.findElementAt(myFixture.getCaretOffset()));
|
||||
assertNotNull(info);
|
||||
assertEquals(AllIcons.RunConfigurations.TestState.Red2, info.icon);
|
||||
}
|
||||
finally {
|
||||
stateStorage.removeState(testUrl);
|
||||
}
|
||||
}
|
||||
|
||||
public void testConfigurable() throws Exception {
|
||||
GutterIconsConfigurable configurable = new GutterIconsConfigurable();
|
||||
configurable.createComponent();
|
||||
|
||||
+3
-3
@@ -32,10 +32,10 @@ public abstract class RunLineMarkerContributor {
|
||||
static final LanguageExtension<RunLineMarkerContributor> EXTENSION = new LanguageExtension<>("com.intellij.runLineMarkerContributor");
|
||||
|
||||
public static class Info {
|
||||
final Icon icon;
|
||||
final AnAction[] actions;
|
||||
public final Icon icon;
|
||||
public final AnAction[] actions;
|
||||
|
||||
final Function<PsiElement, String> tooltipProvider;
|
||||
public final Function<PsiElement, String> tooltipProvider;
|
||||
|
||||
public Info(Icon icon, @NotNull AnAction[] actions, @Nullable Function<PsiElement, String> tooltipProvider) {
|
||||
this.icon = icon;
|
||||
|
||||
Reference in New Issue
Block a user