X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=test%2Fapi%2Ft6.c;h=68ae01a7a1ffd684a76a2c7f95610b784cf0e0ca;hb=1b5ef8265837240930862dddd2d7ef963a0cc211;hp=23f2cefe7ce047d14458b6adb3e4abe631b3367c;hpb=f84ad20a7a6a45d02da7f162fa6bb1137e79a07f;p=idzebra-moved-to-github.git diff --git a/test/api/t6.c b/test/api/t6.c index 23f2cef..68ae01a 100644 --- a/test/api/t6.c +++ b/test/api/t6.c @@ -1,6 +1,6 @@ -/* $Id: t6.c,v 1.5 2004-10-29 13:02:39 heikki Exp $ - Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004 - Index Data Aps +/* $Id: t6.c,v 1.15 2007-01-15 15:10:20 adam Exp $ + Copyright (C) 1995-2007 + Index Data ApS This file is part of the Zebra server. @@ -15,56 +15,85 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with Zebra; see the file LICENSE.zebra. If not, write to the -Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA -02111-1307, USA. +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ /** t6.c Insert a number of randomly generated words */ #include "testlib.h" - -int main(int argc, char **argv) +static void tst(int argc, char **argv) { int i; - ZebraService zs = start_up(0, argc, argv); - ZebraHandle zh = zebra_open (zs); + ZebraService zs = tl_start_up("zebra6.cfg", argc, argv); + ZebraHandle zh = zebra_open(zs, 0); - srand(17); - zebra_select_database(zh, "Default"); + YAZ_CHECK(zebra_select_database(zh, "Default") == ZEBRA_OK); zebra_init(zh); zebra_close(zh); - for (i = 0; i<100; i++) + for (i = 0; i<10; i++) { - char rec_buf[5120]; - int j; + int l; - zh = zebra_open (zs); - zebra_select_database(zh, "Default"); + zh = zebra_open (zs, 0); + YAZ_CHECK(zh); + + YAZ_CHECK(zebra_select_database(zh, "Default") == ZEBRA_OK); - zebra_begin_trans (zh, 1); + YAZ_CHECK(zebra_begin_trans (zh, 1) == ZEBRA_OK); - *rec_buf = '\0'; - strcat(rec_buf, ""); - j = (rand() & 15) + 1; - while (--j >= 0) + for (l = 0; l<100; l++) { - int c = 65 + (rand() & 15); - sprintf(rec_buf + strlen(rec_buf), "%c ", c); + char rec_buf[5120]; + int j; + *rec_buf = '\0'; + strcat(rec_buf, "<gils><title>"); + if (i == 0) + { + sprintf(rec_buf + strlen(rec_buf), "aaa"); + } + else + { + j = (rand() & 15) + 1; + while (--j >= 0) + { + int c = 65 + (rand() & 15); + sprintf(rec_buf + strlen(rec_buf), "%c", c); + } + } + strcat(rec_buf, ""); + j = rand() & 31; + sprintf(rec_buf + strlen(rec_buf), "%d", j); + strcat(rec_buf, ""); + zebra_add_record (zh, rec_buf, strlen(rec_buf)); } - strcat(rec_buf, ""); - j = rand() & 31; - sprintf(rec_buf + strlen(rec_buf), "%d", j); - strcat(rec_buf, ""); - zebra_add_record (zh, rec_buf, strlen(rec_buf)); - - zebra_end_trans (zh); + YAZ_CHECK(zebra_end_trans(zh) == ZEBRA_OK); zebra_close(zh); } + zh = zebra_open(zs, 0); + YAZ_CHECK(zh); - return close_down(0 /*zh*/ ,zs,0); + YAZ_CHECK(zebra_select_database(zh, "Default") == ZEBRA_OK); + + zebra_set_resource(zh, "trunclimit", "2"); + + /* check massive truncation: bug #281 */ + YAZ_CHECK(tl_query(zh, "@attr 1=4 @attr 2=1 z", -1)); + + YAZ_CHECK(tl_close_down(zh, zs)); } + +TL_MAIN +/* + * Local variables: + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ +