basic multifile class codegen tests

This commit is contained in:
Dmitry Petrov
2015-09-08 14:52:12 +03:00
parent b3421479f1
commit e88584742e
15 changed files with 78 additions and 0 deletions
@@ -0,0 +1,5 @@
public class Baz {
public static String baz() {
return Util.foo() + Util.bar();
}
}
@@ -0,0 +1,3 @@
@file:JvmName("Util")
@file:JvmMultifileClass
public fun bar(): String = "K"
@@ -0,0 +1,3 @@
@file:JvmName("Util")
@file:JvmMultifileClass
public fun foo(): String = "O"
@@ -0,0 +1 @@
fun box(): String = Baz.baz()
@@ -0,0 +1,5 @@
public class Baz {
public static String baz() {
return Util.foo() + Util.bar();
}
}
@@ -0,0 +1,5 @@
@file:JvmName("Util")
@file:JvmMultifileClass
public fun bar(): String = barx()
internal fun foox(): String = "O"
@@ -0,0 +1,5 @@
@file:JvmName("Util")
@file:JvmMultifileClass
public fun foo(): String = foox()
internal fun barx(): String = "K"
@@ -0,0 +1 @@
fun box(): String = Baz.baz()
@@ -0,0 +1,5 @@
public class Baz {
public static String baz() {
return Util.foo() + Util.bar();
}
}
@@ -0,0 +1,5 @@
@file:JvmName("Util")
@file:JvmMultifileClass
public fun bar(): String = barx()
private fun barx(): String = "K"
@@ -0,0 +1,5 @@
@file:JvmName("Util")
@file:JvmMultifileClass
public fun foo(): String = foox()
private fun foox(): String = "O"
@@ -0,0 +1 @@
fun box(): String = Baz.baz()
@@ -0,0 +1,10 @@
// NB this multifile class should be called "TestPackage" due to the way codegen box tests work.
@file:JvmName("TestPackage")
@file:JvmMultifileClass
package test
fun foo(): String = bar()
fun bar(): String = qux()
fun qux(): String = "OK"
fun box(): String = foo()
@@ -135,6 +135,24 @@ public class BlackBoxWithJavaCodegenTestGenerated extends AbstractBlackBoxCodege
doTestWithJava(fileName);
}
@TestMetadata("multifileClassWith2Files")
public void testMultifileClassWith2Files() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithJava/fileClasses/multifileClassWith2Files/");
doTestWithJava(fileName);
}
@TestMetadata("multifileClassWithInternal")
public void testMultifileClassWithInternal() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithJava/fileClasses/multifileClassWithInternal/");
doTestWithJava(fileName);
}
@TestMetadata("multifileClassWithPrivate")
public void testMultifileClassWithPrivate() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithJava/fileClasses/multifileClassWithPrivate/");
doTestWithJava(fileName);
}
@TestMetadata("simple")
public void testSimple() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithJava/fileClasses/simple/");
@@ -2239,6 +2239,12 @@ public class BlackBoxWithStdlibCodegenTestGenerated extends AbstractBlackBoxCode
doTestWithStdlib(fileName);
}
@TestMetadata("multifileClass.kt")
public void testMultifileClass() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/platformNames/multifileClass.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("propertyName.kt")
public void testPropertyName() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/platformNames/propertyName.kt");