Package org.hamcrest

Class CustomTypeSafeMatcher<T>

java.lang.Object
org.hamcrest.BaseMatcher<T>
org.hamcrest.TypeSafeMatcher<T>
org.hamcrest.CustomTypeSafeMatcher<T>
Type Parameters:
T - The type of object being matched
All Implemented Interfaces:
Matcher<T>, SelfDescribing

public abstract class CustomTypeSafeMatcher<T> extends TypeSafeMatcher<T>
Utility class for writing one off matchers (with type safety and null checks). For example:
 Matcher<String> aNonEmptyString = new CustomTypeSafeMatcher<String>("a non empty string") {
   public boolean matchesSafely(String string) {
     return !string.isEmpty();
   }
   public void describeMismatchSafely(String string, Description mismatchDescription) {
     mismatchDescription.appendText("was empty");
   }
 };
 
This is a variant of CustomMatcher that first type checks the argument being matched. By the time TypeSafeMatcher.matchesSafely(T) is called the argument is guaranteed to be non-null and of the correct type.
  • Constructor Details

    • CustomTypeSafeMatcher

      public CustomTypeSafeMatcher(String description)
      Constructor
      Parameters:
      description - the description of this matcher
  • Method Details

    • describeTo

      public final 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.