// Copyright 2006-2007 Daniel James. // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // This test creates the containers with members that meet their minimum // requirements. Makes sure everything compiles and is defined correctly. #include #include #include #include "../objects/minimal.hpp" #include "./compile_tests.hpp" void container_tests() { typedef std::pair value_type; value_type value( test::minimal::assignable::create(), test::minimal::copy_constructible::create()); std::cout<<"Test unordered_map.\n"; boost::unordered_map< test::minimal::assignable, test::minimal::copy_constructible, test::minimal::hash, test::minimal::equal_to, test::minimal::allocator > map; container_test(map, value); std::cout<<"Test unordered_multimap.\n"; boost::unordered_multimap< test::minimal::assignable, test::minimal::copy_constructible, test::minimal::hash, test::minimal::equal_to, test::minimal::allocator > multimap; container_test(multimap, value); } void equality_tests() { typedef std::pair value_type; value_type value( test::minimal::assignable::create(), test::minimal::copy_constructible_equality_comparable::create()); boost::unordered_map< test::minimal::assignable, test::minimal::copy_constructible_equality_comparable, test::minimal::hash, test::minimal::equal_to, test::minimal::allocator > map; equality_test(map, value); boost::unordered_multimap< test::minimal::assignable, test::minimal::copy_constructible_equality_comparable, test::minimal::hash, test::minimal::equal_to, test::minimal::allocator > multimap; equality_test(multimap, value); } int main() { container_tests(); equality_tests(); return boost::report_errors(); }