[java] unused declaration: support easy mock (IDEA-277768)

GitOrigin-RevId: f71c9c6c9a517e93d3287347c218c40fc35d4c42
This commit is contained in:
Daniel Kraus
2022-04-14 09:15:28 +00:00
committed by intellij-monorepo-bot
parent f89cf0ec10
commit 8f7355621f
6 changed files with 23 additions and 5 deletions
@@ -0,0 +1,11 @@
public class MyEasyMockTest {
@org.easymock.Mock
private String myFoo;
{
System.out.println(myFoo);
}
@org.junit.Test
public void testName() throws Exception {}
}
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<problems/>
@@ -1,4 +1,4 @@
public class MyMTest {
public class MyMockitoTest {
@org.mockito.Mock
private String myFoo;
@@ -155,7 +155,11 @@ public class UnusedDeclarationInspectionTest extends AbstractUnusedDeclarationTe
doTest();
}
public void testMockedField() {
public void testMockedMockitoField() {
doTest();
}
public void testMockedEasyMockField() {
doTest();
}
@@ -28,14 +28,15 @@ import static com.siyeh.ig.junit.JUnitCommonClassNames.ORG_JUNIT_JUPITER_PARAMS_
import static com.siyeh.ig.junit.JUnitCommonClassNames.ORG_JUNIT_JUPITER_PARAMS_PROVIDER_METHOD_SOURCE;
public class JUnitImplicitUsageProvider implements ImplicitUsageProvider {
private static final String MOCK = "org.mockito.Mock";
private static final String MOCKITO_MOCK = "org.mockito.Mock";
private static final String KOTLIN_JVM_STATIC = "kotlin.jvm.JvmStatic";
private static final List<String> INJECTED_FIELD_ANNOTATIONS = Arrays.asList(
MOCK,
MOCKITO_MOCK,
"org.mockito.Spy",
"org.mockito.Captor",
"org.mockito.InjectMocks",
"org.easymock.Mock",
"org.assertj.core.api.junit.jupiter.InjectSoftAssertions",
"org.junit.jupiter.api.io.TempDir");
@@ -150,7 +151,7 @@ public class JUnitImplicitUsageProvider implements ImplicitUsageProvider {
@Override
public boolean isImplicitWrite(@NotNull PsiElement element) {
return element instanceof PsiParameter && AnnotationUtil.isAnnotated((PsiParameter)element, MOCK, 0) ||
return element instanceof PsiParameter && AnnotationUtil.isAnnotated((PsiParameter)element, MOCKITO_MOCK, 0) ||
element instanceof PsiField && AnnotationUtil.isAnnotated((PsiField)element, INJECTED_FIELD_ANNOTATIONS, 0);
}