[Groonga-commit] groonga/groonga [master] [suggest][correct] add '1' score for similar search.

Back to archive index

null+****@clear***** null+****@clear*****
2011年 8月 14日 (日) 23:18:50 JST


Kouhei Sutou	2011-08-14 14:18:50 +0000 (Sun, 14 Aug 2011)

  New Revision: e9de327571a8b5ff96fb6262a79a7a0d97fc9f8c

  Log:
    [suggest][correct] add '1' score for similar search.

  Modified files:
    plugins/suggest/suggest.c
    test/unit/story/test-rurema.c

  Modified: plugins/suggest/suggest.c (+2 -1)
===================================================================
--- plugins/suggest/suggest.c    2011-08-14 13:56:34 +0000 (ff66788)
+++ plugins/suggest/suggest.c    2011-08-14 14:18:50 +0000 (c14dee8)
@@ -324,7 +324,8 @@ correct(grn_ctx *ctx, grn_obj *items, grn_obj *items_boost,
                   if (GRN_INT32_VALUE(&item_boost) >= 0) {
                     int32_t score;
                     grn_rset_recinfo *ri;
-                    score = (GRN_INT32_VALUE(&item_freq2) >> 4) +
+                    score = 1 +
+                            (GRN_INT32_VALUE(&item_freq2) >> 4) +
                             GRN_INT32_VALUE(&item_boost);
                     ri = value;
                     ri->score += score;

  Modified: test/unit/story/test-rurema.c (+19 -0)
===================================================================
--- test/unit/story/test-rurema.c    2011-08-14 13:56:34 +0000 (dd39aff)
+++ test/unit/story/test-rurema.c    2011-08-14 14:18:50 +0000 (84af3ec)
@@ -31,6 +31,7 @@ void test_complete_prefix_search(gconstpointer data);
 void test_complete_prefix_search_threshold_found(void);
 void test_complete_prefix_search_threshold_not_found(void);
 void test_correct_cooccurrence(void);
+void test_correct_similar(void);
 void test_suggest_cooccurrence(void);
 
 static gchar *tmp_directory;
@@ -282,6 +283,24 @@ test_correct_coocurrence(void)
 }
 
 void
+test_correct_similar(void)
+{
+  cut_assert_equal_string(
+    "{\"correct\":"
+     "[[1],"
+      "[[\"_key\",\"ShortText\"],"
+       "[\"_score\",\"Int32\"]],"
+      "[\"file.join\",1048573]]}",
+    send_command(
+        "suggest "
+        "--table item_rurema "
+        "--column kana "
+        "--types correct "
+        "--threshold 1 "
+        "--query 'join'"));
+}
+
+void
 test_suggest_coocurrence(void)
 {
   cut_assert_equal_string(




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