org.hamcrest.collection
Class IsArray<T>

java.lang.Object
  extended by org.hamcrest.BaseMatcher<T>
      extended by org.hamcrest.TypeSafeMatcher<T[]>
          extended by org.hamcrest.collection.IsArray<T>
All Implemented Interfaces:
Matcher<T[]>, SelfDescribing

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

Matcher for array whose elements satisfy a sequence of matchers. The array size must equal the number of element matchers.


Constructor Summary
IsArray(Matcher<? super T>[] elementMatchers)
           
 
Method Summary
static
<T> IsArray<T>
array(Matcher<? super T>... elementMatchers)
          Creates a matcher that matches arrays whose elements are satisfied by the specified matchers.
 void describeMismatchSafely(T[] actual, Description mismatchDescription)
          Subclasses should override this.
 void describeTo(Description description)
          Generates a description of the object.
protected  java.lang.String descriptionEnd()
          Returns the string that ends the description.
protected  java.lang.String descriptionSeparator()
          Returns the string that separates the elements in the description.
protected  java.lang.String descriptionStart()
          Returns the string that starts the description.
 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

IsArray

public IsArray(Matcher<? super T>[] elementMatchers)
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[] actual,
                                   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.

descriptionStart

protected java.lang.String descriptionStart()
Returns the string that starts the description. Can be overridden in subclasses to customise how the matcher is described.


descriptionSeparator

protected java.lang.String descriptionSeparator()
Returns the string that separates the elements in the description. Can be overridden in subclasses to customise how the matcher is described.


descriptionEnd

protected java.lang.String descriptionEnd()
Returns the string that ends the description. Can be overridden in subclasses to customise how the matcher is described.


array

public static <T> IsArray<T> array(Matcher<? super T>... elementMatchers)
Creates a matcher that matches arrays whose elements are satisfied by the specified matchers. Matches positively only if the number of matchers specified is equal to the length of the examined array and each matcher[i] is satisfied by array[i].

For example:

assertThat(new Integer[]{1,2,3}, is(array(equalTo(1), equalTo(2), equalTo(3))))

Parameters:
elementMatchers - the matchers that the elements of examined arrays should satisfy