13.3. Faker
Random test-data generator.
The Faker struct produces random values for every built-in type
(integers, floats, vectors, strings, dates, booleans) using
configurable ranges. Used by fuzzer for fuzz testing.
All functions and symbols are in “faker” module, use require to get access to it.
require daslib/faker
13.3.1. Structures
- Faker
Instance of the faker with all the settings inside.
- Fields:
min_year : uint = 0x7bc - minimal faker’s year
total_years : uint = 0x2a - faker year’s range
rnd : iterator<uint> = each_random_uint(13) - fakers random number generator
max_long_string : uint = 0x1000 - maximal length of generated string
13.3.2. Constructor
- Faker(rng: iterator<uint>): Faker
Constructs a Faker instance with the given random number generator.
- Arguments:
rng : iterator<uint>
13.3.3. Random values
- random_double(faker: Faker): double
Generates random double.
- Arguments:
faker : Faker
- random_float(faker: Faker): float
Generates random float.
- Arguments:
faker : Faker
- random_float2(faker: Faker): float2
Generates random float2.
- Arguments:
faker : Faker
- random_float3(faker: Faker): float3
Generates random float3.
- Arguments:
faker : Faker
- random_float3x3(faker: Faker): float3x3
Generates random float3x3.
- Arguments:
faker : Faker
- random_float3x4(faker: Faker): float3x4
Generates random float3x4.
- Arguments:
faker : Faker
- random_float4(faker: Faker): float4
Generates random float4.
- Arguments:
faker : Faker
- random_float4x4(faker: Faker): float4x4
Generates random float4x4.
- Arguments:
faker : Faker
- random_int(faker: Faker): int
Generates random integer.
- Arguments:
faker : Faker
- random_int16(faker: Faker): int16
Generates random int16.
- Arguments:
faker : Faker
- random_int2(faker: Faker): int2
Generates random int2.
- Arguments:
faker : Faker
- random_int3(faker: Faker): int3
Generates random int3.
- Arguments:
faker : Faker
- random_int4(faker: Faker): int4
Generates random int4.
- Arguments:
faker : Faker
- random_int64(faker: Faker): int64
Generates random int64
- Arguments:
faker : Faker
- random_int8(faker: Faker): int8
Generates random int8.
- Arguments:
faker : Faker
- random_range(faker: Faker): range
Generates random range.
- Arguments:
faker : Faker
- random_range64(faker: Faker): range64
Generates random range64.
- Arguments:
faker : Faker
- random_uint(faker: Faker): uint
Generates random unsigned integer.
- Arguments:
faker : Faker
- random_uint16(faker: Faker): uint16
Generates random uint16.
- Arguments:
faker : Faker
- random_uint2(faker: Faker): uint2
Generates random uint2.
- Arguments:
faker : Faker
- random_uint3(faker: Faker): uint3
Generates random uint3.
- Arguments:
faker : Faker
- random_uint4(faker: Faker): uint4
Generates random uint4.
- Arguments:
faker : Faker
- random_uint64(faker: Faker): uint64
Generates random uint64
- Arguments:
faker : Faker
- random_uint8(faker: Faker): uint8
Generates random uint8.
- Arguments:
faker : Faker
- random_urange(faker: Faker): urange
Generates random urange.
- Arguments:
faker : Faker
- random_urange64(faker: Faker): urange64
Generates random urange64.
- Arguments:
faker : Faker
13.3.4. Random strings
- any_char(faker: Faker): int
Generates random char. (1 to 255 range)
- Arguments:
faker : Faker
- any_enum(faker: Faker; enum_value: auto(TT)): TT
Generates random enumeration value.
- Arguments:
faker : Faker
enum_value : auto(TT)
- any_file_name(faker: Faker): string
Generates random file name.
- Arguments:
faker : Faker
- any_float(faker: Faker): string
Generates random float string.
- Arguments:
faker : Faker
- any_hex(faker: Faker): string
Generates random integer hex string.
- Arguments:
faker : Faker
- any_int(faker: Faker): string
Generates random integer string.
- Arguments:
faker : Faker
- any_set(faker: Faker): uint[8]
Generates random set (uint[8])
- Arguments:
faker : Faker
- any_string(faker: Faker): string
Generates a string of random characters. The string is anywhere between 0 and regex::re_gen_get_rep_limit() characters long.
- Arguments:
faker : Faker
- any_uint(faker: Faker): string
Generates random unsigned integer string.
- Arguments:
faker : Faker
- long_string(faker: Faker): string
Generates a long string of random characters. The string is anywhere between 0 and faker.max_long_string characters long.
- Arguments:
faker : Faker
- number(faker: Faker): string
Generates random number string.
- Arguments:
faker : Faker
- positive_int(faker: Faker): string
Generates random positive integer string.
- Arguments:
faker : Faker
13.3.5. Date and time
- date(faker: Faker): string
Generates random date string.
- Arguments:
faker : Faker
- day(faker: Faker): string
Generates random day string.
- Arguments:
faker : Faker
- is_leap_year(year: uint): bool
Returns true if year is leap year.
- Arguments:
year : uint
- month(faker: Faker): string
Generates random month string.
- Arguments:
faker : Faker
13.3.5.1. week_day
- week_day(year: uint; month: uint; day: uint): int
Returns week day for given date.
- Arguments:
year : uint
month : uint
day : uint
- week_day(year: int; month: int; day: int): int