MCPcopy Create free account
hub / github.com/boostorg/pfr / test_comparable_struct

Function test_comparable_struct

test/core/run/ops.cpp:40–65  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

38
39template <class T>
40void test_comparable_struct() {
41 using namespace boost::pfr;
42 T s1 {0, 1, false, 6,7,8,9,10,11};
43 T s2 = s1;
44 T s3 {0, 1, false, 6,7,8,9,10,11111};
45 BOOST_TEST(eq(s1, s2));
46 BOOST_TEST(le(s1, s2));
47 BOOST_TEST(ge(s1, s2));
48 BOOST_TEST(!ne(s1, s2));
49 BOOST_TEST(!eq(s1, s3));
50 BOOST_TEST(ne(s1, s3));
51 BOOST_TEST(lt(s1, s3));
52 BOOST_TEST(gt(s3, s2));
53 BOOST_TEST(le(s1, s3));
54 BOOST_TEST(ge(s3, s2));
55
56 std::cout << boost::pfr::io(s1);
57
58 T s4;
59 std::stringstream ss;
60 ss.exceptions ( std::ios::failbit);
61 ss << boost::pfr::io(s1);
62 ss >> boost::pfr::io(s4);
63 std::cout << boost::pfr::io(s4);
64 BOOST_TEST(eq(s1, s4));
65}
66
67void test_empty_struct() {
68 struct empty {};

Callers

nothing calls this directly

Calls 7

eqFunction · 0.85
leFunction · 0.85
geFunction · 0.85
neFunction · 0.85
ltFunction · 0.85
gtFunction · 0.85
ioFunction · 0.85

Tested by

no test coverage detected