org.junit.matchers
Class JUnitMatchers
java.lang.Object
org.junit.matchers.JUnitMatchers
public class JUnitMatchers
- extends Object
Convenience import class: these are useful matchers for use with the assertThat method, but they are
not currently included in the basic CoreMatchers class from hamcrest.
JUnitMatchers
public JUnitMatchers()
hasItem
public static <T> Matcher<Iterable<T>> hasItem(T element)
- Parameters:
element
-
- Returns:
- A matcher matching any collection containing element
hasItem
public static <T> Matcher<Iterable<T>> hasItem(Matcher<? extends T> elementMatcher)
- Parameters:
elementMatcher
-
- Returns:
- A matcher matching any collection containing an element matching elementMatcher
hasItems
public static <T> Matcher<Iterable<T>> hasItems(T... elements)
- Parameters:
elements
-
- Returns:
- A matcher matching any collection containing every element in elements
hasItems
public static <T> Matcher<Iterable<T>> hasItems(Matcher<? extends T>... elementMatchers)
- Parameters:
elementMatchers
-
- Returns:
- A matcher matching any collection containing at least one element that matches
each matcher in elementMatcher (this may be one element matching all matchers,
or different elements matching each matcher)
everyItem
public static <T> Matcher<Iterable<T>> everyItem(Matcher<T> elementMatcher)
- Parameters:
elementMatcher
-
- Returns:
- A matcher matching any collection in which every element matches elementMatcher
containsString
public static Matcher<String> containsString(String substring)
- Parameters:
substring
-
- Returns:
- a matcher matching any string that contains substring
both
public static <T> CombinableMatcher<T> both(Matcher<T> matcher)
- This is useful for fluently combining matchers that must both pass. For example:
assertThat(string, both(containsString("a")).and(containsString("b")));
either
public static <T> CombinableMatcher<T> either(Matcher<T> matcher)
- This is useful for fluently combining matchers where either may pass, for example:
assertThat(string, both(containsString("a")).and(containsString("b")));