mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
test only: exclude call arguments from highlighting
GitOrigin-RevId: adc4b9995d180401516139f592083661dc7fd999
This commit is contained in:
committed by
intellij-monorepo-bot
parent
75ae2fb6eb
commit
ef962be9b2
+17
-9
@@ -47,8 +47,16 @@ public class TestOnlyInspection extends AbstractBaseJavaLocalInspectionTool {
|
||||
public PsiElementVisitor buildVisitor(@NotNull final ProblemsHolder h, boolean isOnTheFly) {
|
||||
return new JavaElementVisitor() {
|
||||
@Override
|
||||
public void visitCallExpression(PsiCallExpression e) {
|
||||
validate(e, e.resolveMethod(), h);
|
||||
public void visitMethodCallExpression(PsiMethodCallExpression expression) {
|
||||
validate(expression.getMethodExpression(), expression.resolveMethod(), h);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void visitNewExpression(PsiNewExpression expression) {
|
||||
PsiJavaCodeReferenceElement reference = expression.getClassOrAnonymousClassReference();
|
||||
if (reference != null) {
|
||||
validate(reference, expression.resolveMethod(), h);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -80,12 +88,12 @@ public class TestOnlyInspection extends AbstractBaseJavaLocalInspectionTool {
|
||||
};
|
||||
}
|
||||
|
||||
private static void validate(@NotNull PsiElement reference, @Nullable PsiMember member, ProblemsHolder h) {
|
||||
private static void validate(@NotNull PsiElement place, @Nullable PsiMember member, ProblemsHolder h) {
|
||||
if (member == null || !isAnnotatedAsTestOnly(member)) return;
|
||||
if (isInsideTestOnlyMethod(reference)) return;
|
||||
if (isInsideTestOnlyField(reference)) return;
|
||||
if (isInsideTestClass(reference)) return;
|
||||
if (isUnderTestSources(reference)) return;
|
||||
if (isInsideTestOnlyMethod(place)) return;
|
||||
if (isInsideTestOnlyField(place)) return;
|
||||
if (isInsideTestClass(place)) return;
|
||||
if (isUnderTestSources(place)) return;
|
||||
|
||||
PsiAnnotation anno = findVisibleForTestingAnnotation(member);
|
||||
if (anno != null) {
|
||||
@@ -95,12 +103,12 @@ public class TestOnlyInspection extends AbstractBaseJavaLocalInspectionTool {
|
||||
}
|
||||
|
||||
LightModifierList modList = new LightModifierList(member.getManager(), JavaLanguage.INSTANCE, modifier);
|
||||
if (JavaResolveUtil.isAccessible(member, member.getContainingClass(), modList, reference, null, null)) {
|
||||
if (JavaResolveUtil.isAccessible(member, member.getContainingClass(), modList, place, null, null)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
reportProblem(reference, member, h);
|
||||
reportProblem(place, member, h);
|
||||
}
|
||||
|
||||
private static final List<String> ourModifiersDescending =
|
||||
|
||||
Reference in New Issue
Block a user