From 18af3bc3b0650a9972492da850c9c63555092996 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Thu, 19 Sep 2013 21:29:53 +0000 Subject: [PATCH] Bug #654196 make check fails without sqlite DBD installed Test for dbd driver for each backend before trying to test that backend git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@23180 57a11ea4-9604-0410-9ed3-97b8803252fd --- src/backend/dbi/test/test-backend-dbi-basic.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/backend/dbi/test/test-backend-dbi-basic.c b/src/backend/dbi/test/test-backend-dbi-basic.c index 6f56048d9a..9bd68ec6e5 100644 --- a/src/backend/dbi/test/test-backend-dbi-basic.c +++ b/src/backend/dbi/test/test-backend-dbi-basic.c @@ -580,10 +580,20 @@ g_free (subsuite); void test_suite_gnc_backend_dbi (void) { - create_dbi_test_suite ("sqlite3", "sqlite3"); - if (strlen (TEST_MYSQL_URL) > 0) + dbi_driver driver = NULL; + GList *drivers = NULL; + while ((driver = dbi_driver_list (driver))) + { + drivers = g_list_prepend (drivers, + (gchar*)dbi_driver_get_name (driver)); + } + if (g_list_find_custom (drivers, "sqlite3", (GCompareFunc)g_strcmp0)) + create_dbi_test_suite ("sqlite3", "sqlite3"); + if (strlen (TEST_MYSQL_URL) > 0 && + g_list_find_custom (drivers, "mysql", (GCompareFunc)g_strcmp0)) create_dbi_test_suite ("mysql", TEST_MYSQL_URL); - if (strlen (TEST_PGSQL_URL) > 0) + if (strlen (TEST_PGSQL_URL) > 0 && + g_list_find_custom (drivers, "pgsql", (GCompareFunc)g_strcmp0)) { g_setenv ("PGOPTIONS", "-c client_min_messages=WARNING", FALSE); create_dbi_test_suite ("postgres", TEST_PGSQL_URL);