Package org.assertj.core.error
Class ShouldBeEqual
- java.lang.Object
-
- org.assertj.core.error.ShouldBeEqual
-
- All Implemented Interfaces:
AssertionErrorFactory
public class ShouldBeEqual extends Object implements AssertionErrorFactory
Creates anindicating that an assertion that verifies that two objects are equal failed.AssertionErrorThe built
AssertionError's message differentiatesactualandexpecteddescription if their string representation are the same (e.g. 42 float and 42 double). It also mentions the comparator in case of a custom comparator is used (instead of equals method).- Author:
- Alex Ruiz, Yvonne Wang, Joel Costigliola
-
-
Field Summary
Fields Modifier and Type Field Description protected Objectactualprivate ComparisonStrategycomparisonStrategy(package private) ConstructorInvokerconstructorInvoker(package private) DescriptionFormatterdescriptionFormatterprotected Objectexpectedprivate static StringEXPECTED_BUT_WAS_MESSAGEprivate static StringEXPECTED_BUT_WAS_MESSAGE_USING_COMPARATOR(package private) MessageFormattermessageFormatterprivate static Class<?>[]MSG_ARG_TYPESprivate static Class<?>[]MSG_ARG_TYPES_FOR_ASSERTION_FAILED_ERRORprivate Representationrepresentation
-
Constructor Summary
Constructors Constructor Description ShouldBeEqual(Object actual, Object expected, ComparisonStrategy comparisonStrategy, Representation representation)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private booleanactualAndExpectedHaveSameStringRepresentation()private AssertionErrorassertionFailedError(String message)private AssertionErrorcomparisonFailure(Description description)private StringdefaultDetailedErrorMessage(Description description, Representation representation)Builds and returns an error message from description usingdetailedExpected()anddetailedActual()detailed representation.private StringdetailedActual()private StringdetailedExpected()booleanequals(Object o)inthashCode()private Object[]msgArgs(String description)AssertionErrornewAssertionError(Description description, Representation representation)Creates anindicating that an assertion that verifies that two objects are equal failed.AssertionError
Themessage is built so that it differentiatesAssertionErroractualandexpecteddescription in case their string representation are the same (like 42 float and 42 double).private AssertionErrornewComparisonFailure(String description)static AssertionErrorFactoryshouldBeEqual(Object actual, Object expected, ComparisonStrategy comparisonStrategy, Representation representation)Creates a new.ShouldBeEqualstatic AssertionErrorFactoryshouldBeEqual(Object actual, Object expected, Representation representation)Creates a new.ShouldBeEqualprivate StringsmartErrorMessage(Description description, Representation representation)Builds and returns an error message from the given description usingexpectedandactualbasic representation if their description differ otherwise usedefaultDetailedErrorMessage(Description, Representation)to represent them differently.
-
-
-
Field Detail
-
EXPECTED_BUT_WAS_MESSAGE
private static final String EXPECTED_BUT_WAS_MESSAGE
- See Also:
- Constant Field Values
-
EXPECTED_BUT_WAS_MESSAGE_USING_COMPARATOR
private static final String EXPECTED_BUT_WAS_MESSAGE_USING_COMPARATOR
- See Also:
- Constant Field Values
-
MSG_ARG_TYPES
private static final Class<?>[] MSG_ARG_TYPES
-
MSG_ARG_TYPES_FOR_ASSERTION_FAILED_ERROR
private static final Class<?>[] MSG_ARG_TYPES_FOR_ASSERTION_FAILED_ERROR
-
actual
protected final Object actual
-
expected
protected final Object expected
-
messageFormatter
final MessageFormatter messageFormatter
-
comparisonStrategy
private final ComparisonStrategy comparisonStrategy
-
representation
private Representation representation
-
constructorInvoker
ConstructorInvoker constructorInvoker
-
descriptionFormatter
DescriptionFormatter descriptionFormatter
-
-
Constructor Detail
-
ShouldBeEqual
ShouldBeEqual(Object actual, Object expected, ComparisonStrategy comparisonStrategy, Representation representation)
-
-
Method Detail
-
shouldBeEqual
public static AssertionErrorFactory shouldBeEqual(Object actual, Object expected, Representation representation)
Creates a new.ShouldBeEqual- Parameters:
actual- the actual value in the failed assertion.expected- the expected value in the failed assertion.representation- theRepresentationused to format values.- Returns:
- the created
AssertionErrorFactory.
-
shouldBeEqual
public static AssertionErrorFactory shouldBeEqual(Object actual, Object expected, ComparisonStrategy comparisonStrategy, Representation representation)
Creates a new.ShouldBeEqual- Parameters:
actual- the actual value in the failed assertion.expected- the expected value in the failed assertion.comparisonStrategy- theComparisonStrategyused to compare actual with expected.representation- theRepresentationused to format values.- Returns:
- the created
AssertionErrorFactory.
-
newAssertionError
public AssertionError newAssertionError(Description description, Representation representation)
Creates anindicating that an assertion that verifies that two objects are equal failed.AssertionError
Themessage is built so that it differentiatesAssertionErroractualandexpecteddescription in case their string representation are the same (like 42 float and 42 double).If JUnit 4 is in the classpath and the description is standard (no comparator was used and
actualandexpectedstring representation were different), this method will instead create a org.junit.ComparisonFailure that highlights the difference(s) between the expected and actual objects.If opentest4j is on the classpath then
org.opentest4j.AssertionFailedErrorwould be used.AssertionErrorstack trace won't show AssertJ related elements ifFailuresis configured to filter them (seeFailures.setRemoveAssertJRelatedElementsFromStackTrace(boolean)).- Specified by:
newAssertionErrorin interfaceAssertionErrorFactory- Parameters:
description- the description of the failed assertion.representation- theRepresentationused to format values.- Returns:
- the created
AssertionError.
-
actualAndExpectedHaveSameStringRepresentation
private boolean actualAndExpectedHaveSameStringRepresentation()
-
smartErrorMessage
private String smartErrorMessage(Description description, Representation representation)
Builds and returns an error message from the given description usingexpectedandactualbasic representation if their description differ otherwise usedefaultDetailedErrorMessage(Description, Representation)to represent them differently.- Parameters:
description- theDescriptionused to build the returned error messagerepresentation- theRepresentationused to build String representation of object- Returns:
- the error message from description using
expectedandactual"smart" representation.
-
defaultDetailedErrorMessage
private String defaultDetailedErrorMessage(Description description, Representation representation)
Builds and returns an error message from description usingdetailedExpected()anddetailedActual()detailed representation.- Parameters:
description- theDescriptionused to build the returned error messagerepresentation- theRepresentationused to build String representation of object- Returns:
- the error message from description using
detailedExpected()anddetailedActual()detailed representation.
-
assertionFailedError
private AssertionError assertionFailedError(String message)
-
comparisonFailure
private AssertionError comparisonFailure(Description description)
-
newComparisonFailure
private AssertionError newComparisonFailure(String description) throws Exception
- Throws:
Exception
-
detailedActual
private String detailedActual()
-
detailedExpected
private String detailedExpected()
-
-