mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
javac ast indices: fix find usages of class members: can't find usages in getter's method call
This commit is contained in:
+1
-1
@@ -66,7 +66,7 @@ class CompilerReferenceReader {
|
||||
final LightRef.NamedLightRef[] hierarchy = getWholeHierarchy(hierarchyElement, checkBaseClassAmbiguity);
|
||||
if (hierarchy == null) return null;
|
||||
for (LightRef.NamedLightRef aClass : hierarchy) {
|
||||
final LightRef overriderUsage = aClass.override(aClass.getName());
|
||||
final LightRef overriderUsage = ref.override(aClass.getName());
|
||||
addUsages(overriderUsage, set);
|
||||
}
|
||||
return set;
|
||||
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
class Bar {
|
||||
|
||||
void m() {
|
||||
FooFactory.getFoo().someMethod();
|
||||
}
|
||||
|
||||
}
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
class Foo {
|
||||
void someMethod() {
|
||||
|
||||
}
|
||||
}
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
class FooFactory {
|
||||
public static Foo getFoo() {
|
||||
return new Foo();
|
||||
}
|
||||
}
|
||||
@@ -55,6 +55,14 @@ public class CompilerReferencesFindUsagesTest extends DaemonAnalyzerTestCase {
|
||||
return JavaTestUtil.getJavaTestDataPath() + "/compiler/compilerReferenceFindUsages/";
|
||||
}
|
||||
|
||||
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());
|
||||
myCompilerTester.rebuild();
|
||||
assertOneElement(MethodReferencesSearch.search(methodToSearch).findAll());
|
||||
}
|
||||
|
||||
public void testMethodUsageInClassHierarchy() throws Exception {
|
||||
configureByFiles(getName(), getName() + "/Bar.java", getName() + "/Foo.java");
|
||||
PsiMethod methodToSearch = findClass("Foo").findMethodsByName("someMethod", false)[0];
|
||||
|
||||
Reference in New Issue
Block a user