mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
RUBY-5449 find class related tests and vise versa for appropriate element
This commit is contained in:
@@ -35,4 +35,9 @@ public interface TestFinder {
|
||||
Collection<PsiElement> findClassesForTest(@NotNull PsiElement element);
|
||||
|
||||
boolean isTest(@NotNull PsiElement element);
|
||||
|
||||
@Nullable
|
||||
default PsiElement findSelectedElement(@NotNull final PsiElement element) {
|
||||
return element;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,7 +39,8 @@ public class TestFinderHelper {
|
||||
public static Collection<PsiElement> findTestsForClass(PsiElement element) {
|
||||
Collection<PsiElement> result = new LinkedHashSet<>();
|
||||
for (TestFinder each : getFinders()) {
|
||||
result.addAll(each.findTestsForClass(element));
|
||||
final PsiElement selectedElement = each.findSelectedElement(element);
|
||||
if (selectedElement != null) result.addAll(each.findTestsForClass(selectedElement));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
@@ -47,7 +48,8 @@ public class TestFinderHelper {
|
||||
public static Collection<PsiElement> findClassesForTest(PsiElement element) {
|
||||
Collection<PsiElement> result = new LinkedHashSet<>();
|
||||
for (TestFinder each : getFinders()) {
|
||||
result.addAll(each.findClassesForTest(element));
|
||||
final PsiElement selectedElement = each.findSelectedElement(element);
|
||||
if (selectedElement != null) result.addAll(each.findClassesForTest(selectedElement));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user