KT-3702: Inner class constructor cannot be invoked in override function with receiver

KT-3532: NoSuchMethodError when constructing Java inner class
KT-3847: Class is not recognized as inner when loaded from binaries

 #KT-3702 Fixed
 #KT-3532 Fixed
 #KT-3847 Fixed
This commit is contained in:
Mikhael Bogdanov
2013-06-24 11:21:23 +04:00
parent 8e45bb7657
commit 8a4b01d9c6
9 changed files with 63 additions and 3 deletions
@@ -31,7 +31,7 @@ import org.jetbrains.jet.codegen.generated.AbstractBlackBoxCodegenTest;
/** This class is generated by {@link org.jetbrains.jet.generators.tests.GenerateTests}. DO NOT MODIFY MANUALLY */
@SuppressWarnings("all")
@TestMetadata("compiler/testData/codegen/boxWithJava")
@InnerTestClasses({BlackBoxWithJavaCodegenTestGenerated.Annotations.class, BlackBoxWithJavaCodegenTestGenerated.CallableReference.class, BlackBoxWithJavaCodegenTestGenerated.Enum.class, BlackBoxWithJavaCodegenTestGenerated.Functions.class, BlackBoxWithJavaCodegenTestGenerated.Property.class, BlackBoxWithJavaCodegenTestGenerated.Sam.class, BlackBoxWithJavaCodegenTestGenerated.StaticFun.class, BlackBoxWithJavaCodegenTestGenerated.Visibility.class})
@InnerTestClasses({BlackBoxWithJavaCodegenTestGenerated.Annotations.class, BlackBoxWithJavaCodegenTestGenerated.CallableReference.class, BlackBoxWithJavaCodegenTestGenerated.Enum.class, BlackBoxWithJavaCodegenTestGenerated.Functions.class, BlackBoxWithJavaCodegenTestGenerated.InnerClass.class, BlackBoxWithJavaCodegenTestGenerated.Property.class, BlackBoxWithJavaCodegenTestGenerated.Sam.class, BlackBoxWithJavaCodegenTestGenerated.StaticFun.class, BlackBoxWithJavaCodegenTestGenerated.Visibility.class})
public class BlackBoxWithJavaCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
public void testAllFilesPresentInBoxWithJava() throws Exception {
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), "org.jetbrains.jet.generators.tests.GenerateTests", new File("compiler/testData/codegen/boxWithJava"), Pattern.compile("^(.+)\\.kt$"), true);
@@ -134,6 +134,19 @@ public class BlackBoxWithJavaCodegenTestGenerated extends AbstractBlackBoxCodege
}
@TestMetadata("compiler/testData/codegen/boxWithJava/innerClass")
public static class InnerClass extends AbstractBlackBoxCodegenTest {
public void testAllFilesPresentInInnerClass() throws Exception {
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), "org.jetbrains.jet.generators.tests.GenerateTests", new File("compiler/testData/codegen/boxWithJava/innerClass"), Pattern.compile("^(.+)\\.kt$"), true);
}
@TestMetadata("kt3532.kt")
public void testKt3532() throws Exception {
doTestWithJava("compiler/testData/codegen/boxWithJava/innerClass/kt3532.kt");
}
}
@TestMetadata("compiler/testData/codegen/boxWithJava/property")
public static class Property extends AbstractBlackBoxCodegenTest {
public void testAllFilesPresentInProperty() throws Exception {
@@ -501,6 +514,7 @@ public class BlackBoxWithJavaCodegenTestGenerated extends AbstractBlackBoxCodege
suite.addTestSuite(CallableReference.class);
suite.addTestSuite(Enum.class);
suite.addTestSuite(Functions.class);
suite.addTestSuite(InnerClass.class);
suite.addTestSuite(Property.class);
suite.addTest(Sam.innerSuite());
suite.addTestSuite(StaticFun.class);
@@ -61,6 +61,11 @@ public class CompileKotlinAgainstKotlinTestGenerated extends AbstractCompileKotl
doTest("compiler/testData/compileKotlinAgainstKotlin/InnerClass.A.kt");
}
@TestMetadata("InnerClassConstructor.A.kt")
public void testInnerClassConstructor() throws Exception {
doTest("compiler/testData/compileKotlinAgainstKotlin/InnerClassConstructor.A.kt");
}
@TestMetadata("InnerEnum.A.kt")
public void testInnerEnum() throws Exception {
doTest("compiler/testData/compileKotlinAgainstKotlin/InnerEnum.A.kt");