diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/run/kotlinTestClassUtils.kt b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/run/kotlinTestClassUtils.kt index b330d8228e3..efcd73e1124 100644 --- a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/run/kotlinTestClassUtils.kt +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/run/kotlinTestClassUtils.kt @@ -9,6 +9,8 @@ import com.intellij.execution.Location import com.intellij.psi.PsiClass import com.intellij.psi.PsiMethod import org.jetbrains.kotlin.asJava.toLightClass +import org.jetbrains.kotlin.idea.caches.lightClasses.KtFakeLightClass +import org.jetbrains.kotlin.idea.caches.lightClasses.KtFakeLightMethod import org.jetbrains.kotlin.psi.KtClass import org.jetbrains.kotlin.psi.KtDeclaration import org.jetbrains.kotlin.psi.KtNamedFunction @@ -17,13 +19,11 @@ import org.jetbrains.kotlin.psi.psiUtil.getParentOfType internal fun getTestMethodForKotlinTest(location: Location<*>): PsiMethod? { val leaf = location.psiElement val function = leaf?.getParentOfType(false) ?: return null - val owner = function.getParentOfType(true) as? KtClass ?: return null - val delegate = owner.toLightClass() ?: return null - return delegate.methods.firstOrNull { it.navigationElement == function } ?: return null + return KtFakeLightMethod.get(function) } internal fun getTestClassForKotlinTest(location: Location<*>): PsiClass? { val leaf = location.psiElement val owner = leaf?.getParentOfType(true) as? KtClass ?: return null - return owner.toLightClass() + return KtFakeLightClass(owner) } \ No newline at end of file diff --git a/idea/testData/gradle/testRunConfigurations/expectClassWithTests/src/commonTest/kotlin/sample/SampleTests.kt b/idea/testData/gradle/testRunConfigurations/expectClassWithTests/src/commonTest/kotlin/sample/SampleTests.kt index 5ac18915618..78be806f6dd 100644 --- a/idea/testData/gradle/testRunConfigurations/expectClassWithTests/src/commonTest/kotlin/sample/SampleTests.kt +++ b/idea/testData/gradle/testRunConfigurations/expectClassWithTests/src/commonTest/kotlin/sample/SampleTests.kt @@ -3,7 +3,7 @@ package sample import kotlin.test.Test import kotlin.test.assertTrue -expect class SampleTests { +expect class SampleTests { @Test - fun testMe() + fun testMe() } \ No newline at end of file