diff options
author | Frank Busse <bb0xfb@gmail.com> | 2020-06-25 21:35:25 +0100 |
---|---|---|
committer | Cristian Cadar <c.cadar@imperial.ac.uk> | 2020-07-30 16:44:31 +0100 |
commit | 661fba88fff0205ea258a1149907f2822458cd83 (patch) | |
tree | f9bc1fb96d55d55312dd10b19a0cf94a7ebe89e7 /unittests/RNG/RNGTest.cpp | |
parent | 169022a56d62cdb2f15540a0c592c5f90fdb39cb (diff) | |
download | klee-661fba88fff0205ea258a1149907f2822458cd83.tar.gz |
introduce --rng-initial-seed=<unsigned>
* move global theRNG into Executor * pass theRNG via ctor to searchers * remove some type warnings from RNG.cpp Fixes #1023.
Diffstat (limited to 'unittests/RNG/RNGTest.cpp')
-rw-r--r-- | unittests/RNG/RNGTest.cpp | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/unittests/RNG/RNGTest.cpp b/unittests/RNG/RNGTest.cpp new file mode 100644 index 00000000..218a15a7 --- /dev/null +++ b/unittests/RNG/RNGTest.cpp @@ -0,0 +1,49 @@ +#include "klee/ADT/RNG.h" + +#include "gtest/gtest.h" + +using namespace klee; + +/* test equality with default seed */ +TEST(RNG, InitialSeedEquality) { + RNG noseed; + RNG seed(5489U); + + ASSERT_EQ(noseed.getBool(), seed.getBool()); + ASSERT_EQ(noseed.getInt31(), seed.getInt31()); + ASSERT_EQ(noseed.getInt32(), seed.getInt32()); + ASSERT_EQ(noseed.getDouble(), seed.getDouble()); + ASSERT_EQ(noseed.getDoubleL(), seed.getDoubleL()); + ASSERT_EQ(noseed.getDoubleLR(), seed.getDoubleLR()); + ASSERT_EQ(noseed.getFloat(), seed.getFloat()); + ASSERT_EQ(noseed.getFloatL(), seed.getFloatL()); + ASSERT_EQ(noseed.getFloatLR(), seed.getFloatLR()); +} + + +/* test inequality with default seed */ +TEST(RNG, InitialSeedInEquality) { + RNG noseed; + RNG seed(42U); + + ASSERT_NE(noseed.getInt32(), seed.getInt32()); +} + + +/* test inequality with zero seed */ +TEST(RNG, InitialSeedZeroInEquality) { + RNG noseed; + RNG seed(0U); + + ASSERT_NE(noseed.getInt32(), seed.getInt32()); +} + + +/* test equality with seed provided by ctor and seed() */ +TEST(RNG, SeedEquality) { + RNG noseed; + noseed.seed(42U); + RNG seed(42U); + + ASSERT_EQ(noseed.getInt32(), seed.getInt32()); +} |