diff --git a/java/java-tests/testSrc/com/intellij/java/compiler/CompilerReferencesFindUsagesTest.java b/java/java-tests/testSrc/com/intellij/java/compiler/CompilerReferencesFindUsagesTest.java index 8c23a529c31c..b43f5cede9ed 100644 --- a/java/java-tests/testSrc/com/intellij/java/compiler/CompilerReferencesFindUsagesTest.java +++ b/java/java-tests/testSrc/com/intellij/java/compiler/CompilerReferencesFindUsagesTest.java @@ -28,6 +28,7 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.pom.java.LanguageLevel; import com.intellij.psi.*; import com.intellij.psi.impl.source.tree.injected.MyTestInjector; +import com.intellij.psi.search.GlobalSearchScope; import com.intellij.psi.search.searches.FunctionalExpressionSearch; import com.intellij.psi.search.searches.MethodReferencesSearch; import com.intellij.psi.search.searches.ReferencesSearch; @@ -38,6 +39,7 @@ import com.intellij.util.Consumer; import org.jetbrains.annotations.NotNull; import java.util.Arrays; +import java.util.Collection; @SkipSlowTestLocally public class CompilerReferencesFindUsagesTest extends DaemonAnalyzerTestCase { @@ -79,54 +81,54 @@ public class CompilerReferencesFindUsagesTest extends DaemonAnalyzerTestCase { public void testMethodUsageOnGetter() throws Exception { configureByFiles(getName(), getName() + "/Foo.java", getName() + "/FooFactory.java", getName() + "/Bar.java"); PsiMethod methodToSearch = findClass("Foo").findMethodsByName("someMethod", false)[0]; - assertOneElement(MethodReferencesSearch.search(methodToSearch).findAll()); + assertOneElement(searchMethodReferences(methodToSearch)); myCompilerTester.rebuild(); - assertOneElement(MethodReferencesSearch.search(methodToSearch).findAll()); + assertOneElement(searchMethodReferences(methodToSearch)); } public void testMethodUsageInClassHierarchy() throws Exception { configureByFiles(getName(), getName() + "/Bar.java", getName() + "/Foo.java"); PsiMethod methodToSearch = findClass("Foo").findMethodsByName("someMethod", false)[0]; - assertOneElement(MethodReferencesSearch.search(methodToSearch).findAll()); + assertOneElement(searchMethodReferences(methodToSearch)); myCompilerTester.rebuild(); - assertOneElement(MethodReferencesSearch.search(methodToSearch).findAll()); + assertOneElement(searchMethodReferences(methodToSearch)); } public void testMethodUsageInClassHierarchy2() throws Exception { configureByFiles(getName(), getName() + "/Bar.java", getName() + "/Foo.java"); PsiMethod methodToSearch = myJavaFacade.findClass(CommonClassNames.JAVA_LANG_RUNNABLE).findMethodsByName("run", false)[0]; - assertOneElement(MethodReferencesSearch.search(methodToSearch).findAll()); + assertOneElement(searchMethodReferences(methodToSearch)); myCompilerTester.rebuild(); - assertOneElement(MethodReferencesSearch.search(methodToSearch).findAll()); + assertOneElement(searchMethodReferences(methodToSearch)); } public void testLibMethodUsage() throws Exception { configureByFile(getName() + "/Foo.java"); myCompilerTester.rebuild(); PsiMethod methodToSearch = myJavaFacade.findClass(CommonClassNames.JAVA_UTIL_COLLECTIONS).findMethodsByName("emptyList", false)[0]; - assertOneElement(MethodReferencesSearch.search(methodToSearch).findAll()); + assertOneElement(searchMethodReferences(methodToSearch)); } public void testLibClassUsage() throws Exception { configureByFile(getName() + "/Foo.java"); myCompilerTester.rebuild(); PsiClass classForSearch = myJavaFacade.findClass("java.lang.System"); - assertOneElement(ReferencesSearch.search(classForSearch).findAll()); + assertOneElement(searchReferences(classForSearch)); } public void testLibClassInJavaDocUsage() throws Exception { configureByFile(getName() + "/Foo.java"); myCompilerTester.rebuild(); PsiClass classForSearch = myJavaFacade.findClass("java.lang.System"); - assertOneElement(ReferencesSearch.search(classForSearch).findAll()); + assertOneElement(searchReferences(classForSearch)); } public void testCompileTimeConstFindUsages() throws Exception { configureByFiles(getName(), getName() + "/Bar.java", getName() + "/Foo.java"); PsiField classForSearch = findClass("Foo").findFieldByName("CONST", false); - PsiElement referenceBefore = assertOneElement(ReferencesSearch.search(classForSearch).findAll()).getElement(); + PsiElement referenceBefore = assertOneElement(searchReferences(classForSearch)).getElement(); myCompilerTester.rebuild(); - PsiElement referenceAfter = assertOneElement(ReferencesSearch.search(classForSearch).findAll()).getElement(); + PsiElement referenceAfter = assertOneElement(searchReferences(classForSearch)).getElement(); assertTrue(referenceBefore == referenceAfter); } @@ -135,7 +137,7 @@ public class CompilerReferencesFindUsagesTest extends DaemonAnalyzerTestCase { configureByFile(getName() + "/Foo.java"); myCompilerTester.rebuild(); PsiClass classForSearch = myJavaFacade.findClass("java.lang.System"); - PsiReference reference = assertOneElement(ReferencesSearch.search(classForSearch).findAll()); + PsiReference reference = assertOneElement(searchReferences(classForSearch)); assertTrue(InjectedLanguageManager.getInstance(getProject()).isInjectedFragment(reference.getElement().getContainingFile())); } @@ -163,9 +165,9 @@ public class CompilerReferencesFindUsagesTest extends DaemonAnalyzerTestCase { public void testOverloadedMethods() throws Exception { configureByFiles(getName(), getName() + "/Foo.java", getName() + "/A.java", getName() + "/B.java"); PsiMethod[] methodsToSearch = findClass("Foo").findMethodsByName("bar", false); - Arrays.stream(methodsToSearch).forEach((m) -> assertSize(2, MethodReferencesSearch.search(m, false).findAll())); + Arrays.stream(methodsToSearch).forEach((m) -> assertSize(2, searchMethodReferences(m))); myCompilerTester.rebuild(); - Arrays.stream(methodsToSearch).forEach((m) -> assertSize(2, MethodReferencesSearch.search(m, false).findAll())); + Arrays.stream(methodsToSearch).forEach((m) -> assertSize(2, searchMethodReferences(m))); } private void doTestRunnableFindUsagesWithExcludesConfiguration(@NotNull Consumer excludesConfigurationPatcher, @@ -182,4 +184,12 @@ public class CompilerReferencesFindUsagesTest extends DaemonAnalyzerTestCase { excludesConfiguration.removeAllExcludeEntryDescriptions(); } } + + private Collection searchMethodReferences(@NotNull PsiMethod method) { + return MethodReferencesSearch.search(method, GlobalSearchScope.projectScope(getProject()), false).findAll(); + } + + private Collection searchReferences(@NotNull PsiElement element) { + return ReferencesSearch.search(element, GlobalSearchScope.projectScope(getProject())).findAll(); + } }