From a18957432f04a51deb2ff99a98bbdeb426366201 Mon Sep 17 00:00:00 2001 From: Colin Patrick McCabe Date: Thu, 11 Aug 2011 11:19:44 -0700 Subject: [PATCH] test/rados-api/io.cc: test WriteFullRoundTripPP Signed-off-by: Colin McCabe --- src/test/rados-api/io.cc | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/test/rados-api/io.cc b/src/test/rados-api/io.cc index d827463ec536c..5168c130b15c6 100644 --- a/src/test/rados-api/io.cc +++ b/src/test/rados-api/io.cc @@ -136,6 +136,29 @@ TEST(LibRadosIo, WriteFullRoundTrip) { ASSERT_EQ(0, destroy_one_pool(pool_name, &cluster)); } +TEST(LibRadosIo, WriteFullRoundTripPP) { + char buf[128]; + char buf2[64]; + Rados cluster; + IoCtx ioctx; + std::string pool_name = get_temp_pool_name(); + ASSERT_EQ("", create_one_pool_pp(pool_name, cluster)); + cluster.ioctx_create(pool_name.c_str(), ioctx); + memset(buf, 0xcc, sizeof(buf)); + bufferlist bl1; + bl1.append(buf, sizeof(buf)); + ASSERT_EQ((int)sizeof(buf), ioctx.write("foo", bl1, sizeof(buf), 0)); + memset(buf2, 0xdd, sizeof(buf2)); + bufferlist bl2; + bl2.append(buf2, sizeof(buf2)); + ASSERT_EQ(0, ioctx.write_full("foo", bl2)); + bufferlist bl3; + ASSERT_EQ((int)sizeof(buf2), ioctx.read("foo", bl3, sizeof(buf), 0)); + ASSERT_EQ(0, memcmp(bl3.c_str(), buf2, sizeof(buf2))); + ioctx.close(); + ASSERT_EQ(0, destroy_one_pool_pp(pool_name, cluster)); +} + TEST(LibRadosIo, AppendRoundTrip) { char buf[64]; char buf2[64]; -- 2.39.5