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

public class IsIterableContaining<T> extends TypeSafeDiagnosingMatcher<Iterable<? super T>>
Tests if an iterable contains matching elements.
  • Constructor Details

  • Method Details

    • matchesSafely

      protected boolean matchesSafely(Iterable<? super T> collection, Description mismatchDescription)
      Description copied from class: TypeSafeDiagnosingMatcher
      Subclasses should implement this. The item will already have been checked for the specific type and will never be null.
      Specified by:
      matchesSafely in class TypeSafeDiagnosingMatcher<Iterable<? super T>>
      Parameters:
      collection - the item.
      mismatchDescription - the mismatch description.
      Returns:
      boolean true/false depending if item matches matcher.
    • describeTo

      public void describeTo(Description description)
      Description copied from interface: SelfDescribing
      Generates 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

      public static <T> Matcher<Iterable<? super T>> hasItem(Matcher<? super T> itemMatcher)
      Creates a matcher for Iterables that only matches when a single pass over the examined Iterable yields at least one item that is matched by the specified itemMatcher. Whilst matching, the traversal of the examined Iterable will 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 examined Iterable
      Returns:
      The matcher.
    • hasItem

      public static <T> Matcher<Iterable<? super T>> hasItem(T item)
      Creates a matcher for Iterables that only matches when a single pass over the examined Iterable yields at least one item that is equal to the specified item. Whilst matching, the traversal of the examined Iterable will 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 examined Iterable
      Returns:
      The matcher.
    • hasItems

      @SafeVarargs public static <T> Matcher<Iterable<T>> hasItems(Matcher<? super T>... itemMatchers)
      Creates a matcher for Iterables that matches when consecutive passes over the examined Iterable yield at least one item that is matched by the corresponding matcher from the specified itemMatchers. Whilst matching, each traversal of the examined Iterable will 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 examined Iterable
      Returns:
      The matcher.
    • hasItems

      @SafeVarargs public static <T> Matcher<Iterable<T>> hasItems(T... items)
      Creates a matcher for Iterables that matches when consecutive passes over the examined Iterable yield at least one item that is equal to the corresponding item from the specified items. Whilst matching, each traversal of the examined Iterable will 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 examined Iterable
      Returns:
      The matcher.