X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=test%2Fapi%2Ft5.c;h=3705efe772c04dbd1be27ac80c3f40c4ac0437c4;hb=f1ec926159c7559f181e7be8dbc9276b9e75f739;hp=11b0f69c69aecca68449a124099ca13f0738d716;hpb=f84ad20a7a6a45d02da7f162fa6bb1137e79a07f;p=idzebra-moved-to-github.git diff --git a/test/api/t5.c b/test/api/t5.c index 11b0f69..3705efe 100644 --- a/test/api/t5.c +++ b/test/api/t5.c @@ -1,6 +1,6 @@ -/* $Id: t5.c,v 1.9 2004-10-29 13:02:39 heikki Exp $ - Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004 - Index Data Aps +/* $Id: t5.c,v 1.14 2005-09-13 11:51:07 adam Exp $ + Copyright (C) 1995-2005 + Index Data ApS This file is part of the Zebra server. @@ -33,32 +33,68 @@ const char *myrec[] = { int main(int argc, char **argv) { ZebraService zs = start_up(0, argc, argv); - ZebraHandle zh = zebra_open (zs); + ZebraHandle zh = zebra_open(zs, 0); - init_data(zh,myrec); + init_data(zh, myrec); - do_query(__LINE__,zh, "@attr 1=4 my", 3); - do_query(__LINE__,zh, "@attr 1=4 {my x}", 1); - do_query(__LINE__,zh, "@attr 1=4 {my x}", 1); - do_query(__LINE__,zh, "@attr 1=4 {x my}", 0); - do_query(__LINE__,zh, "@attr 1=4 {my x title}", 1); - do_query(__LINE__,zh, "@attr 1=4 {my title}", 2); - do_query(__LINE__,zh, "@attr 1=4 @and x title", 2); + /* phrase searches */ + do_query(__LINE__, zh, "@attr 1=4 my", 3); + do_query(__LINE__, zh, "@attr 1=4 {my x}", 1); + do_query(__LINE__, zh, "@attr 1=4 @attr 4=1 {my x}", 1); + do_query(__LINE__, zh, "@attr 1=4 {my x}", 1); + do_query(__LINE__, zh, "@attr 1=4 {x my}", 0); + do_query(__LINE__, zh, "@attr 1=4 {my x title}", 1); + do_query(__LINE__, zh, "@attr 1=4 {my title}", 2); + + /* and-list searches */ + do_query(__LINE__, zh, "@attr 1=4 @attr 4=6 {x my}", 2); + do_query(__LINE__, zh, "@attr 1=4 @attr 4=6 {my x}", 2); + do_query(__LINE__, zh, "@attr 1=4 @attr 4=6 {my my}", 3); + do_query(__LINE__, zh, "@attr 1=4 @attr 4=6 {e x}", 0); + + /* or-list searches */ + do_query(__LINE__, zh, "@attr 1=4 @attr 4=105 {x my}", 3); + do_query(__LINE__, zh, "@attr 1=4 @attr 4=105 {my x}", 3); + do_query(__LINE__, zh, "@attr 1=4 @attr 4=105 {my my}", 3); + do_query(__LINE__, zh, "@attr 1=4 @attr 4=105 {e x}", 2); + do_query(__LINE__, zh, "@attr 1=4 @attr 4=106 {e x}", 2); + + do_query(__LINE__, zh, "@attr 1=4 @and x title", 2); /* exl=0 distance=2 order=1 relation=2 (<=), known, unit=word */ - do_query(__LINE__,zh, "@prox 0 2 1 2 k 2 my x", 2); + do_query(__LINE__, zh, "@prox 0 2 1 2 k 2 my x", 2); /* exl=0 distance=2 order=1 relation=2 (<=), known, unit=word */ - do_query(__LINE__,zh, "@prox 0 2 1 2 k 2 x my", 0); + do_query(__LINE__, zh, "@prox 0 2 1 2 k 2 x my", 0); /* exl=0 distance=2 order=0 relation=2 (<=), known, unit=word */ - do_query(__LINE__,zh, "@prox 0 2 0 2 k 2 x my", 2); + do_query(__LINE__, zh, "@prox 0 2 0 2 k 2 x my", 2); /* exl=0 distance=2 order=0 relation=3 (=), known, unit=word */ - do_query(__LINE__,zh, "@prox 0 2 1 3 k 2 my x", 1); + do_query(__LINE__, zh, "@prox 0 2 1 3 k 2 my x", 1); /* exl=1 distance=2 order=0 relation=3 (=), known, unit=word */ - do_query(__LINE__,zh, "@prox 1 2 1 3 k 2 my x", 1); + do_query(__LINE__, zh, "@prox 1 2 1 3 k 2 my x", 1); + + /* provoke unsupported use attribute */ + do_query_x(__LINE__, zh, "@attr 1=999 @attr 4=1 x", 0, 114); + do_query_x(__LINE__, zh, "@attr 1=999 @attr 4=6 x", 0, 114); + do_query_x(__LINE__, zh, "@attr 1=999 @attr 4=105 x", 0, 114); + do_query_x(__LINE__, zh, "@attr 1=999 @attr 4=109 123", 0, 114); + do_query_x(__LINE__, zh, "@attrset 1.2.840.10003.3.1 @attr 1=999 x", + 0, 114); + /* provoke unsupported attribute set */ + do_query_x(__LINE__, zh, "@attrset 1.2.8 @attr 1=999 @attr 4=1 x", 0, 121); + do_query_x(__LINE__, zh, "@attrset 1.2.8 @attr 1=999 @attr 4=6 x", 0, + 121); + do_query_x(__LINE__, zh, "@attrset 1.2.8 @attr 1=999 @attr 4=105 x", 0, + 121); + do_query_x(__LINE__, zh, "@attrset 1.2.8 @attr 1=999 @attr 4=109 123", + 0, 121); - return close_down(zh,zs,0); + /* provoke unsupported relation */ + do_query_x(__LINE__, zh, "@attr 1=1016 @attr 2=6 x", 0, 117); + do_query_x(__LINE__, zh, "@attr 1=1016 @attr 2=6 @attr 4=109 x", 0, 114); + + return close_down(zh, zs, 0); }