static void
gridfs_init (gridfs_test_t *gridfs_test,
             const char    *name)
{
   perf_test_init (&gridfs_test->base, name, NULL);

   gridfs_test->base.setup = gridfs_setup;
   gridfs_test->base.teardown = gridfs_teardown;
}
static void
multi_upload_init (multi_upload_test_t *upload_test)
{
   perf_test_init (&upload_test->base,
                   "TestGridFsMultiFileUpload",
                   "PARALLEL/GRIDFS_MULTI");
   upload_test->base.setup = multi_upload_setup;
   upload_test->base.before = multi_upload_before;
   upload_test->base.task = multi_upload_task;
   upload_test->base.after = multi_upload_after;
   upload_test->base.teardown = multi_upload_teardown;
}
static void
multi_download_init (multi_download_test_t *download_test)
{
   perf_test_init (&download_test->base,
                   "TestGridFsMultiFileDownload",
                   "/tmp/TestGridFsMultiFileDownload");
   download_test->base.setup = multi_download_setup;
   download_test->base.before = multi_download_before;
   download_test->base.task = multi_download_task;
   download_test->base.after = multi_download_after;
   download_test->base.teardown = multi_download_teardown;
}
static void
multi_upload_init (multi_upload_test_t *upload_test)
{
   perf_test_init (&upload_test->base,
                   "TestGridFsMultiFileUpload",
                   "parallel/gridfs_multi",
                   262144000);
   upload_test->base.setup = multi_upload_setup;
   upload_test->base.before = multi_upload_before;
   upload_test->base.task = multi_upload_task;
   upload_test->base.after = multi_upload_after;
   upload_test->base.teardown = multi_upload_teardown;
}