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 Objectactualprotected org.assertj.core.internal.ComparisonStrategycomparisonStrategy(package private) ConstructorInvokerconstructorInvoker(package private) DescriptionFormatterdescriptionFormatterprotected Objectexpectedprivate static StringEXPECTED_BUT_WAS_MESSAGEprivate static StringEXPECTED_BUT_WAS_MESSAGE_USING_COMPARATORprotected MessageFormattermessageFormatterprivate static Class<?>[]MSG_ARG_TYPESprivate static Class<?>[]MSG_ARG_TYPES_FOR_ASSERTION_FAILED_ERRORprivate Representationrepresentation
-
Constructor Summary
Constructors Modifier Constructor Description protectedShouldBeEqual(Object actual, Object expected, org.assertj.core.internal.ComparisonStrategy comparisonStrategy, Representation representation)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleanactualAndExpectedHaveSameStringRepresentation()private AssertionErrorassertionFailedError(String message, Representation representation)private AssertionErrorcomparisonFailure(Description description)protected StringdefaultDetailedErrorMessage(Description description, Representation representation)Builds and returns an error message from description usingdetailedExpected()anddetailedActual()detailed representation.protected StringdetailedActual()protected StringdetailedExpected()booleanequals(Object o)private StringerrorMessageForMultilineValues(Description description, Representation representation, String actualRepresentation, String expectedRepresentation)inthashCode()private booleanhasMultilineValue(String actualRepresentation, String expectedRepresentation)protected Stringindent(String valueRepresentation)private StringmessageForMultilineValues(String actualRepresentation, String expectedRepresentation, Representation representation)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, org.assertj.core.internal.ComparisonStrategy comparisonStrategy, Representation representation)Creates a new.ShouldBeEqualstatic AssertionErrorFactoryshouldBeEqual(Object actual, Object expected, Representation representation)Creates a new.ShouldBeEqualprotected 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
protected final MessageFormatter messageFormatter
-
comparisonStrategy
protected final org.assertj.core.internal.ComparisonStrategy comparisonStrategy
-
representation
private Representation representation
-
constructorInvoker
ConstructorInvoker constructorInvoker
-
descriptionFormatter
DescriptionFormatter descriptionFormatter
-
-
Constructor Detail
-
ShouldBeEqual
protected ShouldBeEqual(Object actual, Object expected, org.assertj.core.internal.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, org.assertj.core.internal.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
protected boolean actualAndExpectedHaveSameStringRepresentation()
-
smartErrorMessage
protected 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.
-
errorMessageForMultilineValues
private String errorMessageForMultilineValues(Description description, Representation representation, String actualRepresentation, String expectedRepresentation)
-
hasMultilineValue
private boolean hasMultilineValue(String actualRepresentation, String expectedRepresentation)
-
messageForMultilineValues
private String messageForMultilineValues(String actualRepresentation, String expectedRepresentation, Representation representation)
-
defaultDetailedErrorMessage
protected 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, Representation representation)
-
comparisonFailure
private AssertionError comparisonFailure(Description description)
-
newComparisonFailure
private AssertionError newComparisonFailure(String description) throws Exception
- Throws:
Exception
-
detailedActual
protected String detailedActual()
-
detailedExpected
protected String detailedExpected()
-
-