| package org.hamcrest.collection; |
| |
| import org.hamcrest.AbstractMatcherTest; |
| import org.hamcrest.Matcher; |
| |
| import java.util.ArrayList; |
| import java.util.Collection; |
| |
| import static java.util.Arrays.asList; |
| import static org.hamcrest.collection.IsEmptyIterable.emptyIterable; |
| |
| public class IsEmptyIterableTest extends AbstractMatcherTest { |
| |
| @Override |
| protected Matcher<Iterable<?>> createMatcher() { |
| return emptyIterable(); |
| } |
| |
| public void testMatchesAnEmptyIterable() { |
| assertMatches("empty iterable", createMatcher(), emptyCollection()); |
| } |
| |
| public void testDoesNotMatchAnIterableWithItems() { |
| assertDoesNotMatch("iterable with an item", createMatcher(), collectionOfValues()); |
| } |
| |
| public void testHasAReadableDescription() { |
| assertDescription("an empty iterable", createMatcher()); |
| } |
| |
| public void testCompiles() { |
| needs(IsEmptyIterable.emptyIterableOf(String.class)); |
| } |
| |
| private void needs(@SuppressWarnings("unused") Matcher<Iterable<String>> bar) { } |
| |
| private static Collection<String> collectionOfValues() { |
| return new ArrayList<String>(asList("one", "three")); |
| } |
| |
| private static Collection<Integer> emptyCollection() { |
| return new ArrayList<Integer>(); |
| } |
| } |