Class HasProperty<T>

Type Parameters:
T - The Matcher type.
All Implemented Interfaces:
Matcher<T>, SelfDescribing

public class HasProperty<T> extends TypeSafeMatcher<T>
A matcher that checks if 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.
  • Constructor Details

  • Method Details

    • matchesSafely

      public boolean matchesSafely(T obj)
      Description copied from class: TypeSafeMatcher
      Check if the item matches. The item will already have been checked for the specific type and will never be null. Subclasses should implement this.
      Specified by:
      matchesSafely in class TypeSafeMatcher<T>
      Parameters:
      obj - the type safe item to match against.
      Returns:
      boolean true/false depending if item matches matcher.
    • describeMismatchSafely

      public void describeMismatchSafely(T item, Description mismatchDescription)
      Description copied from class: TypeSafeMatcher
      Describe the mismatch. The item will already have been checked for the specific type and will never be null. Subclasses should override this.
      Overrides:
      describeMismatchSafely in class TypeSafeMatcher<T>
      Parameters:
      item - the type safe item to match against.
      mismatchDescription - the mismatch description.
    • 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.
    • 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"))
      Type Parameters:
      T - the matcher type.
      Parameters:
      propertyName - the name of the JavaBean property that examined beans should possess
      Returns:
      The matcher.