]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/spirit/test/x3/lit1.cpp
1 /*=============================================================================
2 Copyright (c) 2001-2015 Joel de Guzman
3 http://spirit.sourceforge.net/
5 Distributed under the Boost Software License, Version 1.0. (See accompanying
6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 =============================================================================*/
8 #include <boost/detail/lightweight_test.hpp>
9 #include <boost/spirit/home/x3.hpp>
10 #include <boost/fusion/include/vector.hpp>
18 using spirit_test::test
;
19 using spirit_test::test_attr
;
20 using boost::spirit::x3::string
;
22 BOOST_SPIRIT_ASSERT_CONSTEXPR_CTORS(string("x"));
25 BOOST_TEST((test("kimpo", "kimpo")));
26 BOOST_TEST((test("kimpo", string("kimpo"))));
28 BOOST_TEST((test("x", string("x"))));
29 BOOST_TEST((test(L
"x", string(L
"x"))));
31 std::basic_string
<char> s("kimpo");
32 std::basic_string
<wchar_t> ws(L
"kimpo");
33 BOOST_TEST((test("kimpo", s
)));
34 BOOST_TEST((test(L
"kimpo", ws
)));
35 BOOST_TEST((test("kimpo", string(s
))));
36 BOOST_TEST((test(L
"kimpo", string(ws
))));
40 BOOST_TEST((test(L
"kimpo", L
"kimpo")));
41 BOOST_TEST((test(L
"kimpo", string(L
"kimpo"))));
42 BOOST_TEST((test(L
"x", string(L
"x"))));
46 std::basic_string
<char> s("kimpo");
47 BOOST_TEST((test("kimpo", string(s
))));
49 std::basic_string
<wchar_t> ws(L
"kimpo");
50 BOOST_TEST((test(L
"kimpo", string(ws
))));
54 using namespace boost::spirit::x3::ascii
;
55 BOOST_TEST((test(" kimpo", string("kimpo"), space
)));
56 BOOST_TEST((test(L
" kimpo", string(L
"kimpo"), space
)));
57 BOOST_TEST((test(" x", string("x"), space
)));
61 using namespace boost::spirit::x3::ascii
;
62 BOOST_TEST((test(" kimpo", string("kimpo"), space
)));
63 BOOST_TEST((test(L
" kimpo", string(L
"kimpo"), space
)));
64 BOOST_TEST((test(" x", string("x"), space
)));
68 using namespace boost::spirit::x3::ascii
;
70 BOOST_TEST((test_attr("kimpo", string("kimpo"), s
)));
71 BOOST_TEST(s
== "kimpo");
73 BOOST_TEST((test_attr(L
"kimpo", string(L
"kimpo"), s
)));
74 BOOST_TEST(s
== "kimpo");
76 BOOST_TEST((test_attr("x", string("x"), s
)));
80 { // single-element fusion vector tests
81 boost::fusion::vector
<std::string
> s
;
82 BOOST_TEST(test_attr("kimpo", string("kimpo"), s
));
83 BOOST_TEST(boost::fusion::at_c
<0>(s
) == "kimpo");
86 return boost::report_errors();