mirror of
https://github.com/boostorg/functional.git
synced 2025-08-01 05:24:31 +02:00
Use Boost.Test's minimal test library for unordered & hash. It's closer to
Boster.Test which makes it easier to switch to take advantage of Boost.Test's extra testing facilities. Merged revisions 44420 via svnmerge from https://svn.boost.org/svn/boost/branches/unordered/trunk ........ r44420 | danieljames | 2008-04-14 19:02:03 +0100 (Mon, 14 Apr 2008) | 1 line Use Boost.Test's minimal test library. ........ [SVN r44487]
This commit is contained in:
@@ -77,7 +77,7 @@ static void test(std::pair<X, Y> const&)
|
||||
#include <complex>
|
||||
#include <utility>
|
||||
|
||||
int main()
|
||||
int main(int, char**)
|
||||
{
|
||||
std::deque<int> x1;
|
||||
std::list<std::string> x2;
|
||||
|
@@ -13,7 +13,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -37,11 +37,11 @@ void array_int_test()
|
||||
int array3[2] = {2, 3};
|
||||
HASH_NAMESPACE::hash<int[2]> hasher3;
|
||||
|
||||
BOOST_TEST(hasher1(array1)
|
||||
BOOST_CHECK(hasher1(array1)
|
||||
== HASH_NAMESPACE::hash_range(array1, array1 + length1));
|
||||
BOOST_TEST(hasher2(array2)
|
||||
BOOST_CHECK(hasher2(array2)
|
||||
== HASH_NAMESPACE::hash_range(array2, array2 + length2));
|
||||
BOOST_TEST(hasher3(array3)
|
||||
BOOST_CHECK(hasher3(array3)
|
||||
== HASH_NAMESPACE::hash_range(array3, array3 + length3));
|
||||
}
|
||||
|
||||
@@ -59,17 +59,17 @@ void two_dimensional_array_test()
|
||||
HASH_NAMESPACE::hash_combine(seed1, seed2);
|
||||
}
|
||||
|
||||
BOOST_TEST(hasher(array) == seed1);
|
||||
BOOST_TEST(hasher(array) == HASH_NAMESPACE::hash_range(array, array + 3));
|
||||
BOOST_CHECK(hasher(array) == seed1);
|
||||
BOOST_CHECK(hasher(array) == HASH_NAMESPACE::hash_range(array, array + 3));
|
||||
}
|
||||
|
||||
#endif // TEST_EXTENSIONS
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
array_int_test();
|
||||
two_dimensional_array_test();
|
||||
#endif
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -13,7 +13,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -41,13 +41,13 @@ void generic_complex_tests(std::complex<T> v)
|
||||
{
|
||||
HASH_NAMESPACE::hash<std::complex<T> > complex_hasher;
|
||||
|
||||
BOOST_TEST(complex_hasher(v) == complex_hasher(v));
|
||||
BOOST_CHECK(complex_hasher(v) == complex_hasher(v));
|
||||
|
||||
HASH_NAMESPACE::hash<T> real_hasher;
|
||||
T real = v.real();
|
||||
T imag = v.imag();
|
||||
|
||||
BOOST_TEST(real_hasher(real) == complex_hasher(std::complex<T>(real)));
|
||||
BOOST_CHECK(real_hasher(real) == complex_hasher(std::complex<T>(real)));
|
||||
|
||||
if(imag != 0 && real_hasher(real) == complex_hasher(v)) {
|
||||
std::ostringstream os;
|
||||
@@ -90,7 +90,7 @@ void complex_integral_tests(Integer*)
|
||||
}
|
||||
}
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
complex_float_tests((float*) 0);
|
||||
complex_float_tests((double*) 0);
|
||||
@@ -102,7 +102,7 @@ int main()
|
||||
complex_integral_tests((unsigned int*) 0);
|
||||
complex_integral_tests((unsigned long*) 0);
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@@ -48,7 +48,7 @@ namespace boost
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -59,13 +59,13 @@ namespace boost
|
||||
void custom_tests()
|
||||
{
|
||||
HASH_NAMESPACE::hash<test::custom> custom_hasher;
|
||||
BOOST_TEST(custom_hasher(10) == 100u);
|
||||
BOOST_CHECK(custom_hasher(10) == 100u);
|
||||
test::custom x(55);
|
||||
BOOST_TEST(custom_hasher(x) == 550u);
|
||||
BOOST_CHECK(custom_hasher(x) == 550u);
|
||||
|
||||
{
|
||||
using namespace HASH_NAMESPACE;
|
||||
BOOST_TEST(custom_hasher(x) == hash_value(x));
|
||||
BOOST_CHECK(custom_hasher(x) == hash_value(x));
|
||||
}
|
||||
|
||||
std::vector<test::custom> custom_vector;
|
||||
@@ -83,17 +83,17 @@ void custom_tests()
|
||||
HASH_NAMESPACE::hash_combine(seed2, 250u);
|
||||
HASH_NAMESPACE::hash_combine(seed2, 350u);
|
||||
|
||||
BOOST_TEST(seed ==
|
||||
BOOST_CHECK(seed ==
|
||||
HASH_NAMESPACE::hash_range(custom_vector.begin(), custom_vector.end()));
|
||||
BOOST_TEST(seed == seed2);
|
||||
BOOST_CHECK(seed == seed2);
|
||||
}
|
||||
|
||||
#endif // TEST_EXTENSIONS
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
custom_tests();
|
||||
#endif
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -19,7 +19,7 @@
|
||||
|
||||
#include <vector>
|
||||
|
||||
int main() {
|
||||
int main(int, char**) {
|
||||
std::vector<int> v;
|
||||
boost::hash<std::vector<int> > x;
|
||||
x(v);
|
||||
|
@@ -13,7 +13,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -25,11 +25,11 @@ using std::deque;
|
||||
|
||||
#endif // TEST_EXTENSIONS
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
deque_tests::deque_hash_integer_tests();
|
||||
#endif
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -5,7 +5,7 @@
|
||||
|
||||
#include "hash_float_test.hpp"
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
std::cerr<<"Compiler: "<<BOOST_COMPILER<<"\n";
|
||||
std::cerr<<"Platform: "<<BOOST_PLATFORM<<"\n";
|
||||
@@ -14,5 +14,5 @@ int main()
|
||||
float_tests("float", (float*) 0);
|
||||
float_tests("double", (double*) 0);
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -11,7 +11,7 @@
|
||||
# include <boost/functional/hash.hpp>
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#include <cmath>
|
||||
#include <boost/limits.hpp>
|
||||
@@ -43,11 +43,11 @@ void float_tests(char const* name, T* = 0)
|
||||
T zero = 0;
|
||||
T minus_zero = (T) -1 * zero;
|
||||
|
||||
BOOST_TEST(zero == minus_zero);
|
||||
BOOST_TEST(x1(zero) == x1(minus_zero));
|
||||
BOOST_CHECK(zero == minus_zero);
|
||||
BOOST_CHECK(x1(zero) == x1(minus_zero));
|
||||
|
||||
BOOST_TEST(x1(zero) == HASH_NAMESPACE::hash_value(zero));
|
||||
BOOST_TEST(x1(minus_zero) == HASH_NAMESPACE::hash_value(minus_zero));
|
||||
BOOST_CHECK(x1(zero) == HASH_NAMESPACE::hash_value(zero));
|
||||
BOOST_CHECK(x1(minus_zero) == HASH_NAMESPACE::hash_value(minus_zero));
|
||||
|
||||
using namespace std;
|
||||
|
||||
@@ -65,23 +65,23 @@ void float_tests(char const* name, T* = 0)
|
||||
T minus_infinity2 = (T) -1. / zero;
|
||||
T minus_infinity3 = (T) 1. / minus_zero;
|
||||
|
||||
BOOST_TEST(x1(infinity) == HASH_NAMESPACE::hash_value(infinity));
|
||||
BOOST_TEST(x1(minus_infinity)
|
||||
BOOST_CHECK(x1(infinity) == HASH_NAMESPACE::hash_value(infinity));
|
||||
BOOST_CHECK(x1(minus_infinity)
|
||||
== HASH_NAMESPACE::hash_value(minus_infinity));
|
||||
|
||||
if(infinity == infinity2)
|
||||
BOOST_TEST(x1(infinity) == x1(infinity2));
|
||||
BOOST_CHECK(x1(infinity) == x1(infinity2));
|
||||
if(infinity == infinity3)
|
||||
BOOST_TEST(x1(infinity) == x1(infinity3));
|
||||
BOOST_CHECK(x1(infinity) == x1(infinity3));
|
||||
if(infinity == infinity4)
|
||||
BOOST_TEST(x1(infinity) == x1(infinity4));
|
||||
BOOST_CHECK(x1(infinity) == x1(infinity4));
|
||||
|
||||
if(minus_infinity == minus_infinity2)
|
||||
BOOST_TEST(x1(minus_infinity) == x1(minus_infinity2));
|
||||
BOOST_CHECK(x1(minus_infinity) == x1(minus_infinity2));
|
||||
if(minus_infinity == minus_infinity3)
|
||||
BOOST_TEST(x1(minus_infinity) == x1(minus_infinity3));
|
||||
BOOST_CHECK(x1(minus_infinity) == x1(minus_infinity3));
|
||||
|
||||
BOOST_TEST(infinity != minus_infinity);
|
||||
BOOST_CHECK(infinity != minus_infinity);
|
||||
|
||||
if(x1(infinity) == x1(minus_infinity)) {
|
||||
std::cerr<<"x1(infinity) == x1(-infinity) == "<<x1(infinity)<<"\n";
|
||||
@@ -113,22 +113,22 @@ void float_tests(char const* name, T* = 0)
|
||||
T quarter_max = max / 4;
|
||||
T three_quarter_max = max - quarter_max;
|
||||
|
||||
BOOST_TEST(x1(max) == HASH_NAMESPACE::hash_value(max));
|
||||
BOOST_TEST(x1(half_max) == HASH_NAMESPACE::hash_value(half_max));
|
||||
BOOST_TEST(x1(quarter_max) == HASH_NAMESPACE::hash_value(quarter_max));
|
||||
BOOST_TEST(x1(three_quarter_max) == HASH_NAMESPACE::hash_value(three_quarter_max));
|
||||
BOOST_CHECK(x1(max) == HASH_NAMESPACE::hash_value(max));
|
||||
BOOST_CHECK(x1(half_max) == HASH_NAMESPACE::hash_value(half_max));
|
||||
BOOST_CHECK(x1(quarter_max) == HASH_NAMESPACE::hash_value(quarter_max));
|
||||
BOOST_CHECK(x1(three_quarter_max) == HASH_NAMESPACE::hash_value(three_quarter_max));
|
||||
|
||||
// The '!=' tests could legitimately fail, but with my hash it indicates a bug.
|
||||
BOOST_TEST(x1(max) == x1(max));
|
||||
BOOST_TEST(x1(max) != x1(quarter_max));
|
||||
BOOST_TEST(x1(max) != x1(half_max));
|
||||
BOOST_TEST(x1(max) != x1(three_quarter_max));
|
||||
BOOST_TEST(x1(quarter_max) == x1(quarter_max));
|
||||
BOOST_TEST(x1(quarter_max) != x1(half_max));
|
||||
BOOST_TEST(x1(quarter_max) != x1(three_quarter_max));
|
||||
BOOST_TEST(x1(half_max) == x1(half_max));
|
||||
BOOST_TEST(x1(half_max) != x1(three_quarter_max));
|
||||
BOOST_TEST(x1(three_quarter_max) == x1(three_quarter_max));
|
||||
BOOST_CHECK(x1(max) == x1(max));
|
||||
BOOST_CHECK(x1(max) != x1(quarter_max));
|
||||
BOOST_CHECK(x1(max) != x1(half_max));
|
||||
BOOST_CHECK(x1(max) != x1(three_quarter_max));
|
||||
BOOST_CHECK(x1(quarter_max) == x1(quarter_max));
|
||||
BOOST_CHECK(x1(quarter_max) != x1(half_max));
|
||||
BOOST_CHECK(x1(quarter_max) != x1(three_quarter_max));
|
||||
BOOST_CHECK(x1(half_max) == x1(half_max));
|
||||
BOOST_CHECK(x1(half_max) != x1(three_quarter_max));
|
||||
BOOST_CHECK(x1(three_quarter_max) == x1(three_quarter_max));
|
||||
|
||||
// Intel with gcc stdlib sometimes segfaults on calls to asin and acos.
|
||||
#if !((defined(__INTEL_COMPILER) || defined(__ICL) || \
|
||||
@@ -137,35 +137,35 @@ void float_tests(char const* name, T* = 0)
|
||||
T v1 = asin((T) 1);
|
||||
T v2 = acos((T) 0);
|
||||
if(v1 == v2)
|
||||
BOOST_TEST(x1(v1) == x1(v2));
|
||||
BOOST_TEST(x1(v1) == HASH_NAMESPACE::hash_value(v1));
|
||||
BOOST_TEST(x1(v2) == HASH_NAMESPACE::hash_value(v2));
|
||||
BOOST_CHECK(x1(v1) == x1(v2));
|
||||
BOOST_CHECK(x1(v1) == HASH_NAMESPACE::hash_value(v1));
|
||||
BOOST_CHECK(x1(v2) == HASH_NAMESPACE::hash_value(v2));
|
||||
#endif
|
||||
|
||||
BOOST_TEST(x1(boost::hash_detail::limits<T>::epsilon()) ==
|
||||
BOOST_CHECK(x1(boost::hash_detail::limits<T>::epsilon()) ==
|
||||
HASH_NAMESPACE::hash_value(boost::hash_detail::limits<T>::epsilon()));
|
||||
|
||||
BOOST_TEST(boost::hash_detail::limits<T>::epsilon() != (T) 0);
|
||||
BOOST_CHECK(boost::hash_detail::limits<T>::epsilon() != (T) 0);
|
||||
if(x1(boost::hash_detail::limits<T>::epsilon()) == x1((T) 0))
|
||||
std::cerr<<"x1(epsilon) == x1(0) == "<<x1((T) 0)<<"\n";
|
||||
|
||||
BOOST_TEST(-boost::hash_detail::limits<T>::epsilon() != (T) 0);
|
||||
BOOST_CHECK(-boost::hash_detail::limits<T>::epsilon() != (T) 0);
|
||||
if(x1(-boost::hash_detail::limits<T>::epsilon()) == x1((T) 0))
|
||||
std::cerr<<"x1(-epsilon) == x1(0) == "<<x1((T) 0)<<"\n";
|
||||
|
||||
BOOST_TEST((T) 1 + boost::hash_detail::limits<T>::epsilon() != (T) 1);
|
||||
BOOST_CHECK((T) 1 + boost::hash_detail::limits<T>::epsilon() != (T) 1);
|
||||
if(x1((T) 1 + boost::hash_detail::limits<T>::epsilon()) == x1((T) 1))
|
||||
std::cerr<<"x1(1 + epsilon) == x1(1) == "<<x1((T) 1)<<"\n";
|
||||
|
||||
BOOST_TEST((T) 1 - boost::hash_detail::limits<T>::epsilon() != (T) 1);
|
||||
BOOST_CHECK((T) 1 - boost::hash_detail::limits<T>::epsilon() != (T) 1);
|
||||
if(x1((T) 1 - boost::hash_detail::limits<T>::epsilon()) == x1((T) 1))
|
||||
std::cerr<<"x1(1 - epsilon) == x1(1) == "<<x1((T) 1)<<"\n";
|
||||
|
||||
BOOST_TEST((T) -1 + boost::hash_detail::limits<T>::epsilon() != (T) -1);
|
||||
BOOST_CHECK((T) -1 + boost::hash_detail::limits<T>::epsilon() != (T) -1);
|
||||
if(x1((T) -1 + boost::hash_detail::limits<T>::epsilon()) == x1((T) -1))
|
||||
std::cerr<<"x1(-1 + epsilon) == x1(-1) == "<<x1((T) -1)<<"\n";
|
||||
|
||||
BOOST_TEST((T) -1 - boost::hash_detail::limits<T>::epsilon() != (T) -1);
|
||||
BOOST_CHECK((T) -1 - boost::hash_detail::limits<T>::epsilon() != (T) -1);
|
||||
if(x1((T) -1 - boost::hash_detail::limits<T>::epsilon()) == x1((T) -1))
|
||||
std::cerr<<"x1(-1 - epsilon) == x1(-1) == "<<x1((T) -1)<<"\n";
|
||||
|
||||
@@ -197,7 +197,7 @@ void float_tests(char const* name, T* = 0)
|
||||
if(x1(boost::hash_detail::limits<T>::quiet_NaN()) == x1(1.0)) {
|
||||
std::cerr<<"x1(quiet_NaN) == x1(1.0) == "<<x1(1.0)<<"\n";
|
||||
}
|
||||
BOOST_TEST(x1(boost::hash_detail::limits<T>::quiet_NaN()) ==
|
||||
BOOST_CHECK(x1(boost::hash_detail::limits<T>::quiet_NaN()) ==
|
||||
HASH_NAMESPACE::hash_value(boost::hash_detail::limits<T>::quiet_NaN()));
|
||||
}
|
||||
#endif
|
||||
|
@@ -50,7 +50,7 @@ namespace boost
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -61,13 +61,13 @@ namespace boost
|
||||
void custom_tests()
|
||||
{
|
||||
HASH_NAMESPACE::hash<test::custom<int> > custom_hasher;
|
||||
BOOST_TEST(custom_hasher(10) == 100u);
|
||||
BOOST_CHECK(custom_hasher(10) == 100u);
|
||||
test::custom<int> x(55);
|
||||
BOOST_TEST(custom_hasher(x) == 550u);
|
||||
BOOST_CHECK(custom_hasher(x) == 550u);
|
||||
|
||||
{
|
||||
using namespace HASH_NAMESPACE;
|
||||
BOOST_TEST(custom_hasher(x) == hash_value(x));
|
||||
BOOST_CHECK(custom_hasher(x) == hash_value(x));
|
||||
}
|
||||
|
||||
std::vector<test::custom<int> > custom_vector;
|
||||
@@ -85,17 +85,17 @@ void custom_tests()
|
||||
HASH_NAMESPACE::hash_combine(seed2, 250u);
|
||||
HASH_NAMESPACE::hash_combine(seed2, 350u);
|
||||
|
||||
BOOST_TEST(seed ==
|
||||
BOOST_CHECK(seed ==
|
||||
HASH_NAMESPACE::hash_range(custom_vector.begin(), custom_vector.end()));
|
||||
BOOST_TEST(seed == seed2);
|
||||
BOOST_CHECK(seed == seed2);
|
||||
}
|
||||
|
||||
#endif // TEST_EXTENSIONS
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
custom_tests();
|
||||
#endif
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -11,7 +11,7 @@
|
||||
# include <boost/functional/hash.hpp>
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#include <boost/limits.hpp>
|
||||
#include <boost/mpl/assert.hpp>
|
||||
@@ -32,31 +32,31 @@ void function_pointer_tests()
|
||||
HASH_NAMESPACE::hash<void(*)()> hasher_void;
|
||||
HASH_NAMESPACE::hash<int(*)(int)> hasher_int;
|
||||
|
||||
BOOST_TEST(&void_func1 != &void_func2);
|
||||
BOOST_TEST(&int_func1 != &int_func2);
|
||||
BOOST_CHECK(&void_func1 != &void_func2);
|
||||
BOOST_CHECK(&int_func1 != &int_func2);
|
||||
|
||||
BOOST_TEST(hasher_void(0) == hasher_void(0));
|
||||
BOOST_TEST(hasher_void(&void_func1) == hasher_void(&void_func1));
|
||||
BOOST_TEST(hasher_void(&void_func1) != hasher_void(&void_func2));
|
||||
BOOST_TEST(hasher_void(&void_func1) != hasher_void(0));
|
||||
BOOST_TEST(hasher_int(0) == hasher_int(0));
|
||||
BOOST_TEST(hasher_int(&int_func1) == hasher_int(&int_func1));
|
||||
BOOST_TEST(hasher_int(&int_func1) != hasher_int(&int_func2));
|
||||
BOOST_TEST(hasher_int(&int_func1) != hasher_int(0));
|
||||
BOOST_CHECK(hasher_void(0) == hasher_void(0));
|
||||
BOOST_CHECK(hasher_void(&void_func1) == hasher_void(&void_func1));
|
||||
BOOST_CHECK(hasher_void(&void_func1) != hasher_void(&void_func2));
|
||||
BOOST_CHECK(hasher_void(&void_func1) != hasher_void(0));
|
||||
BOOST_CHECK(hasher_int(0) == hasher_int(0));
|
||||
BOOST_CHECK(hasher_int(&int_func1) == hasher_int(&int_func1));
|
||||
BOOST_CHECK(hasher_int(&int_func1) != hasher_int(&int_func2));
|
||||
BOOST_CHECK(hasher_int(&int_func1) != hasher_int(0));
|
||||
#if defined(TEST_EXTENSIONS)
|
||||
BOOST_TEST(hasher_void(&void_func1)
|
||||
BOOST_CHECK(hasher_void(&void_func1)
|
||||
== HASH_NAMESPACE::hash_value(&void_func1));
|
||||
BOOST_TEST(hasher_int(&int_func1)
|
||||
BOOST_CHECK(hasher_int(&int_func1)
|
||||
== HASH_NAMESPACE::hash_value(&int_func1));
|
||||
|
||||
// This isn't specified in Peter's proposal:
|
||||
BOOST_TEST(hasher_void(0) == 0);
|
||||
BOOST_CHECK(hasher_void(0) == 0);
|
||||
#endif
|
||||
}
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
function_pointer_tests();
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@
|
||||
|
||||
#include "./hash_fwd_test.hpp"
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#if defined(TEST_EXTENSIONS) && !defined(TEST_STD_INCLUDES)
|
||||
|
||||
@@ -24,8 +24,8 @@ void fwd_test1()
|
||||
HASH_NAMESPACE::hash<test::test_type1<int> > hasher_test_int;
|
||||
HASH_NAMESPACE::hash<test::test_type1<std::string> > hasher_test_string;
|
||||
|
||||
BOOST_TEST(hasher_int(5) == hasher_test_int(x));
|
||||
BOOST_TEST(hasher_string("Test") == hasher_test_string(y));
|
||||
BOOST_CHECK(hasher_int(5) == hasher_test_int(x));
|
||||
BOOST_CHECK(hasher_string("Test") == hasher_test_string(y));
|
||||
}
|
||||
|
||||
void fwd_test2()
|
||||
@@ -44,8 +44,8 @@ void fwd_test2()
|
||||
HASH_NAMESPACE::hash<test::test_type2<int> > hasher_test_int;
|
||||
HASH_NAMESPACE::hash<test::test_type2<std::string> > hasher_test_string;
|
||||
|
||||
BOOST_TEST(seed1 == hasher_test_int(x));
|
||||
BOOST_TEST(seed2 == hasher_test_string(y));
|
||||
BOOST_CHECK(seed1 == hasher_test_int(x));
|
||||
BOOST_CHECK(seed2 == hasher_test_string(y));
|
||||
}
|
||||
|
||||
void fwd_test3()
|
||||
@@ -75,19 +75,19 @@ void fwd_test3()
|
||||
HASH_NAMESPACE::hash<test::test_type3<int> > hasher_test_int;
|
||||
HASH_NAMESPACE::hash<test::test_type3<std::string> > hasher_test_string;
|
||||
|
||||
BOOST_TEST(seed1 == hasher_test_int(x));
|
||||
BOOST_TEST(seed2 == hasher_test_string(y));
|
||||
BOOST_CHECK(seed1 == hasher_test_int(x));
|
||||
BOOST_CHECK(seed2 == hasher_test_string(y));
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
fwd_test1();
|
||||
fwd_test2();
|
||||
fwd_test3();
|
||||
#endif
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@@ -8,7 +8,7 @@
|
||||
|
||||
#include "./hash_fwd_test.hpp"
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
template <class T> void unused(T const&) {}
|
||||
|
||||
@@ -31,9 +31,9 @@ void fwd_test()
|
||||
}
|
||||
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
fwd_test();
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@@ -48,7 +48,7 @@ namespace boost
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -59,13 +59,13 @@ namespace boost
|
||||
void custom_tests()
|
||||
{
|
||||
HASH_NAMESPACE::hash<custom> custom_hasher;
|
||||
BOOST_TEST(custom_hasher(10) == 100u);
|
||||
BOOST_CHECK(custom_hasher(10) == 100u);
|
||||
custom x(55);
|
||||
BOOST_TEST(custom_hasher(x) == 550u);
|
||||
BOOST_CHECK(custom_hasher(x) == 550u);
|
||||
|
||||
{
|
||||
using namespace HASH_NAMESPACE;
|
||||
BOOST_TEST(custom_hasher(x) == hash_value(x));
|
||||
BOOST_CHECK(custom_hasher(x) == hash_value(x));
|
||||
}
|
||||
|
||||
std::vector<custom> custom_vector;
|
||||
@@ -83,19 +83,19 @@ void custom_tests()
|
||||
HASH_NAMESPACE::hash_combine(seed2, 250u);
|
||||
HASH_NAMESPACE::hash_combine(seed2, 350u);
|
||||
|
||||
BOOST_TEST(seed ==
|
||||
BOOST_CHECK(seed ==
|
||||
HASH_NAMESPACE::hash_range(custom_vector.begin(), custom_vector.end()));
|
||||
BOOST_TEST(seed == seed2);
|
||||
BOOST_CHECK(seed == seed2);
|
||||
}
|
||||
|
||||
#endif // TEST_EXTENSIONS
|
||||
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
custom_tests();
|
||||
#endif
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@@ -13,7 +13,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -25,11 +25,11 @@ using std::list;
|
||||
|
||||
#endif // TEST_EXTENSIONS
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
list_tests::list_hash_integer_tests();
|
||||
#endif
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -5,7 +5,7 @@
|
||||
|
||||
#include "hash_float_test.hpp"
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
std::cerr<<"Compiler: "<<BOOST_COMPILER<<"\n";
|
||||
std::cerr<<"Platform: "<<BOOST_PLATFORM<<"\n";
|
||||
@@ -13,5 +13,5 @@ int main()
|
||||
|
||||
float_tests("long double", (long double*) 0);
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -13,7 +13,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#include <map>
|
||||
|
||||
@@ -29,12 +29,12 @@ using std::multimap;
|
||||
|
||||
#endif // TEST_EXTENSTIONS
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
map_tests::map_hash_integer_tests();
|
||||
multimap_tests::multimap_hash_integer_tests();
|
||||
#endif
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -38,17 +38,17 @@ namespace BOOST_PP_CAT(CONTAINER_TYPE, _tests)
|
||||
HASH_NAMESPACE::hash<T> hasher;
|
||||
|
||||
for(int i2 = 0; i2 < number_of_containers; ++i2) {
|
||||
BOOST_TEST(hasher(containers[i2]) == hasher(containers[i2]));
|
||||
BOOST_CHECK(hasher(containers[i2]) == hasher(containers[i2]));
|
||||
|
||||
BOOST_TEST(hasher(containers[i2]) ==
|
||||
BOOST_CHECK(hasher(containers[i2]) ==
|
||||
HASH_NAMESPACE::hash_value(containers[i2]));
|
||||
|
||||
BOOST_TEST(hasher(containers[i2])
|
||||
BOOST_CHECK(hasher(containers[i2])
|
||||
== HASH_NAMESPACE::hash_range(
|
||||
containers[i2].begin(), containers[i2].end()));
|
||||
|
||||
for(int j2 = i2 + 1; j2 < number_of_containers; ++j2) {
|
||||
BOOST_TEST(
|
||||
BOOST_CHECK(
|
||||
(containers[i2] == containers[j2]) ==
|
||||
(hasher(containers[i2]) == hasher(containers[j2]))
|
||||
);
|
||||
|
@@ -12,7 +12,7 @@
|
||||
#include <boost/functional/hash.hpp>
|
||||
#include <boost/functional/hash.hpp>
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
HASH_NAMESPACE::hash< int[10] > hasher;
|
||||
return 0;
|
||||
|
@@ -7,11 +7,11 @@
|
||||
#include <boost/functional/hash.hpp>
|
||||
#define BOOST_HASH_NO_EXTENSIONS
|
||||
#include <boost/functional/hash.hpp>
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
#include <deque>
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
std::deque<int> x;
|
||||
|
||||
@@ -19,7 +19,7 @@ int main()
|
||||
x.push_back(2);
|
||||
|
||||
HASH_NAMESPACE::hash<std::deque<int> > hasher;
|
||||
BOOST_TEST(hasher(x) == HASH_NAMESPACE::hash_value(x));
|
||||
BOOST_CHECK(hasher(x) == HASH_NAMESPACE::hash_value(x));
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -8,10 +8,10 @@
|
||||
#include <boost/functional/hash.hpp>
|
||||
#undef BOOST_HASH_NO_EXTENSIONS
|
||||
#include <boost/functional/hash.hpp>
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
#include <map>
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
std::map<int, int> x;
|
||||
|
||||
@@ -19,7 +19,7 @@ int main()
|
||||
x.insert(std::map<int, int>::value_type(14, -75));
|
||||
|
||||
HASH_NAMESPACE::hash<std::map<int, int> > hasher;
|
||||
BOOST_TEST(hasher(x) == HASH_NAMESPACE::hash_value(x));
|
||||
BOOST_CHECK(hasher(x) == HASH_NAMESPACE::hash_value(x));
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -12,7 +12,7 @@
|
||||
#endif
|
||||
|
||||
#include <iostream>
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/limits.hpp>
|
||||
@@ -39,27 +39,27 @@ void numeric_test(T*)
|
||||
HASH_NAMESPACE::hash<T> x2;
|
||||
|
||||
T v1 = (T) -5;
|
||||
BOOST_TEST(x1(v1) == x2(v1));
|
||||
BOOST_TEST(x1(T(-5)) == x2(T(-5)));
|
||||
BOOST_TEST(x1(T(0)) == x2(T(0)));
|
||||
BOOST_TEST(x1(T(10)) == x2(T(10)));
|
||||
BOOST_TEST(x1(T(25)) == x2(T(25)));
|
||||
BOOST_TEST(x1(T(5) - T(5)) == x2(T(0)));
|
||||
BOOST_TEST(x1(T(6) + T(4)) == x2(T(10)));
|
||||
BOOST_CHECK(x1(v1) == x2(v1));
|
||||
BOOST_CHECK(x1(T(-5)) == x2(T(-5)));
|
||||
BOOST_CHECK(x1(T(0)) == x2(T(0)));
|
||||
BOOST_CHECK(x1(T(10)) == x2(T(10)));
|
||||
BOOST_CHECK(x1(T(25)) == x2(T(25)));
|
||||
BOOST_CHECK(x1(T(5) - T(5)) == x2(T(0)));
|
||||
BOOST_CHECK(x1(T(6) + T(4)) == x2(T(10)));
|
||||
|
||||
#if defined(TEST_EXTENSIONS)
|
||||
BOOST_TEST(x1(T(-5)) == HASH_NAMESPACE::hash_value(T(-5)));
|
||||
BOOST_TEST(x1(T(0)) == HASH_NAMESPACE::hash_value(T(0)));
|
||||
BOOST_TEST(x1(T(10)) == HASH_NAMESPACE::hash_value(T(10)));
|
||||
BOOST_TEST(x1(T(25)) == HASH_NAMESPACE::hash_value(T(25)));
|
||||
BOOST_CHECK(x1(T(-5)) == HASH_NAMESPACE::hash_value(T(-5)));
|
||||
BOOST_CHECK(x1(T(0)) == HASH_NAMESPACE::hash_value(T(0)));
|
||||
BOOST_CHECK(x1(T(10)) == HASH_NAMESPACE::hash_value(T(10)));
|
||||
BOOST_CHECK(x1(T(25)) == HASH_NAMESPACE::hash_value(T(25)));
|
||||
|
||||
if (limits::is_integer)
|
||||
{
|
||||
if(limits::is_signed || limits::digits <= boost::hash_detail::limits<std::size_t>::digits)
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(T(-5)) == (std::size_t)T(-5));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(T(0)) == (std::size_t)T(0u));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(T(10)) == (std::size_t)T(10u));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(T(25)) == (std::size_t)T(25u));
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(T(-5)) == (std::size_t)T(-5));
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(T(0)) == (std::size_t)T(0u));
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(T(10)) == (std::size_t)T(10u));
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(T(25)) == (std::size_t)T(25u));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@@ -77,18 +77,18 @@ void limits_test(T*)
|
||||
T min_value = (limits::min)();
|
||||
T max_value = (limits::max)();
|
||||
|
||||
BOOST_TEST(x1(min_value) == x2((limits::min)()));
|
||||
BOOST_TEST(x1(max_value) == x2((limits::max)()));
|
||||
BOOST_CHECK(x1(min_value) == x2((limits::min)()));
|
||||
BOOST_CHECK(x1(max_value) == x2((limits::max)()));
|
||||
|
||||
#if defined(TEST_EXTENSIONS)
|
||||
BOOST_TEST(x1(min_value) == HASH_NAMESPACE::hash_value(min_value));
|
||||
BOOST_TEST(x1(max_value) == HASH_NAMESPACE::hash_value(max_value));
|
||||
BOOST_CHECK(x1(min_value) == HASH_NAMESPACE::hash_value(min_value));
|
||||
BOOST_CHECK(x1(max_value) == HASH_NAMESPACE::hash_value(max_value));
|
||||
|
||||
if (limits::is_integer)
|
||||
{
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(min_value)
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(min_value)
|
||||
== std::size_t(min_value));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(max_value)
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(max_value)
|
||||
== std::size_t(max_value));
|
||||
}
|
||||
#endif
|
||||
@@ -106,11 +106,11 @@ void poor_quality_tests(T*)
|
||||
// A hash function can legally fail these tests, but it'll not be a good
|
||||
// sign.
|
||||
if(T(1) != T(-1))
|
||||
BOOST_TEST(x1(T(1)) != x2(T(-1)));
|
||||
BOOST_CHECK(x1(T(1)) != x2(T(-1)));
|
||||
if(T(1) != T(2))
|
||||
BOOST_TEST(x1(T(1)) != x2(T(2)));
|
||||
BOOST_CHECK(x1(T(1)) != x2(T(2)));
|
||||
if((limits::max)() != (limits::max)() - 1)
|
||||
BOOST_TEST(x1((limits::max)()) != x2((limits::max)() - 1));
|
||||
BOOST_CHECK(x1((limits::max)()) != x2((limits::max)() - 1));
|
||||
}
|
||||
|
||||
void bool_test()
|
||||
@@ -118,10 +118,10 @@ void bool_test()
|
||||
HASH_NAMESPACE::hash<bool> x1;
|
||||
HASH_NAMESPACE::hash<bool> x2;
|
||||
|
||||
BOOST_TEST(x1(true) == x2(true));
|
||||
BOOST_TEST(x1(false) == x2(false));
|
||||
BOOST_TEST(x1(true) != x2(false));
|
||||
BOOST_TEST(x1(false) != x2(true));
|
||||
BOOST_CHECK(x1(true) == x2(true));
|
||||
BOOST_CHECK(x1(false) == x2(false));
|
||||
BOOST_CHECK(x1(true) != x2(false));
|
||||
BOOST_CHECK(x1(false) != x2(true));
|
||||
}
|
||||
|
||||
#define NUMERIC_TEST(type, name) \
|
||||
@@ -134,7 +134,7 @@ void bool_test()
|
||||
numeric_test((type*) 0); \
|
||||
poor_quality_tests((type*) 0);
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
NUMERIC_TEST(char, char)
|
||||
NUMERIC_TEST(signed char, schar)
|
||||
@@ -159,7 +159,7 @@ int main()
|
||||
|
||||
bool_test();
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if defined(BOOST_MSVC)
|
||||
|
@@ -11,7 +11,7 @@
|
||||
# include <boost/functional/hash.hpp>
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#include <boost/limits.hpp>
|
||||
#include <boost/mpl/assert.hpp>
|
||||
@@ -30,20 +30,20 @@ void pointer_tests()
|
||||
int int1;
|
||||
int int2;
|
||||
|
||||
BOOST_TEST(x1(0) == x2(0));
|
||||
BOOST_TEST(x1(&int1) == x2(&int1));
|
||||
BOOST_TEST(x1(&int2) == x2(&int2));
|
||||
BOOST_CHECK(x1(0) == x2(0));
|
||||
BOOST_CHECK(x1(&int1) == x2(&int1));
|
||||
BOOST_CHECK(x1(&int2) == x2(&int2));
|
||||
#if defined(TEST_EXTENSIONS)
|
||||
BOOST_TEST(x1(&int1) == HASH_NAMESPACE::hash_value(&int1));
|
||||
BOOST_TEST(x1(&int2) == HASH_NAMESPACE::hash_value(&int2));
|
||||
BOOST_CHECK(x1(&int1) == HASH_NAMESPACE::hash_value(&int1));
|
||||
BOOST_CHECK(x1(&int2) == HASH_NAMESPACE::hash_value(&int2));
|
||||
|
||||
// This isn't specified in Peter's proposal:
|
||||
BOOST_TEST(x1(0) == 0);
|
||||
BOOST_CHECK(x1(0) == 0);
|
||||
#endif
|
||||
}
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
pointer_tests();
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -13,7 +13,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -41,45 +41,45 @@ void hash_range_tests()
|
||||
std::vector<int> x;
|
||||
|
||||
std::size_t x_seed = 0;
|
||||
BOOST_TEST(x_seed == HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
BOOST_CHECK(x_seed == HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_range(empty.begin(), empty.end())
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_range(empty.begin(), empty.end())
|
||||
== HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_range(empty.begin(), empty.end())
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_range(empty.begin(), empty.end())
|
||||
!= HASH_NAMESPACE::hash_range(values1.begin(), values1.end()));
|
||||
|
||||
x.push_back(10);
|
||||
HASH_NAMESPACE::hash_combine(x_seed, 10);
|
||||
BOOST_TEST(x_seed == HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
BOOST_CHECK(x_seed == HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_range(empty.begin(), empty.end())
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_range(empty.begin(), empty.end())
|
||||
!= HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_range(values2.begin(), values2.end())
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_range(values2.begin(), values2.end())
|
||||
== HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
|
||||
x.push_back(20);
|
||||
HASH_NAMESPACE::hash_combine(x_seed, 20);
|
||||
BOOST_TEST(x_seed == HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
BOOST_CHECK(x_seed == HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_range(empty.begin(), empty.end())
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_range(empty.begin(), empty.end())
|
||||
!= HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_range(values2.begin(), values2.end())
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_range(values2.begin(), values2.end())
|
||||
!= HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_range(values3.begin(), values3.end())
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_range(values3.begin(), values3.end())
|
||||
== HASH_NAMESPACE::hash_range(x.begin(), x.end()));
|
||||
|
||||
std::size_t seed = HASH_NAMESPACE::hash_range(values3.begin(), values3.end());
|
||||
HASH_NAMESPACE::hash_range(seed, values4.begin(), values4.end());
|
||||
HASH_NAMESPACE::hash_range(seed, x.begin(), x.end());
|
||||
BOOST_TEST(seed == HASH_NAMESPACE::hash_range(values5.begin(), values5.end()));
|
||||
BOOST_CHECK(seed == HASH_NAMESPACE::hash_range(values5.begin(), values5.end()));
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
hash_range_tests();
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@@ -41,17 +41,17 @@ namespace BOOST_PP_CAT(CONTAINER_TYPE, _tests)
|
||||
HASH_NAMESPACE::hash<T> hasher;
|
||||
|
||||
for(int i2 = 0; i2 < number_of_containers; ++i2) {
|
||||
BOOST_TEST(hasher(containers[i2]) == hasher(containers[i2]));
|
||||
BOOST_CHECK(hasher(containers[i2]) == hasher(containers[i2]));
|
||||
|
||||
BOOST_TEST(hasher(containers[i2]) ==
|
||||
BOOST_CHECK(hasher(containers[i2]) ==
|
||||
HASH_NAMESPACE::hash_value(containers[i2]));
|
||||
|
||||
BOOST_TEST(hasher(containers[i2])
|
||||
BOOST_CHECK(hasher(containers[i2])
|
||||
== HASH_NAMESPACE::hash_range(
|
||||
containers[i2].begin(), containers[i2].end()));
|
||||
|
||||
for(int j2 = i2 + 1; j2 < number_of_containers; ++j2) {
|
||||
BOOST_TEST(
|
||||
BOOST_CHECK(
|
||||
(containers[i2] == containers[j2]) ==
|
||||
(hasher(containers[i2]) == hasher(containers[j2]))
|
||||
);
|
||||
|
@@ -13,7 +13,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -29,12 +29,12 @@ using std::multiset;
|
||||
|
||||
#endif
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
set_tests::set_hash_integer_tests();
|
||||
multiset_tests::multiset_hash_integer_tests();
|
||||
#endif
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -44,17 +44,17 @@ namespace BOOST_PP_CAT(CONTAINER_TYPE, _tests)
|
||||
HASH_NAMESPACE::hash<T> hasher;
|
||||
|
||||
for(int i2 = 0; i2 < number_of_containers; ++i2) {
|
||||
BOOST_TEST(hasher(containers[i2]) == hasher(containers[i2]));
|
||||
BOOST_CHECK(hasher(containers[i2]) == hasher(containers[i2]));
|
||||
|
||||
BOOST_TEST(hasher(containers[i2]) ==
|
||||
BOOST_CHECK(hasher(containers[i2]) ==
|
||||
HASH_NAMESPACE::hash_value(containers[i2]));
|
||||
|
||||
BOOST_TEST(hasher(containers[i2])
|
||||
BOOST_CHECK(hasher(containers[i2])
|
||||
== HASH_NAMESPACE::hash_range(
|
||||
containers[i2].begin(), containers[i2].end()));
|
||||
|
||||
for(int j2 = i2 + 1; j2 < number_of_containers; ++j2) {
|
||||
BOOST_TEST(
|
||||
BOOST_CHECK(
|
||||
(containers[i2] == containers[j2]) ==
|
||||
(hasher(containers[i2]) == hasher(containers[j2]))
|
||||
);
|
||||
|
@@ -11,7 +11,7 @@
|
||||
# include <boost/functional/hash.hpp>
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#include <boost/limits.hpp>
|
||||
#include <boost/mpl/assert.hpp>
|
||||
@@ -27,18 +27,18 @@ void string_tests()
|
||||
HASH_NAMESPACE::hash<std::string> x1;
|
||||
HASH_NAMESPACE::hash<std::string> x2;
|
||||
|
||||
BOOST_TEST(x1("Hello") == x2(std::string("Hel") + "lo"));
|
||||
BOOST_TEST(x1("") == x2(std::string()));
|
||||
BOOST_CHECK(x1("Hello") == x2(std::string("Hel") + "lo"));
|
||||
BOOST_CHECK(x1("") == x2(std::string()));
|
||||
|
||||
#if defined(TEST_EXTENSIONS)
|
||||
std::string value1;
|
||||
std::string value2("Hello");
|
||||
|
||||
BOOST_TEST(x1(value1) == HASH_NAMESPACE::hash_value(value1));
|
||||
BOOST_TEST(x1(value2) == HASH_NAMESPACE::hash_value(value2));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(value1) ==
|
||||
BOOST_CHECK(x1(value1) == HASH_NAMESPACE::hash_value(value1));
|
||||
BOOST_CHECK(x1(value2) == HASH_NAMESPACE::hash_value(value2));
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(value1) ==
|
||||
HASH_NAMESPACE::hash_range(value1.begin(), value1.end()));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(value2) ==
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(value2) ==
|
||||
HASH_NAMESPACE::hash_range(value2.begin(), value2.end()));
|
||||
#endif
|
||||
}
|
||||
@@ -51,28 +51,28 @@ void wstring_tests()
|
||||
HASH_NAMESPACE::hash<std::wstring> x1;
|
||||
HASH_NAMESPACE::hash<std::wstring> x2;
|
||||
|
||||
BOOST_TEST(x1(L"Hello") == x2(std::wstring(L"Hel") + L"lo"));
|
||||
BOOST_TEST(x1(L"") == x2(std::wstring()));
|
||||
BOOST_CHECK(x1(L"Hello") == x2(std::wstring(L"Hel") + L"lo"));
|
||||
BOOST_CHECK(x1(L"") == x2(std::wstring()));
|
||||
|
||||
#if defined(TEST_EXTENSIONS)
|
||||
std::wstring value1;
|
||||
std::wstring value2(L"Hello");
|
||||
|
||||
BOOST_TEST(x1(value1) == HASH_NAMESPACE::hash_value(value1));
|
||||
BOOST_TEST(x1(value2) == HASH_NAMESPACE::hash_value(value2));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(value1) ==
|
||||
BOOST_CHECK(x1(value1) == HASH_NAMESPACE::hash_value(value1));
|
||||
BOOST_CHECK(x1(value2) == HASH_NAMESPACE::hash_value(value2));
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(value1) ==
|
||||
HASH_NAMESPACE::hash_range(value1.begin(), value1.end()));
|
||||
BOOST_TEST(HASH_NAMESPACE::hash_value(value2) ==
|
||||
BOOST_CHECK(HASH_NAMESPACE::hash_value(value2) ==
|
||||
HASH_NAMESPACE::hash_range(value2.begin(), value2.end()));
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
string_tests();
|
||||
#if !defined(BOOST_NO_STD_WSTRING)
|
||||
wstring_tests();
|
||||
#endif
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -37,9 +37,9 @@ void array_int_test()
|
||||
int array3[2] = {2, 3};
|
||||
HASH_NAMESPACE::hash<int[2]> hasher3;
|
||||
|
||||
BOOST_TEST(hasher1(array1) == HASH_NAMESPACE::hash_value(array1));
|
||||
BOOST_TEST(hasher2(array2) == HASH_NAMESPACE::hash_value(array2));
|
||||
BOOST_TEST(hasher3(array3) == HASH_NAMESPACE::hash_value(array3));
|
||||
BOOST_CHECK(hasher1(array1) == HASH_NAMESPACE::hash_value(array1));
|
||||
BOOST_CHECK(hasher2(array2) == HASH_NAMESPACE::hash_value(array2));
|
||||
BOOST_CHECK(hasher3(array3) == HASH_NAMESPACE::hash_value(array3));
|
||||
}
|
||||
|
||||
void two_dimensional_array_test()
|
||||
@@ -47,18 +47,18 @@ void two_dimensional_array_test()
|
||||
int array[3][2] = {{-5, 6}, {7, -3}, {26, 1}};
|
||||
HASH_NAMESPACE::hash<int[3][2]> hasher;
|
||||
|
||||
BOOST_TEST(hasher(array) == HASH_NAMESPACE::hash_value(array));
|
||||
BOOST_CHECK(hasher(array) == HASH_NAMESPACE::hash_value(array));
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
array_int_test();
|
||||
two_dimensional_array_test();
|
||||
#endif
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@@ -13,7 +13,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
|
||||
#ifdef TEST_EXTENSIONS
|
||||
|
||||
@@ -25,11 +25,11 @@ using std::vector;
|
||||
|
||||
#endif // TEST_EXTENSIONS
|
||||
|
||||
int main()
|
||||
int test_main(int, char**)
|
||||
{
|
||||
#ifdef TEST_EXTENSIONS
|
||||
vector_tests::vector_hash_integer_tests();
|
||||
#endif
|
||||
|
||||
return boost::report_errors();
|
||||
return 0;
|
||||
}
|
||||
|
@@ -5,13 +5,13 @@
|
||||
|
||||
#define HASH_NAMESPACE boost
|
||||
#include <boost/functional/hash.hpp>
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/test/minimal.hpp>
|
||||
#include <vector>
|
||||
|
||||
int f(std::size_t hash1, int* x1) {
|
||||
// Check that HASH_NAMESPACE::hash<int*> works in both files.
|
||||
HASH_NAMESPACE::hash<int*> ptr_hasher;
|
||||
BOOST_TEST(hash1 == ptr_hasher(x1));
|
||||
BOOST_CHECK(hash1 == ptr_hasher(x1));
|
||||
|
||||
// Check that std::vector<std::size_t> is avaiable in this file.
|
||||
std::vector<std::size_t> x;
|
||||
|
@@ -6,13 +6,14 @@
|
||||
#define HASH_NAMESPACE boost
|
||||
#define BOOST_HASH_NO_EXTENSIONS
|
||||
#include <boost/functional/hash.hpp>
|
||||
#include <boost/detail/lightweight_test.hpp>
|
||||
#include <boost/assert.hpp>
|
||||
|
||||
extern int f(std::size_t, int*);
|
||||
|
||||
int main() {
|
||||
int test_main(int, char**) {
|
||||
HASH_NAMESPACE::hash<int*> ptr_hasher;
|
||||
int x = 55;
|
||||
BOOST_TEST(!f(ptr_hasher(&x), &x));
|
||||
return boost::report_errors();
|
||||
|
||||
BOOST_ASSERT(!f(ptr_hasher(&x), &x));
|
||||
return 0;
|
||||
}
|
||||
|
@@ -6,4 +6,4 @@
|
||||
#include <boost/functional/hash.hpp>
|
||||
|
||||
extern int f();
|
||||
int main() { return f(); }
|
||||
int main(int, char**) { return f(); }
|
||||
|
Reference in New Issue
Block a user