X-Git-Url: http://git.draconx.ca/gitweb/cdecl99.git/blobdiff_plain/1c3b0c0e6f9339e76e42f6393e554c7dfc58e205..bc35d987289cb3815a2b59d99c05034cc13a8f40:/t/test.h diff --git a/t/test.h b/t/test.h index 5ffe291..091ad88 100644 --- a/t/test.h +++ b/t/test.h @@ -1,5 +1,5 @@ /* - * Copyright © 2012, 2020 Nick Bowler + * Copyright © 2012, 2020, 2022-2023 Nick Bowler * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -59,13 +59,16 @@ struct test_rng *test_rng_alloc(const char *seed); void test_rng_free(struct test_rng *rng); /* - * Return a random value uniformly on the half-open interval [0,1) + * Return a random integer uniformly on the closed interval [0, limit-1] */ -double test_rng_uniform(struct test_rng *rng); +unsigned test_rng_uniform_int(struct test_rng *rng, unsigned limit); /* - * Return a random integer uniformly on the closed interval [0, limit-1] + * Return false or true with 50% probablility either way. */ -unsigned test_rng_uniform_int(struct test_rng *rng, unsigned limit); +static inline int test_rng_50_50(struct test_rng *rng) +{ + return test_rng_uniform_int(rng, 2) == 0; +} #endif