]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
test/rados-api/list.cc: C++ version
authorColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Wed, 17 Aug 2011 00:53:48 +0000 (17:53 -0700)
committerColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Wed, 17 Aug 2011 00:53:48 +0000 (17:53 -0700)
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
src/test/rados-api/list.cc

index 85ab2dc66edb70fc64bb4f05c49141052fc696a8..5e2ef636b43740fbebe87ff272df2129be272309 100644 (file)
@@ -1,10 +1,13 @@
 #include "include/rados/librados.h"
+#include "include/rados/librados.hpp"
 #include "test/rados-api/test.h"
 
 #include "gtest/gtest.h"
 #include <errno.h>
 #include <string>
 
+using namespace librados;
+
 TEST(LibRadosList, ListObjects) {
   char buf[128];
   rados_t cluster;
@@ -24,3 +27,23 @@ TEST(LibRadosList, ListObjects) {
   rados_ioctx_destroy(ioctx);
   ASSERT_EQ(0, destroy_one_pool(pool_name, &cluster));
 }
+
+TEST(LibRadosList, ListObjectsPP) {
+  std::string pool_name = get_temp_pool_name();
+  Rados cluster;
+  ASSERT_EQ("", create_one_pool_pp(pool_name, cluster));
+  IoCtx ioctx;
+  cluster.ioctx_create(pool_name.c_str(), ioctx);
+  char buf[128];
+  memset(buf, 0xcc, sizeof(buf));
+  bufferlist bl1;
+  bl1.append(buf, sizeof(buf));
+  ASSERT_EQ((int)sizeof(buf), ioctx.write("foo", bl1, sizeof(buf), 0));
+  ObjectIterator iter(ioctx.objects_begin());
+  ASSERT_EQ(false, (iter == ioctx.objects_end()));
+  ASSERT_EQ(*iter, "foo");
+  ++iter;
+  ASSERT_EQ(true, (iter == ioctx.objects_end()));
+  ioctx.close();
+  ASSERT_EQ(0, destroy_one_pool_pp(pool_name, cluster));
+}