|
@@ -18,23 +18,43 @@ CLEANFILES = *.gcno *.gcda
|
|
|
|
|
|
TESTS =
|
|
|
if HAVE_GTEST
|
|
|
-TESTS += run_unittests
|
|
|
-run_unittests_SOURCES = run_unittests.cc
|
|
|
-run_unittests_SOURCES += $(top_srcdir)/src/lib/dns/tests/unittest_util.h
|
|
|
-run_unittests_SOURCES += $(top_srcdir)/src/lib/dns/tests/unittest_util.cc
|
|
|
+TESTS += run_unittests run_unittests_sqlite3 run_unittests_memory
|
|
|
+
|
|
|
+#
|
|
|
+# For each specific datasource, there is a separate binary that includes
|
|
|
+# the code itself (we can't unittest through the public API). These need
|
|
|
+# to be separate because the included code, by design, contains conflicting
|
|
|
+# symbols.
|
|
|
+# We also have a 'general' run_unittests with non-datasource-specific tests
|
|
|
+#
|
|
|
+
|
|
|
+# First define the parts shared by all
|
|
|
+common_sources = run_unittests.cc
|
|
|
+common_sources += $(top_srcdir)/src/lib/dns/tests/unittest_util.h
|
|
|
+common_sources += $(top_srcdir)/src/lib/dns/tests/unittest_util.cc
|
|
|
+
|
|
|
+common_ldadd = $(GTEST_LDADD)
|
|
|
+common_ldadd += $(SQLITE_LIBS)
|
|
|
+common_ldadd += $(top_builddir)/src/lib/datasrc/libdatasrc.la
|
|
|
+common_ldadd += $(top_builddir)/src/lib/dns/libdns++.la
|
|
|
+common_ldadd += $(top_builddir)/src/lib/util/libutil.la
|
|
|
+common_ldadd += $(top_builddir)/src/lib/log/liblog.la
|
|
|
+common_ldadd += $(top_builddir)/src/lib/exceptions/libexceptions.la
|
|
|
+common_ldadd += $(top_builddir)/src/lib/cc/libcc.la
|
|
|
+common_ldadd += $(top_builddir)/src/lib/testutils/libtestutils.la
|
|
|
+common_ldadd += $(top_builddir)/src/lib/util/unittests/libutil_unittests.la
|
|
|
+
|
|
|
+
|
|
|
+# The general tests
|
|
|
+run_unittests_SOURCES = $(common_sources)
|
|
|
run_unittests_SOURCES += datasrc_unittest.cc
|
|
|
-run_unittests_SOURCES += sqlite3_unittest.cc
|
|
|
run_unittests_SOURCES += static_unittest.cc
|
|
|
run_unittests_SOURCES += query_unittest.cc
|
|
|
run_unittests_SOURCES += cache_unittest.cc
|
|
|
run_unittests_SOURCES += test_datasrc.h test_datasrc.cc
|
|
|
run_unittests_SOURCES += rbtree_unittest.cc
|
|
|
-#run_unittests_SOURCES += zonetable_unittest.cc
|
|
|
-#run_unittests_SOURCES += memory_datasrc_unittest.cc
|
|
|
run_unittests_SOURCES += logger_unittest.cc
|
|
|
-run_unittests_SOURCES += database_unittest.cc
|
|
|
run_unittests_SOURCES += client_unittest.cc
|
|
|
-run_unittests_SOURCES += sqlite3_accessor_unittest.cc
|
|
|
if !USE_STATIC_LINK
|
|
|
# This test uses dynamically loadable module. It will cause various
|
|
|
# troubles with static link such as "missing" symbols in the static object
|
|
@@ -42,24 +62,35 @@ if !USE_STATIC_LINK
|
|
|
# in this case.
|
|
|
run_unittests_SOURCES += factory_unittest.cc
|
|
|
endif
|
|
|
-# for the dlopened types we have tests for, we also need to include the
|
|
|
-# sources
|
|
|
-run_unittests_SOURCES += $(top_srcdir)/src/lib/datasrc/sqlite3_accessor.cc
|
|
|
-#run_unittests_SOURCES += $(top_srcdir)/src/lib/datasrc/memory_datasrc.cc
|
|
|
|
|
|
run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
|
|
run_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
|
|
|
|
|
|
-run_unittests_LDADD = $(GTEST_LDADD)
|
|
|
-run_unittests_LDADD += $(SQLITE_LIBS)
|
|
|
-run_unittests_LDADD += $(top_builddir)/src/lib/datasrc/libdatasrc.la
|
|
|
-run_unittests_LDADD += $(top_builddir)/src/lib/dns/libdns++.la
|
|
|
-run_unittests_LDADD += $(top_builddir)/src/lib/util/libutil.la
|
|
|
-run_unittests_LDADD += $(top_builddir)/src/lib/log/liblog.la
|
|
|
-run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libexceptions.la
|
|
|
-run_unittests_LDADD += $(top_builddir)/src/lib/cc/libcc.la
|
|
|
-run_unittests_LDADD += $(top_builddir)/src/lib/testutils/libtestutils.la
|
|
|
-run_unittests_LDADD += $(top_builddir)/src/lib/util/unittests/libutil_unittests.la
|
|
|
+run_unittests_LDADD = $(common_ldadd)
|
|
|
+
|
|
|
+
|
|
|
+# SQlite3 datasource tests
|
|
|
+run_unittests_sqlite3_SOURCES = $(common_sources)
|
|
|
+run_unittests_sqlite3_SOURCES += database_unittest.cc
|
|
|
+run_unittests_sqlite3_SOURCES += sqlite3_unittest.cc
|
|
|
+run_unittests_sqlite3_SOURCES += sqlite3_accessor_unittest.cc
|
|
|
+run_unittests_sqlite3_SOURCES += $(top_srcdir)/src/lib/datasrc/sqlite3_accessor.cc
|
|
|
+
|
|
|
+run_unittests_sqlite3_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
|
|
+run_unittests_sqlite3_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
|
|
|
+
|
|
|
+run_unittests_sqlite3_LDADD = $(common_ldadd)
|
|
|
+
|
|
|
+# In-memory datasource tests
|
|
|
+run_unittests_memory_SOURCES = $(common_sources)
|
|
|
+run_unittests_memory_SOURCES += memory_datasrc_unittest.cc
|
|
|
+run_unittests_memory_SOURCES += $(top_srcdir)/src/lib/datasrc/memory_datasrc.cc
|
|
|
+
|
|
|
+run_unittests_memory_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
|
|
+run_unittests_memory_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
|
|
|
+
|
|
|
+run_unittests_memory_LDADD = $(common_ldadd)
|
|
|
+
|
|
|
endif
|
|
|
|
|
|
noinst_PROGRAMS = $(TESTS)
|