[FE 1.0] Support java sealed classes

^KT-46778 Fixed
This commit is contained in:
Dmitriy Novozhilov
2021-07-14 11:35:20 +03:00
committed by teamcityserver
parent 972211f8e6
commit fa1d09c778
32 changed files with 365 additions and 38 deletions
@@ -29886,38 +29886,48 @@ public class FirOldFrontendDiagnosticsTestGenerated extends AbstractFirDiagnosti
runTest("compiler/testData/diagnostics/tests/testsWithJava15/jvmRecord/supertypesCheck.kt");
}
}
}
@Nested
@TestMetadata("compiler/testData/diagnostics/tests/testsWithJava17")
@TestDataPath("$PROJECT_ROOT")
public class TestsWithJava17 {
@Test
public void testAllFilesPresentInTestsWithJava17() throws Exception {
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/tests/testsWithJava17"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), true);
}
@Nested
@TestMetadata("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses")
@TestMetadata("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses")
@TestDataPath("$PROJECT_ROOT")
public class SealedClasses {
@Test
public void testAllFilesPresentInSealedClasses() throws Exception {
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), true);
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), true);
}
@Test
@TestMetadata("javaSealedClassExhaustiveness.kt")
public void testJavaSealedClassExhaustiveness() throws Exception {
runTest("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses/javaSealedClassExhaustiveness.kt");
runTest("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses/javaSealedClassExhaustiveness.kt");
}
@Test
@TestMetadata("javaSealedInterfaceExhaustiveness.kt")
public void testJavaSealedInterfaceExhaustiveness() throws Exception {
runTest("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses/javaSealedInterfaceExhaustiveness.kt");
runTest("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses/javaSealedInterfaceExhaustiveness.kt");
}
@Test
@TestMetadata("kotlinInheritsJavaClass.kt")
public void testKotlinInheritsJavaClass() throws Exception {
runTest("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses/kotlinInheritsJavaClass.kt");
runTest("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses/kotlinInheritsJavaClass.kt");
}
@Test
@TestMetadata("kotlinInheritsJavaInterface.kt")
public void testKotlinInheritsJavaInterface() throws Exception {
runTest("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses/kotlinInheritsJavaInterface.kt");
runTest("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses/kotlinInheritsJavaInterface.kt");
}
}
}
@@ -29886,38 +29886,48 @@ public class FirOldFrontendDiagnosticsWithLightTreeTestGenerated extends Abstrac
runTest("compiler/testData/diagnostics/tests/testsWithJava15/jvmRecord/supertypesCheck.kt");
}
}
}
@Nested
@TestMetadata("compiler/testData/diagnostics/tests/testsWithJava17")
@TestDataPath("$PROJECT_ROOT")
public class TestsWithJava17 {
@Test
public void testAllFilesPresentInTestsWithJava17() throws Exception {
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/tests/testsWithJava17"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), true);
}
@Nested
@TestMetadata("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses")
@TestMetadata("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses")
@TestDataPath("$PROJECT_ROOT")
public class SealedClasses {
@Test
public void testAllFilesPresentInSealedClasses() throws Exception {
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), true);
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), true);
}
@Test
@TestMetadata("javaSealedClassExhaustiveness.kt")
public void testJavaSealedClassExhaustiveness() throws Exception {
runTest("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses/javaSealedClassExhaustiveness.kt");
runTest("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses/javaSealedClassExhaustiveness.kt");
}
@Test
@TestMetadata("javaSealedInterfaceExhaustiveness.kt")
public void testJavaSealedInterfaceExhaustiveness() throws Exception {
runTest("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses/javaSealedInterfaceExhaustiveness.kt");
runTest("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses/javaSealedInterfaceExhaustiveness.kt");
}
@Test
@TestMetadata("kotlinInheritsJavaClass.kt")
public void testKotlinInheritsJavaClass() throws Exception {
runTest("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses/kotlinInheritsJavaClass.kt");
runTest("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses/kotlinInheritsJavaClass.kt");
}
@Test
@TestMetadata("kotlinInheritsJavaInterface.kt")
public void testKotlinInheritsJavaInterface() throws Exception {
runTest("compiler/testData/diagnostics/tests/testsWithJava15/sealedClasses/kotlinInheritsJavaInterface.kt");
runTest("compiler/testData/diagnostics/tests/testsWithJava17/sealedClasses/kotlinInheritsJavaInterface.kt");
}
}
}