New JoinVarArgsContains inspection that will detect multiple .contains(), .doesNotContain(), and .containsOnlyOnce() calls within the same statement that could be joined together using variadic arguments.
This commit is contained in:
@@ -31,6 +31,13 @@ public class GuavaOptional {
|
||||
assertThat(opt).isPresent();
|
||||
assertThat(opt).isPresent();
|
||||
|
||||
//assertThat(opt.get()).isEqualTo(opt.get()); // there's a better version than contains(opt.get())
|
||||
assertThat(opt.orNull()).isEqualTo(opt.get());
|
||||
//assertThat(opt.get()).isEqualTo(opt.orNull()); // there's a better version than contains(opt.orNull())
|
||||
|
||||
assertThat(opt).contains(opt.get());
|
||||
assertThat(opt).contains(opt.orNull());
|
||||
|
||||
String possibleNullString = System.getProperty("username");
|
||||
String notNullString = "Narf";
|
||||
|
||||
|
||||
@@ -31,6 +31,13 @@ public class GuavaOptional {
|
||||
assertThat(opt.orNull()).isNotEqualTo(null);
|
||||
assertThat(opt.orNull()).isNotNull();
|
||||
|
||||
//assertThat(opt.get()).isEqualTo(opt.get()); // there's a better version than contains(opt.get())
|
||||
assertThat(opt.orNull()).isEqualTo(opt.get());
|
||||
//assertThat(opt.get()).isEqualTo(opt.orNull()); // there's a better version than contains(opt.orNull())
|
||||
|
||||
assertThat(opt).contains(opt.get());
|
||||
assertThat(opt).contains(opt.orNull());
|
||||
|
||||
String possibleNullString = System.getProperty("username");
|
||||
String notNullString = "Narf";
|
||||
|
||||
|
||||
@@ -30,6 +30,13 @@ public class Java8Optional {
|
||||
assertThat(opt).isPresent();
|
||||
assertThat(opt).isPresent();
|
||||
|
||||
//assertThat(opt.get()).isEqualTo(opt.get()); // there's a better version than contains(opt.get())
|
||||
assertThat(opt.orElse(null)).isEqualTo(opt.get());
|
||||
//assertThat(opt.get()).isEqualTo(opt.orElse(null)); // there's a better version than contains(opt.orElse(null))
|
||||
|
||||
assertThat(opt).contains(opt.get());
|
||||
assertThat(opt).contains(opt.orElse(null));
|
||||
|
||||
String possibleNullString = System.getProperty("username");
|
||||
String notNullString = "Narf";
|
||||
|
||||
|
||||
@@ -30,6 +30,13 @@ public class Java8Optional {
|
||||
assertThat(opt.orElse(null)).isNotEqualTo(null);
|
||||
assertThat(opt.orElse(null)).isNotNull();
|
||||
|
||||
//assertThat(opt.get()).isEqualTo(opt.get()); // there's a better version than contains(opt.get())
|
||||
assertThat(opt.orElse(null)).isEqualTo(opt.get());
|
||||
//assertThat(opt.get()).isEqualTo(opt.orElse(null)); // there's a better version than contains(opt.orElse(null))
|
||||
|
||||
assertThat(opt).contains(opt.get());
|
||||
assertThat(opt).contains(opt.orElse(null));
|
||||
|
||||
String possibleNullString = System.getProperty("username");
|
||||
String notNullString = "Narf";
|
||||
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
import java.util.*;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.assertj.core.api.Assertions.fail;
|
||||
|
||||
public class JoinVarArgsContains {
|
||||
|
||||
private void joinVarArgsContains() {
|
||||
List<String> list = new ArrayList<>();
|
||||
|
||||
assertThat(list).contains("foo", "bar", "etc").hasSize(2);
|
||||
assertThat(list).contains("foo").as("narf").contains("bar");
|
||||
assertThat(list).doesNotContain("foo", "bar");
|
||||
assertThat(list).containsOnlyOnce("foo", "etc") // will we lose this comment?
|
||||
.hasSize(2).contains("bar", "narf", "1", "2", "3").doesNotContain("puit", "Jens Stoltenberg is a war-monger", "and an atomic playboy") /* inline */; // the final comment
|
||||
|
||||
assertThat(list).contains("foo").doesNotContain("bar").containsOnlyOnce("narf");
|
||||
|
||||
org.junit.Assert.assertThat(list, null);
|
||||
fail("oh no!");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
import java.util.*;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.assertj.core.api.Assertions.fail;
|
||||
|
||||
public class JoinVarArgsContains {
|
||||
|
||||
private void joinVarArgsContains() {
|
||||
List<String> list = new ArrayList<>();
|
||||
|
||||
assertThat(list).contains("foo").contains(/* foo */ "bar" /* bar */).hasSize(2).contains("etc");
|
||||
assertThat(list).contains("foo").as("narf").contains("bar");
|
||||
assertThat(list).doesNotContain("foo").doesNotContain("bar");
|
||||
assertThat(list).containsOnlyOnce()
|
||||
.containsOnlyOnce("foo") // will we lose this comment?
|
||||
.hasSize(2) // this is part of the contains("bar")
|
||||
.contains("bar").containsOnlyOnce("etc") /* where does this go? */
|
||||
.contains("narf") // what about this one?
|
||||
.doesNotContain("puit", "Jens Stoltenberg is a war-monger")
|
||||
.doesNotContain("and an atomic playboy")
|
||||
.contains("1", "2", "3") /* inline */; // the final comment
|
||||
|
||||
assertThat(list).contains("foo").doesNotContain("bar").containsOnlyOnce("narf");
|
||||
|
||||
org.junit.Assert.assertThat(list, null);
|
||||
fail("oh no!");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user