Class NumberAssert<T extends Number & Comparable<T>>

java.lang.Object
cloud.opencode.base.test.assertion.NumberAssert<T>
Type Parameters:
T - the number type | 数值类型

public final class NumberAssert<T extends Number & Comparable<T>> extends Object
Number Assert - Fluent assertions for numbers 数值断言 - 数值的流式断言

Provides comprehensive assertion methods for numeric types.

为数值类型提供全面的断言方法。

Features | 主要功能:

  • Positivity/negativity/zero checks - 正/负/零检查
  • Comparison assertions (greater, less, between) - 比较断言(大于、小于、范围内)
  • Proximity assertions (closeTo) - 近似断言
  • Parity checks (even, odd) - 奇偶检查

Usage Examples | 使用示例:

NumberAssert.assertThat(42)
    .isPositive()
    .isGreaterThan(0)
    .isLessThan(100)
    .isBetween(1, 50);

Security | 安全性:

  • Thread-safe: No (not designed for concurrent use) - 线程安全: 否(非设计用于并发使用)
  • Null-safe: Yes (validates non-null number) - 空值安全: 是(验证非空数值)
Since:
JDK 25, opencode-base-test V1.0.0
Author:
Leon Soo www.LeonSoo.com
See Also:
  • Method Details

    • assertThat

      public static <T extends Number & Comparable<T>> NumberAssert<T> assertThat(T actual)
      Creates assertion for number. 为数值创建断言。
      Type Parameters:
      T - the number type | 数值类型
      Parameters:
      actual - the actual number | 实际数值
      Returns:
      the assertion | 断言
    • assertThat

      public static NumberAssert<Integer> assertThat(int actual)
      Creates assertion for int. 为int创建断言。
      Parameters:
      actual - the actual int | 实际int
      Returns:
      the assertion | 断言
    • assertThat

      public static NumberAssert<Long> assertThat(long actual)
      Creates assertion for long. 为long创建断言。
      Parameters:
      actual - the actual long | 实际long
      Returns:
      the assertion | 断言
    • assertThat

      public static NumberAssert<Double> assertThat(double actual)
      Creates assertion for double. 为double创建断言。
      Parameters:
      actual - the actual double | 实际double
      Returns:
      the assertion | 断言
    • isNull

      public NumberAssert<T> isNull()
      Asserts that number is null. 断言数值为null。
      Returns:
      this | 此对象
    • isNotNull

      public NumberAssert<T> isNotNull()
      Asserts that number is not null. 断言数值不为null。
      Returns:
      this | 此对象
    • isEqualTo

      public NumberAssert<T> isEqualTo(T expected)
      Asserts that number equals another. 断言数值等于另一个。
      Parameters:
      expected - the expected number | 期望数值
      Returns:
      this | 此对象
    • isZero

      public NumberAssert<T> isZero()
      Asserts that number is zero. 断言数值为零。
      Returns:
      this | 此对象
    • isNotZero

      public NumberAssert<T> isNotZero()
      Asserts that number is not zero. 断言数值不为零。
      Returns:
      this | 此对象
    • isPositive

      public NumberAssert<T> isPositive()
      Asserts that number is positive. 断言数值为正。
      Returns:
      this | 此对象
    • isNegative

      public NumberAssert<T> isNegative()
      Asserts that number is negative. 断言数值为负。
      Returns:
      this | 此对象
    • isNotNegative

      public NumberAssert<T> isNotNegative()
      Asserts that number is not negative. 断言数值非负。
      Returns:
      this | 此对象
    • isNotPositive

      public NumberAssert<T> isNotPositive()
      Asserts that number is not positive. 断言数值非正。
      Returns:
      this | 此对象
    • isGreaterThan

      public NumberAssert<T> isGreaterThan(T other)
      Asserts that number is greater than. 断言数值大于。
      Parameters:
      other - the other number | 其他数值
      Returns:
      this | 此对象
    • isGreaterThanOrEqualTo

      public NumberAssert<T> isGreaterThanOrEqualTo(T other)
      Asserts that number is greater than or equal to. 断言数值大于等于。
      Parameters:
      other - the other number | 其他数值
      Returns:
      this | 此对象
    • isLessThan

      public NumberAssert<T> isLessThan(T other)
      Asserts that number is less than. 断言数值小于。
      Parameters:
      other - the other number | 其他数值
      Returns:
      this | 此对象
    • isLessThanOrEqualTo

      public NumberAssert<T> isLessThanOrEqualTo(T other)
      Asserts that number is less than or equal to. 断言数值小于等于。
      Parameters:
      other - the other number | 其他数值
      Returns:
      this | 此对象
    • isBetween

      public NumberAssert<T> isBetween(T start, T end)
      Asserts that number is between (inclusive). 断言数值在范围内(包含边界)。
      Parameters:
      start - the start | 开始
      end - the end | 结束
      Returns:
      this | 此对象
    • isStrictlyBetween

      public NumberAssert<T> isStrictlyBetween(T start, T end)
      Asserts that number is strictly between (exclusive). 断言数值在范围内(不包含边界)。
      Parameters:
      start - the start | 开始
      end - the end | 结束
      Returns:
      this | 此对象
    • isCloseTo

      public NumberAssert<T> isCloseTo(T expected, T offset)
      Asserts that number is close to with offset. 断言数值接近(带偏移量)。
      Parameters:
      expected - the expected number | 期望数值
      offset - the offset | 偏移量
      Returns:
      this | 此对象
    • isEven

      public NumberAssert<T> isEven()
      Asserts that number is even. 断言数值为偶数。
      Returns:
      this | 此对象
    • isOdd

      public NumberAssert<T> isOdd()
      Asserts that number is odd. 断言数值为奇数。
      Returns:
      this | 此对象