import static com.google.common.truth.Truth.assertThat;
@Test
public void testExample() {
List<String> list = Arrays.asList("apple", "banana", "carrot");
assertThat(list).contains("apple").doesNotContain("grape").hasSize(3);
}
import static com.google.common.truth.Truth8.assertThat;
@Test
public void testExample() {
Optional<String> optional = Optional.of("value");
assertThat(optional).isPresent().isEqualTo("value");
}
import static com.google.common.truth.Truth.assertAbout;
import com.google.common.truth.Subject;
public class CustomAssertions {
public static <T> CustomSubject<T> assertThat(T target) {
return assertAbout(new CustomSubjectFactory<>()).that(target);
}
public static class CustomSubject<T> extends Subject<CustomSubject<T>, T> {
public CustomSubject(FailureMetadata metadata, T actual) {
super(metadata, actual);
}
public void isGreaterThan(int value) {
check().that(actual()).isGreaterThan(value);
}
}
public static class CustomSubjectFactory<T> implements Subject.Factory<CustomSubject<T>, T> {
@Override
public CustomSubject<T> createSubject(FailureMetadata metadata, T actual) {
return new CustomSubject<>(metadata, actual);
}
}
}
@Test
public void testExample() {
int number = 10;
CustomAssertions.assertThat(number).isGreaterThan(5);
}