[MPP] Add test for KT-42754

This commit is contained in:
Pavel Kirpichenkov
2020-11-03 18:34:06 +03:00
parent 9f0cec3443
commit 778bbd76cb
5 changed files with 31 additions and 0 deletions
@@ -0,0 +1,5 @@
data class CommonDataClass(val property: CommonObject?)
object CommonObject {
fun doSomething() {}
}
@@ -0,0 +1,7 @@
MODULE common { platform=[JVM, JS, Native] }
MODULE jvm1 { platform=[JVM] }
MODULE jvm2 { platform=[JVM] }
jvm1 -> common { kind=DEPENDS_ON }
jvm2 -> common { kind=DEPENDS_ON }
jvm2 -> jvm1 { kind=DEPENDENCY }
@@ -0,0 +1,5 @@
data class JvmDataClass(val property: JvmObject?)
object JvmObject {
fun doSomething() {}
}
@@ -0,0 +1,9 @@
fun test(fromCommon: CommonDataClass, fromJvm: JvmDataClass) {
if (fromCommon.property != null) {
<!SMARTCAST_IMPOSSIBLE!>fromCommon.property<!>.doSomething()
}
if (fromJvm.property != null) {
<!SMARTCAST_IMPOSSIBLE!>fromJvm.property<!>.doSomething()
}
}
@@ -208,6 +208,11 @@ public class MultiplatformAnalysisTestGenerated extends AbstractMultiplatformAna
runTest("idea/testData/multiplatform/simple/");
}
@TestMetadata("simple")
public void testSmartCastOnPropertyFromDependentModule() throws Exception {
runTest("idea/testData/multiplatform/smartCastOnPropertyFromDependentModule/");
}
@TestMetadata("supertypes")
public void testSupertypes() throws Exception {
runTest("idea/testData/multiplatform/supertypes/");