Support is/as/as? with Function[K]<...> types.

This commit is contained in:
Dmitry Petrov
2015-10-02 19:37:53 +03:00
parent e1d53a2843
commit 9e546bda27
22 changed files with 2177 additions and 160 deletions
@@ -143,6 +143,22 @@ public class BlackBoxWithJavaCodegenTestGenerated extends AbstractBlackBoxCodege
}
@TestMetadata("compiler/testData/codegen/boxWithJava/casts")
@TestDataPath("$PROJECT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
public static class Casts extends AbstractBlackBoxCodegenTest {
public void testAllFilesPresentInCasts() throws Exception {
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxWithJava/casts"), Pattern.compile("^([^\\.]+)$"), true);
}
@TestMetadata("javaTypeIsFunK")
public void testJavaTypeIsFunK() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithJava/casts/javaTypeIsFunK/");
doTestWithJava(fileName);
}
}
@TestMetadata("compiler/testData/codegen/boxWithJava/fileClasses")
@TestDataPath("$PROJECT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
@@ -916,6 +916,18 @@ public class BlackBoxWithStdlibCodegenTestGenerated extends AbstractBlackBoxCode
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxWithStdlib/casts"), Pattern.compile("^(.+)\\.kt$"), true);
}
@TestMetadata("asFunKBig.kt")
public void testAsFunKBig() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/asFunKBig.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("asFunKSmall.kt")
public void testAsFunKSmall() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/asFunKSmall.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("asWithGeneric.kt")
public void testAsWithGeneric() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/asWithGeneric.kt");
@@ -928,30 +940,90 @@ public class BlackBoxWithStdlibCodegenTestGenerated extends AbstractBlackBoxCode
doTestWithStdlib(fileName);
}
@TestMetadata("isFunKBig.kt")
public void testIsFunKBig() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/isFunKBig.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("isFunKSmall.kt")
public void testIsFunKSmall() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/isFunKSmall.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("isWithMutable.kt")
public void testIsWithMutable() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/isWithMutable.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("reifiedAsFunKBig.kt")
public void testReifiedAsFunKBig() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/reifiedAsFunKBig.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("reifiedAsFunKSmall.kt")
public void testReifiedAsFunKSmall() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/reifiedAsFunKSmall.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("reifiedAsWithMutable.kt")
public void testReifiedAsWithMutable() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/reifiedAsWithMutable.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("reifiedIsFunKBig.kt")
public void testReifiedIsFunKBig() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/reifiedIsFunKBig.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("reifiedIsFunKSmall.kt")
public void testReifiedIsFunKSmall() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/reifiedIsFunKSmall.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("reifiedIsWithMutable.kt")
public void testReifiedIsWithMutable() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/reifiedIsWithMutable.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("reifiedSafeAsFunKBig.kt")
public void testReifiedSafeAsFunKBig() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/reifiedSafeAsFunKBig.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("reifiedSafeAsFunKSmall.kt")
public void testReifiedSafeAsFunKSmall() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/reifiedSafeAsFunKSmall.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("reifiedSafeAsWithMutable.kt")
public void testReifiedSafeAsWithMutable() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/reifiedSafeAsWithMutable.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("safeAsFunKBig.kt")
public void testSafeAsFunKBig() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/safeAsFunKBig.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("safeAsFunKSmall.kt")
public void testSafeAsFunKSmall() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/safeAsFunKSmall.kt");
doTestWithStdlib(fileName);
}
@TestMetadata("safeAsWithMutable.kt")
public void testSafeAsWithMutable() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/casts/safeAsWithMutable.kt");