generateValue static method

dynamic generateValue(
  1. DataType dataType
)

Generate random value for a data type

Implementation

static dynamic generateValue(DataType dataType) {
  _seed = (_seed * 1103515245 + 12345) & 0x7FFFFFFF;
  final rand = _seed / 0x7FFFFFFF;

  switch (dataType) {
    case DataType.uint16:
      return (_seed & 0xFFFF);
    case DataType.int16:
      return ((_seed & 0xFFFF) - 32768);
    case DataType.uint32:
      return _seed & 0xFFFFFFFF;
    case DataType.int32:
      return (_seed & 0xFFFFFFFF) - 0x7FFFFFFF;
    case DataType.float32:
      return rand * 100.0;
    case DataType.float64:
      return rand * 1000.0;
    case DataType.bool:
      return (_seed & 1) == 1;
    case DataType.string:
      final chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
      final length = 8 + (_seed % 8);
      return List.generate(
              length, (i) => chars[(_seed + i * 17) % chars.length])
          .join();
  }
}