mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-10-16 18:56:54 +02:00
Add serialization test of non-const char*
This commit is contained in:
@@ -497,3 +497,23 @@ TEST(MSGPACK_STL, simple_buffer_cstring)
|
|||||||
EXPECT_EQ(val1, val2);
|
EXPECT_EQ(val1, val2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST(MSGPACK_STL, simple_buffer_non_const_cstring)
|
||||||
|
{
|
||||||
|
for (unsigned int k = 0; k < kLoop; k++) {
|
||||||
|
string val1;
|
||||||
|
for (unsigned int i = 0; i < kElements; i++)
|
||||||
|
val1 += 'a' + rand() % 26;
|
||||||
|
msgpack::sbuffer sbuf;
|
||||||
|
char* s = new char[val1.size() + 1];
|
||||||
|
std::strcpy(s, val1.c_str());
|
||||||
|
msgpack::pack(sbuf, s);
|
||||||
|
delete [] s;
|
||||||
|
msgpack::unpacked ret;
|
||||||
|
msgpack::unpack(ret, sbuf.data(), sbuf.size());
|
||||||
|
EXPECT_EQ(ret.get().type, msgpack::type::STR);
|
||||||
|
string val2 = ret.get().as<string>();
|
||||||
|
EXPECT_EQ(val1.size(), val2.size());
|
||||||
|
EXPECT_EQ(val1, val2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user