#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;
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));
+}