Class HasProperty<T>

All Implemented Interfaces:
Matcher<T>, SelfDescribing

public class HasProperty<T> extends TypeSafeMatcher<T>
A Matcher that checks that an object has a JavaBean property with the specified name. If an error occurs during introspection of the object then this is treated as a mismatch.
Author:
Iain McGinniss, Nat Pryce, Steve Freeman
  • Constructor Details

    • HasProperty

      public HasProperty(String propertyName)
  • Method Details

    • matchesSafely

      public boolean matchesSafely(T obj)
      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.
    • hasProperty

      public static <T> Matcher<T> hasProperty(String propertyName)
      Creates a matcher that matches when the examined object has a JavaBean property with the specified name. For example:
      assertThat(myBean, hasProperty("foo"))
      Parameters:
      propertyName - the name of the JavaBean property that examined beans should possess