]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
test/crimson/seastore: add write/read_meta tests
authorXuehan Xu <xxhdx1985126@gmail.com>
Thu, 8 Apr 2021 07:24:38 +0000 (15:24 +0800)
committerXuehan Xu <xxhdx1985126@gmail.com>
Fri, 23 Apr 2021 03:33:00 +0000 (11:33 +0800)
Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
src/test/crimson/seastore/test_seastore.cc

index 33837bdbb9e6941073ca43b6389469a34a7a7fd7..88dcb18f135135d0c102a5d2c94579a4241f9c3d 100644 (file)
@@ -1,5 +1,5 @@
-// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
-// vim: ts=8 sw=2 smarttab
+// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:nil -*-
+// vim: ts=8 sw=2 smarttab expandtab
 
 #include <string>
 #include <iostream>
@@ -53,6 +53,17 @@ struct seastore_test_t :
       std::move(t)).get0();
   }
 
+  void set_meta(
+    const std::string& key,
+    const std::string& value) {
+    return seastore->write_meta(key, value).get0();
+  }
+
+  std::tuple<int, std::string> get_meta(
+    const std::string& key) {
+    return seastore->read_meta(key).get();
+  }
+
   struct object_state_t {
     const coll_t cid;
     const CollectionRef coll;
@@ -268,6 +279,20 @@ TEST_F(seastore_test_t, collection_create_list_remove)
   });
 }
 
+TEST_F(seastore_test_t, meta) {
+  run_async([this] {
+    set_meta("key1", "value1");
+    set_meta("key2", "value2");
+
+    const auto [ret1, value1] = get_meta("key1");
+    const auto [ret2, value2] = get_meta("key2");
+    EXPECT_EQ(ret1, 0);
+    EXPECT_EQ(ret2, 0);
+    EXPECT_EQ(value1, "value1");
+    EXPECT_EQ(value2, "value2");
+  });
+}
+
 TEST_F(seastore_test_t, touch_stat)
 {
   run_async([this] {