From d03d73ed7d413a194a1c1a74b9c4e0d54a551f7c Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Wed, 12 Mar 2014 21:03:07 +0100 Subject: [PATCH] testdata for IDEA-122074, IDEA-122084 (cherry picked from commit 582e8846460cb5f4c20d271cdf7894e557bc6e02) --- .../lambda/newLambda/IDEA122074.java | 15 +++++++++++++++ .../lambda/newLambda/IDEA122084.java | 18 ++++++++++++++++++ .../lambda/NewLambdaHighlightingTest.java | 8 ++++++++ 3 files changed, 41 insertions(+) create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA122074.java create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA122084.java diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA122074.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA122074.java new file mode 100644 index 000000000000..02cdd6c702c7 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA122074.java @@ -0,0 +1,15 @@ +class CyclicInferenceBug { + interface Func1 { + R apply(T1 v1); + void other(); + } + interface F1 extends Func1 { + default void other() {} + } + + Func1 func(F1 f1) { return f1; } + + void test() { + Func1 f1 = func(s -> s); + } +} \ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA122084.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA122084.java new file mode 100644 index 000000000000..1995793fd020 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA122084.java @@ -0,0 +1,18 @@ +class InferenceFailBug { + interface Func1 { + R apply(T1 v1); + void other(); + } + interface F1 extends Func1 { + default void other() {} + } + + Func1 func(F1 f1) { return f1; } + + interface Future { + Future map(Func1 f1); + } + private Future futureExample(Future future) { + return future.map(func(s -> s.toUpperCase())).map(func(s -> s.length())); + } +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/lambda/NewLambdaHighlightingTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/lambda/NewLambdaHighlightingTest.java index a3c2b12515eb..566cd7d1b4f3 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/lambda/NewLambdaHighlightingTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/lambda/NewLambdaHighlightingTest.java @@ -154,6 +154,14 @@ public class NewLambdaHighlightingTest extends LightDaemonAnalyzerTestCase { doTest(); } + public void testIDEA122074() throws Exception { + doTest(); + } + + public void testIDEA122084() throws Exception { + doTest(); + } + private void doTest() { doTest(false); }