package org.junit.internal.matchers;
import static org.hamcrest.CoreMatchers.not;
import static org.junit.internal.matchers.IsCollectionContaining.hasItem;
import org.hamcrest.BaseMatcher;
import org.hamcrest.Description;
import org.hamcrest.Matcher;
public class Each {
public static <T> Matcher<Iterable<T>> each(final Matcher<T> individual) {
final Matcher<Iterable<T>> allItemsAre = not(hasItem(not(individual)));
return new BaseMatcher<Iterable<T>>() {
public boolean matches(Object item) {
return allItemsAre.matches(item);
}
public void describeTo(Description description) {
description.appendText("each ");
individual.describeTo(description);
}
};
}
}
|