diff --git a/java/execution/impl/src/com/intellij/execution/junit/InheritorChooser.java b/java/execution/impl/src/com/intellij/execution/junit/InheritorChooser.java index f56bbabb7977..4463e3efef7c 100644 --- a/java/execution/impl/src/com/intellij/execution/junit/InheritorChooser.java +++ b/java/execution/impl/src/com/intellij/execution/junit/InheritorChooser.java @@ -17,6 +17,7 @@ package com.intellij.execution.junit; import com.intellij.execution.Location; import com.intellij.execution.actions.ConfigurationContext; +import com.intellij.execution.junit2.PsiMemberParameterizedLocation; import com.intellij.execution.junit2.info.MethodLocation; import com.intellij.ide.util.PsiClassListCellRenderer; import com.intellij.openapi.actionSystem.PlatformDataKeys; @@ -63,7 +64,10 @@ public class InheritorChooser { if (aClass != null && !aClass.hasModifierProperty(PsiModifier.ABSTRACT)) { return false; } + } else if (location instanceof PsiMemberParameterizedLocation) { + return false; } + final List classes = new ArrayList(); if (!ProgressManager.getInstance().runProcessWithProgressSynchronously(new Runnable() { @Override diff --git a/plugins/junit/src/com/intellij/execution/junit2/PsiMemberParameterizedLocation.java b/java/execution/impl/src/com/intellij/execution/junit2/PsiMemberParameterizedLocation.java similarity index 74% rename from plugins/junit/src/com/intellij/execution/junit2/PsiMemberParameterizedLocation.java rename to java/execution/impl/src/com/intellij/execution/junit2/PsiMemberParameterizedLocation.java index e6e2df6f5c7e..f241de2e3afa 100644 --- a/plugins/junit/src/com/intellij/execution/junit2/PsiMemberParameterizedLocation.java +++ b/java/execution/impl/src/com/intellij/execution/junit2/PsiMemberParameterizedLocation.java @@ -21,16 +21,26 @@ import com.intellij.psi.PsiClass; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiMember; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; public class PsiMemberParameterizedLocation extends PsiLocation { + private final PsiClass myContainingClass; private final String myParamSetName; - public PsiMemberParameterizedLocation(@NotNull Project project, @NotNull PsiElement psiElement, String paramSetName) { + public PsiMemberParameterizedLocation(@NotNull Project project, + @NotNull PsiElement psiElement, + @Nullable PsiClass containingClass, + String paramSetName) { super(project, psiElement); + myContainingClass = containingClass; myParamSetName = paramSetName; } public String getParamSetName() { return myParamSetName; } + + public PsiClass getContainingClass() { + return myContainingClass; + } }