New default checks for mixed hierarchies

Old and new schemes
This commit is contained in:
Mikhail Bogdanov
2020-07-16 12:15:06 +02:00
parent de02b31ad7
commit 125c72cb8d
15 changed files with 283 additions and 38 deletions
@@ -510,6 +510,16 @@ public class CompileKotlinAgainstKotlinTestGenerated extends AbstractCompileKotl
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/compileKotlinAgainstKotlin/jvm8/defaults/interop"), Pattern.compile("^(.+)\\.kt$"), null, true);
}
@TestMetadata("likeMemberClash.kt")
public void testLikeMemberClash() throws Exception {
runTest("compiler/testData/compileKotlinAgainstKotlin/jvm8/defaults/interop/likeMemberClash.kt");
}
@TestMetadata("likeSpecialization.kt")
public void testLikeSpecialization() throws Exception {
runTest("compiler/testData/compileKotlinAgainstKotlin/jvm8/defaults/interop/likeSpecialization.kt");
}
@TestMetadata("newAndOldSchemes.kt")
public void testNewAndOldSchemes() throws Exception {
runTest("compiler/testData/compileKotlinAgainstKotlin/jvm8/defaults/interop/newAndOldSchemes.kt");
@@ -505,6 +505,16 @@ public class IrCompileKotlinAgainstKotlinTestGenerated extends AbstractIrCompile
KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/compileKotlinAgainstKotlin/jvm8/defaults/interop"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.JVM_IR, true);
}
@TestMetadata("likeMemberClash.kt")
public void testLikeMemberClash() throws Exception {
runTest("compiler/testData/compileKotlinAgainstKotlin/jvm8/defaults/interop/likeMemberClash.kt");
}
@TestMetadata("likeSpecialization.kt")
public void testLikeSpecialization() throws Exception {
runTest("compiler/testData/compileKotlinAgainstKotlin/jvm8/defaults/interop/likeSpecialization.kt");
}
@TestMetadata("newAndOldSchemes.kt")
public void testNewAndOldSchemes() throws Exception {
runTest("compiler/testData/compileKotlinAgainstKotlin/jvm8/defaults/interop/newAndOldSchemes.kt");
@@ -627,6 +627,11 @@ class CompileKotlinAgainstCustomBinariesTest : AbstractKotlinCompilerIntegration
compileKotlin("source.kt", tmpdir, listOf(library), additionalOptions = listOf("-Xfriend-paths=${library.path}"))
}
fun testJvmDefaultClashWithOld() {
val library = compileLibrary("library", additionalOptions = listOf("-Xjvm-default=disable"))
compileKotlin("source.kt", tmpdir, listOf(library), additionalOptions = listOf("-jvm-target", "1.8", "-Xjvm-default=all"))
}
fun testInternalFromForeignModuleJs() {
compileKotlin("source.kt", File(tmpdir, "usage.js"), listOf(compileJsLibrary("library")), K2JSCompiler())
}