52ae5e2c7f5886fd1201e6c54cfc2b1b17191eae
[idzebra-moved-to-github.git] / test / api / t6.c
1 /* $Id: t6.c,v 1.6 2004-12-02 11:28:20 adam Exp $
2    Copyright (C) 2003,2004
3    Index Data Aps
4
5 This file is part of the Zebra server.
6
7 Zebra is free software; you can redistribute it and/or modify it under
8 the terms of the GNU General Public License as published by the Free
9 Software Foundation; either version 2, or (at your option) any later
10 version.
11
12 Zebra is distributed in the hope that it will be useful, but WITHOUT ANY
13 WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15 for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with Zebra; see the file LICENSE.zebra.  If not, write to the
19 Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
20 02111-1307, USA.
21 */
22
23 /** t6.c Insert a number of randomly generated words */
24
25 #include "testlib.h"
26
27 int main(int argc, char **argv)
28 {
29     int i;
30     ZebraService zs = start_up(0, argc, argv);
31     ZebraHandle zh = zebra_open(zs);
32
33     srand(17);
34     
35     zebra_select_database(zh, "Default");
36     zebra_init(zh);
37     zebra_close(zh);
38
39     for (i = 0; i<100; i++)
40     {
41         char rec_buf[5120];
42         int j;
43
44         zh = zebra_open (zs);
45         zebra_select_database(zh, "Default");
46         
47         zebra_begin_trans (zh, 1);
48
49         *rec_buf = '\0';
50         strcat(rec_buf, "<gils><title>");
51         j = (rand() & 15) + 1;
52         while (--j >= 0)
53         {
54             int c = 65 + (rand() & 15);
55             sprintf(rec_buf + strlen(rec_buf), "%c ", c);
56         }
57         strcat(rec_buf, "</title><Control-Identifier>");
58         j = rand() & 31;
59         sprintf(rec_buf + strlen(rec_buf), "%d", j);
60         strcat(rec_buf, "</Control-Identifier></gils>");
61         zebra_add_record (zh, rec_buf, strlen(rec_buf));
62
63         zebra_end_trans(zh);
64         zebra_close(zh);
65     }
66
67     return close_down(0 /*zh*/, zs, 0);
68 }