1 // Copyright Abel Sinkovics (abel@sinkovics.hu) 2014.
2 // Distributed under the Boost Software License, Version 1.0.
3 // (See accompanying file LICENSE_1_0.txt or copy at
4 // http://www.boost.org/LICENSE_1_0.txt)
5
6 #include <boost/metaparse/util/in_range_c.hpp>
7
8 #include "common.hpp"
9
10 #include <boost/mpl/apply_wrap.hpp>
11 #include <boost/mpl/not.hpp>
12 #include <boost/mpl/assert.hpp>
13
14 #include "test_case.hpp"
15
BOOST_METAPARSE_TEST_CASE(util_in_range_c)16 BOOST_METAPARSE_TEST_CASE(util_in_range_c)
17 {
18 using boost::metaparse::util::in_range_c;
19
20 using boost::mpl::apply_wrap1;
21 using boost::mpl::not_;
22
23 // test_int_in_range
24 BOOST_MPL_ASSERT((apply_wrap1<in_range_c<char, 'a', 'g'>, char_e>));
25
26 // test_lower_bound
27 BOOST_MPL_ASSERT((apply_wrap1<in_range_c<char, 'a', 'g'>, char_a>));
28
29 // test_upper_bound
30 BOOST_MPL_ASSERT((apply_wrap1<in_range_c<int, 10, 13>, int13>));
31
32 // test_int_not_in_range
33 BOOST_MPL_ASSERT((not_<apply_wrap1<in_range_c<int, 10, 13>, int14> >));
34
35 }
36
37