Package org.assertj.core.error
Class ShouldBeEqual
java.lang.Object
org.assertj.core.error.ShouldBeEqual
- All Implemented Interfaces:
AssertionErrorFactory
Creates an
AssertionError
indicating that an assertion that verifies that two objects are equal
failed.
The built AssertionError
's message differentiates actual
and expected
description 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).
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Object
protected final ComparisonStrategy
(package private) ConstructorInvoker
(package private) DescriptionFormatter
protected final Object
private static final String
private static final String
protected final MessageFormatter
private static final Class<?>[]
private static final Class<?>[]
private Representation
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
ShouldBeEqual
(Object actual, Object expected, ComparisonStrategy comparisonStrategy, Representation representation) -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
private AssertionError
assertionFailedError
(String message, Representation representation) private AssertionError
comparisonFailure
(Description description) protected String
defaultDetailedErrorMessage
(Description description, Representation representation) Builds and returns an error message from description usingdetailedExpected()
anddetailedActual()
detailed representation.protected String
protected String
boolean
private String
errorMessageForMultilineValues
(Description description, Representation representation, String actualRepresentation, String expectedRepresentation) int
hashCode()
private boolean
hasMultilineValue
(String actualRepresentation, String expectedRepresentation) protected String
private String
messageForMultilineValues
(String actualRepresentation, String expectedRepresentation, Representation representation) newAssertionError
(Description description, Representation representation) Creates an
indicating that an assertion that verifies that two objects are equal failed.AssertionError
The
message is built so that it differentiatesAssertionError
actual
andexpected
description in case their string representation are the same (like 42 float and 42 double).private AssertionError
newComparisonFailure
(String description) static AssertionErrorFactory
shouldBeEqual
(Object actual, Object expected, ComparisonStrategy comparisonStrategy, Representation representation) Creates a new
.ShouldBeEqual
static AssertionErrorFactory
shouldBeEqual
(Object actual, Object expected, Representation representation) Creates a new
.ShouldBeEqual
protected String
smartErrorMessage
(Description description, Representation representation) Builds and returns an error message from the given description usingexpected
andactual
basic representation if their description differ otherwise usedefaultDetailedErrorMessage(Description, Representation)
to represent them differently.
-
Field Details
-
EXPECTED_BUT_WAS_MESSAGE
- See Also:
-
EXPECTED_BUT_WAS_MESSAGE_USING_COMPARATOR
- See Also:
-
MSG_ARG_TYPES
-
MSG_ARG_TYPES_FOR_ASSERTION_FAILED_ERROR
-
actual
-
expected
-
messageFormatter
-
comparisonStrategy
-
representation
-
constructorInvoker
ConstructorInvoker constructorInvoker -
descriptionFormatter
DescriptionFormatter descriptionFormatter
-
-
Constructor Details
-
ShouldBeEqual
protected ShouldBeEqual(Object actual, Object expected, ComparisonStrategy comparisonStrategy, Representation representation)
-
-
Method Details
-
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
- theRepresentation
used 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
- theComparisonStrategy
used to compare actual with expected.representation
- theRepresentation
used to format values.- Returns:
- the created
AssertionErrorFactory
.
-
newAssertionError
Creates an
indicating that an assertion that verifies that two objects are equal failed.AssertionError
The
message is built so that it differentiatesAssertionError
actual
andexpected
description 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
actual
andexpected
string 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.AssertionFailedError
would be used.AssertionError
stack trace won't show AssertJ related elements ifFailures
is configured to filter them (seeFailures.setRemoveAssertJRelatedElementsFromStackTrace(boolean)
).- Specified by:
newAssertionError
in interfaceAssertionErrorFactory
- Parameters:
description
- the description of the failed assertion.representation
- theRepresentation
used to format values.- Returns:
- the created
AssertionError
.
-
actualAndExpectedHaveSameStringRepresentation
protected boolean actualAndExpectedHaveSameStringRepresentation() -
smartErrorMessage
Builds and returns an error message from the given description usingexpected
andactual
basic representation if their description differ otherwise usedefaultDetailedErrorMessage(Description, Representation)
to represent them differently.- Parameters:
description
- theDescription
used to build the returned error messagerepresentation
- theRepresentation
used to build String representation of object- Returns:
- the error message from description using
expected
andactual
"smart" representation.
-
errorMessageForMultilineValues
private String errorMessageForMultilineValues(Description description, Representation representation, String actualRepresentation, String expectedRepresentation) -
hasMultilineValue
-
messageForMultilineValues
private String messageForMultilineValues(String actualRepresentation, String expectedRepresentation, Representation representation) -
indent
-
defaultDetailedErrorMessage
protected String defaultDetailedErrorMessage(Description description, Representation representation) Builds and returns an error message from description usingdetailedExpected()
anddetailedActual()
detailed representation.- Parameters:
description
- theDescription
used to build the returned error messagerepresentation
- theRepresentation
used to build String representation of object- Returns:
- the error message from description using
detailedExpected()
anddetailedActual()
detailed representation.
-
assertionFailedError
-
comparisonFailure
-
newComparisonFailure
- Throws:
Exception
-
detailedActual
-
detailedExpected
-
equals
-
hashCode
public int hashCode()
-