]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/spirit/test/karma/center_alignment.cpp
bump version to 18.2.4-pve3
[ceph.git] / ceph / src / boost / libs / spirit / test / karma / center_alignment.cpp
1 // Copyright (c) 2001-2011 Hartmut Kaiser
2 //
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)
5
6 #include <boost/spirit/include/karma_center_alignment.hpp>
7
8 #include <boost/spirit/include/karma_char.hpp>
9 #include <boost/spirit/include/karma_string.hpp>
10 #include <boost/spirit/include/karma_numeric.hpp>
11 #include <boost/spirit/include/karma_generate.hpp>
12 #include <boost/spirit/include/karma_directive.hpp>
13 #include <boost/spirit/include/karma_upper_lower_case.hpp>
14
15 #include <string>
16 #include <iterator>
17
18 #include "test.hpp"
19
20 ///////////////////////////////////////////////////////////////////////////////
21 int
22 main()
23 {
24 using namespace spirit_test;
25 using namespace boost::spirit;
26 using namespace boost::spirit::ascii;
27
28 {
29 BOOST_TEST(test(" x ", center[char_('x')]));
30 BOOST_TEST(test(" x ", center[char_], 'x'));
31 BOOST_TEST(test(" x ", center['x']));
32
33 BOOST_TEST(test(" x ", center(10)[char_('x')]));
34 BOOST_TEST(test(" x ", center(10)[char_], 'x'));
35 BOOST_TEST(test(" x ", center(10)['x']));
36
37 BOOST_TEST(test("*****x****", center(10, char_('*'))[char_('x')]));
38 BOOST_TEST(test("*****x****", center(10, '*')[char_], 'x'));
39 BOOST_TEST(test("*****x****", center(10, '*')['x']));
40 BOOST_TEST(test("aaaaaxaaaa", lower[center(10, 'A')['X']]));
41 BOOST_TEST(test("AAAAAXAAAA", upper[center(10, 'a')['x']]));
42
43
44 BOOST_TEST(test("*****x****", center(char_('*'))[char_('x')]));
45 BOOST_TEST(test("*****x****", center(char_('*'))[char_], 'x'));
46 BOOST_TEST(test("*****x****", center(char_('*'))['x']));
47
48 BOOST_TEST(test(" x ", center(11)[char_('x')]));
49
50 BOOST_TEST(test(" abc ", center[lit("abc")]));
51 BOOST_TEST(test(" abc ", center[string], "abc"));
52
53 BOOST_TEST(test(" abc ", center(10)[lit("abc")]));
54 BOOST_TEST(test(" abc ", center(10)[string], "abc"));
55 BOOST_TEST(test(" abc ", center(10)["abc"]));
56
57 BOOST_TEST(test(" abc ", center(11)[lit("abc")]));
58 BOOST_TEST(test(" ab ", center(11)[lit("ab")]));
59
60 BOOST_TEST(test("****abc***", center(10, char_('*'))[lit("abc")]));
61 BOOST_TEST(test("****abc***", center(10, '*')[string], "abc"));
62 BOOST_TEST(test("****abc***", center(10, '*')["abc"]));
63
64 BOOST_TEST(test("****abc***", center(char_('*'))[lit("abc")]));
65 BOOST_TEST(test("****abc***", center(char_('*'))[string], "abc"));
66 BOOST_TEST(test("****abc***", center(char_('*'))["abc"]));
67
68 BOOST_TEST(test(" abc ", center(11)[lit("abc")]));
69
70 BOOST_TEST(test(" 100 ", center[int_(100)]));
71 BOOST_TEST(test(" 100 ", center[int_], 100));
72
73 BOOST_TEST(test(" 100 ", center(10)[int_(100)]));
74 BOOST_TEST(test(" 100 ", center(10)[int_], 100));
75
76 BOOST_TEST(test("****100***", center(10, char_('*'))[int_(100)]));
77 BOOST_TEST(test("****100***", center(10, '*')[int_], 100));
78
79 BOOST_TEST(test(" 100 ", center(11)[int_(100)]));
80
81 BOOST_TEST(test("****100***", center(char_('*'))[int_(100)]));
82 BOOST_TEST(test("****100***", center(char_('*'))[int_], 100));
83 }
84
85 return boost::report_errors();
86 }