Do not complain about referencing test-only class on anonymous classes

This functionality is covered by checking PsiCallExpression elements
This commit is contained in:
Alexander Zolotov
2015-09-25 15:29:52 +03:00
parent 4135505a95
commit 3ab37bc487
3 changed files with 16 additions and 0 deletions
@@ -69,6 +69,7 @@ public class TestOnlyInspection extends BaseJavaBatchLocalInspectionTool {
@Override
public void visitReferenceElement(PsiJavaCodeReferenceElement reference) {
if (reference.getParent() instanceof PsiNewExpression
|| reference.getParent() instanceof PsiAnonymousClass
|| PsiTreeUtil.getParentOfType(reference, PsiImportStatementBase.class) != null) {
return;
}
@@ -70,4 +70,17 @@
<description>Test-only method is called in production code</description>
</problem>
<problem>
<file>B.java</file>
<line>22</line>
<package>&lt;default&gt;</package>
<description>Test-only class is referenced in production code</description>
</problem>
<problem>
<file>B.java</file>
<line>22</line>
<package>&lt;default&gt;</package>
<description>Test-only method is called in production code</description>
</problem>
</problems>
@@ -18,5 +18,7 @@ public class B {
System.out.println(a.field);
System.out.println(A.staticField);
System.out.println(staticImportedField);
A b = new A() { };
}
}