| package org.hamcrest.collection; |
| |
| |
| import org.hamcrest.AbstractMatcherTest; |
| import org.hamcrest.Matcher; |
| |
| import java.util.HashMap; |
| import java.util.Map; |
| import java.util.TreeMap; |
| |
| import static org.hamcrest.collection.IsMapContaining.hasValue; |
| |
| public class IsMapContainingValueTest extends AbstractMatcherTest { |
| |
| @Override |
| protected Matcher<?> createMatcher() { |
| return hasValue("foo"); |
| } |
| |
| public void testHasReadableDescription() { |
| assertDescription("map containing [ANYTHING->\"a\"]", hasValue("a")); |
| } |
| |
| public void testDoesNotMatchEmptyMap() { |
| Map<String,Integer> map = new HashMap<String,Integer>(); |
| assertMismatchDescription("map was []", hasValue(1), map); |
| } |
| |
| public void testMatchesSingletonMapContainingValue() { |
| Map<String,Integer> map = new HashMap<String,Integer>(); |
| map.put("a", 1); |
| |
| assertMatches("Singleton map", hasValue(1), map); |
| } |
| |
| public void testMatchesMapContainingValue() { |
| Map<String,Integer> map = new TreeMap<String,Integer>(); |
| map.put("a", 1); |
| map.put("b", 2); |
| map.put("c", 3); |
| |
| assertMatches("hasValue 1", hasValue(1), map); |
| assertMatches("hasValue 3", hasValue(3), map); |
| assertMismatchDescription("map was [<a=1>, <b=2>, <c=3>]", hasValue(4), map); |
| } |
| } |