Interface NumberGeneratorSpec<T extends Number>

Type Parameters:
T - type of number
All Superinterfaces:
GeneratorSpec<T>, NullableGeneratorSpec<T>
All Known Subinterfaces:
BigDecimalAsGeneratorSpec, BigDecimalGeneratorSpec, BigDecimalSpec, BigIntegerSpec, ByteSpec, DoubleSpec, FloatSpec, IntegerSpec, LongSpec, NumberAsGeneratorSpec<T>, NumberSpec<T>, ShortSpec

public interface NumberGeneratorSpec<T extends Number> extends NullableGeneratorSpec<T>
Generator spec for numeric types.
Since:
1.0.1
  • Method Details

    • min

      NumberGeneratorSpec<T> min(T min)
      Specifies the lower bound.
      Parameters:
      min - lower bound (inclusive)
      Returns:
      spec builder
      Since:
      1.0.1
    • max

      NumberGeneratorSpec<T> max(T max)
      Specifies the upper bound.
      Parameters:
      max - upper bound (inclusive)
      Returns:
      spec builder
      Since:
      1.0.1
    • range

      NumberGeneratorSpec<T> range(T min, T max)
      Specifies the range for generated numbers.

      The following examples use int, however the same principle applies to all numeric types, including BigInteger and BigDecimal.

      This method can be invoked multiple times to specify several ranges, for example, the following will generate a random value within [10-15] or [20-25]:

      
         ints().range(10, 15).range(20, 25)
       
      Note: this method has higher precedence than min(Number) and max(Number). For example, the following will generate a number within [1, 5]:
      
         ints().range(1, 5).min(95).max(99)
       
      Parameters:
      min - lower bound (inclusive)
      max - upper bound (inclusive)
      Returns:
      spec builder
      Since:
      1.1.2
    • nullable

      NumberGeneratorSpec<T> nullable()
      Specifies that a null can be generated.
      Specified by:
      nullable in interface NullableGeneratorSpec<T extends Number>
      Returns:
      spec builder
      Since:
      1.0.1