Class AbstractFloatAssert<SELF extends AbstractFloatAssert<SELF>>

    • Field Detail

      • NEGATIVE_ZERO

        private static final java.lang.Float NEGATIVE_ZERO
      • isPrimitive

        private boolean isPrimitive
    • Constructor Detail

      • AbstractFloatAssert

        public AbstractFloatAssert​(java.lang.Float actual,
                                   java.lang.Class<?> selfType)
      • AbstractFloatAssert

        public AbstractFloatAssert​(float actual,
                                   java.lang.Class<?> selfType)
    • Method Detail

      • isNaN

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

        Example:

         // assertions will pass
         assertThat(Double.NaN).isNaN();
         assertThat(0.0 / 0.0).isNaN();
         assertThat(0.0F * Float.POSITIVE_INFINITY).isNaN();
         
         // assertions will fail
         assertThat(1.0).isNaN();
         assertThat(-1.0F).isNaN();

        Specified by:
        isNaN in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Returns:
        this assertion object.
      • isNotNaN

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

        Example:

         // assertions will pass
         assertThat(1.0).isNotNaN();
         assertThat(-1.0F).isNotNaN();
         
         // assertions will 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>,​java.lang.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.

        Example:

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

        private void assertIsPrimitiveZero()
      • assertIsPrimitiveNonZero

        private void assertIsPrimitiveNonZero()
      • 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.

        Example:

         // 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>,​java.lang.Float>
        Returns:
        this assertion object.
        Throws:
        java.lang.AssertionError - if the actual value is null.
        java.lang.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>,​java.lang.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>,​java.lang.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>,​java.lang.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>,​java.lang.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>,​java.lang.Float>
        Returns:
        this assertion object.
      • isEqualTo

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

        Example:

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

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

        public SELF isCloseTo​(float expected,
                              Offset<java.lang.Float> 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:

         // assertion will pass:
         assertThat(8.1f).isCloseTo(8.2f, within(0.2f));
        
         // you can use offset if you prefer
         assertThat(8.1f).isCloseTo(8.2f, offset(0.2f));
        
         // if difference is exactly equals to 0.1, it's ok
         assertThat(8.1f).isCloseTo(8.2f, within(0.1f));
        
         // assertion will fail
         assertThat(8.1f).isCloseTo(8.2f, within(0.01f));
        Beware that java floating point number precision might have some unexpected behavior, e.g. the assertion below fails:
          // fails because 8.1f - 8.0f is evaluated to 0.10000038f in java.
         assertThat(8.1f).isCloseTo(8.0f, within(0.1f));
        Parameters:
        expected - the given number to compare the actual value to.
        offset - the given positive offset.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given offset is null.
        java.lang.AssertionError - if the actual value is not close to the given one.
      • isNotCloseTo

        public SELF isNotCloseTo​(float expected,
                                 Offset<java.lang.Float> 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:

         // assertion will pass:
         assertThat(8.1f).isNotCloseTo(8.2f, byLessThan(0.01f));
        
         // you can use offset if you prefer
         assertThat(8.1f).isNotCloseTo(8.2f, offset(0.01f));
        
         // assertions will fail
         assertThat(8.1f).isNotCloseTo(8.2f, byLessThan(0.1f));
         assertThat(8.1f).isNotCloseTo(8.2f, byLessThan(0.2f));
        Beware that java floating point number precision might have some unexpected behavior.
        Parameters:
        expected - the given number to compare the actual value to.
        offset - the given positive offset.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given offset is null.
        java.lang.AssertionError - if the actual value is close to the given one.
        Since:
        2.6.0 / 3.6.0
        See Also:
        Assertions.byLessThan(Float)
      • isCloseTo

        public SELF isCloseTo​(java.lang.Float expected,
                              Offset<java.lang.Float> 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:

         // assertion will pass:
         assertThat(8.1f).isCloseTo(new Float(8.2f), within(0.2f));
        
         // you can use offset if you prefer
         assertThat(8.1f).isCloseTo(new Float(8.2f), offset(0.2f));
        
         // if difference is exactly equals to the offset (0.1), it's ok
         assertThat(8.1f).isCloseTo(new Float(8.2f), within(0.1f));
        
         // assertion will fail
         assertThat(8.1f).isCloseTo(new Float(8.2f), within(0.01f));
        Beware that java floating point number precision might have some unexpected behavior, e.g. the assertion below fails:
          // fails because 8.1f - 8.0f is evaluated to 0.10000038f in java.
         assertThat(8.1f).isCloseTo(new Float(8.0f), within(0.1f));
        Specified by:
        isCloseTo in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Specified by:
        isCloseTo in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Parameters:
        expected - the given number to compare the actual value to.
        offset - the given positive offset.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given offset is null.
        java.lang.NullPointerException - if the other number is null.
        java.lang.AssertionError - if the actual value is not close to the given one.
      • isNotCloseTo

        public SELF isNotCloseTo​(java.lang.Float expected,
                                 Offset<java.lang.Float> 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:

         // assertion will pass:
         assertThat(8.1f).isNotCloseTo(new Float(8.2f), within(0.01f));
        
         // you can use offset if you prefer
         assertThat(8.1f).isNotCloseTo(new Float(8.2f), offset(0.01f));
        
         // assertions will fail
         assertThat(8.1f).isNotCloseTo(new Float(8.2f), within(0.1f));
         assertThat(8.1f).isNotCloseTo(new Float(8.2f), within(0.2f));
        Beware that java floating point number precision might have some unexpected behavior.
        Specified by:
        isNotCloseTo in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Specified by:
        isNotCloseTo in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Parameters:
        expected - the given number to compare the actual value to.
        offset - the given positive offset.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given offset is null.
        java.lang.NullPointerException - if the other number is null.
        java.lang.AssertionError - if the actual value is close to the given one.
        Since:
        2.6.0 / 3.6.0
        See Also:
        Assertions.byLessThan(Float)
      • isCloseTo

        public SELF isCloseTo​(java.lang.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>,​java.lang.Float>
        Parameters:
        expected - the given number to compare the actual value to.
        percentage - the given positive percentage.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given offset is null.
        java.lang.NullPointerException - if the expected number is null.
        java.lang.AssertionError - if the actual value is not close to the given one.
      • isNotCloseTo

        public SELF isNotCloseTo​(java.lang.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>,​java.lang.Float>
        Parameters:
        expected - the given number to compare the actual value to.
        percentage - the given positive percentage.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given offset is null.
        java.lang.NullPointerException - if the expected number is null.
        java.lang.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:
        java.lang.NullPointerException - if the given offset is null.
        java.lang.NullPointerException - if the expected number is null.
        java.lang.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:
        java.lang.NullPointerException - if the given offset is null.
        java.lang.NullPointerException - if the expected number is null.
        java.lang.AssertionError - if the actual value is close to the given one.
        Since:
        2.6.0 / 3.6.0
      • isEqualTo

        public SELF isEqualTo​(java.lang.Float expected,
                              Offset<java.lang.Float> offset)
        Verifies that the actual value is close to the given one by less than the given offset.
        If difference is equal to offset value, assertion is considered valid.

        Example with double:

         // assertion will pass:
         assertThat(8.1).isEqualTo(new Double(8.0), offset(0.2));
        
         // if difference is exactly equals to the offset (0.1), it's ok
         assertThat(8.1).isEqualTo(new Double(8.0), offset(0.1));
        
         // within is an alias of offset
         assertThat(8.1).isEqualTo(new Double(8.0), within(0.1));
        
         // assertion will fail
         assertThat(8.1).isEqualTo(new Double(8.0), offset(0.01));
        Specified by:
        isEqualTo in interface FloatingPointNumberAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Parameters:
        expected - the given value to compare the actual value to.
        offset - the given positive offset.
        Returns:
        this assertion object.
      • isEqualTo

        public SELF isEqualTo​(float expected,
                              Offset<java.lang.Float> offset)
        Verifies that the actual value is close to the given one by less than the given offset.
        If difference is equal to offset value, assertion is considered valid.

        Example:

         // assertion will pass
         assertThat(8.1f).isEqualTo(8.2f, offset(0.1f));
        
         // within is an alias of offset
         assertThat(8.1f).isEqualTo(8.2f, within(0.1f));
        
         // assertion will fail
         assertThat(8.1f).isEqualTo(8.2f, offset(0.01f));
        Beware that java floating point number precision might have some unexpected behavior, e.g. the assertion below fails:
          // fails because 8.1f - 8.0f is evaluated to 0.10000038f in java.
         assertThat(8.1f).isEqualTo(8.0f, offset(0.1f));
        Parameters:
        expected - the given value to compare the actual value to.
        offset - the given positive offset.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given offset is null.
        java.lang.AssertionError - if the actual value is null.
        java.lang.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.

        Example:

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

        Parameters:
        other - the given value to compare the actual value to.
        Returns:
        this assertion object.
        Throws:
        java.lang.AssertionError - if the actual value is null.
        java.lang.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.

        Example:

         // 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:
        java.lang.AssertionError - if the actual value is null.
        java.lang.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.

        Example:

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

        Parameters:
        other - the given value to compare the actual value to.
        Returns:
        this assertion object.
        Throws:
        java.lang.AssertionError - if the actual value is null.
        java.lang.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.

        Example:

         // 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:
        java.lang.AssertionError - if the actual value is null.
        java.lang.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.

        Example:

         // assertions will pass:
         assertThat(2.0f).isGreaterThanOrEqualTo(1.0f);
         assertThat(1.0f).isGreaterThanOrEqualTo(1.0f);
         
         // assertions will fail:
         assertThat(1.0f).isGreaterThanOrEqualTo(2.0f);
         assertThat(1.0f).isGreaterThanOrEqualTo(0.99f);

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

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

        Example:

         // assertions succeed
         assertThat('b').isBetween('a', 'c');
         assertThat('a').isBetween('a', 'b');
         assertThat('b').isBetween('a', 'b');
         
         // assertions fail
         assertThat('a').isBetween('b', 'c');
         assertThat('c').isBetween('a', 'b');
        Specified by:
        isBetween in interface ComparableAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Specified by:
        isBetween in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Overrides:
        isBetween in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.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​(java.lang.Float start,
                                      java.lang.Float end)
        Verifies that the actual value is in ]start, end[ range (start excluded, end excluded).

        Example:

         // assertion succeeds
         assertThat('b').isStrictlyBetween('a', 'c');
         
         // assertions fail
         assertThat('d').isStrictlyBetween('a', 'c');
         assertThat('a').isStrictlyBetween('b', 'd');
         assertThat('a').isStrictlyBetween('a', 'b');
         assertThat('b').isStrictlyBetween('a', 'b');
        Specified by:
        isStrictlyBetween in interface ComparableAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Specified by:
        isStrictlyBetween in interface NumberAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Overrides:
        isStrictlyBetween in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.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​(java.util.Comparator<? super java.lang.Float> customComparator)
        Description copied from class: AbstractAssert
        Use 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:
        usingComparator in interface Assert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Overrides:
        usingComparator in class AbstractComparableAssert<SELF extends AbstractFloatAssert<SELF>,​java.lang.Float>
        Parameters:
        customComparator - the comparator to use for incoming assertion checks.
        Returns:
        this assertion object.