3 * tests for the module "containerfunc"
5 * (c) Copyright 2007-2008 by Intra2net AG
17 #define BOOST_TEST_DYN_LINK
18 #include <boost/test/unit_test.hpp>
20 #include <containerfunc.hpp>
24 BOOST_AUTO_TEST_SUITE(TestContainerFunc)
26 BOOST_AUTO_TEST_CASE(FillStringVector)
28 std::vector< std::string > v;
29 BOOST_CHECK_EQUAL( true, v.empty() );
31 get_push_back_filler(v)("1")("2")("drei");
33 BOOST_CHECK_EQUAL( 3u, v.size() );
34 BOOST_CHECK_EQUAL( std::string("2"), v[1]);
35 BOOST_CHECK_EQUAL( std::string("drei"), v[2]);
36 BOOST_CHECK_EQUAL( std::string("1"), v[0]);
38 get_push_back_filler(v)("i3")("i4");
40 BOOST_CHECK_EQUAL( 5u, v.size() );
41 BOOST_CHECK_EQUAL( std::string("i4"), v[4]);
42 BOOST_CHECK_EQUAL( std::string("i3"), v[3]);
43 } // eo FillStringVector
47 BOOST_AUTO_TEST_CASE(RetrieveMapKeys)
49 std::map< int, std::string > map1;
50 std::list< int > key_list;
51 std::set< int > key_set;
54 MapFiller< int, std::string > fill(map1);
62 BOOST_CHECK_EQUAL( 4u, map1.size() );
64 get_key_list(map1, key_list);
65 BOOST_CHECK_EQUAL( 4u, key_list.size() );
66 BOOST_CHECK( std::find(key_list.begin(), key_list.end(), 1) != key_list.end() );
67 BOOST_CHECK( std::find(key_list.begin(), key_list.end(), 2) != key_list.end() );
68 BOOST_CHECK( std::find(key_list.begin(), key_list.end(), 3) != key_list.end() );
69 BOOST_CHECK( std::find(key_list.begin(), key_list.end(), 4) != key_list.end() );
71 get_key_set(map1, key_set);
72 BOOST_CHECK_EQUAL( 4u, key_set.size() );
73 BOOST_CHECK( key_set.find(1) != key_set.end() );
74 BOOST_CHECK( key_set.find(2) != key_set.end() );
75 BOOST_CHECK( key_set.find(3) != key_set.end() );
76 BOOST_CHECK( key_set.find(4) != key_set.end() );
77 } // RetrieveMapKeys()
79 BOOST_AUTO_TEST_SUITE_END()