Class IsEqual<T>

java.lang.Object
org.hamcrest.BaseMatcher<T>
org.hamcrest.core.IsEqual<T>
Type Parameters:
T - the matched value type
All Implemented Interfaces:
Matcher<T>, SelfDescribing

public class IsEqual<T> extends BaseMatcher<T>
Is the value equal to another value, as tested by the Object.equals(java.lang.Object) method.
  • Constructor Details

  • Method Details

    • matches

      public boolean matches(Object actualValue)
      Description copied from interface: Matcher
      Evaluates the matcher for argument item. This method matches against Object, instead of the generic type T. This is because the caller of the Matcher does not know at runtime what the type is (because of type erasure with Java generics). It is down to the implementations to check the correct type.
      Parameters:
      actualValue - the object against which the matcher is evaluated.
      Returns:
      true if item matches, otherwise false.
      See Also:
    • 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.
    • equalTo

      public static <T> Matcher<T> equalTo(T operand)
      Creates a matcher that matches when the examined object is logically equal to the specified operand, as determined by calling the Object.equals(java.lang.Object) method on the examined object.

      If the specified operand is null then the created matcher will only match if the examined object's equals method returns true when passed a null (which would be a violation of the equals contract), unless the examined object itself is null, in which case the matcher will return a positive match.

      The created matcher provides a special behaviour when examining Arrays, whereby it will match if both the operand and the examined object are arrays of the same length and contain items that are equal to each other (according to the above rules) in the same indexes.

      For example:
       assertThat("foo", equalTo("foo"));
       assertThat(new String[] {"foo", "bar"}, equalTo(new String[] {"foo", "bar"}));
       
      Type Parameters:
      T - the matcher type.
      Parameters:
      operand - the value to check.
      Returns:
      The matcher.
    • equalToObject

      public static Matcher<Object> equalToObject(Object operand)
      Creates an IsEqual matcher that does not enforce the values being compared to be of the same static type.
      Parameters:
      operand - the value to check.
      Returns:
      The matcher.