Package org.hamcrest.core
Class IsIterableContaining<T>
java.lang.Object
org.hamcrest.BaseMatcher<Iterable<? super T>>
org.hamcrest.TypeSafeDiagnosingMatcher<Iterable<? super T>>
org.hamcrest.core.IsIterableContaining<T>
- Type Parameters:
T- the type of items in the iterable
- All Implemented Interfaces:
Matcher<Iterable<? super T>>,SelfDescribing
Tests if an iterable contains matching elements.
-
Constructor Summary
ConstructorsConstructorDescriptionIsIterableContaining(Matcher<? super T> elementMatcher) Constructor, best called from one of the static factory methods. -
Method Summary
Modifier and TypeMethodDescriptionvoiddescribeTo(Description description) Generates a description of the object.hasItem(T item) hasItems(T... items) protected booleanmatchesSafely(Iterable<? super T> collection, Description mismatchDescription) Subclasses should implement this.Methods inherited from class org.hamcrest.TypeSafeDiagnosingMatcher
describeMismatch, matchesMethods inherited from class org.hamcrest.BaseMatcher
_dont_implement_Matcher___instead_extend_BaseMatcher_, isNotNull, toString
-
Constructor Details
-
IsIterableContaining
Constructor, best called from one of the static factory methods.- Parameters:
elementMatcher- matches the expected element- See Also:
-
-
Method Details
-
matchesSafely
Description copied from class:TypeSafeDiagnosingMatcherSubclasses should implement this. The item will already have been checked for the specific type and will never be null.- Specified by:
matchesSafelyin classTypeSafeDiagnosingMatcher<Iterable<? super T>>- Parameters:
collection- the item.mismatchDescription- the mismatch description.- Returns:
- boolean true/false depending if item matches matcher.
-
describeTo
Description copied from interface:SelfDescribingGenerates a description of the object. The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.- Parameters:
description- The description to be built or appended to.
-
hasItem
Creates a matcher forIterables that only matches when a single pass over the examinedIterableyields at least one item that is matched by the specifieditemMatcher. Whilst matching, the traversal of the examinedIterablewill stop as soon as a matching item is found. For example:assertThat(Arrays.asList("foo", "bar"), hasItem(startsWith("ba")))- Type Parameters:
T- the matcher type.- Parameters:
itemMatcher- the matcher to apply to items provided by the examinedIterable- Returns:
- The matcher.
-
hasItem
Creates a matcher forIterables that only matches when a single pass over the examinedIterableyields at least one item that is equal to the specifieditem. Whilst matching, the traversal of the examinedIterablewill stop as soon as a matching item is found. For example:assertThat(Arrays.asList("foo", "bar"), hasItem("bar"))- Type Parameters:
T- the matcher type.- Parameters:
item- the item to compare against the items provided by the examinedIterable- Returns:
- The matcher.
-
hasItems
Creates a matcher forIterables that matches when consecutive passes over the examinedIterableyield at least one item that is matched by the corresponding matcher from the specifieditemMatchers. Whilst matching, each traversal of the examinedIterablewill stop as soon as a matching item is found. For example:assertThat(Arrays.asList("foo", "bar", "baz"), hasItems(endsWith("z"), endsWith("o")))- Type Parameters:
T- the matcher type.- Parameters:
itemMatchers- the matchers to apply to items provided by the examinedIterable- Returns:
- The matcher.
-
hasItems
Creates a matcher forIterables that matches when consecutive passes over the examinedIterableyield at least one item that is equal to the corresponding item from the specifieditems. Whilst matching, each traversal of the examinedIterablewill stop as soon as a matching item is found. For example:assertThat(Arrays.asList("foo", "bar", "baz"), hasItems("baz", "foo"))- Type Parameters:
T- the matcher type.- Parameters:
items- the items to compare against the items provided by the examinedIterable- Returns:
- The matcher.
-