// Copyright Abel Sinkovics (abel@sinkovics.hu) 2015. // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) // This header file contains code that is reused by other cpp files #include #include #include #include #include #include #include #include "common.hpp" #include #include #include #include #include #include #include "test_case.hpp" BOOST_METAPARSE_TEST_CASE(TEST_NAME) { using boost::metaparse::get_result; using boost::metaparse::letter; using boost::metaparse::start; using boost::metaparse::is_error; using boost::metaparse::sequence; using boost::metaparse::always; using boost::metaparse::one_char; using boost::mpl::equal; using boost::mpl::equal_to; using boost::mpl::apply_wrap2; using boost::mpl::vector_c; using boost::mpl::vector; using boost::mpl::size; typedef sequence letter_pair; typedef repeated_reject_incomplete1 repeated_reject_incomplete1_letter_pair; typedef always always_int; typedef boost::mpl::vector_c chars6; typedef boost::mpl::vector_c chars8; typedef boost::mpl::vector_c chars10; // test_empty_input BOOST_MPL_ASSERT(( is_error< apply_wrap2 > )); // test0 BOOST_MPL_ASSERT(( is_error< apply_wrap2 > )); // test1_pair BOOST_MPL_ASSERT(( equal< get_result< apply_wrap2 >::type, vector >, equal_sequences > )); // test_with_a_failing_item BOOST_MPL_ASSERT(( is_error< apply_wrap2 > )); // test2_pairs BOOST_MPL_ASSERT(( equal< get_result< apply_wrap2 >::type, vector, vector_c >, equal_sequences > )); // test3_pairs BOOST_MPL_ASSERT(( equal< get_result< apply_wrap2 >::type, vector< vector_c, vector_c, vector_c >, equal_sequences > )); // test4_pairs BOOST_MPL_ASSERT(( equal< get_result< apply_wrap2 >::type, vector< vector_c, vector_c, vector_c, vector_c >, equal_sequences > )); // test5 BOOST_MPL_ASSERT(( equal< get_result< apply_wrap2 >::type, vector< vector_c, vector_c, vector_c, vector_c, vector_c >, equal_sequences > )); // test_length BOOST_MPL_ASSERT(( equal_to< size< get_result< apply_wrap2 >::type >::type, int3 > )); // test_no_extra_evaluation BOOST_MPL_ASSERT(( equal< get_result< apply_wrap2, str_ca, start> >::type, vector > )); }