1 // Copyright 2019 Peter Dimov
2 // Distributed under the Boost Software License, Version 1.0.
3 // http://www.boost.org/LICENSE_1_0.txt
5 #include <boost/endian.hpp>
6 #include <boost/core/lightweight_test.hpp>
10 using namespace boost::endian;
15 BOOST_TEST_EQ( endian_reverse( 0x01020304 ), 0x04030201 );
21 little_uint32_buf_t v( 0x01020304 );
23 BOOST_TEST_EQ( v.data()[ 0 ], 0x04 );
24 BOOST_TEST_EQ( v.data()[ 1 ], 0x03 );
25 BOOST_TEST_EQ( v.data()[ 2 ], 0x02 );
26 BOOST_TEST_EQ( v.data()[ 3 ], 0x01 );
30 big_uint32_buf_t v( 0x01020304 );
32 BOOST_TEST_EQ( v.data()[ 0 ], 0x01 );
33 BOOST_TEST_EQ( v.data()[ 1 ], 0x02 );
34 BOOST_TEST_EQ( v.data()[ 2 ], 0x03 );
35 BOOST_TEST_EQ( v.data()[ 3 ], 0x04 );
41 little_uint32_t v( 0x01020304 );
43 BOOST_TEST_EQ( v.data()[ 0 ], 0x04 );
44 BOOST_TEST_EQ( v.data()[ 1 ], 0x03 );
45 BOOST_TEST_EQ( v.data()[ 2 ], 0x02 );
46 BOOST_TEST_EQ( v.data()[ 3 ], 0x01 );
50 big_uint32_t v( 0x01020304 );
52 BOOST_TEST_EQ( v.data()[ 0 ], 0x01 );
53 BOOST_TEST_EQ( v.data()[ 1 ], 0x02 );
54 BOOST_TEST_EQ( v.data()[ 2 ], 0x03 );
55 BOOST_TEST_EQ( v.data()[ 3 ], 0x04 );
58 return boost::report_errors();