Class AbstractFloatAssert<SELF extends AbstractFloatAssert<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,Float>, ComparableAssert<SELF,Float>, Descriptable<SELF>, ExtensionPoints<SELF,Float>, FloatingPointNumberAssert<SELF,Float>, NumberAssert<SELF,Float>
Direct Known Subclasses:
FloatAssert

public abstract class AbstractFloatAssert<SELF extends AbstractFloatAssert<SELF>> extends AbstractComparableAssert<SELF,Float> implements FloatingPointNumberAssert<SELF,Float>
Base class for all implementations of assertions for Floats.
Author:
Drummond Dawson, Yvonne Wang, Alex Ruiz, Ansgar Konermann, Mikhail Mazursky, Nicolas François, Jin Kwon
  • Constructor Details

    • AbstractFloatAssert

      protected AbstractFloatAssert(Float actual, Class<?> selfType)
    • AbstractFloatAssert

      public AbstractFloatAssert(float actual, Class<?> selfType)
  • Method Details

    • isNaN

      public SELF isNaN()
      Verifies that the actual value is equal to NaN.

      Example:

       // assertions succeed
       assertThat(Double.NaN).isNaN();
       assertThat(0.0 / 0.0).isNaN();
       assertThat(0.0F * Float.POSITIVE_INFINITY).isNaN();
      
       // assertions fail
       assertThat(1.0).isNaN();
       assertThat(-1.0F).isNaN();
      Specified by:
      isNaN in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
    • isNotNaN

      public SELF isNotNaN()
      Verifies that the actual value is not equal to NaN.

      Example:

       // assertions succeed
       assertThat(1.0).isNotNaN();
       assertThat(-1.0F).isNotNaN();
      
       // assertions fail
       assertThat(Double.NaN).isNotNaN();
       assertThat(0.0 / 0.0).isNotNaN();
       assertThat(0.0F * Float.POSITIVE_INFINITY).isNotNaN();
      Specified by:
      isNotNaN in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
    • isZero

      public SELF isZero()
      Verifies that the actual value is equal to zero.

      Although 0.0f == -0.0f (primitives), Float(-0.0f) is not zero as Float.floatToIntBits(0.0f) == Float.floatToIntBits(-0.0f) is false.

      Examples:

       // assertions will pass
       assertThat(0.0f).isZero();
       assertThat(-0.0f).isZero();
      
       // assertions will fail
       assertThat(new Float(-0.0f)).isZero();
       assertThat(3.142f).isZero();
      Specified by:
      isZero in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is not equal to zero.
    • isNotZero

      public SELF isNotZero()
      Verifies that the actual value is not equal to zero.

      Although 0.0f == -0.0f (primitives), Float(-0.0f) is not zero as Float.floatToIntBits(0.0f) == Float.floatToIntBits(-0.0f) is false.

      Examples:

       // assertions will pass
       assertThat(3.142f).isNotZero();
       assertThat(new Float(-0.0f)).isNotZero();
      
       // assertions will fail
       assertThat(0.0f).isNotZero();
       assertThat(new Float(0.0f)).isNotZero();
       assertThat(-0.0f).isNotZero();
      Specified by:
      isNotZero in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is equal to zero.
    • 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();
      Specified by:
      isOne in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      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();
      Specified by:
      isPositive in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      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();
      Specified by:
      isNegative in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion 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();
      Specified by:
      isNotNegative in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      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();
      Specified by:
      isNotPositive in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
    • isEqualTo

      public SELF isEqualTo(float expected)
      Verifies that the actual value is equal to the given one.

      Unless a specific comparator has been set (with usingComparator) the equality is performed with == which is slightly different from Float.equals(Object) - notably 0.0f == -0.0f.

      Examples:

       // assertions will pass:
       assertThat(1.0f).isEqualTo(1.0f);
       assertThat(1f).isEqualTo(1.0f);
       assertThat(-0.0f).isEqualTo(0.0f);
      
       // assertions will fail:
       assertThat(0.0f).isEqualTo(1.0f);
       assertThat(-1.0f).isEqualTo(1.0f);

      Note that this assertion behaves slightly differently from isEqualTo(Float).

      Parameters:
      expected - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is not equal to the given one.
    • isEqualTo

      public SELF isEqualTo(Float expected)
      Verifies that the actual value is equal to the given one using Float.equals(Object) semantics where 0.0f is not equal to -0.0f.

      Examples:

       // assertion will pass:
       assertThat(1.0f).isEqualTo(Float.valueOf(1.0f));
      
       // assertions will fail:
       assertThat(0.0f).isEqualTo(Float.valueOf(1.0f));
       assertThat(-1.0f).isEqualTo(Float.valueOf(1.0f));
       assertThat(-0.0f).isEqualTo(Float.valueOf(0.0f));

      Note that this assertion behaves slightly differently from isEqualTo(float).

      Parameters:
      expected - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is not equal to the given one.
    • isCloseTo

      public SELF isCloseTo(float expected, Offset<Float> offset)
      Verifies that the actual number is close to the given one within the given offset value.

      When abs(actual - expected) == offset value, the assertion:

      Breaking change since 2.9.0/3.9.0: using Assertions.byLessThan(Float) implies a strict comparison, use Assertions.within(Float) to get the old behavior.

      Examples:

       // assertions succeed
       assertThat(8.1f).isCloseTo(8.0f, within(0.2f));
       assertThat(8.1f).isCloseTo(8.0f, offset(0.2f)); // alias of within
       assertThat(8.1f).isCloseTo(8.0f, byLessThan(0.2f)); // strict
      
       // assertions succeed when the difference == offset value ...
       assertThat(0.1f).isCloseTo(0.0f, within(0.1f));
       assertThat(0.1f).isCloseTo(0.0f, offset(0.1f));
       // ... except when using byLessThan which implies a strict comparison
       assertThat(0.1f).isCloseTo(0.0f, byLessThan(0.1f)); // strict => fail
      
       // this assertion also fails
       assertThat(8.1f).isCloseTo(8.0f, within(0.001f));
      Parameters:
      expected - the given number to compare the actual value to.
      offset - the given positive offset.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is not close to the given one.
    • isNotCloseTo

      public SELF isNotCloseTo(float expected, Offset<Float> offset)
      Verifies that the actual number is not close to the given one by less than the given offset.

      When abs(actual - expected) == offset value, the assertion:

      Breaking change since 2.9.0/3.9.0: using Assertions.byLessThan(Float) implies a strict comparison, use Assertions.within(Float) to get the old behavior.

      Examples:

       // assertions succeed
       assertThat(8.1f).isNotCloseTo(8.0f, byLessThan(0.01f));
       assertThat(8.1f).isNotCloseTo(8.0f, within(0.01f));
       assertThat(8.1f).isNotCloseTo(8.0f, offset(0.01f));
       // diff == offset but isNotCloseTo succeeds as we use byLessThan
       assertThat(0.1f).isNotCloseTo(0.0f, byLessThan(0.1f));
      
       // assertions fail
       assertThat(0.1f).isNotCloseTo(0.0f, within(0.1f));
       assertThat(0.1f).isNotCloseTo(0.0f, offset(0.1f));
       assertThat(8.1f).isNotCloseTo(8.0f, within(0.2f));
       assertThat(8.1f).isNotCloseTo(8.0f, offset(0.2f));
       assertThat(8.1f).isNotCloseTo(8.0f, byLessThan(0.2f));
      Parameters:
      expected - the given number to compare the actual value to.
      offset - the given positive offset.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is close to the given one.
      Since:
      2.6.0 / 3.6.0
      See Also:
    • isCloseTo

      public SELF isCloseTo(Float expected, Offset<Float> offset)
      Verifies that the actual number is close to the given one within the given offset value.

      When abs(actual - expected) == offset value, the assertion:

      Breaking change since 2.9.0/3.9.0: using Assertions.byLessThan(Float) implies a strict comparison, use Assertions.within(Float) to get the old behavior.

      Examples:

       // assertions succeed
       assertThat(8.1f).isCloseTo(8.0f, within(0.2f));
       assertThat(8.1f).isCloseTo(8.0f, offset(0.2f)); // alias of within
       assertThat(8.1f).isCloseTo(8.0f, byLessThan(0.2f)); // strict
      
       // assertions succeed when the difference == offset value ...
       assertThat(0.1f).isCloseTo(0.0f, within(0.1f));
       assertThat(0.1f).isCloseTo(0.0f, offset(0.1f));
       // ... except when using byLessThan which implies a strict comparison
       assertThat(0.1f).isCloseTo(0.0f, byLessThan(0.1f)); // strict => fail
      
       // this assertion also fails
       assertThat(8.1f).isCloseTo(8.0f, within(0.001f));
      Specified by:
      isCloseTo in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Specified by:
      isCloseTo in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Parameters:
      expected - the given number to compare the actual value to.
      offset - the given positive offset.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is not close to the given one.
    • isNotCloseTo

      public SELF isNotCloseTo(Float expected, Offset<Float> offset)
      Verifies that the actual number is not close to the given one by less than the given offset.

      When abs(actual - expected) == offset value, the assertion:

      Breaking change since 2.9.0/3.9.0: using Assertions.byLessThan(Float) implies a strict comparison, use Assertions.within(Float) to get the old behavior.

      Examples:

       // assertions succeed
       assertThat(8.1f).isNotCloseTo(8.0f, byLessThan(0.01f));
       assertThat(8.1f).isNotCloseTo(8.0f, within(0.01f));
       assertThat(8.1f).isNotCloseTo(8.0f, offset(0.01f));
       // diff == offset but isNotCloseTo succeeds as we use byLessThan
       assertThat(0.1f).isNotCloseTo(0.0f, byLessThan(0.1f));
      
       // assertions fail
       assertThat(0.1f).isNotCloseTo(0.0f, within(0.1f));
       assertThat(0.1f).isNotCloseTo(0.0f, offset(0.1f));
       assertThat(8.1f).isNotCloseTo(8.0f, within(0.2f));
       assertThat(8.1f).isNotCloseTo(8.0f, offset(0.2f));
       assertThat(8.1f).isNotCloseTo(8.0f, byLessThan(0.2f));
      Specified by:
      isNotCloseTo in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Specified by:
      isNotCloseTo in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Parameters:
      expected - the given number to compare the actual value to.
      offset - the given positive offset.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is close to the given one.
      Since:
      2.6.0 / 3.6.0
      See Also:
    • isCloseTo

      public SELF isCloseTo(Float 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 float:

       // assertions will pass:
       assertThat(11.0f).isCloseTo(new Float(10.0f), withinPercentage(20f));
      
       // if difference is exactly equals to the computed offset (1.0), it's ok
       assertThat(11.0f).isCloseTo(new Float(10.0f), withinPercentage(10f));
      
       // assertion will fail
       assertThat(11.0f).isCloseTo(new Float(10.0f), withinPercentage(5f));
      Specified by:
      isCloseTo in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Parameters:
      expected - the given number to compare the actual value to.
      percentage - the given positive percentage.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is not close to the given one.
    • isNotCloseTo

      public SELF isNotCloseTo(Float expected, Percentage percentage)
      Verifies that the actual number is not close to the given one within the given percentage.
      If difference is equal to the percentage value, the assertion fails.

      Example with float:

       // assertion will pass:
       assertThat(11.0f).isNotCloseTo(new Float(10.0f), withinPercentage(5f));
      
       // assertions will fail
       assertThat(11.0f).isNotCloseTo(new Float(10.0f), withinPercentage(10f));
       assertThat(11.0f).isNotCloseTo(new Float(10.0f), withinPercentage(20f));
      Specified by:
      isNotCloseTo in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Parameters:
      expected - the given number to compare the actual value to.
      percentage - the given positive percentage.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is close to the given one.
      Since:
      2.6.0 / 3.6.0
    • isCloseTo

      public SELF isCloseTo(float 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 float:

       // assertions will pass:
       assertThat(11.0f).isCloseTo(10.0f, withinPercentage(20f));
      
       // if difference is exactly equals to the computed offset (1.0), it's ok
       assertThat(11.0f).isCloseTo(10.0f, withinPercentage(10f));
      
       // assertion will fail
       assertThat(11.0f).isCloseTo(10.0f, withinPercentage(5f));
      Parameters:
      expected - the given number to compare the actual value to.
      percentage - the given positive percentage.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is not close to the given one.
    • isNotCloseTo

      public SELF isNotCloseTo(float expected, Percentage percentage)
      Verifies that the actual number is not close to the given one within the given percentage.
      If difference is equal to the percentage value, the assertion fails.

      Example with float:

       // assertion will pass:
       assertThat(11.0f).isNotCloseTo(10.0f, withinPercentage(5f));
      
       // assertions will fail
       assertThat(11.0f).isNotCloseTo(10.0f, withinPercentage(10f));
       assertThat(11.0f).isNotCloseTo(10.0f, withinPercentage(20f));
      Parameters:
      expected - the given number to compare the actual value to.
      percentage - the given positive percentage.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is close to the given one.
      Since:
      2.6.0 / 3.6.0
    • isEqualTo

      public SELF isEqualTo(Float expected, Offset<Float> offset)
      Verifies that the actual number is close to the given one within the given offset value.

      This assertion is the same as isCloseTo(float, Offset).

      When abs(actual - expected) == offset value, the assertion:

      Examples:

       // assertions will pass
       assertThat(8.1f).isEqualTo(8.0f, within(0.2f));
       assertThat(8.1f).isEqualTo(8.0f, offset(0.2f)); // alias of within
       assertThat(8.1f).isEqualTo(8.0f, byLessThan(0.2f)); // strict
      
       // assertions succeed when the difference == offset value ...
       assertThat(0.1f).isEqualTo(0.0f, within(0.1f));
       assertThat(0.1f).isEqualTo(0.0f, offset(0.1f));
       // ... except when using byLessThan which implies a strict comparison
       assertThat(0.1f).isEqualTo(0.0f, byLessThan(0.1f)); // strict => fail
      
       // this assertion also fails
       assertThat(0.1f).isEqualTo(0.0f, within(0.001f));
      Specified by:
      isEqualTo in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Parameters:
      expected - the given value to compare the actual value to.
      offset - the given positive offset.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is not equal to the given one.
    • isEqualTo

      public SELF isEqualTo(float expected, Offset<Float> offset)
      Verifies that the actual number is close to the given one within the given offset value.

      This assertion is the same as isCloseTo(float, Offset).

      When abs(actual - expected) == offset value, the assertion:

      Examples:

       // assertions will pass
       assertThat(8.1f).isEqualTo(8.0f, within(0.2f));
       assertThat(8.1f).isEqualTo(8.0f, offset(0.2f)); // alias of within
       assertThat(8.1f).isEqualTo(8.0f, byLessThan(0.2f)); // strict
      
       // assertions succeed when the difference == offset value ...
       assertThat(0.1f).isEqualTo(0.0f, within(0.1f));
       assertThat(0.1f).isEqualTo(0.0f, offset(0.1f));
       // ... except when using byLessThan which implies a strict comparison
       assertThat(0.1f).isEqualTo(0.0f, byLessThan(0.1f)); // strict => fail
      
       // this assertion also fails
       assertThat(0.1f).isEqualTo(0.0f, within(0.001f));
      Parameters:
      expected - the given value to compare the actual value to.
      offset - the given positive offset.
      Returns:
      this assertion object.
      Throws:
      NullPointerException - if the given offset is null.
      NullPointerException - if the expected number is null.
      AssertionError - if the actual value is not equal to the given one.
    • isNotEqualTo

      public SELF isNotEqualTo(float other)
      Verifies that the actual value is not equal to the given one.

      Unless a specific comparator has been set (with usingComparator) the equality is performed with != which is slightly different from Float.equals(Object) - notably:

      • Float.NaN != Float.NaN but Float.valueOf(Float.NaN).equals(Float.NaN) == true
      • 0.0f == -0.0f but Float.valueOf(0.0f).equals(-0.0f) == false

      Examples:

       // assertions will pass:
       assertThat(0.0f).isNotEqualTo(1.0f);
       assertThat(-1.0f).isNotEqualTo(1.0f);
       assertThat(Float.NaN).isNotEqualTo(Float.NaN);
      
       // assertions will fail:
       assertThat(1.0f).isNotEqualTo(1.0f);
       assertThat(1f).isNotEqualTo(1.0f);
       assertThat(0.0f).isNotEqualTo(-0.0f);

      Note that this assertion behaves slightly differently from isNotEqualTo(Float).

      Parameters:
      other - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is equal to the given one.
    • isNotEqualTo

      public SELF isNotEqualTo(Float other)
      Verifies that the actual value is not equal to the given Float using Float.equals(Object) semantics where
      • Float.valueOf(Float.NaN).equals(Float.NaN) == true but Float.NaN != Float.NaN
      • Float.valueOf(0.0f).equals(-0.0f) == false but 0.0f == -0.0f

      Examples:

       // assertions will pass:
       assertThat(0.0f).isNotEqualTo(Float.valueOf(1.0));
       assertThat(-1.0).isNotEqualTo(Float.valueOf(1.0));
       assertThat(0.0f).isNotEqualTo(Float.valueOf(-0.0f));
      
       // assertions will fail:
       assertThat(1.0).isNotEqualTo(Float.valueOf(1.0));
       assertThat(0.0f).isNotEqualTo(Float.valueOf(0.0f));
       assertThat(Float.NaN).isNotEqualTo(Float.valueOf(Float.NaN));

      Note that this assertion behaves slightly differently from isNotEqualTo(float).

      Parameters:
      other - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is equal to the given one.
    • isLessThan

      public SELF isLessThan(float other)
      Verifies that the actual value is less than the given one.

      Examples:

       // assertions will pass:
       assertThat(1.0f).isLessThan(2.0f);
       assertThat(1.0f).isLessThan(1.01f);
      
       // assertions will fail:
       assertThat(2.0f).isLessThan(1.0f);
       assertThat(1.0f).isLessThan(1.0f);
      Parameters:
      other - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is equal to or greater than the given one.
    • isLessThanOrEqualTo

      public SELF isLessThanOrEqualTo(float other)
      Verifies that the actual value is less than or equal to the given one.

      Unless a specific comparator has been set (with usingComparator) this assertion will use <= semantics where notably 0.0 == -0.0.

      Examples:

       // assertions will pass:
       assertThat(-1.0f).isLessThanOrEqualTo(1.0f);
       assertThat(1.0f).isLessThanOrEqualTo(1.0f);
       // 0.0f == -0.0f
       assertThat(-0.0f).isLessThanOrEqualTo(0.0f);
       assertThat(0.0f).isLessThanOrEqualTo(-0.0f);
      
       // assertion will fail:
       assertThat(2.0f).isLessThanOrEqualTo(1.0f);

      Note that this assertion behaves differently from isLessThanOrEqualTo(Float) which uses Float.compareTo(Float) semantics.

      Parameters:
      other - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is greater than the given one.
    • isLessThanOrEqualTo

      public SELF isLessThanOrEqualTo(Float other)
      Verifies that the actual value is less than or equal to the given one using Float.compareTo(Float) semantics where notably -0.0 is strictly less than 0.0.

      Examples:

       // assertions will pass:
       assertThat(-1.0f).isLessThanOrEqualTo(Float.valueOf(1.0f));
       assertThat(1.0f).isLessThanOrEqualTo(Float.valueOf(1.0f));
       assertThat(-0.0f).isLessThanOrEqualTo(Float.valueOf(0.0f));
      
       // assertions will fail:
       assertThat(2.0f).isLessThanOrEqualTo(Float.valueOf(1.0f));
       // 0.0f is not considered equal to -0.0f
       assertThat(0.0f).isLessThanOrEqualTo(Float.valueOf(-0.0f));

      Note that this assertion behaves differently from isLessThanOrEqualTo(float) which uses Float.compareTo(Float) semantics.

      Specified by:
      isLessThanOrEqualTo in interface ComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Overrides:
      isLessThanOrEqualTo in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Parameters:
      other - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is greater than the given one.
    • isGreaterThan

      public SELF isGreaterThan(float other)
      Verifies that the actual value is greater than the given one.

      Examples:

       // assertions will pass:
       assertThat(2.0f).isGreaterThan(1.0f);
       assertThat(2.0f).isGreaterThan(1.99f);
      
       // assertions will fail:
       assertThat(1.0f).isGreaterThan(1.0f);
       assertThat(1.0f).isGreaterThan(2.0f);
      Parameters:
      other - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is equal to or less than the given one.
    • isGreaterThanOrEqualTo

      public SELF isGreaterThanOrEqualTo(float other)
      Verifies that the actual value is greater than or equal to the given one.

      Unless a specific comparator has been set (with usingComparator) this assertion will use >= semantics where notably 0.0f == -0.0f.

      Examples:

       // assertions will pass:
       assertThat(2.0f).isGreaterThanOrEqualTo(1.0f);
       assertThat(1.0f).isGreaterThanOrEqualTo(1.0f);
       assertThat(0.0f).isGreaterThanOrEqualTo(-0.0f);
      
       // assertion will fail:
       assertThat(1.0f).isGreaterThanOrEqualTo(2.0f);

      Note that this assertion behaves differently from isGreaterThanOrEqualTo(Float) which uses Float.compareTo(Float) semantics.

      Parameters:
      other - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is less than the given one.
    • isGreaterThanOrEqualTo

      public SELF isGreaterThanOrEqualTo(Float other)
      Verifies that the actual value is greater than or equal to the given one using Float.compareTo(Float) semantics where notably 0.0f is strictly greater than -0.0f.

      Examples:

       // assertions will pass:
       assertThat(2.0f).isGreaterThanOrEqualTo(Float.valueOf(1.0f));
       assertThat(1.0f).isGreaterThanOrEqualTo(Float.valueOf(1.0f));
       assertThat(0.0f).isGreaterThanOrEqualTo(Float.valueOf(-0.0f));
      
       // assertions will fail:
       assertThat(1.0f).isGreaterThanOrEqualTo(Float.valueOf(2.0f));
       // 0.0f is not considered equal to -0.0f
       assertThat(-0.0f).isGreaterThanOrEqualTo(Float.valueOf(0.0f));

      Note that this assertion behaves differently from isGreaterThanOrEqualTo(float) which uses >= semantics.

      Specified by:
      isGreaterThanOrEqualTo in interface ComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Overrides:
      isGreaterThanOrEqualTo in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Parameters:
      other - the given value to compare the actual value to.
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is null.
      AssertionError - if the actual value is less than the given one.
    • isBetween

      public SELF isBetween(Float start, Float end)
      Verifies that the actual value is in [start, end] range (start included, end included).

      Examples:

       // assertions will pass
       assertThat(1f).isBetween(-1f, 2f);
       assertThat(1f).isBetween(1f, 2f);
       assertThat(1f).isBetween(0f, 1f);
      
       // assertion will fail
       assertThat(1f).isBetween(2f, 3f);
      Specified by:
      isBetween in interface ComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Specified by:
      isBetween in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Overrides:
      isBetween in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      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(Float start, Float end)
      Verifies that the actual value is in ]start, end[ range (start excluded, end excluded).

      Examples:

       // assertion will pass
       assertThat(1f).isStrictlyBetween(-1f, 2f);
      
       // assertions will fail
       assertThat(1f).isStrictlyBetween(1f, 2f);
       assertThat(1f).isStrictlyBetween(0f, 1f);
       assertThat(1f).isStrictlyBetween(2f, 3f);
      Specified by:
      isStrictlyBetween in interface ComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Specified by:
      isStrictlyBetween in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Overrides:
      isStrictlyBetween in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      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.
    • usingComparator

      public SELF usingComparator(Comparator<? super Float> customComparator)
      Description copied from class: AbstractAssert
      Use the given custom comparator instead of relying on actual type A equals method for incoming assertion checks.

      The custom comparator is bound to assertion instance, meaning that if a new assertion instance is created, the default comparison strategy will be used.

      Examples :

       // frodo and sam are instances of Character with Hobbit race (obviously :).
       // raceComparator implements Comparator<Character>
       assertThat(frodo).usingComparator(raceComparator).isEqualTo(sam);
      Specified by:
      usingComparator in interface Assert<SELF extends AbstractFloatAssert<SELF>,Float>
      Overrides:
      usingComparator in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Parameters:
      customComparator - the comparator to use for the incoming assertion checks.
      Returns:
      this assertion object.
    • usingComparator

      public SELF usingComparator(Comparator<? super Float> customComparator, String customComparatorDescription)
      Description copied from class: AbstractAssert
      Use the given custom comparator instead of relying on actual type A equals method for incoming assertion checks.

      The custom comparator is bound to assertion instance, meaning that if a new assertion instance is created, the default comparison strategy will be used.

      Examples :

       // frodo and sam are instances of Character with Hobbit race (obviously :).
       // raceComparator implements Comparator<Character>
       assertThat(frodo).usingComparator(raceComparator, "Hobbit Race Comparator").isEqualTo(sam);
      Specified by:
      usingComparator in interface Assert<SELF extends AbstractFloatAssert<SELF>,Float>
      Overrides:
      usingComparator in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Parameters:
      customComparator - the comparator to use for the incoming assertion checks.
      customComparatorDescription - comparator description to be used in assertion error messages
      Returns:
      this assertion object.
    • usingDefaultComparator

      public SELF usingDefaultComparator()
      Description copied from class: AbstractAssert
      Revert to standard comparison for the incoming assertion checks.

      This method should be used to disable a custom comparison strategy set by calling usingComparator.

      Specified by:
      usingDefaultComparator in interface Assert<SELF extends AbstractFloatAssert<SELF>,Float>
      Overrides:
      usingDefaultComparator in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
    • isFinite

      public SELF isFinite()
      Verifies that the float value is a finite floating-point value.

      Example:

       // assertion succeeds
       assertThat(1.0f).isFinite();
      
       // assertions fail
       assertThat(Float.NaN).isFinite();
       assertThat(Float.NEGATIVE_INFINITY).isFinite();
       assertThat(Float.POSITIVE_INFINITY).isFinite();
      Specified by:
      isFinite in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is not a finite floating-point value.
      AssertionError - if the actual value is null.
      Since:
      3.19.0
      See Also:
    • isNotFinite

      public SELF isNotFinite()
      Verifies that the float value is not a finite floating-point value.

      Note that 'not finite' is not equivalent to infinite as `NaN` is neither finite or infinite.

      Example:

       // assertions succeed
       assertThat(Float.POSITIVE_INFINITY).isNotFinite();
       assertThat(Float.NEGATIVE_INFINITY).isNotFinite();
       assertThat(Float.NaN).isNotFinite();
      
       // assertion fails
       assertThat(1.0f).isNotFinite();
      Specified by:
      isNotFinite in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value is a finite floating-point value.
      AssertionError - if the actual value is null.
      Since:
      3.20.0
      See Also:
    • isInfinite

      public SELF isInfinite()
      Verifies that the float value represents positive infinity or negative infinity.

      Examples:

       // assertions succeed
       assertThat(Float.NEGATIVE_INFINITY).isInfinite();
       assertThat(Float.POSITIVE_INFINITY).isInfinite();
      
       // assertions fail
       assertThat(1.0f).isInfinite();
       assertThat(Float.NaN).isInfinite();
      Specified by:
      isInfinite in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value represents neither positive infinity nor negative infinity.
      AssertionError - if the actual value is null.
      Since:
      3.19.0
      See Also:
    • isNotInfinite

      public SELF isNotInfinite()
      Verifies that the float value represents neither positive infinity nor negative infinity.

      Examples:

       // assertions succeed
       assertThat(1.0f).isNotInfinite();
       assertThat(Float.NaN).isNotInfinite();
      
       // assertions fail
       assertThat(Float.POSITIVE_INFINITY).isNotInfinite();
       assertThat(Float.NEGATIVE_INFINITY).isNotInfinite();
      Specified by:
      isNotInfinite in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,Float>
      Returns:
      this assertion object.
      Throws:
      AssertionError - if the actual value represents positive infinity or negative infinity.
      AssertionError - if the actual value is null.
      Since:
      3.20.0
      See Also: