Commit a99c2ccf authored by Rusty Russell's avatar Rusty Russell

tdb2: speed up testing.

The time to run tests under valgrind has become excessive; particularly
the failure tests which fork().   Thus we cut down testing:

1) api-94-repack: reduce from 234 seconds to 2 seconds by cutting
   iterations, despite adding TDB_VERSION1 tests.

2) api-missing-entries: reduce from 17 seconds to under 1 second by
   not checking db inside loop, but at end.

This reduces the total ccanlint time from 729 to 489 seconds.
parent c4ca9f54
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
#include <fcntl.h> #include <fcntl.h>
#include "logging.h" #include "logging.h"
#define NUM_TESTS 50000 #define NUM_TESTS 1000
static bool store_all(struct tdb_context *tdb) static bool store_all(struct tdb_context *tdb)
{ {
...@@ -53,6 +53,9 @@ int main(int argc, char *argv[]) ...@@ -53,6 +53,9 @@ int main(int argc, char *argv[])
struct tdb_context *tdb; struct tdb_context *tdb;
int flags[] = { TDB_DEFAULT, TDB_NOMMAP, int flags[] = { TDB_DEFAULT, TDB_NOMMAP,
TDB_CONVERT, TDB_NOMMAP|TDB_CONVERT, TDB_CONVERT, TDB_NOMMAP|TDB_CONVERT,
TDB_VERSION1, TDB_VERSION1|TDB_NOMMAP,
TDB_VERSION1|TDB_CONVERT,
TDB_VERSION1|TDB_NOMMAP|TDB_CONVERT
}; };
plan_tests(sizeof(flags) / sizeof(flags[0]) * 6 + 1); plan_tests(sizeof(flags) / sizeof(flags[0]) * 6 + 1);
......
...@@ -26,16 +26,15 @@ int main(int argc, char *argv[]) ...@@ -26,16 +26,15 @@ int main(int argc, char *argv[])
.fn = failhash } }; .fn = failhash } };
hattr.base.next = &tap_log_attr; hattr.base.next = &tap_log_attr;
plan_tests(1 + 2 * NUM_RECORDS + 1); plan_tests(1 + NUM_RECORDS + 2);
tdb = tdb_open("run-missing-entries.tdb", TDB_INTERNAL, tdb = tdb_open("run-missing-entries.tdb", TDB_INTERNAL,
O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr); O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr);
ok1(tdb); if (ok1(tdb)) {
if (tdb) {
for (i = 0; i < NUM_RECORDS; i++) { for (i = 0; i < NUM_RECORDS; i++) {
ok1(tdb_store(tdb, key, data, TDB_REPLACE) == 0); ok1(tdb_store(tdb, key, data, TDB_REPLACE) == 0);
ok1(tdb_check(tdb, NULL, NULL) == 0);
} }
ok1(tdb_check(tdb, NULL, NULL) == 0);
tdb_close(tdb); tdb_close(tdb);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment