home *** CD-ROM | disk | FTP | other *** search
- /*
- * itest
- */
-
- #include <stdio.h>
- #include "db.h"
-
- main()
- {
- DATA_SET ds;
- char data[50];
- int i,j;
-
- memset(data,' ',50);
- printf("itest - Test ISAM file routines\n\n");
- rcreate();
- printf("...test file created...\n\n");
-
- ds = db_open("", "itest.dat");
- if (db_error)
- { printf("Open Failure - %s\n", db_error_msg(db_error));
- exit(0);
- }
-
- printf("...adding 100 records in reverse ...\n");
- for (i=100; i>0; i--)
- { printf("%d\n",i);
- sprintf(data,"%05d",i);
- db_add(ds, data);
- if (db_error)
- { printf("Add Failure - %s\n", db_error_msg(db_error));
- exit(0);
- }
- }
- printf("...add complete...\n\n");
-
- printf("...read forward...\n\n");
- db_read_first(ds, data);
- while (!db_error)
- { printf("%5s\n",data);
- db_read_next(ds, data);
- }
- if (db_error != DB_END_OF_FILE)
- { printf("Read Sequential - %s\n", db_error_msg(db_error));
- exit(0);
- }
- printf("...read forward complete...\n\n");
-
- printf("...read reverse...\n\n");
- db_read_last(ds, data);
- while (!db_error)
- { printf("%5s\n",data);
- db_read_prev(ds, data);
- }
- if (db_error != DB_END_OF_FILE)
- { printf("Read Sequential - %s\n", db_error_msg(db_error));
- exit(0);
- }
- printf("...read reverse complete...\n\n");
-
- printf("...find and delete...\n");
- for (i=1; i<101; i++)
- { printf("%d\n",i);
- sprintf(data,"%05d",i);
-
- db_find(ds, data, data, 0);
- if (db_error)
- { printf("Find Failure - %s\n", db_error_msg(db_error));
- exit(0);
- }
- db_delete(ds);
- if (db_error)
- { printf("Delete Failure - %s\n", db_error_msg(db_error));
- exit(0);
- }
-
- /* for (j=i+1; j<101; j++)
- * { sprintf(data,"%05d",j);
- * db_find(ds, data, data, 0);
- * printf("%d-%d\n",i,j);
- *
- * if (db_error)
- * { printf("Find Failure - %s\n", db_error_msg(db_error));
- * exit(0);
- * }
- * }
- */
- }
- printf("...find and delete complete...\n\n");
-
- printf("...adding 100 records (again) ...\n");
- for (i=1; i<100; i++)
- { printf("%d\n",i);
- sprintf(data,"%05d",i);
- db_add(ds, data);
- if (db_error)
- { printf("Add Failure - %s\n", db_error_msg(db_error));
- exit(0);
- }
- }
- printf("...add complete...\n\n");
-
- db_close(ds);
- unlink("itest.dat");
- }
-
- /*
- * rcreate - create our test random file
- */
-
- rcreate()
- {
- FILE_HDR fh;
- DATA_SET ds;
- char *calloc();
-
- fh = (FILE_HDR) calloc(1, sizeof(struct db_file_hdr));
-
- fh->fh_file_type = DB_INDEX;
- fh->fh_data_size = 50;
- fh->fh_key_size = 5;
-
- ds = db_create("", "itest.dat", fh);
- if (db_error)
- { printf("Create Failure - %s\n", db_error_msg(db_error));
- exit(0);
- }
-
- db_close(ds);
- if (db_error)
- { printf("Close Failure - %s\n", db_error_msg(db_error));
- exit(0);
- }
- }