org.hamcrest.object
Class IsCompatibleType<T>

java.lang.Object
  extended by org.hamcrest.BaseMatcher<T>
      extended by org.hamcrest.TypeSafeMatcher<java.lang.Class<?>>
          extended by org.hamcrest.object.IsCompatibleType<T>
All Implemented Interfaces:
Matcher<java.lang.Class<?>>, SelfDescribing

public class IsCompatibleType<T>
extends TypeSafeMatcher<java.lang.Class<?>>


Constructor Summary
IsCompatibleType(java.lang.Class<T> type)
           
 
Method Summary
 void describeMismatchSafely(java.lang.Class<?> cls, Description mismatchDescription)
          Subclasses should override this.
 void describeTo(Description description)
          Generates a description of the object.
 boolean matchesSafely(java.lang.Class<?> cls)
          Subclasses should implement this.
static
<T> Matcher<java.lang.Class<?>>
typeCompatibleWith(java.lang.Class<T> baseType)
          Creates a matcher of Class that matches when the specified baseType is assignable from the examined class.
 
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

IsCompatibleType

public IsCompatibleType(java.lang.Class<T> type)
Method Detail

matchesSafely

public boolean matchesSafely(java.lang.Class<?> cls)
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<java.lang.Class<?>>

describeMismatchSafely

public void describeMismatchSafely(java.lang.Class<?> cls,
                                   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<java.lang.Class<?>>

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.

typeCompatibleWith

public static <T> Matcher<java.lang.Class<?>> typeCompatibleWith(java.lang.Class<T> baseType)
Creates a matcher of Class that matches when the specified baseType is assignable from the examined class.

For example:

assertThat(Integer.class, typeCompatibleWith(Number.class))

Parameters:
baseType - the base class to examine classes against