#include #define BOOST_TEST_MODULE fixint #include template void check_size(size_t size) { T v(0); msgpack::sbuffer sbuf; msgpack::pack(sbuf, v); BOOST_CHECK_EQUAL(size, sbuf.size()); } BOOST_AUTO_TEST_CASE(size) { check_size(2); check_size(3); check_size(5); check_size(9); check_size(2); check_size(3); check_size(5); check_size(9); } template void check_convert() { T v1(typename T::value_type(-11)); msgpack::sbuffer sbuf; msgpack::pack(sbuf, v1); msgpack::object_handle oh = msgpack::unpack(sbuf.data(), sbuf.size()); T v2; oh.get().convert(v2); BOOST_CHECK_EQUAL(v1.get(), v2.get()); BOOST_CHECK_EQUAL(oh.get(), msgpack::object(T(v1.get()))); } BOOST_AUTO_TEST_CASE(convert) { check_convert(); check_convert(); check_convert(); check_convert(); check_convert(); check_convert(); check_convert(); check_convert(); }