Testing module

generator

procedureextensionsince 0.30.0Source

Wraps make as a Custom_Generator for run_property.

Example
even :: (rng: *Rng) -> s64 { return rng_range(rng, -500, 500) * 2; }

run_property(t, (n: s64) { expect_equal(n % 2, 0); }, 20, .[generator(even)]);
generator :: ($make: (rng: *Rng) -> $T) -> Custom_Generator

Wraps make as a Custom_Generator for run_property.

Parameters

$make: (rng: *Rng) -> $T
draws one value from the Rng; its return type is the type the generator serves.

Returns

Example
even :: (rng: *Rng) -> s64 { return rng_range(rng, -500, 500) * 2; }

run_property(t, (n: s64) { expect_equal(n % 2, 0); }, 20, .[generator(even)]);

See also