1// Boost.Range library
2//
3// Copyright Neil Groves 2010. 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)
7//
8#include <boost/range/adaptor/type_erased.hpp>
9#include "type_erased_test.hpp"
10
11#include <boost/test/unit_test.hpp>
12
13#include <deque>
14#include <list>
15#include <vector>
16
17namespace boost_range_adaptor_type_erased_test
18{
19 namespace
20 {
21
22void test_single_pass()
23{
24 test_type_erased_exercise_buffer_types<
25 std::list<int>, boost::single_pass_traversal_tag>();
26
27 test_type_erased_exercise_buffer_types<
28 std::deque<int>, boost::single_pass_traversal_tag>();
29
30 test_type_erased_exercise_buffer_types<
31 std::vector<int>, boost::single_pass_traversal_tag>();
32
33 test_type_erased_exercise_buffer_types<
34 std::list<MockType>, boost::single_pass_traversal_tag>();
35
36 test_type_erased_exercise_buffer_types<
37 std::deque<MockType>, boost::single_pass_traversal_tag>();
38
39 test_type_erased_exercise_buffer_types<
40 std::vector<MockType>, boost::single_pass_traversal_tag>();
41}
42
43 } // anonymous namespace
44} // namespace boost_range_adaptor_type_erased_test
45
46boost::unit_test::test_suite*
47init_unit_test_suite(int argc, char* argv[])
48{
49 boost::unit_test::test_suite* test =
50 BOOST_TEST_SUITE("RangeTestSuite.adaptor.type_erased_single_pass");
51
52 test->add(BOOST_TEST_CASE(
53 &boost_range_adaptor_type_erased_test::test_single_pass));
54
55 return test;
56}
57
58

source code of boost/libs/range/test/adaptor_test/type_erased_single_pass.cpp