diff options
Diffstat (limited to 'java/java-tests/testData/codeInsight/daemonCodeAnalyzer')
16 files changed, 203 insertions, 0 deletions
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/annotations/typeAnnotations.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/annotations/typeAnnotations.java index 28035c8c1698..01f7486ea89a 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/annotations/typeAnnotations.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/annotations/typeAnnotations.java @@ -114,6 +114,7 @@ class Outer { void <error descr="Annotations are not allowed here">@TA</error> misplaced() { } @TA Outer() { } + <T> <error descr="Annotations are not allowed here">@TA</error> Outer(T t) { } class MyClass<@TA @TPA T> { } interface MyInterface<@TA @TPA E> { } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/mostSpecific/IDEA127584.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/mostSpecific/IDEA127584.java new file mode 100644 index 000000000000..f1222505a708 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/mostSpecific/IDEA127584.java @@ -0,0 +1,22 @@ +class Test { + public static <Tfoo, Vfoo> Future<Vfoo> foo(Future<Tfoo> future, Function<Tfoo, Vfoo> function) { + return future.map(function); + } + + // These interfaces inspired by FoundationDB Java client class files + interface PartialFunction <TP, VP> { + VP apply(TP t) throws java.lang.Exception; + } + + interface Function <TF, VF> extends PartialFunction<TF, VF> { + VF apply(TF t); + } + + interface PartialFuture <TPP> { + <VPP> PartialFuture<VPP> map(PartialFunction<TPP, VPP> partialFunction); + } + + interface Future <TFF> extends PartialFuture<TFF> { + <VFF> Future<VFF> map(Function<TFF, VFF> function); + } +} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA127596.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA127596.java new file mode 100644 index 000000000000..20636674141b --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newLambda/IDEA127596.java @@ -0,0 +1,9 @@ +class Executor<E> { + <K> void bar(Executor<K> e) { + Runnable r = () -> foo(e); + } + + private <T> T foo(final Executor<T> e) { + return null; + } +} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/IDEA126969.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/IDEA126969.java new file mode 100644 index 000000000000..e981d28298b5 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/IDEA126969.java @@ -0,0 +1,15 @@ +import java.util.Collection; +import java.util.List; +import java.util.stream.Stream; + +class IDEA126969 { + void foo(final Stream<List<Integer>> stream) { + + stream.flatMap(List::stream) + .forEach(i -> System.out.println(i.floatValue())); + + stream.flatMap(Collection::stream) + .forEach(i -> System.out.println(i.floatValue())); + + } +} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/IDEA127506.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/IDEA127506.java new file mode 100644 index 000000000000..7abf6ba9427a --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/IDEA127506.java @@ -0,0 +1,24 @@ +import java.util.List; +import java.util.Set; +import java.util.stream.Stream; + +class Validator { + static boolean thereAreConstraintViolationsIn1(final Stream<Object> objectStream, Validator validator) { + Stream<Set<List<Object>>> rStream = objectStream + .map(validator::validate); + return rStream + .flatMap(set -> set.stream()) + .findAny() + .isPresent(); + } + + static void thereAreConstraintViolationsIn(final Stream<Object> objectStream, Validator validator) { + Stream<Set<List<Object>>> rStream = objectStream.map(validator ::validate); + + Stream<Set<List<Object>>> lStream = objectStream.map((a) -> validator.validate(a)); + } + + <T> Set<List<T>> validate(T var1, Class<?> ... var2) { + return null; + } +}
\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addTypeCast/afterShortenFQNs.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addTypeCast/afterShortenFQNs.java new file mode 100644 index 000000000000..9fea89ffa684 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addTypeCast/afterShortenFQNs.java @@ -0,0 +1,10 @@ +import java.util.List; + +// "Cast parameter to 'java.util.List'" "true" +class Test { + void m(Object o) { + foo((List) o); + } + + private void foo(final java.util.List o) {} +} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addTypeCast/beforeShortenFQNs.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addTypeCast/beforeShortenFQNs.java new file mode 100644 index 000000000000..e53d8b1e6c31 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addTypeCast/beforeShortenFQNs.java @@ -0,0 +1,8 @@ +// "Cast parameter to 'java.util.List'" "true" +class Test { + void m(Object o) { + foo(<caret>o); + } + + private void foo(final java.util.List o) {} +} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/anonymous2lambda/beforeObjectInferredButIntExpected.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/anonymous2lambda/beforeObjectInferredButIntExpected.java new file mode 100644 index 000000000000..3a82478ec678 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/anonymous2lambda/beforeObjectInferredButIntExpected.java @@ -0,0 +1,16 @@ +// "Replace with lambda" "false" +import java.util.function.Function; + +class Test { + void ab() { + comparing(new Func<caret>tion<Integer, String>() { + public String apply(Integer pObj) { + return Integer.toString(pObj); + } + }); + + } + + static <T> void comparing(Function<T, String> keyExtractor){} + +} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/convert2Local/afterMultipleMethodsMultipleFields.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/convert2Local/afterMultipleMethodsMultipleFields.java new file mode 100644 index 000000000000..9d1502b44bc0 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/convert2Local/afterMultipleMethodsMultipleFields.java @@ -0,0 +1,17 @@ +// "Convert to local" "true" +class MyClassTest { + + private boolean editable = false; + + boolean isEditable() { + return editable; + } + + void setEditable(boolean editable) { + this.editable = editable; + } + + public void setEditable1(final boolean editable1) { + boolean editable11 = editable1; + } +}
\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/convert2Local/beforeMultipleMethodsMultipleFields.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/convert2Local/beforeMultipleMethodsMultipleFields.java new file mode 100644 index 000000000000..4c6ead704f57 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/convert2Local/beforeMultipleMethodsMultipleFields.java @@ -0,0 +1,18 @@ +// "Convert to local" "true" +class MyClassTest { + + private boolean editable = false; + private boolean edit<caret>able1 = false; + + boolean isEditable() { + return editable; + } + + void setEditable(boolean editable) { + this.editable = editable; + } + + public void setEditable1(final boolean editable1) { + this.editable1 = editable1; + } +}
\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/convert2Local/beforeMultipleMethodsOnReadOnly.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/convert2Local/beforeMultipleMethodsOnReadOnly.java new file mode 100644 index 000000000000..db61483db9ad --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/convert2Local/beforeMultipleMethodsOnReadOnly.java @@ -0,0 +1,18 @@ +// "Convert to local" "false" +class MyClassTest { + + private boolean edit<caret>able = false; + private boolean editable1 = false; + + boolean isEditable() { + return editable; + } + + void setEditable(boolean editable) { + this.editable = editable; + } + + public void setEditable1(final boolean editable1) { + this.editable1 = editable1; + } +}
\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createFieldFromUsage/beforeInsideInterface.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createFieldFromUsage/beforeInsideInterface.java new file mode 100644 index 000000000000..74627f9409ee --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createFieldFromUsage/beforeInsideInterface.java @@ -0,0 +1,7 @@ +// "Create Field 'myFoo'" "false" + +interface Test { + default String get() { + return my<caret>Foo; + } +}
\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createMethodFromUsage/afterStaticInInterface.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createMethodFromUsage/afterStaticInInterface.java new file mode 100644 index 000000000000..66a2b59a9a10 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createMethodFromUsage/afterStaticInInterface.java @@ -0,0 +1,10 @@ +// "Create Method 'f'" "true" +interface X { + public static void m() { + f(); + } + + static void f() { + + } +}
\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createMethodFromUsage/beforeStaticInInterface.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createMethodFromUsage/beforeStaticInInterface.java new file mode 100644 index 000000000000..81afbe358fbe --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createMethodFromUsage/beforeStaticInInterface.java @@ -0,0 +1,6 @@ +// "Create Method 'f'" "true" +interface X { + public static void m() { + f<caret>(); + } +}
\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/lambda2methodReference/afterAmbiguityWithoutSuperMethods.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/lambda2methodReference/afterAmbiguityWithoutSuperMethods.java new file mode 100644 index 000000000000..54310c8da75f --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/lambda2methodReference/afterAmbiguityWithoutSuperMethods.java @@ -0,0 +1,11 @@ +// "Replace lambda with method reference" "true" +import java.io.PrintStream; +import java.util.function.BiConsumer; + +class Test { + { + BiConsumer<PrintStream, String> printer = PrintStream::println; + } + + +} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/lambda2methodReference/beforeAmbiguityWithoutSuperMethods.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/lambda2methodReference/beforeAmbiguityWithoutSuperMethods.java new file mode 100644 index 000000000000..7c68e5ec9fbc --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/lambda2methodReference/beforeAmbiguityWithoutSuperMethods.java @@ -0,0 +1,11 @@ +// "Replace lambda with method reference" "true" +import java.io.PrintStream; +import java.util.function.BiConsumer; + +class Test { + { + BiConsumer<PrintStream, String> printer = (printStream, x) -> printSt<caret>ream.println(x); + } + + +} |