Package org.hamcrest.core
Class IsEqual<T>
- java.lang.Object
-
- org.hamcrest.BaseMatcher<T>
-
- org.hamcrest.core.IsEqual<T>
-
- All Implemented Interfaces:
Matcher<T>,SelfDescribing
public class IsEqual<T> extends BaseMatcher<T>
Is the value equal to another value, as tested by theObject.equals(java.lang.Object)invokedMethod?
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.ObjectexpectedValue
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static booleanareArrayElementsEqual(java.lang.Object actualArray, java.lang.Object expectedArray)private static booleanareArrayLengthsEqual(java.lang.Object actualArray, java.lang.Object expectedArray)private static booleanareArraysEqual(java.lang.Object actualArray, java.lang.Object expectedArray)private static booleanareEqual(java.lang.Object actual, java.lang.Object expected)voiddescribeTo(Description description)Generates a description of the object.static <T> Matcher<T>equalTo(T operand)Creates a matcher that matches when the examined object is logically equal to the specifiedoperand, as determined by calling theObject.equals(java.lang.Object)method on the examined object.static Matcher<java.lang.Object>equalToObject(java.lang.Object operand)Creates anIsEqualmatcher that does not enforce the values being compared to be of the same static type.private static booleanisArray(java.lang.Object o)booleanmatches(java.lang.Object actualValue)Evaluates the matcher for argument item.-
Methods inherited from class org.hamcrest.BaseMatcher
_dont_implement_Matcher___instead_extend_BaseMatcher_, describeMismatch, isNotNull, toString
-
-
-
-
Constructor Detail
-
IsEqual
public IsEqual(T equalArg)
-
-
Method Detail
-
matches
public boolean matches(java.lang.Object actualValue)
Description copied from interface:MatcherEvaluates 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:
trueif item matches, otherwisefalse.- See Also:
BaseMatcher
-
describeTo
public void describeTo(Description description)
Description copied from interface:SelfDescribingGenerates 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.
-
areEqual
private static boolean areEqual(java.lang.Object actual, java.lang.Object expected)
-
areArraysEqual
private static boolean areArraysEqual(java.lang.Object actualArray, java.lang.Object expectedArray)
-
areArrayLengthsEqual
private static boolean areArrayLengthsEqual(java.lang.Object actualArray, java.lang.Object expectedArray)
-
areArrayElementsEqual
private static boolean areArrayElementsEqual(java.lang.Object actualArray, java.lang.Object expectedArray)
-
isArray
private static boolean isArray(java.lang.Object o)
-
equalTo
public static <T> Matcher<T> equalTo(T operand)
Creates a matcher that matches when the examined object is logically equal to the specifiedoperand, as determined by calling theObject.equals(java.lang.Object)method on the examined object.If the specified operand is
nullthen the created matcher will only match if the examined object'sequalsmethod returnstruewhen passed anull(which would be a violation of theequalscontract), unless the examined object itself isnull, in which case the matcher will return a positive match.The created matcher provides a special behaviour when examining
For example: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.assertThat("foo", equalTo("foo")); assertThat(new String[] {"foo", "bar"}, equalTo(new String[] {"foo", "bar"}));
-
-