IsArrayContaining (JavaHamcrest 2.0.0.0 API)
Date: 2015-01-18

org.hamcrest.collection

## Class IsArrayContaining<T>

- java.lang.Object
- - org.hamcrest.BaseMatcher<T>
  - - org.hamcrest.TypeSafeMatcher<T[]>
    - - org.hamcrest.collection.IsArrayContaining<T>

- All Implemented Interfaces:
    Matcher<T[]>, SelfDescribing

      public class IsArrayContaining<T>
      extends TypeSafeMatcher<T[]>

  Matches if an array contains an item satisfying a nested matcher.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `IsArrayContaining(Matcher<? super T> elementMatcher)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `describeMismatchSafely(T[] item, Description mismatchDescription)` Subclasses should override this.
    `void` | `describeTo(Description description)` Generates a description of the object.
    `static <T> Matcher<T[]>` | `hasItemInArray(Matcher<? super T> elementMatcher)` Creates a matcher for arrays that matches when the examined array contains at least one item that is matched by the specified `elementMatcher`.
    `static <T> Matcher<T[]>` | `hasItemInArray(T element)` A shortcut to the frequently used `hasItemInArray(equalTo(x))`.
    `boolean` | `matchesSafely(T[] array)` Subclasses should implement this.

    - ### Methods inherited from class org.hamcrest.TypeSafeMatcher

      `describeMismatch, matches`

    - ### Methods inherited from class org.hamcrest.BaseMatcher

      `_dont_implement_Matcher___instead_extend_BaseMatcher_, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### IsArrayContaining

          public IsArrayContaining(Matcher<? super T> elementMatcher)

  - ### Method Detail

    - #### matchesSafely

          public boolean matchesSafely(T[] array)

      Description copied from class: `TypeSafeMatcher`
      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 `TypeSafeMatcher<T[]>`

    - #### describeMismatchSafely

          public void describeMismatchSafely(T[] item,
                                             Description mismatchDescription)

      Description copied from class: `TypeSafeMatcher`
      Subclasses should override this. The item will already have been checked for the specific type and will never be null.
      Overrides:
        `describeMismatchSafely` in class `TypeSafeMatcher<T[]>`

    - #### describeTo

          public void describeTo(Description description)

      Description copied from interface: `SelfDescribing`
      Generates a description of the object. The description may be part of a 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.

    - #### hasItemInArray

          public static <T> Matcher<T[]> hasItemInArray(Matcher<? super T> elementMatcher)

      Creates a matcher for arrays that matches when the examined array contains at least one item that is matched by the specified `elementMatcher`. Whilst matching, the traversal of the examined array will stop as soon as a matching element is found. For example:

          assertThat(new String[] {"foo", "bar"}, hasItemInArray(startsWith("ba")))

      Parameters:
        `elementMatcher` - the matcher to apply to elements in examined arrays

    - #### hasItemInArray

          public static <T> Matcher<T[]> hasItemInArray(T element)

      A shortcut to the frequently used `hasItemInArray(equalTo(x))`. For example:

          assertThat(hasItemInArray(x))

      instead of:

          assertThat(hasItemInArray(equalTo(x)))

      Parameters:
        `element` - the element that should be present in examined arrays