Package org.assertj.core.internal
Class Comparables
java.lang.Object
org.assertj.core.internal.Comparables
- Direct Known Subclasses:
Characters
,Numbers
Reusable assertions for types that can be compared between each other, most of the time it means
Comparable
s
but also for type not implementing Comparable
like Number
(surprisingly not comparable).-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionBuild aComparables
using aStandardComparisonStrategy
.Comparables
(ComparisonStrategy comparisonStrategy) -
Method Summary
Modifier and TypeMethodDescriptionprotected <T> boolean
areEqual
(T actual, T expected) <T> void
assertEqual
(AssertionInfo info, T actual, T expected) Asserts that two T instances are equal.<T> void
assertEqualByComparison
(AssertionInfo info, Comparable<? super T> actual, T expected) Asserts that two
s are equal by invokingComparable
.Comparable.compareTo(Object)
Note that it does not rely on the customcomparisonStrategy
if one has been set.<T> void
assertGreaterThan
(AssertionInfo info, Comparable<? super T> actual, T other) private <T> void
assertGreaterThan
(AssertionInfo info, Comparable<? super T> actual, T other, TriFunction<Comparable<? super T>, T, ComparisonStrategy, ErrorMessageFactory> errorMessageFactory) Asserts that the actual value is greater than the other one.<T> void
assertGreaterThanOrEqualTo
(AssertionInfo info, Comparable<? super T> actual, T other) private <T> void
assertGreaterThanOrEqualTo
(AssertionInfo info, Comparable<? super T> actual, T other, TriFunction<Comparable<? super T>, T, ComparisonStrategy, ErrorMessageFactory> errorMessageFactory) Asserts that the actual value is greater than or equal to the other one.<T> void
assertIsAfter
(AssertionInfo info, Comparable<? super T> actual, T other) <T> void
assertIsAfterOrEqualTo
(AssertionInfo info, Comparable<? super T> actual, T other) <T> void
assertIsBefore
(AssertionInfo info, Comparable<? super T> actual, T other) Asserts that the actual value is strictly before the other one.<T> void
assertIsBeforeOrEqualTo
(AssertionInfo info, Comparable<? super T> actual, T other) <T> void
assertIsBetween
(AssertionInfo info, Comparable<? super T> actual, T start, T end, boolean inclusiveStart, boolean inclusiveEnd) Asserts that the actual value is between start and end, inclusive or not.<T> void
assertLessThan
(AssertionInfo info, Comparable<? super T> actual, T other) Asserts that the actual value is less than the other one.private <T> void
assertLessThan
(AssertionInfo info, Comparable<? super T> actual, T other, TriFunction<Comparable<? super T>, T, ComparisonStrategy, ErrorMessageFactory> errorMessageFactory) Asserts that the actual value is less than the other one and throws an error with the given message factory.<T> void
assertLessThanOrEqualTo
(AssertionInfo info, Comparable<? super T> actual, T other) private <T> void
assertLessThanOrEqualTo
(AssertionInfo info, Comparable<? super T> actual, T other, TriFunction<Comparable<? super T>, T, ComparisonStrategy, ErrorMessageFactory> errorMessageFactory) Asserts that the actual value is less than or equal to the other one.<T> void
assertNotEqual
(AssertionInfo info, T actual, T other) Asserts that two T instances are not equal.<T> void
assertNotEqualByComparison
(AssertionInfo info, Comparable<? super T> actual, T other) Asserts that two
s are not equal by invokingComparable
.Comparable.compareTo(Object)
Note that it does not rely on the customcomparisonStrategy
if one has been set.protected static <T> void
assertNotNull
(AssertionInfo info, T actual) private <T> void
checkBoundsValidity
(T start, T end, boolean inclusiveStart, boolean inclusiveEnd) boolean
Comparator
<?> int
hashCode()
private boolean
isGreaterThan
(Object actual, Object other) private <T> boolean
isLessThan
(Object actual, Object other) (package private) void
(package private) void
setFailures
(Failures failures) toString()
-
Field Details
-
comparisonStrategy
-
failures
Failures failures
-
-
Constructor Details
-
Comparables
public Comparables()Build aComparables
using aStandardComparisonStrategy
. -
Comparables
-
-
Method Details
-
getComparator
-
setFailures
-
resetFailures
void resetFailures() -
hashCode
public int hashCode() -
equals
-
toString
-
assertEqual
Asserts that two T instances are equal.- Type Parameters:
T
- the type of actual and expected- Parameters:
info
- contains information about the assertion.actual
- the actual value.expected
- the expected value.- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is not equal to the expected one. This method will throw aorg.junit.ComparisonFailure
instead if JUnit is in the classpath and the expected and actual values are not equal.
-
areEqual
protected <T> boolean areEqual(T actual, T expected) -
assertNotEqual
Asserts that two T instances are not equal.- Type Parameters:
T
- the type of actual and expected- Parameters:
info
- contains information about the assertion.actual
- the actual value.other
- the value to compare the actual value to.- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is equal to the other one.
-
assertEqualByComparison
public <T> void assertEqualByComparison(AssertionInfo info, Comparable<? super T> actual, T expected) Asserts that two
s are equal by invokingComparable
.Comparable.compareTo(Object)
Note that it does not rely on the customcomparisonStrategy
if one has been set.- Type Parameters:
T
- used to guarantee that two objects of the same type are being compared against each other.- Parameters:
info
- contains information about the assertion.actual
- the actual value.expected
- the expected value.- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is not equal to the expected one. This method will throw aorg.junit.ComparisonFailure
instead if JUnit is in the classpath and the expected and actual values are not equal.
-
assertNotEqualByComparison
public <T> void assertNotEqualByComparison(AssertionInfo info, Comparable<? super T> actual, T other) Asserts that two
s are not equal by invokingComparable
.Comparable.compareTo(Object)
Note that it does not rely on the customcomparisonStrategy
if one has been set.- Type Parameters:
T
- used to guarantee that two objects of the same type are being compared against each other.- Parameters:
info
- contains information about the assertion.actual
- the actual value.other
- the value to compare the actual value to.- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is equal to the other one.
-
assertLessThan
Asserts that the actual value is less than the other one.- Type Parameters:
T
- used to guarantee that two objects of the same type are being compared against each other.- Parameters:
info
- contains information about the assertion.actual
- the actual value.other
- the value to compare the actual value to.- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is not less than the other one: this assertion will fail if the actual value is equal to or greater than the other value.
-
assertIsBefore
Asserts that the actual value is strictly before the other one.- Type Parameters:
T
- used to guarantee that two objects of the same type are being compared against each other.- Parameters:
info
- contains information about the assertion.actual
- the actual value.other
- the value to compare the actual value to.- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is not before the other one: this assertion will fail if the actual value is equal to or greater than the other value.
-
assertLessThan
private <T> void assertLessThan(AssertionInfo info, Comparable<? super T> actual, T other, TriFunction<Comparable<? super T>, T, ComparisonStrategy, ErrorMessageFactory> errorMessageFactory) Asserts that the actual value is less than the other one and throws an error with the given message factory.- Type Parameters:
T
- used to guarantee that two objects of the same type are being compared against each other.- Parameters:
info
- contains information about the assertion.actual
- the actual value.other
- the value to compare the actual value to.errorMessageFactory
- the desired error message factory to generate the suitable error message- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is not before the other one: this assertion will fail if the actual value is equal to or after the other value.
-
assertIsBeforeOrEqualTo
-
assertLessThanOrEqualTo
-
assertLessThanOrEqualTo
private <T> void assertLessThanOrEqualTo(AssertionInfo info, Comparable<? super T> actual, T other, TriFunction<Comparable<? super T>, T, ComparisonStrategy, ErrorMessageFactory> errorMessageFactory) Asserts that the actual value is less than or equal to the other one.- Type Parameters:
T
- used to guarantee that two objects of the same type are being compared against each other.- Parameters:
info
- contains information about the assertion.actual
- the actual value.other
- the value to compare the actual value to.errorMessageFactory
- the desired error message factory to generate the suitable error message- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is greater than the other one.
-
assertIsAfter
-
assertGreaterThan
-
assertGreaterThan
private <T> void assertGreaterThan(AssertionInfo info, Comparable<? super T> actual, T other, TriFunction<Comparable<? super T>, T, ComparisonStrategy, ErrorMessageFactory> errorMessageFactory) Asserts that the actual value is greater than the other one.- Type Parameters:
T
- used to guarantee that two objects of the same type are being compared against each other.- Parameters:
info
- contains information about the assertion.actual
- the actual value.other
- the value to compare the actual value to.errorMessageFactory
- the desired error message factory to generate the suitable error message- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is not greater than the other one: this assertion will fail if the actual value is equal to or less than the other value.
-
isGreaterThan
-
assertGreaterThanOrEqualTo
public <T> void assertGreaterThanOrEqualTo(AssertionInfo info, Comparable<? super T> actual, T other) -
assertIsAfterOrEqualTo
-
assertGreaterThanOrEqualTo
private <T> void assertGreaterThanOrEqualTo(AssertionInfo info, Comparable<? super T> actual, T other, TriFunction<Comparable<? super T>, T, ComparisonStrategy, ErrorMessageFactory> errorMessageFactory) Asserts that the actual value is greater than or equal to the other one.- Type Parameters:
T
- used to guarantee that two objects of the same type are being compared against each other.- Parameters:
info
- contains information about the assertion.actual
- the actual value.other
- the value to compare the actual value to.errorMessageFactory
- the desired error message factory to generate the suitable error message- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is less than the other one.
-
isLessThan
-
assertNotNull
-
assertIsBetween
public <T> void assertIsBetween(AssertionInfo info, Comparable<? super T> actual, T start, T end, boolean inclusiveStart, boolean inclusiveEnd) Asserts that the actual value is between start and end, inclusive or not.- Type Parameters:
T
- used to guarantee that two objects of the same type are being compared against each other.- Parameters:
info
- contains information about the assertion.actual
- the actual value.start
- the start value.end
- the end value.inclusiveStart
- if start is inclusive (fail is actual == start and inclusiveStart is false).inclusiveEnd
- if end is inclusive (fail is actual == end and inclusiveEnd is false).- Throws:
AssertionError
- if the actual value isnull
.AssertionError
- if the actual value is not between start and end.NullPointerException
- if start value isnull
.NullPointerException
- if end value isnull
.IllegalArgumentException
- if end value is less than start value.
-
checkBoundsValidity
private <T> void checkBoundsValidity(T start, T end, boolean inclusiveStart, boolean inclusiveEnd)
-