]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/spirit/test/karma/auto1.cpp
1 // Copyright (c) 2001-2011 Hartmut Kaiser
3 // Distributed under the Boost Software License, Version 1.0. (See accompanying
4 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
8 ///////////////////////////////////////////////////////////////////////////////
12 BOOST_TEST((!traits::meta_create_exists
<karma::domain
, my_type
>::value
));
16 // test primitive types
17 BOOST_TEST(test_create_generator("true", true));
18 BOOST_TEST(test_create_generator("1", 1));
19 BOOST_TEST(test_create_generator("1.1", 1.1));
20 BOOST_TEST(test_create_generator("test", std::string("test")));
21 BOOST_TEST(test_create_generator("a", 'a'));
22 BOOST_TEST(test_create_generator(L
"a", L
'a'));
29 BOOST_TEST(test_create_generator("012", v
));
35 BOOST_TEST(test_create_generator("012", l
));
38 boost::optional
<int> o
;
39 BOOST_TEST(test_create_generator("", o
));
41 BOOST_TEST(test_create_generator("1", o
));
44 boost::variant
<int, double, float, std::string
> vv
;
46 BOOST_TEST(test_create_generator("1", vv
));
48 BOOST_TEST(test_create_generator("1.0", vv
));
50 BOOST_TEST(test_create_generator("1.0", vv
));
52 BOOST_TEST(test_create_generator("some string", vv
));
54 // test fusion sequence
55 std::pair
<int, double> p (1, 2.0);
56 BOOST_TEST(test_create_generator("12.0", p
));
60 // test primitive types
61 // BOOST_TEST(test_create_generator_auto("true", true));
62 // BOOST_TEST(test_create_generator_auto("1", 1));
63 // BOOST_TEST(test_create_generator_auto("1.1", 1.1));
64 // BOOST_TEST(test_create_generator_auto("test", std::string("test")));
65 // BOOST_TEST(test_create_generator_auto("a", 'a'));
66 // BOOST_TEST(test_create_generator_auto(L"a", L'a'));
73 BOOST_TEST(test_create_generator_auto("012", v
));
79 BOOST_TEST(test_create_generator_auto("012", l
));
82 boost::optional
<int> o
;
83 BOOST_TEST(test_create_generator_auto("", o
));
85 BOOST_TEST(test_create_generator_auto("1", o
));
88 boost::variant
<int, double, float, std::string
> vv
;
90 BOOST_TEST(test_create_generator_auto("1", vv
));
92 BOOST_TEST(test_create_generator_auto("1.0", vv
));
94 BOOST_TEST(test_create_generator_auto("1.0", vv
));
96 BOOST_TEST(test_create_generator_auto("some string", vv
));
98 // test fusion sequence
99 std::pair
<int, double> p (1, 2.0);
100 BOOST_TEST(test_create_generator_auto("12.0", p
));
103 return boost::report_errors();