summaryrefslogtreecommitdiff
path: root/cpp/test/fixint.cc
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/test/fixint.cc')
-rw-r--r--cpp/test/fixint.cc24
1 files changed, 24 insertions, 0 deletions
diff --git a/cpp/test/fixint.cc b/cpp/test/fixint.cc
new file mode 100644
index 0000000..64a39ac
--- /dev/null
+++ b/cpp/test/fixint.cc
@@ -0,0 +1,24 @@
+#include <msgpack.hpp>
+#include <gtest/gtest.h>
+
+template <typename T>
+void check_size(size_t size) {
+ T v(0);
+ msgpack::sbuffer sbuf;
+ msgpack::pack(sbuf, v);
+ EXPECT_EQ(size, sbuf.size());
+}
+
+TEST(fixint, size)
+{
+ check_size<msgpack::type::fix_int8>(2);
+ check_size<msgpack::type::fix_int16>(3);
+ check_size<msgpack::type::fix_int32>(5);
+ check_size<msgpack::type::fix_int64>(9);
+
+ check_size<msgpack::type::fix_uint8>(2);
+ check_size<msgpack::type::fix_uint16>(3);
+ check_size<msgpack::type::fix_uint32>(5);
+ check_size<msgpack::type::fix_uint64>(9);
+}
+