[SSSD] [PATCH] Remove empty directories after tests run.
Lukas Slebodnik
lslebodn at redhat.com
Wed May 22 07:06:14 UTC 2013
On (21/05/13 18:59), Lukas Slebodnik wrote:
>ehlo,
>
>This patch removes empty directories after tests run.
>Files common_dom.c and common_tev.c were moved to libsss_test_common.la.
>Empty directory tests_path was removed in function test_dom_suite_cleanup.
>Function test_dom_suite_cleanup was reused in tests.
>
>Patch attached.
>
>LS
I found another issues in test, therefore I am attaching new patches.
First patch makes libsss_test_common.la more reusable
Second patch removes empty directories.
LS
-------------- next part --------------
>From af6b36cd25d0c744ecd88de2378094a0a7ba0a4d Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lslebodn at redhat.com>
Date: Wed, 22 May 2013 08:50:29 +0200
Subject: [PATCH 1/2] Making order in tests.
--removed duplicated test-io
--reusing library libsss_test_common in other tests
--cmocka test sss_nss_idmap-tests was moved to cmocka dir
--moved leak_check.c to libsss_test_common
--moved common_tev.c,common_dom.c to libsss_test_common
(leak_check.c,common_tev.c,common_dom.c) are test framework independent
---
Makefile.am | 34 ++++++++++++----------------
src/tests/{ => cmocka}/sss_nss_idmap-tests.c | 0
src/tests/leak_check.c | 1 -
3 files changed, 14 insertions(+), 21 deletions(-)
rename src/tests/{ => cmocka}/sss_nss_idmap-tests.c (100%)
diff --git a/Makefile.am b/Makefile.am
index 94ad8c04afbb8ca5b340faf669b93bca00623aba..48ded90a52860d75f3798bbd8ab3688cde8d7a88 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -150,7 +150,6 @@ if HAVE_CMOCKA
test-find-uid \
test-io \
sss_nss_idmap-tests \
- test-io \
dyndns-tests
endif
@@ -868,12 +867,14 @@ noinst_LTLIBRARIES += \
libsss_test_common.la
libsss_test_common_la_SOURCES = \
+ src/tests/common_tev.c \
+ src/tests/common_dom.c \
+ src/tests/leak_check.c \
src/tests/common.c
if HAVE_CHECK
libsss_test_common_la_SOURCES += \
- src/tests/common_check.c \
- src/tests/leak_check.c
+ src/tests/common_check.c
sysdb_tests_DEPENDENCIES = \
$(ldblib_LTLIBRARIES)
@@ -1148,14 +1149,6 @@ sss_idmap_tests_LDADD = \
libsss_test_common.la \
libsss_idmap.la
-sss_nss_idmap_tests_SOURCES = \
- src/tests/sss_nss_idmap-tests.c
-sss_nss_idmap_tests_CFLAGS = \
- $(AM_CFLAGS)
-sss_nss_idmap_tests_LDADD = \
- $(CMOCKA_LIBS) \
- libsss_nss_idmap.la
-
pac_responder_tests_SOURCES = \
src/tests/pac_responder-tests.c \
src/responder/pac/pacsrv_utils.c
@@ -1221,14 +1214,8 @@ krb5_child_test_LDADD = \
libsss_test_common.la
if HAVE_CMOCKA
-TEST_MOCK_OBJ = \
- src/tests/common.c \
- src/tests/leak_check.c
TEST_MOCK_RESP_OBJ = \
- $(TEST_MOCK_OBJ) \
- src/tests/common_tev.c \
- src/tests/common_dom.c \
src/tests/cmocka/common_mock_resp.c \
src/responder/common/responder_packet.c \
src/responder/common/responder_cmd.c \
@@ -1254,6 +1241,7 @@ nss_srv_tests_LDFLAGS = \
-Wl,-wrap,sss_cmd_done
nss_srv_tests_LDADD = \
$(CMOCKA_LIBS) \
+ libsss_test_common.la \
libsss_idmap.la \
libsss_util.la
@@ -1284,13 +1272,18 @@ test_io_CFLAGS = \
test_io_LDADD = \
$(CMOCKA_LIBS)
+sss_nss_idmap_tests_SOURCES = \
+ src/tests/cmocka/sss_nss_idmap-tests.c
+sss_nss_idmap_tests_CFLAGS = \
+ $(AM_CFLAGS)
+sss_nss_idmap_tests_LDADD = \
+ $(CMOCKA_LIBS) \
+ libsss_nss_idmap.la
+
dyndns_tests_DEPENDENCIES = \
$(ldblib_LTLIBRARIES)
dyndns_tests_SOURCES = \
- $(TEST_MOCK_OBJ) \
$(SSSD_RESOLV_OBJ) \
- src/tests/common_tev.c \
- src/tests/common_dom.c \
src/tests/cmocka/test_dyndns.c \
src/providers/data_provider_opts.c
dyndns_tests_CFLAGS = \
@@ -1303,6 +1296,7 @@ dyndns_tests_LDFLAGS = \
dyndns_tests_LDADD = \
$(CARES_LIBS) \
$(CMOCKA_LIBS) \
+ libsss_test_common.la \
libsss_util.la
endif
diff --git a/src/tests/sss_nss_idmap-tests.c b/src/tests/cmocka/sss_nss_idmap-tests.c
similarity index 100%
rename from src/tests/sss_nss_idmap-tests.c
rename to src/tests/cmocka/sss_nss_idmap-tests.c
diff --git a/src/tests/leak_check.c b/src/tests/leak_check.c
index 89dac357bea6929cdc4eed9c4fbab214e249730c..06941195db57bd2e710c5f18678efc458fc6c840 100644
--- a/src/tests/leak_check.c
+++ b/src/tests/leak_check.c
@@ -23,7 +23,6 @@
*/
#include <stdio.h>
-#include <check.h>
#include "tests/common.h"
#include "util/util.h"
#include "util/dlinklist.h"
--
1.8.1.4
-------------- next part --------------
>From 325e337ba86a27e7c5780fe01be1772608699a19 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lslebodn at redhat.com>
Date: Wed, 22 May 2013 09:02:24 +0200
Subject: [PATCH 2/2] Remove empty directories after tests run.
Empty directory tests_path is removed in function test_dom_suite_cleanup.
Function test_dom_suite_cleanup is reused in other tests.
---
src/tests/common_dom.c | 8 ++++++++
src/tests/simple_access-tests.c | 14 ++------------
src/tests/sysdb-tests.c | 17 ++---------------
3 files changed, 12 insertions(+), 27 deletions(-)
diff --git a/src/tests/common_dom.c b/src/tests/common_dom.c
index 00e7f5ae2bfc972b8a61982c54bc5df70cbbcb20..661271d3b416d222525e9ecb1af72ba532170ed6 100644
--- a/src/tests/common_dom.c
+++ b/src/tests/common_dom.c
@@ -156,6 +156,14 @@ void test_dom_suite_cleanup(const char *tests_path,
errno, strerror(errno)));
}
+ errno = 0;
+ ret = rmdir(tests_path);
+ if (ret != 0) {
+ DEBUG(SSSDBG_CRIT_FAILURE,
+ ("Could not delete the test dir (%d) (%s)\n",
+ errno, strerror(errno)));
+ }
+
talloc_free(conf_db);
talloc_free(sys_db);
}
diff --git a/src/tests/simple_access-tests.c b/src/tests/simple_access-tests.c
index 4c78400267f1ac3de9678708ace72632b89afbe9..48ebea6f79ae8d5b414cfaab14cb4b4f04338490 100644
--- a/src/tests/simple_access-tests.c
+++ b/src/tests/simple_access-tests.c
@@ -540,7 +540,6 @@ int main(int argc, const char *argv[])
int opt;
poptContext pc;
int number_failed;
- int ret;
struct poptOption long_options[] = {
POPT_AUTOHELP
@@ -573,17 +572,8 @@ int main(int argc, const char *argv[])
number_failed = srunner_ntests_failed(sr);
srunner_free(sr);
- ret = unlink(TESTS_PATH"/"TEST_CONF_FILE);
- if (ret != EOK) {
- fprintf(stderr, "Could not delete the test config ldb file (%d) (%s)\n",
- errno, strerror(errno));
- return EXIT_FAILURE;
- }
- ret = unlink(TESTS_PATH"/"LOCAL_SYSDB_FILE);
- if (ret != EOK) {
- fprintf(stderr, "Could not delete the test config ldb file (%d) (%s)\n",
- errno, strerror(errno));
- return EXIT_FAILURE;
+ if (number_failed == 0) {
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_FILE, LOCAL_SYSDB_FILE);
}
return (number_failed==0 ? EXIT_SUCCESS : EXIT_FAILURE);
diff --git a/src/tests/sysdb-tests.c b/src/tests/sysdb-tests.c
index b30f2ed4c8e73663396e9628e5523b5fe652759a..db2d903dd2288a0356d0d30914de60ac5094a7a0 100644
--- a/src/tests/sysdb-tests.c
+++ b/src/tests/sysdb-tests.c
@@ -5293,20 +5293,7 @@ int main(int argc, const char *argv[]) {
failure_count = srunner_ntests_failed(sr);
srunner_free(sr);
if (failure_count == 0 && !no_cleanup) {
- ret = unlink(TESTS_PATH"/"TEST_CONF_FILE);
- if (ret != EOK) {
- fprintf(stderr, "Could not delete the test config ldb file (%d) (%s)\n",
- errno, strerror(errno));
- return EXIT_FAILURE;
- }
- ret = unlink(TESTS_PATH"/"LOCAL_SYSDB_FILE);
- if (ret != EOK) {
- fprintf(stderr, "Could not delete the test config ldb file (%d) (%s)\n",
- errno, strerror(errno));
- return EXIT_FAILURE;
- }
-
- return EXIT_SUCCESS;
+ test_dom_suite_cleanup(TESTS_PATH, TEST_CONF_FILE, LOCAL_SYSDB_FILE);
}
- return EXIT_FAILURE;
+ return (failure_count==0 ? EXIT_SUCCESS : EXIT_FAILURE);
}
--
1.8.1.4
More information about the sssd-devel
mailing list