mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
junit: insert test methods inside nested class when @Nested annotated
This commit is contained in:
@@ -81,6 +81,7 @@ public class JUnitUtil {
|
||||
|
||||
@NonNls public static final String PARAMETERIZED_CLASS_NAME = "org.junit.runners.Parameterized";
|
||||
@NonNls public static final String SUITE_CLASS_NAME = "org.junit.runners.Suite";
|
||||
public static final String JUNIT5_NESTED = "org.junit.jupiter.api.Nested";
|
||||
|
||||
public static boolean isSuiteMethod(@NotNull PsiMethod psiMethod) {
|
||||
if (!psiMethod.hasModifierProperty(PsiModifier.PUBLIC)) return false;
|
||||
@@ -200,6 +201,10 @@ public class JUnitUtil {
|
||||
final PsiModifierList modifierList = psiClass.getModifierList();
|
||||
if (modifierList == null) return false;
|
||||
|
||||
if (psiClass.getContainingClass() != null && AnnotationUtil.isAnnotated(psiClass, JUNIT5_NESTED, false)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!PsiClassUtil.isRunnableClass(psiClass, false, checkAbstract)) return false;
|
||||
|
||||
for (final PsiMethod method : psiClass.getAllMethods()) {
|
||||
@@ -207,6 +212,10 @@ public class JUnitUtil {
|
||||
if (AnnotationUtil.isAnnotated(method, TEST5_ANNOTATIONS)) return true;
|
||||
}
|
||||
|
||||
for (PsiClass aClass : psiClass.getInnerClasses()) {
|
||||
if (AnnotationUtil.isAnnotated(aClass, JUNIT5_NESTED, false)) return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user