3 // Copyright Neil Groves 2014. 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)
8 // For more information, see http://www.boost.org/libs/range/
11 #define BOOST_ALLOW_DEPRECATED_HEADERS
12 #include <boost/range/const_reverse_iterator.hpp>
13 #include <boost/static_assert.hpp>
14 #include <boost/type_traits/is_same.hpp>
16 #include <boost/test/test_tools.hpp>
17 #include <boost/test/unit_test.hpp>
21 namespace boost_range_test
26 void test_const_reverse_iterator()
28 typedef std::vector
<int> cont
;
32 boost::reverse_iterator
<cont::const_iterator
>,
33 boost::range_const_reverse_iterator
<cont
>::type
38 boost::reverse_iterator
<cont::const_iterator
>,
39 boost::range_const_reverse_iterator
<const cont
>::type
42 #ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
45 boost::reverse_iterator
<cont::const_iterator
>,
46 boost::range_const_reverse_iterator
<cont
&&>::type
51 } // anonymous namespace
52 } // namespace boost_range_test
54 boost::unit_test::test_suite
* init_unit_test_suite( int argc
, char* argv
[] )
56 boost::unit_test::test_suite
* test
=
58 "Boost.Range range_const_reverse_iterator meta-function");
60 test
->add(BOOST_TEST_CASE(&boost_range_test::test_const_reverse_iterator
));