Package org.assertj.core.api
Class AbstractBigDecimalAssert<SELF extends AbstractBigDecimalAssert<SELF>>
- java.lang.Object
-
- org.assertj.core.api.AbstractAssert<SELF,ACTUAL>
-
- org.assertj.core.api.AbstractObjectAssert<SELF,ACTUAL>
-
- org.assertj.core.api.AbstractComparableAssert<SELF,BigDecimal>
-
- org.assertj.core.api.AbstractBigDecimalAssert<SELF>
-
- Type Parameters:
SELF- the "self" type of this assertion class. Please read "Emulating 'self types' using Java Generics to simplify fluent API implementation" for more details.
- All Implemented Interfaces:
Assert<SELF,BigDecimal>,ComparableAssert<SELF,BigDecimal>,Descriptable<SELF>,ExtensionPoints<SELF,BigDecimal>,NumberAssert<SELF,BigDecimal>
- Direct Known Subclasses:
BigDecimalAssert
public abstract class AbstractBigDecimalAssert<SELF extends AbstractBigDecimalAssert<SELF>> extends AbstractComparableAssert<SELF,BigDecimal> implements NumberAssert<SELF,BigDecimal>
Base class for all implementations of assertions forBigDecimals.- Author:
- Drummond Dawson, David DIDIER, Ted M. Young, Yvonne Wang, Alex Ruiz, Joel Costigliola, Mikhail Mazursky
-
-
Field Summary
-
Fields inherited from class org.assertj.core.api.AbstractAssert
actual, info, myself
-
-
Constructor Summary
Constructors Constructor Description AbstractBigDecimalAssert(BigDecimal actual, Class<?> selfType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SELFisBetween(BigDecimal start, BigDecimal end)Verifies that the actual value is in [start, end] range (start and end included).SELFisCloseTo(BigDecimal expected, Offset<BigDecimal> offset)Verifies that the actual number is close to the given one within the given offset.
If difference is equal to offset value, assertion is considered valid.SELFisCloseTo(BigDecimal expected, Percentage percentage)Verifies that the actual number is close to the given one within the given percentage.
If difference is equal to the percentage value, assertion is considered valid.SELFisEqualByComparingTo(String expected)Same asisEqualByComparingTo(BigDecimal)but takes care of converting given String toBigDecimal.SELFisEqualTo(String expected)Same asisEqualTo(BigDecimal)but takes care of converting given String toBigDecimalfor you.SELFisNegative()Verifies that the actual value is negative.SELFisNotCloseTo(BigDecimal expected, Offset<BigDecimal> offset)Verifies that the actual number is not close to the given one by less than the given offset.
If the difference is equal to the offset value, the assertion fails.SELFisNotCloseTo(BigDecimal expected, Percentage percentage)Verifies that the actual number is not close to the given one by the given percentage.
If difference is equal to the percentage value, the assertion fails.SELFisNotEqualByComparingTo(String expected)Same asisNotEqualByComparingTo(BigDecimal)but takes care of converting given String toBigDecimal.SELFisNotNegative()Verifies that the actual value is non negative (positive or equal zero).SELFisNotPositive()Verifies that the actual value is non positive (negative or equal zero).SELFisNotZero()Verifies that the actual value is not equal to zero.SELFisOne()Verifies that the actual value is equal to one.SELFisPositive()Verifies that the actual value is positive.SELFisStrictlyBetween(BigDecimal start, BigDecimal end)Verifies that the actual value is in ]start, end[ range (start excluded, end excluded).SELFisZero()Verifies that the actual value is equal to zero.SELFusingComparator(Comparator<? super BigDecimal> customComparator)Use given custom comparator instead of relying on actual type A equals method for incoming assertion checks.SELFusingDefaultComparator()Revert to standard comparison for incoming assertion checks.-
Methods inherited from class org.assertj.core.api.AbstractComparableAssert
inBinary, inHexadecimal, isEqualByComparingTo, isGreaterThan, isGreaterThanOrEqualTo, isLessThan, isLessThanOrEqualTo, isNotEqualByComparingTo
-
Methods inherited from class org.assertj.core.api.AbstractObjectAssert
as, as, defaultTypeComparators, extracting, extracting, hasFieldOrProperty, hasFieldOrPropertyWithValue, hasNoNullFieldsOrProperties, hasNoNullFieldsOrPropertiesExcept, isEqualToComparingFieldByField, isEqualToComparingFieldByFieldRecursively, isEqualToComparingOnlyGivenFields, isEqualToIgnoringGivenFields, isEqualToIgnoringNullFields, returns, usingComparatorForFields, usingComparatorForType
-
Methods inherited from class org.assertj.core.api.AbstractAssert
asList, asString, describedAs, describedAs, descriptionText, doesNotHave, doesNotHaveSameClassAs, equals, failWithMessage, getWritableAssertionInfo, has, hashCode, hasSameClassAs, hasToString, is, isEqualTo, isExactlyInstanceOf, isIn, isIn, isInstanceOf, isInstanceOfAny, isInstanceOfSatisfying, isNot, isNotEqualTo, isNotExactlyInstanceOf, isNotIn, isNotIn, isNotInstanceOf, isNotInstanceOfAny, isNotNull, isNotOfAnyClassIn, isNotSameAs, isNull, isOfAnyClassIn, isSameAs, matches, matches, overridingErrorMessage, satisfies, setCustomRepresentation, throwAssertionError, withFailMessage, withRepresentation, withThreadDumpOnError
-
-
-
-
Constructor Detail
-
AbstractBigDecimalAssert
public AbstractBigDecimalAssert(BigDecimal actual, Class<?> selfType)
-
-
Method Detail
-
isZero
public SELF isZero()
Verifies that the actual value is equal to zero.Example:
// assertions will pass assertThat(0).isZero(); assertThat(0.0).isZero(); // assertions will fail assertThat(42).isZero(); assertThat(3.142).isZero();Example:
// assertion will pass assertThat(BigDecimal.ZERO).isZero(); // assertion will fail assertThat(new BigDecimal("8.00")).isZero();- Specified by:
isZeroin interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Returns:
- this assertion object.
-
isNotZero
public SELF isNotZero()
Verifies that the actual value is not equal to zero.Example:
// assertions will pass assertThat(42).isNotZero(); assertThat(3.142).isNotZero(); // assertions will fail assertThat(0).isNotZero(); assertThat(0.0).isNotZero();Example:
// assertion will pass assertThat(new BigDecimal("8.00")).isNotZero(); // assertion will fail assertThat(BigDecimal.ZERO).isNotZero();- Specified by:
isNotZeroin interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Returns:
- this assertion object.
-
isOne
public SELF isOne()
Verifies that the actual value is equal to one.Example:
// assertions will pass assertThat(1).isOne(); assertThat(1.0).isOne(); // assertions will fail assertThat(42).isOne(); assertThat(3.142).isOne();Example:
// assertion will pass assertThat(BigDecimal.ONE).isOne(); // assertion will fail assertThat(new BigDecimal("8.00")).isOne();- Specified by:
isOnein interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Returns:
- this assertion object.
-
isPositive
public SELF isPositive()
Verifies that the actual value is positive.Example:
// assertions will pass assertThat(42).isPositive(); assertThat(3.142).isPositive(); // assertions will fail assertThat(0).isPositive(); assertThat(-42).isPositive();Example:
// assertion will pass assertThat(new BigDecimal("8.0")).isPositive(); // assertion will fail assertThat(new BigDecimal("-8.0")).isPositive();- Specified by:
isPositivein interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Returns:
- this assertion object.
-
isNegative
public SELF isNegative()
Verifies that the actual value is negative.Example:
// assertions will pass assertThat(-42).isNegative(); assertThat(-3.124).isNegative(); // assertions will fail assertThat(0).isNegative(); assertThat(42).isNegative();Example:
// assertion will pass assertThat(new BigDecimal("-8.0")).isNegative(); // assertion will fail assertThat(new BigDecimal("8.0")).isNegative();- Specified by:
isNegativein interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Returns:
- this assertion object.
-
isNotPositive
public SELF isNotPositive()
Verifies that the actual value is non positive (negative or equal zero).Example:
// assertions will pass assertThat(-42).isNotPositive(); assertThat(0).isNotPositive(); // assertions will fail assertThat(42).isNotPositive(); assertThat(3.124).isNotPositive();Example:
// assertion will pass assertThat(new BigDecimal("-8.0")).isNotPositive(); // assertion will fail assertThat(new BigDecimal("8.0")).isNotPositive();- Specified by:
isNotPositivein interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Returns:
thisassertion object.
-
isNotNegative
public SELF isNotNegative()
Verifies that the actual value is non negative (positive or equal zero).Example:
// assertions will pass assertThat(42).isNotNegative(); assertThat(0).isNotNegative(); // assertions will fail assertThat(-42).isNotNegative(); assertThat(-3.124).isNotNegative();Example:
// assertion will pass assertThat(new BigDecimal("8.0")).isNotNegative(); // assertion will fail assertThat(new BigDecimal("-8.0")).isNotNegative();- Specified by:
isNotNegativein interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Returns:
thisassertion object.
-
isBetween
public SELF isBetween(BigDecimal start, BigDecimal end)
Verifies that the actual value is in [start, end] range (start and end included).Example:
Note that comparison of// assertions will pass assertThat(new BigDecimal("8.0")).isBetween(new BigDecimal("7.0"), new BigDecimal("9.0")); assertThat(new BigDecimal("8.00")).isBetween(new BigDecimal("7.0"), new BigDecimal("9.0")); assertThat(new BigDecimal("8.0")).isBetween(new BigDecimal("8.0"), new BigDecimal("9.0")); assertThat(new BigDecimal("8.0")).isBetween(new BigDecimal("7.0"), new BigDecimal("8.0")); // assertion will fail assertThat(new BigDecimal("8.0")).isBetween(new BigDecimal("6.0"), new BigDecimal("7.0"));BigDecimalis done by value without scale consideration, i.e 2.0 and 2.00 are considered equal in value (not likeBigDecimal.equals(Object).- Specified by:
isBetweenin interfaceComparableAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Specified by:
isBetweenin interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Overrides:
isBetweenin classAbstractComparableAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Parameters:
start- the start value (inclusive), expected not to be null.end- the end value (inclusive), expected not to be null.- Returns:
- this assertion object.
-
isStrictlyBetween
public SELF isStrictlyBetween(BigDecimal start, BigDecimal end)
Verifies that the actual value is in ]start, end[ range (start excluded, end excluded).Example:
// assertion will pass assertThat(new BigDecimal("8.0")).isStrictlyBetween(new BigDecimal("7.0"), new BigDecimal("9.0")); // assertions will fail assertThat(new BigDecimal("8.0")).isStrictlyBetween(new BigDecimal("8.0"), new BigDecimal("9.0")); assertThat(new BigDecimal("8.0")).isStrictlyBetween(new BigDecimal("7.0"), new BigDecimal("8.0"));- Specified by:
isStrictlyBetweenin interfaceComparableAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Specified by:
isStrictlyBetweenin interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Overrides:
isStrictlyBetweenin classAbstractComparableAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Parameters:
start- the start value (exclusive), expected not to be null.end- the end value (exclusive), expected not to be null.- Returns:
- this assertion object.
-
isEqualTo
public SELF isEqualTo(String expected)
Same asisEqualTo(BigDecimal)but takes care of converting given String toBigDecimalfor you.Example:
// assertion will pass assertThat(new BigDecimal("8.0")).isEqualTo("8.0"); // assertion will fail because 8.00 is not equals to 8.0 assertThat(new BigDecimal("8.00")).isEqualTo("8.0");
-
isEqualByComparingTo
public SELF isEqualByComparingTo(String expected)
Same asisEqualByComparingTo(BigDecimal)but takes care of converting given String toBigDecimal.Example:
// assertions will pass assertThat(new BigDecimal("8.0")).isEqualByComparingTo("8.0"); // assertion will pass because 8.0 is equals to 8.00 usingBigDecimal.compareTo(Object)assertThat(new BigDecimal("8.0")).isEqualByComparingTo("8.00"); // assertion will fail assertThat(new BigDecimal("8.0")).isEqualByComparingTo("2.0");
-
isNotEqualByComparingTo
public SELF isNotEqualByComparingTo(String expected)
Same asisNotEqualByComparingTo(BigDecimal)but takes care of converting given String toBigDecimal.Example:
// assertions will pass assertThat(new BigDecimal("8.0")).isNotEqualByComparingTo("7.99"); // assertion will fail assertThat(new BigDecimal("8.0")).isNotEqualByComparingTo("8.00");
-
usingComparator
public SELF usingComparator(Comparator<? super BigDecimal> customComparator)
Description copied from class:AbstractAssertUse given custom comparator instead of relying on actual type A equals method for incoming assertion checks.Custom comparator is bound to assertion instance, meaning that if a new assertion is created, it will use default comparison strategy. Examples :
// frodo and sam are instances of Character with Hobbit race (obviously :). // raceComparator implements Comparator<Character> assertThat(frodo).usingComparator(raceComparator).isEqualTo(sam);- Specified by:
usingComparatorin interfaceAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Overrides:
usingComparatorin classAbstractComparableAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Parameters:
customComparator- the comparator to use for incoming assertion checks.- Returns:
thisassertion object.
-
usingDefaultComparator
public SELF usingDefaultComparator()
Description copied from class:AbstractAssertRevert to standard comparison for incoming assertion checks.This method should be used to disable a custom comparison strategy set by calling
Assert.usingComparator(Comparator).- Specified by:
usingDefaultComparatorin interfaceAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Overrides:
usingDefaultComparatorin classAbstractComparableAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Returns:
thisassertion object.
-
isCloseTo
public SELF isCloseTo(BigDecimal expected, Offset<BigDecimal> offset)
Verifies that the actual number is close to the given one within the given offset.
If difference is equal to offset value, assertion is considered valid.Example:
final BigDecimal actual = new BigDecimal("8.1"); final BigDecimal other = new BigDecimal("8.0"); // valid assertion assertThat(actual).isCloseTo(other, within(new BigDecimal("0.2"))); // if difference is exactly equals to given offset value, it's ok assertThat(actual).isCloseTo(other, within(new BigDecimal("0.1"))); // BigDecimal format has no impact on the assertion, this assertion is valid: assertThat(actual).isCloseTo(new BigDecimal("8.00"), within(new BigDecimal("0.100"))); // but if difference is greater than given offset value assertion will fail : assertThat(actual).isCloseTo(other, within(new BigDecimal("0.01")));- Specified by:
isCloseToin interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Parameters:
expected- the given number to compare the actual value to.offset- the given positive offset.- Returns:
thisassertion object.- Throws:
NullPointerException- if the given offset isnull.NullPointerException- if the expected number isnull.AssertionError- if the actual value is not close to the given one.
-
isNotCloseTo
public SELF isNotCloseTo(BigDecimal expected, Offset<BigDecimal> offset)
Verifies that the actual number is not close to the given one by less than the given offset.
If the difference is equal to the offset value, the assertion fails.Example:
final BigDecimal actual = new BigDecimal("8.1"); final BigDecimal other = new BigDecimal("8.0"); // this assertion succeeds assertThat(actual).isNotCloseTo(other, byLessThan(new BigDecimal("0.01"))); // BigDecimal format has no impact on the assertion, this assertion is valid: assertThat(actual).isNotCloseTo(new BigDecimal("8.00"), byLessThan(new BigDecimal("0.100"))); // the assertion fails if the difference is equal to the given offset value assertThat(actual).isNotCloseTo(other, byLessThan(new BigDecimal("0.1"))); // the assertion fails if the difference is greater than the given offset value assertThat(actual).isNotCloseTo(other, byLessThan(new BigDecimal("0.2")));- Specified by:
isNotCloseToin interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Parameters:
expected- the given number to compare the actual value to.offset- the given positive offset.- Returns:
thisassertion object.- Throws:
NullPointerException- if the given offset isnull.NullPointerException- if the expected number isnull.AssertionError- if the actual value is close to the given one within the offset value.- Since:
- 2.6.0 / 3.6.0
- See Also:
Assertions.byLessThan(BigDecimal)
-
isCloseTo
public SELF isCloseTo(BigDecimal expected, Percentage percentage)
Verifies that the actual number is close to the given one within the given percentage.
If difference is equal to the percentage value, assertion is considered valid.Example with BigDecimal:
// assertions will pass: assertThat(BigDecimal.valueOf(11.0)).isCloseTo(BigDecimal.TEN, withinPercentage(BigDecimal.valueOf(20d))); // if difference is exactly equals to the computed offset (1.0), it's ok assertThat(BigDecimal.valueOf(11.0)).isCloseTo(BigDecimal.TEN, withinPercentage(BigDecimal.valueOf(10d))); // assertion will fail assertThat(BigDecimal.valueOf(11.0)).isCloseTo(BigDecimal.TEN, withinPercentage(BigDecimal.valueOf(5d)));- Specified by:
isCloseToin interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Parameters:
expected- the given number to compare the actual value to.percentage- the given positive percentage.- Returns:
thisassertion object.- Throws:
NullPointerException- if the given offset isnull.NullPointerException- if the expected number isnull.AssertionError- if the actual value is not close to the given one.
-
isNotCloseTo
public SELF isNotCloseTo(BigDecimal expected, Percentage percentage)
Verifies that the actual number is not close to the given one by the given percentage.
If difference is equal to the percentage value, the assertion fails.Example with BigDecimal:
BigDecimal eleven = BigDecimal.valueOf(11.0); // assertion will pass: assertThat(eleven).isNotCloseTo(BigDecimal.TEN, withinPercentage(new BigDecimal("5"))); // assertion will fail as the difference is exactly equals to the computed offset (1.0) assertThat(eleven).isNotCloseTo(BigDecimal.TEN, withinPercentage(new BigDecimal("10"))); // assertion will fail assertThat(eleven).isNotCloseTo(BigDecimal.TEN, withinPercentage(new BigDecimal("20")));- Specified by:
isNotCloseToin interfaceNumberAssert<SELF extends AbstractBigDecimalAssert<SELF>,BigDecimal>- Parameters:
expected- the given number to compare the actual value to.percentage- the given positive percentage.- Returns:
thisassertion object.- Throws:
NullPointerException- if the given offset isnull.NullPointerException- if the expected number isnull.AssertionError- if the actual value is close to the given one.
-
-