PY-13140 Underscored names are completed inside import statement

This commit is contained in:
Mikhail Golubev
2014-07-10 15:09:49 +04:00
parent e0ddef7bf1
commit f506a15f9e
4 changed files with 16 additions and 1 deletions
@@ -308,7 +308,7 @@ public class PyModuleType implements PyType { // Modules don't descend from obje
return !(psiElement instanceof PyImportElement) ||
PsiTreeUtil.getParentOfType(psiElement, PyImportStatementBase.class) instanceof PyFromImportStatement;
}
}, new PyUtil.UnderscoreFilter(0));
}, null);
if (suppressParentheses) {
processor.suppressParentheses();
}
@@ -0,0 +1 @@
from module import <caret>
@@ -0,0 +1,3 @@
normal_name = 'foo'
_private_name = 'bar'
__magic_name__ = 'baz'
@@ -615,4 +615,15 @@ public class PythonCompletionTest extends PyTestCase {
" __metaclass__ = \n");
}
// PY-13140
public void testModulePrivateNamesCompletedInsideImport() {
//doMultiFileTest();
myFixture.copyDirectoryToProject("completion/" + getTestName(true), "");
myFixture.configureByFile("a.py");
myFixture.completeBasic();
List<String> suggested = myFixture.getLookupElementStrings();
assertNotNull(suggested);
assertContainsElements(suggested, "normal_name", "_private_name", "__magic_name__");
}
}