]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/range/test/adaptor_test/map_keys_example.cpp
3 // Copyright Neil Groves 2009. Use, modification and
4 // distribution is subject to the Boost Software License, Version
5 // 1.0. (See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt)
9 // For more information, see http://www.boost.org/libs/range/
12 #include <boost/range/adaptor/map.hpp>
13 #include <boost/range/algorithm/copy.hpp>
14 #include <boost/assign.hpp>
21 #include <boost/test/test_tools.hpp>
22 #include <boost/test/unit_test.hpp>
24 #include <boost/range/algorithm_ext/push_back.hpp>
28 void map_keys_example_test()
30 //=int main(int argc, const char* argv[])
32 using namespace boost::assign
;
33 using namespace boost::adaptors
;
35 std::map
<int,int> input
;
36 for (int i
= 0; i
< 10; ++i
)
37 input
.insert(std::make_pair(i
, i
* 10));
41 std::ostream_iterator
<int>(std::cout
, ","));
46 std::vector
<int> reference
;
47 reference
+= 0,1,2,3,4,5,6,7,8,9;
49 std::vector
<int> test
;
50 boost::push_back(test
, input
| map_keys
);
52 BOOST_CHECK_EQUAL_COLLECTIONS( reference
.begin(), reference
.end(),
53 test
.begin(), test
.end() );
57 boost::unit_test::test_suite
*
58 init_unit_test_suite(int argc
, char* argv
[])
60 boost::unit_test::test_suite
* test
61 = BOOST_TEST_SUITE( "RangeTestSuite.adaptor.map_keys_example" );
63 test
->add( BOOST_TEST_CASE( &map_keys_example_test
) );