1package org.hamcrest.collection; 2 3import org.hamcrest.AbstractMatcherTest; 4import org.hamcrest.Matcher; 5import org.hamcrest.StringDescription; 6 7import java.util.Arrays; 8import java.util.Collection; 9 10public class IsInTest extends AbstractMatcherTest { 11 String[] elements = {"a", "b", "c"}; 12 13 @Override 14 protected Matcher<?> createMatcher() { 15 return new IsIn<String>(elements); 16 } 17 18 public void testReturnsTrueIfArgumentIsInCollection() { 19 Collection<String> collection = Arrays.asList(elements); 20 Matcher<String> isIn = new IsIn<String>(collection); 21 22 assertMatches("a", isIn, "a"); 23 assertMatches("b", isIn, "b"); 24 assertMatches("c", isIn, "c"); 25 assertDoesNotMatch("d", isIn, "d"); 26 } 27 28 public void testReturnsTrueIfArgumentIsInArray() { 29 Matcher<String> isIn = new IsIn<String>(elements); 30 31 assertMatches("a", isIn, "a"); 32 assertMatches("b", isIn, "b"); 33 assertMatches("c", isIn, "c"); 34 assertDoesNotMatch("d", isIn, "d"); 35 } 36 37 public void testHasReadableDescription() { 38 Matcher<String> isIn = new IsIn<String>(elements); 39 40 assertEquals("description", 41 "one of {\"a\", \"b\", \"c\"}", 42 StringDescription.toString(isIn)); 43 } 44} 45