Expanded tabs in all source files. Added vim/emacs local variables
[yaz-moved-to-github.git] / test / tstwrbuf.c
1 /*
2  * Copyright (C) 1995-2005, Index Data ApS
3  * See the file LICENSE for details.
4  *
5  * $Id: tstwrbuf.c,v 1.4 2005-06-25 15:46:07 adam Exp $
6  */
7
8 #include <stdlib.h>
9 #include <stdio.h>
10
11 #include <yaz/wrbuf.h>
12
13 int main (int argc, char **argv)
14 {
15     int step;
16     WRBUF wr = wrbuf_alloc();
17
18     wrbuf_free(wr, 1);
19
20     wr = wrbuf_alloc();
21
22     for (step = 1; step < 65; step++)
23     {
24         int i, j, k;
25         int len;
26         char buf[64];
27         char *cp;
28         for (j = 1; j<step; j++)
29         {
30             for (i = 0; i<j; i++)
31                 buf[i] = i+1;
32             buf[i] = '\0';
33             wrbuf_puts(wr, buf);
34         }
35         
36         cp = wrbuf_buf(wr);
37         len = wrbuf_len(wr);
38         if (len != step * (step-1) / 2)
39         {
40             printf ("tstwrbuf 1 %d len=%d\n", step, len);
41             exit(1);
42         }
43         k = 0;
44         for (j = 1; j<step; j++)
45             for (i = 0; i<j; i++)
46             {
47                 if (cp[k] != i+1)
48                 {
49                     printf ("tstwrbuf 2 %d k=%d\n", step, k);
50                     exit(1);
51                 }
52                 k++;
53             }
54         wrbuf_rewind(wr);
55     }
56     wrbuf_free(wr, 1);
57     exit(0);
58 }
59
60 /*
61  * Local variables:
62  * c-basic-offset: 4
63  * indent-tabs-mode: nil
64  * End:
65  * vim: shiftwidth=4 tabstop=8 expandtab
66  */
67