50 BOOST_CHECK_EQUAL(7, ctx.rand_uniform_delay(time_point, 9s).time_since_epoch().count());
51 BOOST_CHECK_EQUAL(-6, ctx.rand_uniform_delay(time_point, -9s).time_since_epoch().count());
52 BOOST_CHECK_EQUAL(1, ctx.rand_uniform_delay(time_point, 0s).time_since_epoch().count());
53 BOOST_CHECK_EQUAL(4652286523065884857, ctx.rand_uniform_delay(time_point, 9223372036854775807s).time_since_epoch().count());
54 BOOST_CHECK_EQUAL(-8813961240025683129, ctx.rand_uniform_delay(time_point, -9223372036854775807s).time_since_epoch().count());
55 BOOST_CHECK_EQUAL(26443, ctx.rand_uniform_delay(time_point, 9h).time_since_epoch().count());
71 using duration = std::chrono::microseconds;
199 for (
int i = 0; i < 100; ++i) {
204 std::vector<int> test{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
205 std::shuffle(test.begin(), test.end(), ctx);
206 for (
int j = 1;
j <= 10; ++
j) {
207 BOOST_CHECK(std::find(test.begin(), test.end(),
j) != test.end());
217 for (
int i = 0; i < 12000; ++i) {
218 int data[5] = {0, 1, 2, 3, 4};
219 std::shuffle(std::begin(data), std::end(data), ctx);
220 int pos = data[0] + data[1] * 5 + data[2] * 25 + data[3] * 125 + data[4] * 625;
223 unsigned int sum = 0;
225 for (
int i = 0; i < 5 * 5 * 5 * 5 * 5; ++i) {
226 int i1 = i % 5,
i2 = (i / 5) % 5,
i3 = (i / 25) % 5,
i4 = (i / 125) % 5,
i5 = i / 625;
constexpr void Reseed(uint64_t seedval) noexcept