Package org.fest.assertions.internal
Interface ComparisonStrategy
-
- All Known Implementing Classes:
AbstractComparisonStrategy
,ComparatorBasedComparisonStrategy
,StandardComparisonStrategy
public interface ComparisonStrategy
Describes the contract to implement a consistent comparison strategy that covers :
- comparing two objects for equality and order
- knowing if an object belongs to a group of objects (collection/array)
- determining duplicates in a group of objects (collection/array)
- string specific comparison- Author:
- Joel Costigliola
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
areEqual(java.lang.Object actual, java.lang.Object other)
Returns true if actual and other are equal according to the implemented comparison strategy.boolean
arrayContains(java.lang.Object array, java.lang.Object value)
Returns true if given array contains given value according to the implemented comparison strategy, false otherwise.java.lang.Iterable<?>
duplicatesFrom(java.lang.Iterable<?> iterable)
Returns any duplicate elements from the givenIterable
according to the implemented comparison strategy.boolean
isGreaterThan(java.lang.Object actual, java.lang.Object other)
Returns true if actual is greater than other, false otherwise.boolean
isGreaterThanOrEqualTo(java.lang.Object actual, java.lang.Object other)
Returns true if actual is greater than or equal to other, false otherwise.boolean
isLessThan(java.lang.Object actual, java.lang.Object other)
Returns true if actual is less than other, false otherwise.boolean
isLessThanOrEqualTo(java.lang.Object actual, java.lang.Object other)
Returns true if actual is less than or equal to other, false otherwise.boolean
iterableContains(java.lang.Iterable<?> collection, java.lang.Object value)
Returns true if givenIterable
contains given value according to the implemented comparison strategy, false otherwise.
If givenIterable
is null, return false.void
iterableRemoves(java.lang.Iterable<?> iterable, java.lang.Object value)
Look for given value in givenIterable
according to the implemented comparison strategy, if value is found it is removed from it.
If givenIterable
is null, does nothing.boolean
stringContains(java.lang.String string, java.lang.String sequence)
Returns true if given string contains given sequence according to the implemented comparison strategy, false otherwise.boolean
stringEndsWith(java.lang.String string, java.lang.String suffix)
Returns true if sstring ends with suffix according to the implemented comparison strategy, false otherwise.boolean
stringStartsWith(java.lang.String string, java.lang.String prefix)
Returns true if string starts with prefix according to the implemented comparison strategy, false otherwise.
-
-
-
Method Detail
-
areEqual
boolean areEqual(java.lang.Object actual, java.lang.Object other)
Returns true if actual and other are equal according to the implemented comparison strategy.- Parameters:
actual
- the object to compare to otherother
- the object to compare to actual- Returns:
- true if actual and other are equal according to the underlying comparison strategy.
-
isGreaterThan
boolean isGreaterThan(java.lang.Object actual, java.lang.Object other)
Returns true if actual is greater than other, false otherwise.- Parameters:
actual
- the object to compare to otherother
- the object to compare to actual- Returns:
- true if actual is greater than other, false otherwise.
- Throws:
java.lang.UnsupportedOperationException
- if operation is not supported by a concrete implementation.
-
isGreaterThanOrEqualTo
boolean isGreaterThanOrEqualTo(java.lang.Object actual, java.lang.Object other)
Returns true if actual is greater than or equal to other, false otherwise.- Parameters:
actual
- the object to compare to otherother
- the object to compare to actual- Returns:
- true if actual is greater than or equal to other, false otherwise.
- Throws:
java.lang.UnsupportedOperationException
- if operation is not supported by a concrete implementation.
-
isLessThan
boolean isLessThan(java.lang.Object actual, java.lang.Object other)
Returns true if actual is less than other, false otherwise.- Parameters:
actual
- the object to compare to otherother
- the object to compare to actual- Returns:
- true if actual is less than other, false otherwise.
- Throws:
java.lang.UnsupportedOperationException
- if operation is not supported by a concrete implementation.
-
isLessThanOrEqualTo
boolean isLessThanOrEqualTo(java.lang.Object actual, java.lang.Object other)
Returns true if actual is less than or equal to other, false otherwise.- Parameters:
actual
- the object to compare to otherother
- the object to compare to actual- Returns:
- true if actual is less than or equal to other, false otherwise.
- Throws:
java.lang.UnsupportedOperationException
- if operation is not supported by a concrete implementation.
-
iterableContains
boolean iterableContains(java.lang.Iterable<?> collection, java.lang.Object value)
Returns true if givenIterable
contains given value according to the implemented comparison strategy, false otherwise.
If givenIterable
is null, return false.- Parameters:
collection
- theIterable
to search value invalue
- the object to look for in givenIterable
- Returns:
- true if given
Iterable
contains given value according to the implemented comparison strategy, false otherwise.
-
iterableRemoves
void iterableRemoves(java.lang.Iterable<?> iterable, java.lang.Object value)
Look for given value in givenIterable
according to the implemented comparison strategy, if value is found it is removed from it.
If givenIterable
is null, does nothing.- Parameters:
iterable
- theIterable
we want remove value fromvalue
- object to remove from givenIterable
-
duplicatesFrom
java.lang.Iterable<?> duplicatesFrom(java.lang.Iterable<?> iterable)
Returns any duplicate elements from the givenIterable
according to the implemented comparison strategy.- Parameters:
iterable
- the givenIterable
we want to extract duplicate elements.- Returns:
- an
Iterable
containing the duplicate elements of the given one. If no duplicates are found, an emptyIterable
is returned.
-
arrayContains
boolean arrayContains(java.lang.Object array, java.lang.Object value)
Returns true if given array contains given value according to the implemented comparison strategy, false otherwise.- Parameters:
array
- the array to search value in (must not be null)value
- the object to look for in given array- Returns:
- true if given array contains given value according to the implemented comparison strategy, false otherwise.
-
stringContains
boolean stringContains(java.lang.String string, java.lang.String sequence)
Returns true if given string contains given sequence according to the implemented comparison strategy, false otherwise.- Parameters:
string
- the string to search sequence in (must not be null)sequence
- the String to look for in given string- Returns:
- true if given string contains given sequence according to the implemented comparison strategy, false otherwise.
-
stringStartsWith
boolean stringStartsWith(java.lang.String string, java.lang.String prefix)
Returns true if string starts with prefix according to the implemented comparison strategy, false otherwise.- Parameters:
string
- the String we want to look starting prefixprefix
- the prefix String to look for at string's start- Returns:
- true if string starts with prefix according to the implemented comparison strategy, false otherwise.
-
stringEndsWith
boolean stringEndsWith(java.lang.String string, java.lang.String suffix)
Returns true if sstring ends with suffix according to the implemented comparison strategy, false otherwise.- Parameters:
string
- the String we want to look starting suffixsuffix
- the suffix String to look for at string's end- Returns:
- true if string ends with suffix according to the implemented comparison strategy, false otherwise.
-
-