// // Boost.Pointer Container // // Copyright Thorsten Ottosen 2003-2005. Use, modification and // distribution is subject to 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) // // For more information, see http://www.boost.org/libs/ptr_container/ // #include #include using namespace std; int test_main( int, char*[] ) { typedef_test< ptr_map, Derived >(); typedef_test< ptr_map, Value >(); associative_container_test< ptr_map, Base, Derived >(); associative_container_test< ptr_map, Value, Value >(); typedef_test< ptr_multimap, Derived >(); typedef_test< ptr_multimap, Value >(); associative_container_test< ptr_multimap, Base, Derived >(); associative_container_test< ptr_multimap, Value, Value >(); string joe = "joe"; string brian = "brian"; ptr_map m; m.insert( joe, new int( 4 ) ); m.insert( brian, std::auto_ptr( new int( 6 ) ) ); m[ joe ] += 56; m[ brian ] += 10; try { m[ "hans" ] = 4; } catch( const bad_ptr_container_operation& ) { } return 0; } #include using boost::unit_test_framework::test_suite; test_suite* init_unit_test_suite( int argc, char* argv[] ) { test_suite* test = BOOST_TEST_SUITE( "Pointer Container Test Suite" ); test->add( BOOST_TEST_CASE( &test_container_adapter ) ); return test; }