mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
cut .py extension from file completion variants (PY-3595)
This commit is contained in:
@@ -4,6 +4,7 @@ import com.intellij.codeInsight.lookup.LookupElement;
|
||||
import com.intellij.codeInsight.lookup.LookupElementBuilder;
|
||||
import com.intellij.openapi.util.Condition;
|
||||
import com.intellij.openapi.util.Key;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiNamedElement;
|
||||
@@ -110,9 +111,11 @@ public class VariantsProcessor implements PsiScopeProcessor {
|
||||
// TODO: refactor to look saner; much code duplication
|
||||
if (element instanceof PsiNamedElement) {
|
||||
final PsiNamedElement psiNamedElement = (PsiNamedElement)element;
|
||||
final String name = psiNamedElement.getName();
|
||||
if (nameIsAcceptable(name)) {
|
||||
myVariants.put(name, setupItem(LookupElementBuilder.create(psiNamedElement).setIcon(element.getIcon(0))));
|
||||
final String name = psiNamedElement instanceof PyFile
|
||||
? FileUtil.getNameWithoutExtension(((PyFile) psiNamedElement).getName())
|
||||
: psiNamedElement.getName();
|
||||
if (name != null && nameIsAcceptable(name)) {
|
||||
myVariants.put(name, setupItem(LookupElementBuilder.create(psiNamedElement, name).setIcon(element.getIcon(0))));
|
||||
}
|
||||
}
|
||||
else if (element instanceof PyReferenceExpression) {
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
from smname.moduleY import moduleZ
|
||||
import smname
|
||||
import smname.moduleY
|
||||
smname.moduleY.moduleZ
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
from smname.moduleY import mo<caret>
|
||||
import smname
|
||||
import smname.moduleY
|
||||
smname.moduleY.mod<caret>
|
||||
|
||||
@@ -1 +1 @@
|
||||
from . import moduleZ
|
||||
from smname import moduleZ
|
||||
|
||||
@@ -368,9 +368,10 @@ public class PythonCompletionTest extends PyLightFixtureTestCase {
|
||||
}
|
||||
|
||||
public void testFromImportedModuleCompletion() { // PY-3595
|
||||
myFixture.copyDirectoryToProject("completion/py3595", "py3595");
|
||||
myFixture.configureByFile("py3595/moduleX.py");
|
||||
myFixture.copyDirectoryToProject("completion/py3595", "");
|
||||
myFixture.configureByFile("moduleX.py");
|
||||
myFixture.completeBasic();
|
||||
myFixture.getLookupElementStrings();
|
||||
myFixture.checkResultByFile("completion/py3595/moduleX.after.py");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user