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: int; month: int; day: int): int¶
Returns week day for given date.
- Arguments:
year : int
month : int
day : int
- week_day(year: uint; month: uint; day: uint): int