From 2f9114305108ae21d03f5502c16b3505a62af4ac Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Mon, 15 Nov 1999 22:47:10 +0000 Subject: [PATCH] Moved tests to extra file. --- lib/db-test.c | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++ lib/db.c | 97 ---------------------------------------------- 2 files changed, 104 insertions(+), 97 deletions(-) create mode 100644 lib/db-test.c diff --git a/lib/db-test.c b/lib/db-test.c new file mode 100644 index 00000000..6eeb8a76 --- /dev/null +++ b/lib/db-test.c @@ -0,0 +1,104 @@ +/* + * Sherlock Library -- Database Manager -- Simple Tests + * + * (c) 1999 Martin Mares + */ + +#if 1 +#include "db.c" +#else +#include "db-emul.c" +#endif + +int main(void) +{ + struct sdbm *d; + struct sdbm_options o = { + name: "db.test", + flags: SDBM_CREAT | SDBM_WRITE, + page_order: 10, + cache_size: 1024, + key_size: -1, + val_size: 4 + }; + byte buf[256]; + int i, j, k, l, m, n; +#define BIGN 10000 + + puts("OPEN"); + d = sdbm_open(&o); + if (!d) + die("failed: %m"); + + puts("WRITE"); + for(i=0; iflags & SDBM_FSYNC) fsync(d->fd); } - -#ifdef TEST - -int main(void) -{ - struct sdbm *d; - struct sdbm_options o = { - name: "db.test", - flags: SDBM_CREAT | SDBM_WRITE, - page_order: 10, - cache_size: 1024, - key_size: -1, - val_size: 4 - }; - byte buf[256]; - int i, j, k, l, m, n; -#define BIGN 100000 - - puts("OPEN"); - d = sdbm_open(&o); - if (!d) - die("failed: %m"); - - puts("WRITE"); - for(i=0; idir_shift); return 1; } - } - - puts("FETCH"); - sdbm_rewind(d); - l = 0; - m = 0; - n = 0; - for(;;) - { - j = sizeof(buf); - i = sdbm_get_next(d, buf, &j, (byte *) &k, NULL); - if (i < 0) { puts("ERRRR\n"); return 1; } - if (!i) break; - buf[j] = 0; -// printf("%s %d\n", buf, k); - l += k; - m += n++; - } - if (n != BIGN) { printf("MISMATCH COUNT %d\n", n); return 1; } - if (l != m) { printf("MISMATCH %d != %d\n", l, m); return 1; } - - puts("DELETE"); - for(i=0; idir_shift); return 1; } - } - sdbm_sync(d); - - puts("CHECK"); - sdbm_rewind(d); - if (sdbm_get_next(d, buf, NULL, NULL, NULL)) { puts("NOT EMPTY!"); return 1; } - - puts("CLOSE"); - sdbm_close(d); - puts("DONE"); - return 0; -} - -#endif -- 2.39.2