Package org.assertj.core.error
Class ShouldBeEqual
- java.lang.Object
-
- org.assertj.core.error.ShouldBeEqual
-
- All Implemented Interfaces:
AssertionErrorFactory
public class ShouldBeEqual extends java.lang.Object implements AssertionErrorFactory
Creates an
indicating that an assertion that verifies that two objects are equal failed.AssertionError
The built
AssertionError
's message differentiatesactual
andexpected
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
Fields Modifier and Type Field Description protected java.lang.Object
actual
private ComparisonStrategy
comparisonStrategy
(package private) ConstructorInvoker
constructorInvoker
(package private) DescriptionFormatter
descriptionFormatter
protected java.lang.Object
expected
private static java.lang.String
EXPECTED_BUT_WAS_MESSAGE
private static java.lang.String
EXPECTED_BUT_WAS_MESSAGE_USING_COMPARATOR
(package private) MessageFormatter
messageFormatter
private static java.lang.Class<?>[]
MSG_ARG_TYPES
private static java.lang.Class<?>[]
MSG_ARG_TYPES_FOR_ASSERTION_FAILED_ERROR
private Representation
representation
-
Constructor Summary
Constructors Constructor Description ShouldBeEqual(java.lang.Object actual, java.lang.Object expected, ComparisonStrategy comparisonStrategy, Representation representation)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private boolean
actualAndExpectedHaveSameStringRepresentation()
private java.lang.AssertionError
assertionFailedError(java.lang.String message)
private java.lang.AssertionError
comparisonFailure(Description description)
private java.lang.String
defaultDetailedErrorMessage(Description description, Representation representation)
Builds and returns an error message from description usingdetailedExpected()
anddetailedActual()
detailed representation.private java.lang.String
detailedActual()
private java.lang.String
detailedExpected()
boolean
equals(java.lang.Object o)
int
hashCode()
private java.lang.Object[]
msgArgs(java.lang.String description)
java.lang.AssertionError
newAssertionError(Description description, Representation representation)
private java.lang.AssertionError
newComparisonFailure(java.lang.String description)
static AssertionErrorFactory
shouldBeEqual(java.lang.Object actual, java.lang.Object expected, ComparisonStrategy comparisonStrategy, Representation representation)
Creates a new
.ShouldBeEqual
static AssertionErrorFactory
shouldBeEqual(java.lang.Object actual, java.lang.Object expected, Representation representation)
Creates a new
.ShouldBeEqual
private java.lang.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 Detail
-
EXPECTED_BUT_WAS_MESSAGE
private static final java.lang.String EXPECTED_BUT_WAS_MESSAGE
- See Also:
- Constant Field Values
-
EXPECTED_BUT_WAS_MESSAGE_USING_COMPARATOR
private static final java.lang.String EXPECTED_BUT_WAS_MESSAGE_USING_COMPARATOR
- See Also:
- Constant Field Values
-
MSG_ARG_TYPES
private static final java.lang.Class<?>[] MSG_ARG_TYPES
-
MSG_ARG_TYPES_FOR_ASSERTION_FAILED_ERROR
private static final java.lang.Class<?>[] MSG_ARG_TYPES_FOR_ASSERTION_FAILED_ERROR
-
actual
protected final java.lang.Object actual
-
expected
protected final java.lang.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(java.lang.Object actual, java.lang.Object expected, ComparisonStrategy comparisonStrategy, Representation representation)
-
-
Method Detail
-
shouldBeEqual
public static AssertionErrorFactory shouldBeEqual(java.lang.Object actual, java.lang.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(java.lang.Object actual, java.lang.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
public java.lang.AssertionError 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).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
private boolean actualAndExpectedHaveSameStringRepresentation()
-
smartErrorMessage
private java.lang.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.- 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.
-
defaultDetailedErrorMessage
private java.lang.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
private java.lang.AssertionError assertionFailedError(java.lang.String message)
-
comparisonFailure
private java.lang.AssertionError comparisonFailure(Description description)
-
newComparisonFailure
private java.lang.AssertionError newComparisonFailure(java.lang.String description) throws java.lang.Exception
- Throws:
java.lang.Exception
-
msgArgs
private java.lang.Object[] msgArgs(java.lang.String description)
-
detailedActual
private java.lang.String detailedActual()
-
detailedExpected
private java.lang.String detailedExpected()
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-