ICU term lists are handled for search.
[idzebra-moved-to-github.git] / test / api / t17.c
index 84b1ae3..20cf3f3 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: t17.c,v 1.1 2007-10-29 13:43:58 adam Exp $
+/* $Id: t17.c,v 1.7 2007-12-07 14:09:09 adam Exp $
    Copyright (C) 1995-2007
    Index Data ApS
 
@@ -21,19 +21,20 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 */
 
 /** \file
-    \brief tests unicode enabled searching (index_types)
+    \brief tests ICU enabled maps
 */
 #include <yaz/test.h>
 #include "testlib.h"
 
 const char *myrec[] = {
-        "<gils>\n<title>My title</title>\n</gils>\n",
-        "<gils>\n<title>My x title</title>\n</gils>\n",
-        "<gils>\n<title>My title x</title>\n</gils>\n" ,
+        "<gils>\n<title>My computer</title>\n</gils>\n",
+        "<gils>\n<title>My x computer</title>\n</gils>\n",
+        "<gils>\n<title>My computer x</title>\n</gils>\n" ,
        0} ;
        
 static void tst(int argc, char **argv)
 {
+#if YAZ_HAVE_ICU
     ZebraService zs = tl_start_up("zebra17.cfg", argc, argv);
     ZebraHandle zh = zebra_open(zs, 0);
 
@@ -42,16 +43,19 @@ static void tst(int argc, char **argv)
     /* simple term */
     YAZ_CHECK(tl_query(zh, "@attr 1=title notfound", 0));
 
-    /* we should get 3 hits. But 0 for now */
-#if 0
+    YAZ_CHECK(tl_query(zh, "@attr 1=title computer", 3));
+    YAZ_CHECK(tl_query(zh, "@attr 1=title .computer.", 3));
 
-    YAZ_CHECK(tl_query(zh, "@attr 1=title title", 3));
-#else
-    YAZ_CHECK(tl_query(zh, "@attr 1=title title", 0));
-#endif
+    YAZ_CHECK(tl_query(zh, "@attr 1=title x", 2));
 
+    YAZ_CHECK(tl_query(zh, "@attr 1=title my", 3));
+
+    /* phrase search */
+    YAZ_CHECK(tl_query(zh, "@attr 1=title {my computer}", 2));
  
     YAZ_CHECK(tl_close_down(zh, zs));
+#endif
 }
 
 TL_MAIN