diff --git a/python/src/com/jetbrains/python/psi/impl/PyQualifiedReferenceImpl.java b/python/src/com/jetbrains/python/psi/impl/PyQualifiedReferenceImpl.java index 1fb2476efbe6..3d760883c3cb 100644 --- a/python/src/com/jetbrains/python/psi/impl/PyQualifiedReferenceImpl.java +++ b/python/src/com/jetbrains/python/psi/impl/PyQualifiedReferenceImpl.java @@ -134,7 +134,7 @@ public class PyQualifiedReferenceImpl extends PyReferenceImpl { @Override public boolean isReferenceTo(PsiElement element) { - if (super.isReferenceTo(element)) { + if (resolve() == element) { return true; } final String referencedName = myElement.getReferencedName(); diff --git a/python/testData/findUsages/QualifiedVsUnqualifiedUsages.py b/python/testData/findUsages/QualifiedVsUnqualifiedUsages.py new file mode 100644 index 000000000000..9d096014131a --- /dev/null +++ b/python/testData/findUsages/QualifiedVsUnqualifiedUsages.py @@ -0,0 +1,3 @@ +class Spam(object): + def eggs(self, parrot): + self.parrot = parrot diff --git a/python/testSrc/com/jetbrains/python/PyFindUsagesTest.java b/python/testSrc/com/jetbrains/python/PyFindUsagesTest.java index 418627f79868..67cdcf73d77e 100644 --- a/python/testSrc/com/jetbrains/python/PyFindUsagesTest.java +++ b/python/testSrc/com/jetbrains/python/PyFindUsagesTest.java @@ -28,4 +28,9 @@ public class PyFindUsagesTest extends PyLightFixtureTestCase { final Collection usages = myFixture.testFindUsages("findUsages/ImplicitlyResolvedUsages.py"); assertEquals(1, usages.size()); } + + public void testQualifiedVsUnqualifiedUsages() { // PY-939 + final Collection usages = myFixture.testFindUsages("findUsages/QualifiedVsUnqualifiedUsages.py"); + assertEquals(1, usages.size()); + } }