Don't add script files to facade indices
#KT-12445 Fixed
This commit is contained in:
@@ -50,6 +50,8 @@ public class IdeStubIndexService extends StubIndexService {
|
|||||||
|
|
||||||
sink.occurrence(KotlinExactPackagesIndex.getInstance().getKey(), packageFqName.asString());
|
sink.occurrence(KotlinExactPackagesIndex.getInstance().getKey(), packageFqName.asString());
|
||||||
|
|
||||||
|
if (stub.isScript()) return;
|
||||||
|
|
||||||
FqName facadeFqName = ((KotlinFileStubForIde) stub).getFacadeFqName();
|
FqName facadeFqName = ((KotlinFileStubForIde) stub).getFacadeFqName();
|
||||||
if (facadeFqName != null) {
|
if (facadeFqName != null) {
|
||||||
sink.occurrence(KotlinFileFacadeFqNameIndex.INSTANCE.getKey(), facadeFqName.asString());
|
sink.occurrence(KotlinFileFacadeFqNameIndex.INSTANCE.getKey(), facadeFqName.asString());
|
||||||
|
|||||||
@@ -16,10 +16,12 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.asJava
|
package org.jetbrains.kotlin.asJava
|
||||||
|
|
||||||
|
import com.intellij.psi.search.GlobalSearchScope
|
||||||
import com.intellij.testFramework.LightProjectDescriptor
|
import com.intellij.testFramework.LightProjectDescriptor
|
||||||
import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase
|
import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase
|
||||||
import org.jetbrains.kotlin.idea.test.KotlinLightProjectDescriptor
|
import org.jetbrains.kotlin.idea.test.KotlinLightProjectDescriptor
|
||||||
import org.jetbrains.kotlin.idea.test.PluginTestCaseBase
|
import org.jetbrains.kotlin.idea.test.PluginTestCaseBase
|
||||||
|
import org.jetbrains.kotlin.name.FqName
|
||||||
import org.jetbrains.kotlin.psi.KtFile
|
import org.jetbrains.kotlin.psi.KtFile
|
||||||
|
|
||||||
class KtFileLightClassTest : KotlinLightCodeInsightFixtureTestCase() {
|
class KtFileLightClassTest : KotlinLightCodeInsightFixtureTestCase() {
|
||||||
@@ -53,6 +55,13 @@ class KtFileLightClassTest : KotlinLightCodeInsightFixtureTestCase() {
|
|||||||
assertEquals(0, aClass.getMethods().size)
|
assertEquals(0, aClass.getMethods().size)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun testNoFacadeForScript() {
|
||||||
|
val file = myFixture.configureByText("foo.kts", "package foo") as KtFile
|
||||||
|
assertEquals(0, file.classes.size)
|
||||||
|
val facadeFiles = LightClassGenerationSupport.getInstance(project).findFilesForFacade(FqName("foo.FooKt"), GlobalSearchScope.allScope(project))
|
||||||
|
assertEquals(0, facadeFiles.size)
|
||||||
|
}
|
||||||
|
|
||||||
override fun getTestDataPath(): String? {
|
override fun getTestDataPath(): String? {
|
||||||
return PluginTestCaseBase.getTestDataPathBase() + "/asJava/fileLightClass/"
|
return PluginTestCaseBase.getTestDataPathBase() + "/asJava/fileLightClass/"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user