Fix sample PQF
[yaz-moved-to-github.git] / odr / tstodr.c
index 4d681a1..ead978d 100644 (file)
@@ -2,7 +2,7 @@
  * Copyright (c) 1995-2003, Index Data
  * See the file LICENSE for details.
  *
- * $Id: tstodr.c,v 1.3 2003-05-20 19:55:30 adam Exp $
+ * $Id: tstodr.c,v 1.5 2003-05-26 13:47:23 adam Exp $
  *
  */
 #include <stdio.h>
@@ -68,16 +68,38 @@ void tst_MySequence2(ODR encode, ODR decode)
         exit(9);
     if (odr_geterror(encode) != OREQUIRED)
         exit(10);
-    if (strcmp(odr_getaddinfo(encode), "first"))
+    if (strcmp(odr_getelement(encode), "first"))
         exit(11);
     odr_reset(encode);
 
     if (odr_geterror(encode) != ONONE)
         exit(12);
-    if (strcmp(odr_getaddinfo(encode), ""))
+    if (strcmp(odr_getelement(encode), ""))
         exit(13);
 }
 
+void tst_MySequence3(ODR encode, ODR decode)
+{
+    char buf[40];
+    int i;
+    Yc_MySequence *t;
+
+    srand(123);
+    for (i = 0; i<1000; i++)
+    {
+        int j;
+        for (j = 0; j<sizeof(buf); j++)
+            buf[j] = rand();
+
+        for (j = 1; j<sizeof(buf); j++)
+        {
+            odr_setbuf(decode, buf, j, 0);
+            yc_MySequence(decode, &t, 0, 0);
+            odr_reset(decode);
+        }
+    }
+}
+
 int main(int argc, char **argv)
 {
     ODR odr_encode = odr_createmem(ODR_ENCODE);
@@ -85,6 +107,7 @@ int main(int argc, char **argv)
 
     tst_MySequence1(odr_encode, odr_decode);
     tst_MySequence2(odr_encode, odr_decode);
+    tst_MySequence3(odr_encode, odr_decode);
 
     odr_destroy(odr_encode);
     odr_destroy(odr_decode);