[Groonga-commit] groonga/groonga [master] added a test for grn_dat_at().

Back to archive index

null+****@clear***** null+****@clear*****
2011年 12月 26日 (月) 18:56:37 JST


Susumu Yata	2011-12-26 18:56:37 +0900 (Mon, 26 Dec 2011)

  New Revision: 498c043801900514aa027c2b04ea1719ce2503f2

  Log:
    added a test for grn_dat_at().

  Modified files:
    test/unit/core/dat/test-dat.cpp

  Modified: test/unit/core/dat/test-dat.cpp (+23 -0)
===================================================================
--- test/unit/core/dat/test-dat.cpp    2011-12-26 18:41:41 +0900 (42488d1)
+++ test/unit/core/dat/test-dat.cpp    2011-12-26 18:56:37 +0900 (93a06f6)
@@ -489,4 +489,27 @@ namespace test_dat
     cut_assert_null(_grn_dat_key(&ctx, dat, GRN_ID_NIL, NULL));
     cppcut_assert_equal(GRN_SUCCESS, grn_dat_close(&ctx, dat));
   }
+
+  void test_at(void)
+  {
+    std::vector<std::string> keys;
+    create_keys(&keys, 1000, 6, 15);
+
+    grn_dat * const dat = create_trie(keys, NULL);
+    for (std::size_t i = 0; i < keys.size(); i += 2) {
+      const grn_id key_id = static_cast<grn_id>(i + 1);
+      cppcut_assert_equal(GRN_SUCCESS,
+                          grn_dat_delete_by_id(&ctx, dat, key_id, NULL));
+    }
+    for (std::size_t i = 0; i < keys.size(); ++i) {
+      const grn_id key_id = static_cast<grn_id>(i + 1);
+      if (!(i & 1)) {
+        cppcut_assert_equal(static_cast<grn_id>(GRN_ID_NIL),
+                            grn_dat_at(&ctx, dat, key_id));
+      } else {
+        cppcut_assert_equal(key_id, grn_dat_at(&ctx, dat, key_id));
+      }
+    }
+    cppcut_assert_equal(GRN_SUCCESS, grn_dat_close(&ctx, dat));
+  }
 }




Groonga-commit メーリングリストの案内
Back to archive index