diff options
author | DongHun Kwak <dh0128.kwak@samsung.com> | 2019-12-05 15:21:30 +0900 |
---|---|---|
committer | DongHun Kwak <dh0128.kwak@samsung.com> | 2019-12-05 15:21:30 +0900 |
commit | d6a306e745acfee00e81ccaf3324a2a03516db41 (patch) | |
tree | 145a26368608982f40ebb0f4836185c44abb9ae4 /libs/uuid | |
parent | 5ce2ccf2f23c6d3de4c79f216f57ca6f2a18ed16 (diff) | |
download | boost-d6a306e745acfee00e81ccaf3324a2a03516db41.tar.gz boost-d6a306e745acfee00e81ccaf3324a2a03516db41.tar.bz2 boost-d6a306e745acfee00e81ccaf3324a2a03516db41.zip |
Imported Upstream version 1.69.0upstream/1.69.0
Diffstat (limited to 'libs/uuid')
-rw-r--r-- | libs/uuid/README.md | 1 | ||||
-rw-r--r-- | libs/uuid/test/test_bench_random.cpp | 8 | ||||
-rw-r--r-- | libs/uuid/test/test_random_generator.cpp | 75 |
3 files changed, 47 insertions, 37 deletions
diff --git a/libs/uuid/README.md b/libs/uuid/README.md index debf7c40a6..5ce8d02f7c 100644 --- a/libs/uuid/README.md +++ b/libs/uuid/README.md @@ -20,7 +20,6 @@ Branch | Travis | Appveyor | Coverity Scan | codecov.io | Deps | Docs | | Name | Purpose | | ----------- | ------------------------------ | -| `ci` | continuous integration scripts | | `doc` | documentation | | `include` | headers | | `test` | unit tests | diff --git a/libs/uuid/test/test_bench_random.cpp b/libs/uuid/test/test_bench_random.cpp index 9b9a317952..1516a08efe 100644 --- a/libs/uuid/test/test_bench_random.cpp +++ b/libs/uuid/test/test_bench_random.cpp @@ -1,5 +1,5 @@ // -// Copyright (c) 2017 James E. King III +// Copyright (c) 2017, 2018 James E. King III // // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at @@ -17,8 +17,8 @@ #include <iostream> #include <limits> -#if defined(BOOST_UUID_LIMITED_BENCH) -// must be a Valgrind, UBsan, or other stressful check job +#if !defined(BOOST_NO_STRESS_TEST) +// must be a Valgrind, UBsan, or other stressful job #define AVG_LOOPS 1 #define GEN_LOOPS 10 #define REUSE_LOOPS 100 @@ -83,7 +83,7 @@ int main(int, char*[]) std::cout << "Operating system entropy provider: " << boost::uuids::detail::random_provider().name() << std::endl; -#if !defined(BOOST_UUID_LIMITED_BENCH) +#if !defined(BOOST_NO_STRESS_TEST) // // Determine the cutoff point where it is more wall-clock efficient to diff --git a/libs/uuid/test/test_random_generator.cpp b/libs/uuid/test/test_random_generator.cpp index 9a958b1e25..273d11f6a6 100644 --- a/libs/uuid/test/test_random_generator.cpp +++ b/libs/uuid/test/test_random_generator.cpp @@ -70,22 +70,37 @@ int main(int, char*[]) using namespace boost::uuids; // default random number generator - random_generator uuid_gen1; - check_random_generator(uuid_gen1); + { + random_generator uuid_gen1; + check_random_generator(uuid_gen1); +#if !BOOST_LIB_C_CLOUDABI + // dump 10 of them to cout for observation + for (size_t i = 0; i < 10; ++i) + { + std::cout << uuid_gen1() << std::endl; + } +#endif + } // specific random number generator - basic_random_generator<boost::rand48> uuid_gen2; - check_random_generator(uuid_gen2); - + { + basic_random_generator<boost::rand48> uuid_gen2; + check_random_generator(uuid_gen2); + } + // pass by reference - boost::ecuyer1988 ecuyer1988_gen; - basic_random_generator<boost::ecuyer1988> uuid_gen3(ecuyer1988_gen); - check_random_generator(uuid_gen3); + { + boost::ecuyer1988 ecuyer1988_gen; + basic_random_generator<boost::ecuyer1988> uuid_gen3(ecuyer1988_gen); + check_random_generator(uuid_gen3); + } // pass by pointer - boost::lagged_fibonacci607 lagged_fibonacci607_gen; - basic_random_generator<boost::lagged_fibonacci607> uuid_gen4(&lagged_fibonacci607_gen); - check_random_generator(uuid_gen4); + { + boost::lagged_fibonacci607 lagged_fibonacci607_gen; + basic_random_generator<boost::lagged_fibonacci607> uuid_gen4(&lagged_fibonacci607_gen); + check_random_generator(uuid_gen4); + } // check move construction { @@ -113,34 +128,30 @@ int main(int, char*[]) // there was a bug in basic_random_generator where it did not // produce very random numbers. This checks for that bug. - random_generator_mt19937 bulkgen; - uuid u = bulkgen(); - if ((u.data[4] == u.data[12]) && - (u.data[5] == u.data[9] && u.data[5] == u.data[13]) && - (u.data[7] == u.data[11] && u.data[7] == u.data[15]) && - (u.data[10] == u.data[14])) { - BOOST_ERROR("basic_random_generator is not producing random uuids"); + random_generator_mt19937 bulkgen; + uuid u = bulkgen(); + if ((u.data[4] == u.data[12]) && + (u.data[5] == u.data[9] && u.data[5] == u.data[13]) && + (u.data[7] == u.data[11] && u.data[7] == u.data[15]) && + (u.data[10] == u.data[14])) + { + BOOST_ERROR("basic_random_generator is not producing random uuids"); + } + + // pseudo + check_random_generator(bulkgen); } - // pseudo - check_random_generator(bulkgen); - // make sure default construction seeding is happening for PRNGs - random_generator_mt19937 gen1; - random_generator_mt19937 gen2; - BOOST_TEST_NE(gen1(), gen2()); + { + random_generator_mt19937 gen1; + random_generator_mt19937 gen2; + BOOST_TEST_NE(gen1(), gen2()); + } // The example code snippet in the documentation test_examples(); -#if !BOOST_LIB_C_CLOUDABI - // dump 10 of them to cout for observation - for (size_t i = 0; i < 10; ++i) - { - std::cout << uuid_gen1() << std::endl; - } -#endif - return boost::report_errors(); } |