mirror of
https://github.com/catchorg/Catch2.git
synced 2025-09-17 18:35:40 +02:00
Introduce Catch's own RNG based on the PCG family of RNGs
In the future, we will also want to introduce our own `uniform_int_distribution` and `uniform_real_distribution` to get repeatable test runs across different platforms.
This commit is contained in:
@@ -2529,6 +2529,41 @@ Nor would this
|
||||
</Expression>
|
||||
<OverallResult success="true"/>
|
||||
</TestCase>
|
||||
<TestCase name="Comparison ops" tags="[rng]" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
SimplePcg32{} == SimplePcg32{}
|
||||
</Original>
|
||||
<Expanded>
|
||||
{?} == {?}
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
SimplePcg32{ 0 } != SimplePcg32{}
|
||||
</Original>
|
||||
<Expanded>
|
||||
{?} != {?}
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
!(SimplePcg32{ 1 } == SimplePcg32{ 2 })
|
||||
</Original>
|
||||
<Expanded>
|
||||
!({?} == {?})
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
!(SimplePcg32{ 1 } != SimplePcg32{ 1 })
|
||||
</Original>
|
||||
<Expanded>
|
||||
!({?} != {?})
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<OverallResult success="true"/>
|
||||
</TestCase>
|
||||
<TestCase name="Comparison with explicitly convertible types" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
|
||||
<Original>
|
||||
@@ -6728,6 +6763,165 @@ Nor would this
|
||||
</Expression>
|
||||
<OverallResult success="true"/>
|
||||
</TestCase>
|
||||
<TestCase name="Our PCG implementation provides expected results for known seeds" tags="[rng]" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Section name="Default seeded" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
4242248763 (0x<hex digits>)
|
||||
==
|
||||
4242248763 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
1867888929 (0x<hex digits>)
|
||||
==
|
||||
1867888929 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
1276619030 (0x<hex digits>)
|
||||
==
|
||||
1276619030 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
1911218783 (0x<hex digits>)
|
||||
==
|
||||
1911218783 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
1827115164 (0x<hex digits>)
|
||||
==
|
||||
1827115164 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<OverallResults successes="5" failures="0" expectedFailures="0"/>
|
||||
</Section>
|
||||
<Section name="Specific seed" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
1472234645 (0x<hex digits>)
|
||||
==
|
||||
1472234645 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
868832940 (0x<hex digits>)
|
||||
==
|
||||
868832940 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
570883446 (0x<hex digits>)
|
||||
==
|
||||
570883446 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
889299803 (0x<hex digits>)
|
||||
==
|
||||
889299803 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
4261393167 (0x<hex digits>)
|
||||
==
|
||||
4261393167 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
1472234645 (0x<hex digits>)
|
||||
==
|
||||
1472234645 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
868832940 (0x<hex digits>)
|
||||
==
|
||||
868832940 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
570883446 (0x<hex digits>)
|
||||
==
|
||||
570883446 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
889299803 (0x<hex digits>)
|
||||
==
|
||||
889299803 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
|
||||
<Original>
|
||||
rng() == 0x<hex digits>
|
||||
</Original>
|
||||
<Expanded>
|
||||
4261393167 (0x<hex digits>)
|
||||
==
|
||||
4261393167 (0x<hex digits>)
|
||||
</Expanded>
|
||||
</Expression>
|
||||
<OverallResults successes="10" failures="0" expectedFailures="0"/>
|
||||
</Section>
|
||||
<OverallResult success="true"/>
|
||||
</TestCase>
|
||||
<TestCase name="Output from all sections is reported" tags="[.][failing][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
|
||||
<Section name="one" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
|
||||
<Failure filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
|
||||
@@ -14923,7 +15117,7 @@ loose text artifact
|
||||
</Section>
|
||||
<OverallResult success="true"/>
|
||||
</TestCase>
|
||||
<OverallResults successes="1418" failures="149" expectedFailures="21"/>
|
||||
<OverallResults successes="1437" failures="149" expectedFailures="21"/>
|
||||
</Group>
|
||||
<OverallResults successes="1418" failures="148" expectedFailures="21"/>
|
||||
<OverallResults successes="1437" failures="148" expectedFailures="21"/>
|
||||
</Catch>
|
||||
|
Reference in New Issue
Block a user