-/* $Id: tstbfile1.c,v 1.5 2007-01-15 15:10:14 adam Exp $
+/* $Id: tstbfile1.c,v 1.6 2007-11-14 09:44:16 adam Exp $
Copyright (C) 1995-2007
Index Data ApS
*/
-#include <assert.h>
#include <stdlib.h>
#include <string.h>
#include <idzebra/bfile.h>
+#include <yaz/test.h>
void tst1(BFiles bfs)
{
bf_reset(bfs);
bf = bf_xopen(bfs, "tst", /* block size */ 32,
/* wr */ 1, "tstmagic", &version, 0 /* more_info */);
-
+ YAZ_CHECK(bf);
+ if (!bf)
+ return;
bf_xclose(bf, version, "more info");
bf = bf_xopen(bfs, "tst", /* block size */ 32,
/* wr */ 1, "tstmagic", &version, &more_info);
+
+ YAZ_CHECK(bf);
+ if (!bf)
+ return;
- if (strcmp(more_info, "more info"))
- {
- fprintf(stderr, "tstbfile1: more info data corrupt more_info=%s\n",
- more_info);
- exit(1);
- }
+ YAZ_CHECK(strcmp(more_info, "more info") == 0);
bf_xclose(bf, version, 0 /* no more info */);
}
bf = bf_xopen(bfs, "tst", /* block size */ 32,
/* wr */ 1, "tstmagic", &version, 0 /* more_info */);
-
+ YAZ_CHECK(bf);
+ if (!bf)
+ return;
bno = 0;
for (i = 1; i<30; i++)
{
int j;
for (j = 0; j<i; j++)
blocks[bno + j] = 0;
- if (bf_alloc(bf, i, blocks + bno))
- {
- fprintf(stderr, "bf_alloc failed i=%d bno=%d\n", i, bno);
- exit(1);
- }
+ YAZ_CHECK_EQ(bf_alloc(bf, i, blocks + bno), 0);
for (j = 0; j < i; j++)
{
- if (!blocks[bno + j])
- {
- fprintf(stderr, "zero block i=%d bno=%d j=%d\n", i, bno, j);
- exit(1);
- }
+ YAZ_CHECK(blocks[bno + j]);
}
bno += i;
}
for (i = 0; i<bno; i++)
{
- if (bf_free(bf, 1, blocks + i))
- {
- fprintf(stderr, "bf_freec failed i=%d\n", i);
- exit(1);
- }
+ YAZ_CHECK_EQ(bf_free(bf, 1, blocks + i), 0);
}
bf_xclose(bf, version, 0);
}
bf = bf_xopen(bfs, "tst", /* block size */ 32,
/* wr */ 1, "tstmagic", &version, 0 /* more_info */);
-
+ YAZ_CHECK(bf);
+ if (!bf)
+ return;
no_in_use = 0;
for (pass = 0; pass < 100; pass++)
{
int r = random() % 9;
- assert (no_in_use >= 0 && no_in_use <= BLOCKS);
+ YAZ_CHECK(no_in_use >= 0);
+ YAZ_CHECK(no_in_use <= BLOCKS);
if (r < 5 && (BLOCKS - no_in_use) > 0)
{
/* alloc phase */
j++;
}
}
- assert(tblocks[to_free-start-1]);
+ YAZ_CHECK(tblocks[to_free-start-1]);
bf_free(bf, to_free - start, tblocks);
}
else
bf_xclose(bf, version, 0);
}
-int main(int argc, char **argv)
+static void tst(void)
{
BFiles bfs = bfs_create(0, /* register: current dir, no limit */
0 /* base: current dir */
);
+ YAZ_CHECK(bfs);
if (!bfs)
- exit(1);
+ return;
tst1(bfs);
tst2(bfs);
tst3(bfs);
bf_reset(bfs);
bfs_destroy(bfs);
- exit(0);
}
+
+int main(int argc, char **argv)
+{
+ YAZ_CHECK_INIT(argc, argv);
+ YAZ_CHECK_LOG();
+ tst();
+ YAZ_CHECK_TERM;
+}
+
/*
* Local variables:
* c-basic-offset: 4