summaryrefslogtreecommitdiffstats
path: root/src/tests
diff options
context:
space:
mode:
authorPavel Březina <pbrezina@redhat.com>2014-11-21 14:41:03 +0100
committerJakub Hrozek <jhrozek@redhat.com>2015-01-09 15:16:04 +0100
commitcb4742876508a08ba90c82466c9dba708e4bf999 (patch)
tree47333fc91bca25295690b5f9b11658275f49b90f /src/tests
parent629a188ec71155911301fddc36e360831045d2c6 (diff)
downloadsssd-cb4742876508a08ba90c82466c9dba708e4bf999.tar.gz
sssd-cb4742876508a08ba90c82466c9dba708e4bf999.tar.xz
sssd-cb4742876508a08ba90c82466c9dba708e4bf999.zip
tests: remove code duplication in single domain cleanup
Reviewed-by: Michal Židek <mzidek@redhat.com>
Diffstat (limited to 'src/tests')
-rw-r--r--src/tests/cmocka/test_dp_opts.c5
-rw-r--r--src/tests/cmocka/test_dyndns.c5
-rw-r--r--src/tests/cmocka/test_negcache.c5
-rw-r--r--src/tests/cmocka/test_nested_groups.c5
-rw-r--r--src/tests/cmocka/test_nss_srv.c5
-rw-r--r--src/tests/cmocka/test_responder_common.c5
-rw-r--r--src/tests/cmocka/test_utils.c6
-rw-r--r--src/tests/common.h4
-rw-r--r--src/tests/common_dom.c70
9 files changed, 29 insertions, 81 deletions
diff --git a/src/tests/cmocka/test_dp_opts.c b/src/tests/cmocka/test_dp_opts.c
index 0f3052ab3..8794906e7 100644
--- a/src/tests/cmocka/test_dp_opts.c
+++ b/src/tests/cmocka/test_dp_opts.c
@@ -33,7 +33,6 @@
#define TESTS_PATH "tests_opts"
#define TEST_CONF_DB "test_opt_conf.ldb"
#define TEST_DOM_NAME "opt_test"
-#define TEST_SYSDB_FILE "cache_"TEST_DOM_NAME".ldb"
#define TEST_ID_PROVIDER "ldap"
enum test_opts {
@@ -405,12 +404,12 @@ int main(int argc, const char *argv[])
/* Even though normally the tests should clean up after themselves
* they might not after a failed run. Remove the old db to be sure */
tests_set_cwd();
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
test_dom_suite_setup(TESTS_PATH);
ret = run_tests(tests);
if (ret == 0 && !no_cleanup) {
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
}
return ret;
}
diff --git a/src/tests/cmocka/test_dyndns.c b/src/tests/cmocka/test_dyndns.c
index 345c170f1..58b8aad30 100644
--- a/src/tests/cmocka/test_dyndns.c
+++ b/src/tests/cmocka/test_dyndns.c
@@ -38,7 +38,6 @@
#define TESTS_PATH "tests_dyndns"
#define TEST_CONF_DB "test_dyndns_conf.ldb"
#define TEST_DOM_NAME "dyndns_test"
-#define TEST_SYSDB_FILE "cache_"TEST_DOM_NAME".ldb"
#define TEST_ID_PROVIDER "ldap"
enum mock_nsupdate_states {
@@ -492,12 +491,12 @@ int main(int argc, const char *argv[])
/* Even though normally the tests should clean up after themselves
* they might not after a failed run. Remove the old db to be sure */
tests_set_cwd();
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
test_dom_suite_setup(TESTS_PATH);
rv = run_tests(tests);
if (rv == 0 && !no_cleanup) {
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
}
return rv;
}
diff --git a/src/tests/cmocka/test_negcache.c b/src/tests/cmocka/test_negcache.c
index b6bcb6b08..d8e28d853 100644
--- a/src/tests/cmocka/test_negcache.c
+++ b/src/tests/cmocka/test_negcache.c
@@ -52,7 +52,6 @@
#define TESTS_PATH "tests_ncache"
#define TEST_CONF_DB "test_nss_conf.ldb"
#define TEST_DOM_NAME "nss_test"
-#define TEST_SYSDB_FILE "cache_"TEST_DOM_NAME".ldb"
#define TEST_ID_PROVIDER "ldap"
/* register_cli_protocol_version is required in test since it links with
@@ -639,12 +638,12 @@ int main(void)
};
tests_set_cwd();
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
test_dom_suite_setup(TESTS_PATH);
rv = run_tests(tests);
if (rv == 0) {
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
}
return rv;
}
diff --git a/src/tests/cmocka/test_nested_groups.c b/src/tests/cmocka/test_nested_groups.c
index b64d67d3c..69033130f 100644
--- a/src/tests/cmocka/test_nested_groups.c
+++ b/src/tests/cmocka/test_nested_groups.c
@@ -34,7 +34,6 @@
#define TESTS_PATH "tests_ldap_nested_groups"
#define TEST_CONF_DB "test_ldap_nested_groups_conf.ldb"
#define TEST_DOM_NAME "ldap_nested_groups_test"
-#define TEST_SYSDB_FILE "cache_"TEST_DOM_NAME".ldb"
#define TEST_ID_PROVIDER "ldap"
#define new_test(test) \
@@ -488,12 +487,12 @@ int main(int argc, const char *argv[])
/* Even though normally the tests should clean up after themselves
* they might not after a failed run. Remove the old db to be sure */
tests_set_cwd();
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
test_dom_suite_setup(TESTS_PATH);
rv = run_tests(tests);
if (rv == 0 && !no_cleanup) {
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
}
return rv;
}
diff --git a/src/tests/cmocka/test_nss_srv.c b/src/tests/cmocka/test_nss_srv.c
index c318d94be..8f297a784 100644
--- a/src/tests/cmocka/test_nss_srv.c
+++ b/src/tests/cmocka/test_nss_srv.c
@@ -36,7 +36,6 @@
#define TESTS_PATH "tests_nss"
#define TEST_CONF_DB "test_nss_conf.ldb"
#define TEST_DOM_NAME "nss_test"
-#define TEST_SYSDB_FILE "cache_"TEST_DOM_NAME".ldb"
#define TEST_SUBDOM_NAME "test.subdomain"
#define TEST_ID_PROVIDER "ldap"
@@ -2118,12 +2117,12 @@ int main(int argc, const char *argv[])
/* Even though normally the tests should clean up after themselves
* they might not after a failed run. Remove the old db to be sure */
tests_set_cwd();
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
test_dom_suite_setup(TESTS_PATH);
rv = run_tests(tests);
if (rv == 0 && !no_cleanup) {
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
}
return rv;
}
diff --git a/src/tests/cmocka/test_responder_common.c b/src/tests/cmocka/test_responder_common.c
index a6f642ab2..48beb15fc 100644
--- a/src/tests/cmocka/test_responder_common.c
+++ b/src/tests/cmocka/test_responder_common.c
@@ -31,7 +31,6 @@
#define TESTS_PATH "tests_responder"
#define TEST_CONF_DB "test_responder_conf.ldb"
#define TEST_DOM_NAME "responder_test"
-#define TEST_SYSDB_FILE "cache_"TEST_DOM_NAME".ldb"
#define TEST_ID_PROVIDER "ldap"
#define NAME "username"
@@ -314,12 +313,12 @@ int main(int argc, const char *argv[])
/* Even though normally the tests should clean up after themselves
* they might not after a failed run. Remove the old db to be sure */
tests_set_cwd();
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
test_dom_suite_setup(TESTS_PATH);
rv = run_tests(tests);
if (rv == 0 && !no_cleanup) {
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
}
return rv;
}
diff --git a/src/tests/cmocka/test_utils.c b/src/tests/cmocka/test_utils.c
index 5dc00c4cc..f028c84b0 100644
--- a/src/tests/cmocka/test_utils.c
+++ b/src/tests/cmocka/test_utils.c
@@ -30,7 +30,7 @@
#define TESTS_PATH "tests_utils"
#define TEST_CONF_DB "test_utils_conf.ldb"
-#define TEST_SYSDB_FILE "cache_utils_test.ldb"
+#define TEST_DOM_NAME "utils_test.ldb"
#define DOM_COUNT 10
#define DOMNAME_TMPL "name_%zu.dom"
@@ -1100,12 +1100,12 @@ int main(int argc, const char *argv[])
/* Even though normally the tests should clean up after themselves
* they might not after a failed run. Remove the old db to be sure */
tests_set_cwd();
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
test_dom_suite_setup(TESTS_PATH);
rv = run_tests(tests);
if (rv == 0) {
- test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_SYSDB_FILE);
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_DB, TEST_DOM_NAME);
}
return rv;
}
diff --git a/src/tests/common.h b/src/tests/common.h
index ea3a6c9e9..714be6988 100644
--- a/src/tests/common.h
+++ b/src/tests/common.h
@@ -100,8 +100,8 @@ void test_multidom_suite_cleanup(const char *tests_path,
const char **domains);
void test_dom_suite_cleanup(const char *tests_path,
- const char *confdb_path,
- const char *sysdb_path);
+ const char *cdb_file,
+ const char *domain);
struct tevent_req *
test_request_send(TALLOC_CTX *mem_ctx, struct tevent_context *ev, errno_t err);
diff --git a/src/tests/common_dom.c b/src/tests/common_dom.c
index d314aef41..41f876555 100644
--- a/src/tests/common_dom.c
+++ b/src/tests/common_dom.c
@@ -339,8 +339,14 @@ void test_multidom_suite_cleanup(const char *tests_path,
if (domains != NULL) {
for (i = 0; domains[i] != NULL; i++) {
- sysdb_path = talloc_asprintf(tmp_ctx, "%s/cache_%s.ldb",
- tests_path, domains[i]);
+ if (strcmp(domains[i], LOCAL_SYSDB_FILE) == 0) {
+ /* local domain */
+ sysdb_path = talloc_asprintf(tmp_ctx, "%s/%s",
+ tests_path, domains[i]);
+ } else {
+ sysdb_path = talloc_asprintf(tmp_ctx, "%s/cache_%s.ldb",
+ tests_path, domains[i]);
+ }
if (sysdb_path == NULL) {
DEBUG(SSSDBG_CRIT_FAILURE, "Could not construct sysdb path\n");
goto done;
@@ -371,62 +377,10 @@ done:
}
void test_dom_suite_cleanup(const char *tests_path,
- const char *confdb_path,
- const char *sysdb_path)
+ const char *cdb_file,
+ const char *domain)
{
- errno_t ret;
- char *conf_db;
- char *sys_db;
- TALLOC_CTX *tmp_ctx;
-
- tmp_ctx = talloc_new(NULL);
- if (!tmp_ctx) {
- DEBUG(SSSDBG_CRIT_FAILURE, "talloc_new failed\n");
- return;
- }
-
- 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));
- }
- }
-
- 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));
- }
- }
+ const char *domains[] = {domain, NULL};
- errno = 0;
- ret = rmdir(tests_path);
- if (ret != 0 && errno != ENOENT) {
- DEBUG(SSSDBG_CRIT_FAILURE,
- "Could not delete the test dir (%d) (%s)\n",
- errno, strerror(errno));
- }
-
-done:
- talloc_free(tmp_ctx);
+ test_multidom_suite_cleanup(tests_path, cdb_file, domains);
}