1package org.hamcrest.core; 2 3import org.hamcrest.Matcher; 4import org.junit.Test; 5 6import java.util.ArrayList; 7 8import static java.util.Arrays.asList; 9import static org.hamcrest.AbstractMatcherTest.*; 10import static org.hamcrest.core.StringContains.containsString; 11 12public final class EveryTest { 13 14 private final Matcher<Iterable<? extends String>> matcher = Every.everyItem(containsString("a")); 15 16 @Test public void 17 copesWithNullsAndUnknownTypes() { 18 assertNullSafe(matcher); 19 assertUnknownTypeSafe(matcher); 20 } 21 22 @Test public void 23 matchesOnlyWhenEveryItemMatches() { 24 assertMatches(matcher, asList("AaA", "BaB", "CaC")); 25 assertDoesNotMatch(matcher, asList("AaA", "BXB", "CaC")); 26 } 27 28 @Test public void 29 matchesEmptyLists() { 30 assertMatches("didn't match empty list", matcher, new ArrayList<String>()); 31 } 32 33 @Test public void 34 describesItself() { 35 assertDescription("every item is a string containing \"a\"", matcher); 36 } 37 38 @Test public void 39 describesAMismatch() { 40 assertMismatchDescription("an item was \"BXB\"", matcher, asList("BXB")); 41 } 42} 43 44