Fixed several prototypes.. Most changes are f() to f(void).
[idzebra-moved-to-github.git] / test / api / testlib.c
index 124fb1d..18f3cd9 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: testlib.c,v 1.36 2006-08-16 13:13:53 adam Exp $
+/* $Id: testlib.c,v 1.39 2006-10-29 17:20:01 adam Exp $
    Copyright (C) 1995-2006
    Index Data ApS
 
@@ -44,7 +44,6 @@ int log_level=0; /* not static, t*.c may use it */
 
 void tl_start_log(int argc, char **argv)
 {
-    int cmd_level = 0;
     char logname[2048];
     if (!argv) 
         return;
@@ -59,7 +58,8 @@ void tl_start_log(int argc, char **argv)
        log_level = yaz_log_mask_str_x(argv[1], 0);
     if (argc >= 3)
        yaz_log_time_format(argv[2]);
-    yaz_log_init_level(YLOG_DEFAULT_LEVEL | log_level | cmd_level);
+    if (log_level)
+        yaz_log_init_level(log_level);
     yaz_log(log_level, "starting %s", argv[0]);
 }
 
@@ -89,7 +89,7 @@ ZebraService tl_start_up(char *cfgname, int argc, char **argv)
 /**
  * get_srcdir: return env srcdir or . (if does does not exist)
  */
-const char *tl_get_srcdir()
+const char *tl_get_srcdir(void)
 {
     const char *srcdir = getenv("srcdir");
     if (!srcdir || ! *srcdir)
@@ -240,6 +240,7 @@ int tl_scan(ZebraHandle zh, const char *query,
            int exp_pos, int exp_num, int exp_partial,
            const char **exp_entries)
 {
+    int ret = 1;
     ODR odr = odr_createmem(ODR_ENCODE);
     ZebraScanEntry *entries = 0;
     int partial = -123;
@@ -250,61 +251,71 @@ int tl_scan(ZebraHandle zh, const char *query,
 
     res = zebra_scan_PQF(zh, odr, query, &pos, &num, &entries, &partial, 
                         0 /* setname */);
-    if (res != ZEBRA_OK)
+
+    if (partial == -123)
     {
-       printf("Error: scan returned %d (FAIL), but no error was expected\n"
-              "%s\n",  res, query);
-       return 0;
+        printf("Error: scan returned OK, but partial was not set\n"
+               "%s\n", query);
+        ret = 0;
+    }
+    if (partial != exp_partial)
+    {
+        printf("Error: scan OK, with partial/expected %d/%d\n",
+               partial, exp_partial);
+        ret = 0;
+    }
+    if (res != ZEBRA_OK) /* failure */
+    {
+        if (exp_entries)
+        {
+            printf("Error: scan failed, but no error was expected\n");
+            ret = 0;
+        }
     }
     else
     {
-       int fails = 0;
-       if (partial == -123)
-       {
-           printf("Error: scan returned OK, but partial was not set\n"
-                  "%s\n", query);
-           fails++;
-       }
-       if (partial != exp_partial)
-       {
-           printf("Error: scan returned OK, with partial/expected %d/%d\n"
-                  "%s\n", partial, exp_partial, query);
-           fails++;
-       }
-       if (num != exp_num)
-       {
-           printf("Error: scan returned OK, with num/expected %d/%d\n"
-                  "%s\n", num, exp_num, query);
-           fails++;
-       }
-       if (pos != exp_pos)
-       {
-           printf("Error: scan returned OK, with pos/expected %d/%d\n"
-                  "%s\n", pos, exp_pos, query);
-           fails++;
-       }
-       if (fails)
-           return 0;
-       fails = 0;
-       if (exp_entries)
-       {
-           int i;
-           for (i = 0; i<num; i++)
-           {
-               if (strcmp(exp_entries[i], entries[i].term))
-               {
-                   printf("Error: scan OK, but entry %d term/exp %s/%s\n"
-                          "%s\n",
-                          i, entries[i].term, exp_entries[i], query);
-                   fails++;
-               }
-           }
-       }
-       if (fails)
-           return 0;
+        if (!exp_entries)
+        {
+            printf("Error: scan OK, but error was expected\n");
+            ret = 0;
+        }
+        else
+        {
+            int fails = 0;
+            if (num != exp_num)
+            {
+                printf("Error: scan OK, with num/expected %d/%d\n",
+                       num, exp_num);
+                fails++;
+            }
+            if (pos != exp_pos)
+            {
+                printf("Error: scan OK, with pos/expected %d/%d\n",
+                       pos, exp_pos);
+                fails++;
+            }
+            if (!fails)
+            {
+                if (exp_entries)
+                {
+                    int i;
+                    for (i = 0; i<num; i++)
+                    {
+                        if (strcmp(exp_entries[i], entries[i].term))
+                        {
+                            printf("Error: scan OK of %s, no %d got=%s exp=%s\n",
+                                   query, i, entries[i].term, exp_entries[i]);
+                            fails++;
+                        }
+                    }
+                }
+            }
+            if (fails)
+                ret = 0;
+        }
     }
     odr_destroy(odr);
-    return 1;
+    return ret;
 }
 
 /**