From db1f9ce02631ec0aafc721e22e3337c73b2ecf7b Mon Sep 17 00:00:00 2001 From: "Ilya.Kazakevich" Date: Mon, 4 Dec 2017 03:14:22 +0300 Subject: [PATCH] PY-27241: use django skeletons instead of java code --- .../python-skeletons/django/views/__init__.py | 0 .../django/views/generic/__init__.py | 0 .../python-skeletons/django/views/generic/base.py | 0 .../PyUserSkeletonsClassMembersProvider.java | 2 +- .../com/jetbrains/python/PythonMockSdk.java | 14 ++++++++------ 5 files changed, 9 insertions(+), 7 deletions(-) create mode 100644 python/helpers/python-skeletons/django/views/__init__.py create mode 100644 python/helpers/python-skeletons/django/views/generic/__init__.py create mode 100644 python/helpers/python-skeletons/django/views/generic/base.py diff --git a/python/helpers/python-skeletons/django/views/__init__.py b/python/helpers/python-skeletons/django/views/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/python/helpers/python-skeletons/django/views/generic/__init__.py b/python/helpers/python-skeletons/django/views/generic/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/python/helpers/python-skeletons/django/views/generic/base.py b/python/helpers/python-skeletons/django/views/generic/base.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/python/src/com/jetbrains/python/codeInsight/userSkeletons/PyUserSkeletonsClassMembersProvider.java b/python/src/com/jetbrains/python/codeInsight/userSkeletons/PyUserSkeletonsClassMembersProvider.java index ccbbbafedc14..32f664c9de9f 100644 --- a/python/src/com/jetbrains/python/codeInsight/userSkeletons/PyUserSkeletonsClassMembersProvider.java +++ b/python/src/com/jetbrains/python/codeInsight/userSkeletons/PyUserSkeletonsClassMembersProvider.java @@ -28,7 +28,7 @@ public class PyUserSkeletonsClassMembersProvider extends PyClassMembersProviderB @Override public Collection getMembers(@NotNull PyClassType classType, PsiElement location, @NotNull TypeEvalContext context) { final PyClass cls = classType.getPyClass(); - final PyClass skeleton = PyUserSkeletonsUtil.getUserSkeleton(cls); + final PyClass skeleton = PyUserSkeletonsUtil.getUserSkeletonWithContext(cls, context); if (skeleton != null) { return getClassMembers(skeleton, classType.isDefinition()); } diff --git a/python/testSrc/com/jetbrains/python/PythonMockSdk.java b/python/testSrc/com/jetbrains/python/PythonMockSdk.java index cdac6b9d4051..55ad047187fe 100644 --- a/python/testSrc/com/jetbrains/python/PythonMockSdk.java +++ b/python/testSrc/com/jetbrains/python/PythonMockSdk.java @@ -68,12 +68,14 @@ public class PythonMockSdk { final LanguageLevel level = LanguageLevel.fromPythonVersion(version); final VirtualFile typeShedDir = PyTypeShed.INSTANCE.getDirectory(); - PyTypeShed.INSTANCE.findRootsForLanguageLevel(level).forEach(path -> { - final VirtualFile file = typeShedDir.findFileByRelativePath(path); - if (file != null) { - roots.putValue(OrderRootType.CLASSES, file); - } - }); + if (typeShedDir != null) { + PyTypeShed.INSTANCE.findRootsForLanguageLevel(level).forEach(path -> { + final VirtualFile file = typeShedDir.findFileByRelativePath(path); + if (file != null) { + roots.putValue(OrderRootType.CLASSES, file); + } + }); + } String mock_stubs_path = mock_path + PythonSdkType.SKELETON_DIR_NAME; roots.putValue(PythonSdkType.BUILTIN_ROOT_TYPE, LocalFileSystem.getInstance().refreshAndFindFileByPath(mock_stubs_path));