X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=test%2Fapi%2Ftestlib.c;h=124fb1d7b8fabd08df7c5bec2149b37bf4ececc5;hb=422279f19e20343e71a46c5505696b2efa455b60;hp=3eb69180808ddb93945fd8b1a79c40d02f3f4be1;hpb=2cced0fc9668eedb5fb19d721ed4aa4c3f9ed371;p=idzebra-moved-to-github.git diff --git a/test/api/testlib.c b/test/api/testlib.c index 3eb6918..124fb1d 100644 --- a/test/api/testlib.c +++ b/test/api/testlib.c @@ -1,5 +1,5 @@ -/* $Id: testlib.c,v 1.31 2006-04-04 00:02:34 adam Exp $ - Copyright (C) 1995-2005 +/* $Id: testlib.c,v 1.36 2006-08-16 13:13:53 adam Exp $ + Copyright (C) 1995-2006 Index Data ApS This file is part of the Zebra server. @@ -15,9 +15,9 @@ 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 + */ /** testlib - utilities for the api tests */ @@ -76,8 +76,8 @@ ZebraService tl_start_up(char *cfgname, int argc, char **argv) #if HAVE_SYS_RESOURCE_H #if HAVE_SYS_TIME_H struct rlimit rlim; - rlim.rlim_cur = 20; - rlim.rlim_max = 20; + rlim.rlim_cur = 60; + rlim.rlim_max = 60; setrlimit(RLIMIT_CPU, &rlim); #endif #endif @@ -176,11 +176,14 @@ int tl_query_x(ZebraHandle zh, const char *query, zint exphits, int experror) yaz_pqf_destroy(parser); if (!rpn) { + yaz_log(log_level, "could not parse pqf query %s\n", query); + printf("could not parse pqf query %s\n", query); odr_destroy(odr); return 0; } rc = zebra_search_RPN(zh, odr, rpn, setname, &hits); + odr_destroy(odr); if (experror) { int code; @@ -223,7 +226,6 @@ int tl_query_x(ZebraHandle zh, const char *query, zint exphits, int experror) return 0; } } - odr_destroy(odr); return 1; } @@ -313,10 +315,11 @@ int tl_ranking_query(ZebraHandle zh, char *query, int exphits, char *firstrec, int firstscore) { ZebraRetrievalRecord retrievalRecord[10]; - ODR odr_output = odr_createmem (ODR_ENCODE); - const char *setname="rsetname"; + ODR odr_output = 0; + const char *setname = "rsetname"; int rc; int i; + int ret = 1; if (!tl_query(zh, query, exphits)) return 0; @@ -324,49 +327,49 @@ int tl_ranking_query(ZebraHandle zh, char *query, for (i = 0; i<10; i++) retrievalRecord[i].position = i+1; - rc = zebra_records_retrieve (zh, odr_output, setname, 0, - VAL_TEXT_XML, exphits, retrievalRecord); + odr_output = odr_createmem(ODR_ENCODE); + rc = zebra_records_retrieve(zh, odr_output, setname, 0, + VAL_TEXT_XML, exphits, retrievalRecord); if (rc != ZEBRA_OK) - return 0; - - if (!strstr(retrievalRecord[0].buf, firstrec)) + ret = 0; + else if (!strstr(retrievalRecord[0].buf, firstrec)) { printf("Error: Got the wrong record first\n"); printf("Expected '%s' but got\n", firstrec); printf("%.*s\n", retrievalRecord[0].len, retrievalRecord[0].buf); - return 0; + ret = 0; } - - if (retrievalRecord[0].score != firstscore) + else if (retrievalRecord[0].score != firstscore) { printf("Error: first rec got score %d instead of %d\n", retrievalRecord[0].score, firstscore); - return 0; + ret = 0; } odr_destroy (odr_output); - return 1; + return ret; } int tl_meta_query(ZebraHandle zh, char *query, int exphits, zint *ids) { ZebraMetaRecord *meta; - ODR odr_output = odr_createmem (ODR_ENCODE); - const char *setname="rsetname"; - zint *positions = (zint *) malloc(1 + (exphits * sizeof(zint))); - int i; + const char *setname= "rsetname"; + zint *positions = 0; + int i, ret = 1; if (!tl_query(zh, query, exphits)) return 0; + positions = (zint *) xmalloc(1 + (exphits * sizeof(zint))); for (i = 0; i