Class HasFieldMatcher<R extends Record,​T>

java.lang.Object
org.hamcrest.BaseMatcher<T>
org.hamcrest.TypeSafeDiagnosingMatcher<R>
rocks.cleancode.hamcrest.record.HasFieldMatcher<R,​T>
Type Parameters:
R - Record type
T - Field type
All Implemented Interfaces:
Matcher<R>, SelfDescribing

public class HasFieldMatcher<R extends Record,​T> extends TypeSafeDiagnosingMatcher<R>
Matches a record field.
Since:
1.0.0
  • Method Details

    • hasField

      public static <R extends Record> Matcher<R> hasField(String fieldName)
      Create a matcher for not null field.
      Type Parameters:
      R - Record type
      Parameters:
      fieldName - Field name
      Returns:
      Not null field matcher
      Since:
      1.0.0
    • field

      public static <R extends Record,​ T> Matcher<R> field(String fieldName, Matcher<T> valueMatcher)
      Create a matcher for field value.
      Type Parameters:
      R - Record type
      T - Value type
      Parameters:
      fieldName - Field name
      valueMatcher - Value matcher
      Returns:
      Value matcher for field record
      Since:
      1.0.0
    • matchesSafely

      protected boolean matchesSafely(R record, Description mismatchDescription)
      Specified by:
      matchesSafely in class TypeSafeDiagnosingMatcher<R extends Record>
    • describeTo

      public void describeTo(Description description)