Collections.addAll inspection checks context for possibility of addAll() movement deeply IDEA-147770

This commit is contained in:
Dmitry Batkovich
2015-11-20 18:10:59 +03:00
parent 40294e5fa5
commit ba979971d9
7 changed files with 115 additions and 4 deletions
@@ -0,0 +1,13 @@
// "Replace 'addAll/putAll' method with parametrized constructor call" "true"
import java.lang.String;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.HashSet;
class C {
void m(String s) {
final List<String> strings;
strings = new ArrayList<String>(Arrays.asList(s, ","));
}
}
@@ -0,0 +1,14 @@
// "Replace 'addAll/putAll' method with parametrized constructor call" "false"
import java.lang.String;
import java.util.ArrayList;
import java.util.List;
import java.util.HashSet;
import java.util.Arrays;
class C {
void m() {
final List<String> list = new ArrayList<>();
Arrays.asList(1, 2, 3).forEach(x -> list.addA<caret>ll(Arrays.asList(String.valueOf(x), ",")));
}
}
@@ -0,0 +1,14 @@
// "Replace 'addAll/putAll' method with parametrized constructor call" "false"
import java.lang.String;
import java.util.ArrayList;
import java.util.List;
import java.util.HashSet;
import java.util.Arrays;
class C {
void m() {
final List<String> list = new ArrayList<>();
Arrays.asList(1, 2, 3).forEach(x -> list.ad<caret>dAll(Arrays.asList(".", ",")));
}
}
@@ -0,0 +1,16 @@
// "Replace 'addAll/putAll' method with parametrized constructor call" "false"
import java.lang.String;
import java.util.ArrayList;
import java.util.List;
import java.util.HashSet;
import java.util.Arrays;
class C {
void m() {
final List<String> list = new ArrayList<>();
if (list.addA<caret>ll(Arrays.asList(".", ","))) {
System.out.println("foo");
}
}
}
@@ -0,0 +1,14 @@
// "Replace 'addAll/putAll' method with parametrized constructor call" "false"
import java.lang.String;
import java.util.ArrayList;
import java.util.List;
import java.util.HashSet;
import java.util.Arrays;
class C {
void m() {
final List<String> list = new ArrayList<>();
Boolean.hashCode(list.add<caret>All(Arrays.asList(".", ",")));
}
}
@@ -0,0 +1,14 @@
// "Replace 'addAll/putAll' method with parametrized constructor call" "true"
import java.lang.String;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.HashSet;
class C {
void m(String s) {
final List<String> strings;
strings = new ArrayList<String>();
string<caret>s.addAll(Arrays.asList(s, ","));
}
}