]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
test/rados-api/io: add RemoveTest
authorColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Mon, 8 Aug 2011 23:35:50 +0000 (16:35 -0700)
committerColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Tue, 9 Aug 2011 23:02:52 +0000 (16:02 -0700)
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
src/test/rados-api/io.cc

index 52ebbe75e67134a3edadfc5d87a3af62a114e16a..defdbafb36d3c4af0e4ce4ebcca5318d8ec7594d 100644 (file)
@@ -1,6 +1,7 @@
 #include "include/rados/librados.h"
 #include "test/rados-api/test.h"
 
+#include <errno.h>
 #include "gtest/gtest.h"
 
 TEST(LibRadosIo, SimpleWrite) {
@@ -112,3 +113,20 @@ TEST(LibRadosIo, TruncTest) {
   rados_ioctx_destroy(ioctx);
   ASSERT_EQ(0, destroy_one_pool(pool_name, &cluster));
 }
+
+TEST(LibRadosIo, RemoveTest) {
+  char buf[128];
+  char buf2[sizeof(buf)];
+  rados_t cluster;
+  rados_ioctx_t ioctx;
+  std::string pool_name = get_temp_pool_name();
+  ASSERT_EQ(0, create_one_pool(pool_name, &cluster));
+  rados_ioctx_create(cluster, pool_name.c_str(), &ioctx);
+  memset(buf, 0xaa, sizeof(buf));
+  ASSERT_EQ((int)sizeof(buf), rados_append(ioctx, "foo", buf, sizeof(buf)));
+  ASSERT_EQ(0, rados_remove(ioctx, "foo"));
+  memset(buf2, 0, sizeof(buf2));
+  ASSERT_EQ(-ENOENT, rados_read(ioctx, "foo", buf2, sizeof(buf2), 0));
+  rados_ioctx_destroy(ioctx);
+  ASSERT_EQ(0, destroy_one_pool(pool_name, &cluster));
+}