From 21105fcae4c782bee1b8788e940d80c48c0315c9 Mon Sep 17 00:00:00 2001 From: Evgeny Gerashchenko Date: Fri, 24 Oct 2014 16:28:32 +0400 Subject: [PATCH] Tests with SAM conversions. --- .../build/IncrementalJpsTestGenerated.java | 24 ++++++++++++++++++- .../methodAdded/SamInterface.java | 3 +++ .../methodAdded/SamInterface.java.new | 4 ++++ .../samConversions/methodAdded/build.log | 23 ++++++++++++++++++ .../samConversions/methodAdded/notUsage.kt | 3 +++ .../usageWithFunctionExpression.kt | 4 ++++ .../methodAdded/usageWithFunctionLiteral.kt | 3 +++ .../methodSignatureChanged/SamInterface.java | 3 +++ .../SamInterface.java.new | 3 +++ .../methodSignatureChanged/build.log | 18 ++++++++++++++ .../methodSignatureChanged/notUsage.kt | 3 +++ .../usageWithFunctionExpression.kt | 4 ++++ .../usageWithFunctionLiteral.kt | 3 +++ 13 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/SamInterface.java create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/SamInterface.java.new create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/build.log create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/notUsage.kt create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/usageWithFunctionExpression.kt create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/usageWithFunctionLiteral.kt create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/SamInterface.java create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/SamInterface.java.new create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/build.log create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/notUsage.kt create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/usageWithFunctionExpression.kt create mode 100644 jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/usageWithFunctionLiteral.kt diff --git a/jps-plugin/test/org/jetbrains/jet/jps/build/IncrementalJpsTestGenerated.java b/jps-plugin/test/org/jetbrains/jet/jps/build/IncrementalJpsTestGenerated.java index 13886425f8e..505e6628321 100644 --- a/jps-plugin/test/org/jetbrains/jet/jps/build/IncrementalJpsTestGenerated.java +++ b/jps-plugin/test/org/jetbrains/jet/jps/build/IncrementalJpsTestGenerated.java @@ -327,7 +327,7 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest { @TestMetadata("jps-plugin/testData/incremental/withJava/javaUsedInKotlin") @TestDataPath("$PROJECT_ROOT") - @InnerTestClasses({}) + @InnerTestClasses({JavaUsedInKotlin.SamConversions.class}) @RunWith(JUnit3RunnerWithInners.class) public static class JavaUsedInKotlin extends AbstractIncrementalJpsTest { public void testAllFilesPresentInJavaUsedInKotlin() throws Exception { @@ -376,6 +376,28 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest { doTest(fileName); } + @TestMetadata("jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions") + @TestDataPath("$PROJECT_ROOT") + @InnerTestClasses({}) + @RunWith(JUnit3RunnerWithInners.class) + public static class SamConversions extends AbstractIncrementalJpsTest { + public void testAllFilesPresentInSamConversions() throws Exception { + JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions"), Pattern.compile("^([^\\.]+)$"), true); + } + + @TestMetadata("methodAdded") + public void testMethodAdded() throws Exception { + String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/"); + doTest(fileName); + } + + @TestMetadata("methodSignatureChanged") + public void testMethodSignatureChanged() throws Exception { + String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/"); + doTest(fileName); + } + + } } @TestMetadata("jps-plugin/testData/incremental/withJava/kotlinUsedInJava") diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/SamInterface.java b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/SamInterface.java new file mode 100644 index 00000000000..beaca0eddc3 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/SamInterface.java @@ -0,0 +1,3 @@ +public interface SamInterface { + Object run(); +} \ No newline at end of file diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/SamInterface.java.new b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/SamInterface.java.new new file mode 100644 index 00000000000..0f3a85d741d --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/SamInterface.java.new @@ -0,0 +1,4 @@ +public interface SamInterface { + Object run(); + Object walk(); +} \ No newline at end of file diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/build.log b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/build.log new file mode 100644 index 00000000000..e31f0b60e64 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/build.log @@ -0,0 +1,23 @@ +Cleaning output files: +out/production/module/SamInterface.class +End of files +Compiling files: +src/SamInterface.java +End of files +Cleaning output files: +out/production/module/_DefaultPackage$sam$SamInterface$*.class +out/production/module/_DefaultPackage$usageWithFunctionExpression$*$usageWithFunctionExpression$a$1.class +out/production/module/_DefaultPackage$usageWithFunctionExpression$*.class +out/production/module/_DefaultPackage$usageWithFunctionLiteral$*$usageWithFunctionLiteral$1.class +out/production/module/_DefaultPackage$usageWithFunctionLiteral$*.class +out/production/module/_DefaultPackage.class +End of files +Compiling files: +src/usageWithFunctionExpression.kt +src/usageWithFunctionLiteral.kt +End of files +COMPILATION FAILED +Kotlin:ERROR:Expression 'SamInterface' cannot be invoked as a function. The function invoke() is not found +Kotlin:ERROR:Please specify constructor invocation; classifier 'SamInterface' does not have a class object +Kotlin:ERROR:Expression 'SamInterface' cannot be invoked as a function. The function invoke() is not found +Kotlin:ERROR:Please specify constructor invocation; classifier 'SamInterface' does not have a class object diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/notUsage.kt b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/notUsage.kt new file mode 100644 index 00000000000..e1a791d4319 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/notUsage.kt @@ -0,0 +1,3 @@ +fun notUsage() { + println("!") +} \ No newline at end of file diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/usageWithFunctionExpression.kt b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/usageWithFunctionExpression.kt new file mode 100644 index 00000000000..f7536d86407 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/usageWithFunctionExpression.kt @@ -0,0 +1,4 @@ +fun usageWithFunctionExpression() { + val a = { ":)" } + SamInterface(a) +} \ No newline at end of file diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/usageWithFunctionLiteral.kt b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/usageWithFunctionLiteral.kt new file mode 100644 index 00000000000..da7b85ec489 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/usageWithFunctionLiteral.kt @@ -0,0 +1,3 @@ +fun usageWithFunctionLiteral() { + SamInterface { ":)" } +} \ No newline at end of file diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/SamInterface.java b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/SamInterface.java new file mode 100644 index 00000000000..beaca0eddc3 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/SamInterface.java @@ -0,0 +1,3 @@ +public interface SamInterface { + Object run(); +} \ No newline at end of file diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/SamInterface.java.new b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/SamInterface.java.new new file mode 100644 index 00000000000..9e0be424c35 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/SamInterface.java.new @@ -0,0 +1,3 @@ +public interface SamInterface { + String run(); +} \ No newline at end of file diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/build.log b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/build.log new file mode 100644 index 00000000000..f708754c847 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/build.log @@ -0,0 +1,18 @@ +Cleaning output files: +out/production/module/SamInterface.class +End of files +Compiling files: +src/SamInterface.java +End of files +Cleaning output files: +out/production/module/_DefaultPackage$sam$SamInterface$*.class +out/production/module/_DefaultPackage$usageWithFunctionExpression$*$usageWithFunctionExpression$a$1.class +out/production/module/_DefaultPackage$usageWithFunctionExpression$*.class +out/production/module/_DefaultPackage$usageWithFunctionLiteral$*$usageWithFunctionLiteral$1.class +out/production/module/_DefaultPackage$usageWithFunctionLiteral$*.class +out/production/module/_DefaultPackage.class +End of files +Compiling files: +src/usageWithFunctionExpression.kt +src/usageWithFunctionLiteral.kt +End of files diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/notUsage.kt b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/notUsage.kt new file mode 100644 index 00000000000..e1a791d4319 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/notUsage.kt @@ -0,0 +1,3 @@ +fun notUsage() { + println("!") +} \ No newline at end of file diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/usageWithFunctionExpression.kt b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/usageWithFunctionExpression.kt new file mode 100644 index 00000000000..f7536d86407 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/usageWithFunctionExpression.kt @@ -0,0 +1,4 @@ +fun usageWithFunctionExpression() { + val a = { ":)" } + SamInterface(a) +} \ No newline at end of file diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/usageWithFunctionLiteral.kt b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/usageWithFunctionLiteral.kt new file mode 100644 index 00000000000..da7b85ec489 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodSignatureChanged/usageWithFunctionLiteral.kt @@ -0,0 +1,3 @@ +fun usageWithFunctionLiteral() { + SamInterface { ":)" } +} \ No newline at end of file