|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.fest.assertions.api.AbstractAssert<S,A>
org.fest.assertions.api.AbstractComparableAssert<S,A>
S
- the "self" type of this assertion class. Please read "Emulating 'self types' using Java Generics to simplify fluent API implementation"
for more details.A
- the type of the "actual" value.public abstract class AbstractComparableAssert<S extends AbstractComparableAssert<S,A>,A extends Comparable<? super A>>
Base class for all implementations of
.
ComparableAssert
Field Summary |
---|
Fields inherited from class org.fest.assertions.api.AbstractAssert |
---|
actual, myself |
Constructor Summary | |
---|---|
protected |
AbstractComparableAssert(A actual,
Class<?> selfType)
|
Method Summary | |
---|---|
S |
isGreaterThan(A other)
Verifies that the actual value is greater than the given one. |
S |
isGreaterThanOrEqualTo(A other)
Verifies that the actual value is greater than or equal to the given one. |
S |
isLessThan(A other)
Verifies that the actual value is less than the given one. |
S |
isLessThanOrEqualTo(A other)
Verifies that the actual value is less than or equal to the given one. |
S |
usingComparator(Comparator<?> customComparator)
Use given custom comparator instead of relying on actual type A equals method for incoming assertion checks. |
S |
usingDefaultComparator()
Revert to standard comparison for incoming assertion checks. |
Methods inherited from class org.fest.assertions.api.AbstractAssert |
---|
as, as, describedAs, describedAs, descriptionText, doesNotHave, equals, has, hashCode, is, isEqualTo, isIn, isIn, isNot, isNotEqualTo, isNotIn, isNotIn, isNotNull, isNotSameAs, isNull, isSameAs |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected AbstractComparableAssert(A actual, Class<?> selfType)
Method Detail |
---|
public final S isLessThan(A other)
isLessThan
in interface ComparableAssert<S extends AbstractComparableAssert<S,A>,A extends Comparable<? super A>>
other
- the given value to compare the actual value to.
this
assertion object.public final S isLessThanOrEqualTo(A other)
isLessThanOrEqualTo
in interface ComparableAssert<S extends AbstractComparableAssert<S,A>,A extends Comparable<? super A>>
other
- the given value to compare the actual value to.
this
assertion object.public final S isGreaterThan(A other)
isGreaterThan
in interface ComparableAssert<S extends AbstractComparableAssert<S,A>,A extends Comparable<? super A>>
other
- the given value to compare the actual value to.
this
assertion object.public final S isGreaterThanOrEqualTo(A other)
isGreaterThanOrEqualTo
in interface ComparableAssert<S extends AbstractComparableAssert<S,A>,A extends Comparable<? super A>>
other
- the given value to compare the actual value to.
this
assertion object.public S usingComparator(Comparator<?> customComparator)
AbstractAssert
// compares invoices by payee assertThat(invoiceList).usingComparator(invoicePayeeComparator).isEqualTo(expectedInvoiceList). // compares invoices by date, doesNotHaveDuplicates and contains both use the given invoice date comparator assertThat(invoiceList).usingComparator(invoiceDateComparator).doesNotHaveDuplicates().contains(may2010Invoice) // as assertThat(invoiceList) creates a new assertion, it uses standard comparison strategy (Invoice's equal method) to compare invoiceList elements to lowestInvoice. assertThat(invoiceList).contains(lowestInvoice).Custom comparator is not parameterized with actual type A (ie. Comparator<A>) because if it was, we could not write the following code :
// frodo and sam are instances of Character (a Character having a Race) // raceComparator implements Comparator<Character> // assertThat(frodo) returns an ObjectAssert and not a custom CharacterAssert implementing Assert<CharacterAssert, Character> assertThat(frodo).usingComparator(raceComparator).isEqualTo(sam); // won't compile ! The code does not compile because assertThat(frodo) returns an ObjectAssert, thus usingComparator expects a Comparator<Object> and Comparator<Character> is not a Comparator<Object> as generics are not reified. Note that, it would have worked if assertThat(frodo) returned a CharacterAssert implementing Assert<CharacterAssert, Character>.
usingComparator
in interface Assert<S extends AbstractComparableAssert<S,A>,A extends Comparable<? super A>>
usingComparator
in class AbstractAssert<S extends AbstractComparableAssert<S,A>,A extends Comparable<? super A>>
customComparator
- the comparator to use for incoming assertion checks.
this
assertion object.public S usingDefaultComparator()
AbstractAssert
Assert.usingComparator(Comparator)
.
usingDefaultComparator
in interface Assert<S extends AbstractComparableAssert<S,A>,A extends Comparable<? super A>>
usingDefaultComparator
in class AbstractAssert<S extends AbstractComparableAssert<S,A>,A extends Comparable<? super A>>
this
assertion object.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |