Switches Random handling to PCG family, specifically for better cross platform predictability.
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -6,32 +6,31 @@
|
||||
|
||||
TEST_CASE("Random ints", "[Utilities]") {
|
||||
auto rand = Arbutils::Random(10);
|
||||
CHECK(rand.Get() == -982170359);
|
||||
CHECK(rand.Get() == 1283169405);
|
||||
CHECK(rand.Get() == 89128932);
|
||||
CHECK(rand.Get() == 2124247567);
|
||||
CHECK(rand.Get() == -1573468864);
|
||||
CHECK(rand.Get() == 1902734705);
|
||||
CHECK(rand.Get() == -1078879109);
|
||||
CHECK(rand.Get() == -721935204);
|
||||
CHECK(rand.Get() == 2141071321);
|
||||
CHECK(rand.Get() == -1789619491);
|
||||
CHECK(rand.Get() == 1234817989);
|
||||
CHECK(rand.Get() == 1171957426);
|
||||
CHECK(rand.Get() == 275100647);
|
||||
CHECK(rand.Get() == 1033685688);
|
||||
CHECK(rand.Get() == 180895192);
|
||||
CHECK(rand.Get() == 135557292);
|
||||
CHECK(rand.Get() == 716914271);
|
||||
CHECK(rand.Get() == 1012211222);
|
||||
CHECK(rand.Get() == -2109244634);
|
||||
CHECK(rand.Get() == -1647742638);
|
||||
}
|
||||
|
||||
TEST_CASE("Random ints with limit", "[Utilities]") {
|
||||
auto rand = Arbutils::Random(10);
|
||||
CHECK(rand.Get(10) == 7);
|
||||
CHECK(rand.Get(10) == 2);
|
||||
CHECK(rand.Get(10) == 2);
|
||||
CHECK(rand.Get(10) == 0);
|
||||
CHECK(rand.Get(10) == 4);
|
||||
CHECK(rand.Get(10) == 6);
|
||||
CHECK(rand.Get(10) == 4);
|
||||
CHECK(rand.Get(10) == 7);
|
||||
CHECK(rand.Get(10) == 8);
|
||||
CHECK(rand.Get(10) == 4);
|
||||
CHECK(rand.Get(10) == 2);
|
||||
CHECK(rand.Get(10) == 0);
|
||||
CHECK(rand.Get(10) == 0);
|
||||
CHECK(rand.Get(10) == 1);
|
||||
CHECK(rand.Get(10) == 2);
|
||||
CHECK(rand.Get(10) == 5);
|
||||
CHECK(rand.Get(10) == 6);
|
||||
|
||||
CHECK(rand.Get(2) == 0);
|
||||
CHECK(rand.Get(2) == 0);
|
||||
CHECK(rand.Get(2) == 0);
|
||||
CHECK(rand.Get(2) == 1);
|
||||
@@ -39,21 +38,22 @@ TEST_CASE("Random ints with limit", "[Utilities]") {
|
||||
CHECK(rand.Get(2) == 0);
|
||||
CHECK(rand.Get(2) == 0);
|
||||
CHECK(rand.Get(2) == 0);
|
||||
CHECK(rand.Get(2) == 1);
|
||||
CHECK(rand.Get(2) == 0);
|
||||
}
|
||||
|
||||
TEST_CASE("Random ints with upper and bottom", "[Utilities]") {
|
||||
auto rand = Arbutils::Random(10);
|
||||
CHECK(rand.Get(10, 30) == 25);
|
||||
CHECK(rand.Get(10, 30) == 15);
|
||||
CHECK(rand.Get(10, 30) == 15);
|
||||
CHECK(rand.Get(10, 30) == 11);
|
||||
CHECK(rand.Get(10, 30) == 14);
|
||||
CHECK(rand.Get(10, 30) == 10);
|
||||
CHECK(rand.Get(10, 30) == 19);
|
||||
CHECK(rand.Get(10, 30) == 10);
|
||||
CHECK(rand.Get(10, 30) == 13);
|
||||
CHECK(rand.Get(10, 30) == 14);
|
||||
CHECK(rand.Get(10, 30) == 20);
|
||||
CHECK(rand.Get(10, 30) == 22);
|
||||
CHECK(rand.Get(10, 30) == 18);
|
||||
CHECK(rand.Get(10, 30) == 24);
|
||||
CHECK(rand.Get(10, 30) == 26);
|
||||
CHECK(rand.Get(10, 30) == 19);
|
||||
CHECK(rand.Get(10, 30) == 21);
|
||||
}
|
||||
|
||||
TEST_CASE("Random distribution (max 0, min 1)", "[Utilities]") {
|
||||
|
||||
Reference in New Issue
Block a user