Blob Blame History Raw
From 9dd73e9ad92b2905271cd5466ac237c829f1a608 Mon Sep 17 00:00:00 2001
From: Jakub Hrozek <jhrozek@redhat.com>
Date: Fri, 3 Oct 2014 16:11:08 +0200
Subject: [PATCH 07/22] TESTS: Unit tests can use confdb without using sysdb

Previously, if a test used the utility functions for setting up a test,
it had to use both sysdb and confdb. Some unit tests only need to use of
of them, for example the unit tests for the server module only need
confdb.

Reviewed-by: Pavel Reichl <preichl@redhat.com>
---
 src/tests/common_dom.c | 52 +++++++++++++++++++++++++++-----------------------
 1 file changed, 28 insertions(+), 24 deletions(-)

diff --git a/src/tests/common_dom.c b/src/tests/common_dom.c
index b96db8d9084fea9ec07be88d9c5f72c6885d8f09..bc69c5a093e17fc56e42ccedd998ab6434d85003 100644
--- a/src/tests/common_dom.c
+++ b/src/tests/common_dom.c
@@ -159,34 +159,38 @@ void test_dom_suite_cleanup(const char *tests_path,
         return;
     }
 
-    conf_db = talloc_asprintf(tmp_ctx, "%s/%s", tests_path, confdb_path);
-    if (!conf_db) {
-        DEBUG(SSSDBG_CRIT_FAILURE,
-              "Could not construct conf_db path\n");
-        goto done;
-    }
+    if (confdb_path != NULL) {
+        conf_db = talloc_asprintf(tmp_ctx, "%s/%s", tests_path, confdb_path);
+        if (!conf_db) {
+            DEBUG(SSSDBG_CRIT_FAILURE,
+                "Could not construct conf_db path\n");
+            goto done;
+        }
 
-    errno = 0;
-    ret = unlink(conf_db);
-    if (ret != 0 && errno != ENOENT) {
-        DEBUG(SSSDBG_CRIT_FAILURE,
-              "Could not delete the test config ldb file (%d) (%s)\n",
-               errno, strerror(errno));
+        errno = 0;
+        ret = unlink(conf_db);
+        if (ret != 0 && errno != ENOENT) {
+            DEBUG(SSSDBG_CRIT_FAILURE,
+                "Could not delete the test config ldb file (%d) (%s)\n",
+                errno, strerror(errno));
+        }
     }
 
-    sys_db = talloc_asprintf(tmp_ctx, "%s/%s", tests_path, sysdb_path);
-    if (!sys_db) {
-        DEBUG(SSSDBG_CRIT_FAILURE,
-              "Could not construct sys_db path\n");
-        goto done;
-    }
+    if (sysdb_path != NULL) {
+        sys_db = talloc_asprintf(tmp_ctx, "%s/%s", tests_path, sysdb_path);
+        if (!sys_db) {
+            DEBUG(SSSDBG_CRIT_FAILURE,
+                "Could not construct sys_db path\n");
+            goto done;
+        }
 
-    errno = 0;
-    ret = unlink(sys_db);
-    if (ret != 0 && errno != ENOENT) {
-        DEBUG(SSSDBG_CRIT_FAILURE,
-              "Could not delete the test ldb file (%d) (%s)\n",
-               errno, strerror(errno));
+        errno = 0;
+        ret = unlink(sys_db);
+        if (ret != 0 && errno != ENOENT) {
+            DEBUG(SSSDBG_CRIT_FAILURE,
+                "Could not delete the test ldb file (%d) (%s)\n",
+                errno, strerror(errno));
+        }
     }
 
     errno = 0;
-- 
1.9.3