Don't ignore files and resolve modules in them (PY-28764)

This commit is contained in:
Semyon Proshev
2018-03-30 15:09:00 +03:00
parent 9dd33df8ad
commit 9c27646752
6 changed files with 34 additions and 5 deletions
@@ -24,6 +24,7 @@ import com.jetbrains.python.sdk.PythonSdkType;
import org.jetbrains.annotations.NotNull;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@@ -559,4 +560,26 @@ public class PyMultiFileResolveTest extends PyMultiFileResolveTestCase {
prepareTestDirectory();
assertSameElements(doMultiResolveAndGetFileUrls("pkg1/pkg2/mod1.py"), "pkg1/pkg2/__init__.py");
}
// PY-28764
public void testOsAttributesFromPosixPathAndNTPath() {
myFixture.copyDirectoryToProject(getTestName(true), "");
runWithSourceRoots(
Collections.singletonList(myFixture.findFileInTempDir("lib")),
() -> {
final PsiReference reference = PyResolveTestCase.findReferenceByMarker(myFixture.configureByFile("a.py"));
assertInstanceOf(reference, PsiPolyVariantReference.class);
final List<PsiElement> elements = PyUtil.multiResolveTopPriority((PsiPolyVariantReference)reference);
assertEquals(1, elements.size());
final PsiElement element = elements.get(0);
assertInstanceOf(element, PyFile.class);
final VirtualFile file = ((PyFile)element).getVirtualFile();
assertEquals("ntpath.py", file.getName());
}
);
}
}