I väntan på David Saff’s alternative assertThat(x).y() så nöjer jag mig med:

public class EmptyMatcher extends TypeSafeMatcher<Collection < ?>> {

    public boolean matchesSafely(Collection< ?> c) {
        return c.isEmpty();

    public void describeTo(Description desc) {

    public static lt;T> Matcher< ? super Collection> isEmpty() {
        return new EmptyMatcher();

som gör att man kan skriva trevlig enkelt läsbar kod, t ex:

public void filteringAnEmptyListReturnsAnEmptyList() {
    List anEmptyList = new ArrayList();
    List result = testee.filter(emptyList());
    assertThat(result, isEmpty());
    // men helst: assertThat(result).isEmpty();

One thought on “assertThat(Hamcrest).looksNice();”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.