From dbd731491b19df3df4edf597ea7b646b76576b07 Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Fri, 20 Feb 2015 15:07:23 +0000 Subject: tests: always use libdbus-internal for main loop, never dbus-glib This gets rid of a potential circular dependency, which is annoying when bootstrapping. It is nice to have the regression tests use the shared libdbus, but we're about to make it possible to do that anyway, even though some of them use internal symbols. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=83115 Reviewed-by: Ralf Habacker --- test/Makefile.am | 41 ++++++++++------------------------ test/name-test/Makefile.am | 9 ++++---- test/test-utils.c | 55 +--------------------------------------------- test/test-utils.h | 15 +++---------- 4 files changed, 19 insertions(+), 101 deletions(-) (limited to 'test') diff --git a/test/Makefile.am b/test/Makefile.am index 5d49b68e..92fbdefb 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -9,7 +9,6 @@ AM_CPPFLAGS = \ -I$(top_srcdir) \ $(DBUS_STATIC_BUILD_CPPFLAGS) \ $(GLIB_CFLAGS) \ - $(DBUS_GLIB_CFLAGS) \ $(NULL) # improve backtraces from test stuff @@ -20,10 +19,9 @@ static_cppflags = \ $(AM_CPPFLAGS) \ -DDBUS_STATIC_BUILD \ -DDBUS_COMPILATION \ - -DDBUS_TEST_USE_INTERNAL \ $(NULL) -noinst_LTLIBRARIES = libdbus-testutils-internal.la +noinst_LTLIBRARIES = libdbus-testutils.la libdbus_testutils_la_SOURCES = \ test-utils.c \ @@ -37,30 +35,13 @@ libdbus_testutils_la_SOURCES += \ $(NULL) endif -# You can link either libdbus-testutils, dbus-glib and libdbus-1, -# or libdbus-testutils-internal and libdbus-internal - never both in the -# same binary. -if DBUS_WITH_DBUS_GLIB -noinst_LTLIBRARIES += libdbus-testutils.la -libdbus_testutils_la_LIBADD = \ - $(top_builddir)/dbus/libdbus-1.la \ - $(GLIB_LIBS) \ - $(DBUS_GLIB_LIBS) \ - $(NULL) -testutils_shared_if_possible_cppflags = $(AM_CPPFLAGS) -testutils_shared_if_possible_libs = libdbus-testutils.la -else testutils_shared_if_possible_cppflags = $(static_cppflags) -testutils_shared_if_possible_libs = libdbus-testutils-internal.la -endif +testutils_shared_if_possible_libs = libdbus-testutils.la -libdbus_testutils_internal_la_CPPFLAGS = \ +libdbus_testutils_la_CPPFLAGS = \ $(static_cppflags) \ $(NULL) -libdbus_testutils_internal_la_SOURCES = \ - $(libdbus_testutils_la_SOURCES) \ - $(NULL) -libdbus_testutils_internal_la_LIBADD = \ +libdbus_testutils_la_LIBADD = \ $(top_builddir)/dbus/libdbus-internal.la \ $(NULL) @@ -100,16 +81,16 @@ endif !DBUS_ENABLE_EMBEDDED_TESTS noinst_PROGRAMS= $(TEST_BINARIES) test_service_CPPFLAGS = $(static_cppflags) -test_service_LDADD = libdbus-testutils-internal.la +test_service_LDADD = libdbus-testutils.la test_names_CPPFLAGS = $(static_cppflags) -test_names_LDADD = libdbus-testutils-internal.la +test_names_LDADD = libdbus-testutils.la ## break_loader_CPPFLAGS = $(static_cppflags) ## break_loader_LDADD = $(top_builddir)/dbus/libdbus-internal.la test_shell_service_CPPFLAGS = $(static_cppflags) -test_shell_service_LDADD = libdbus-testutils-internal.la +test_shell_service_LDADD = libdbus-testutils.la test_shell_SOURCES = shell-test.c test_shell_CPPFLAGS = $(static_cppflags) -test_shell_LDADD = libdbus-testutils-internal.la +test_shell_LDADD = libdbus-testutils.la test_spawn_SOURCES = spawn-test.c test_spawn_CPPFLAGS = $(static_cppflags) test_spawn_LDADD = $(top_builddir)/dbus/libdbus-internal.la @@ -120,11 +101,11 @@ test_printf_LDADD = $(top_builddir)/dbus/libdbus-internal.la test_refs_SOURCES = internals/refs.c test_refs_CPPFLAGS = $(static_cppflags) -test_refs_LDADD = libdbus-testutils-internal.la $(GLIB_LIBS) +test_refs_LDADD = libdbus-testutils.la $(GLIB_LIBS) test_syslog_SOURCES = internals/syslog.c test_syslog_CPPFLAGS = $(static_cppflags) -test_syslog_LDADD = libdbus-testutils-internal.la $(GLIB_LIBS) +test_syslog_LDADD = libdbus-testutils.la $(GLIB_LIBS) manual_dir_iter_SOURCES = manual-dir-iter.c manual_dir_iter_CPPFLAGS = $(static_cppflags) @@ -288,7 +269,7 @@ test_fdpass_CPPFLAGS = \ $(static_cppflags) \ $(NULL) test_fdpass_LDADD = \ - libdbus-testutils-internal.la \ + libdbus-testutils.la \ $(GLIB_LIBS) \ $(NULL) diff --git a/test/name-test/Makefile.am b/test/name-test/Makefile.am index 8ed1e160..8df98990 100644 --- a/test/name-test/Makefile.am +++ b/test/name-test/Makefile.am @@ -3,7 +3,6 @@ AM_CPPFLAGS = \ -I$(top_srcdir) \ -DDBUS_COMPILATION \ -DDBUS_STATIC_BUILD \ - -DDBUS_TEST_USE_INTERNAL \ $(NULL) # if assertions are enabled, improve backtraces @@ -40,9 +39,9 @@ test_pending_call_timeout_LDADD=$(top_builddir)/dbus/libdbus-internal.la test_threads_init_LDADD=$(top_builddir)/dbus/libdbus-internal.la test_ids_LDADD=$(top_builddir)/dbus/libdbus-internal.la -test_shutdown_LDADD=../libdbus-testutils-internal.la -test_privserver_LDADD=../libdbus-testutils-internal.la -test_privserver_client_LDADD=../libdbus-testutils-internal.la -test_autolaunch_LDADD=../libdbus-testutils-internal.la +test_shutdown_LDADD=../libdbus-testutils.la +test_privserver_LDADD=../libdbus-testutils.la +test_privserver_client_LDADD=../libdbus-testutils.la +test_autolaunch_LDADD=../libdbus-testutils.la endif diff --git a/test/test-utils.c b/test/test-utils.c index 9686a9a8..cb6cf1fb 100644 --- a/test/test-utils.c +++ b/test/test-utils.c @@ -1,21 +1,6 @@ #include #include "test-utils.h" -#ifndef DBUS_TEST_USE_INTERNAL -# include -# include -#endif - -#ifdef DBUS_TEST_USE_INTERNAL -# define test_assert(x) _dbus_assert(x) -#elif defined(g_assert_true) -# define test_assert(x) g_assert_true(x) -#else -# define test_assert(x) g_assert(x) -#endif - -#ifdef DBUS_TEST_USE_INTERNAL - typedef struct { DBusLoop *loop; @@ -112,13 +97,10 @@ cdata_new (DBusLoop *loop, return cd; } -#endif /* DBUS_TEST_USE_INTERNAL */ - dbus_bool_t test_connection_setup (TestMainContext *ctx, DBusConnection *connection) { -#ifdef DBUS_TEST_USE_INTERNAL DBusLoop *loop = ctx; CData *cd; @@ -167,12 +149,6 @@ test_connection_setup (TestMainContext *ctx, dbus_connection_set_timeout_functions (connection, NULL, NULL, NULL, NULL, NULL); return FALSE; -#else /* !DBUS_TEST_USE_INTERNAL */ - - dbus_connection_setup_with_g_main (connection, ctx); - return TRUE; - -#endif /* !DBUS_TEST_USE_INTERNAL */ } static void @@ -203,8 +179,6 @@ test_connection_shutdown (TestMainContext *ctx, dbus_connection_set_dispatch_status_function (connection, NULL, NULL, NULL); } -#ifdef DBUS_TEST_USE_INTERNAL - typedef struct { DBusLoop *loop; @@ -286,13 +260,10 @@ remove_server_timeout (DBusTimeout *timeout, _dbus_loop_remove_timeout (context->loop, timeout); } -#endif /* DBUS_TEST_USE_INTERNAL */ - dbus_bool_t test_server_setup (TestMainContext *ctx, DBusServer *server) { -#ifdef DBUS_TEST_USE_INTERNAL DBusLoop *loop = ctx; ServerData *sd; @@ -331,13 +302,6 @@ test_server_setup (TestMainContext *ctx, test_server_shutdown (loop, server); return FALSE; - -#else /* !DBUS_TEST_USE_INTERNAL */ - - dbus_server_setup_with_g_main (server, ctx); - return TRUE; - -#endif /* !DBUS_TEST_USE_INTERNAL */ } void @@ -362,41 +326,24 @@ test_server_shutdown (TestMainContext *ctx, TestMainContext * test_main_context_get (void) { -#ifdef DBUS_TEST_USE_INTERNAL return _dbus_loop_new (); -#else - /* I suspect dbus-glib relies the default main context in some places */ - return g_main_context_ref (g_main_context_default ()); -#endif } TestMainContext * test_main_context_ref (TestMainContext *ctx) { -#ifdef DBUS_TEST_USE_INTERNAL return _dbus_loop_ref (ctx); -#else - return g_main_context_ref (ctx); -#endif } void test_main_context_unref (TestMainContext *ctx) { -#ifdef DBUS_TEST_USE_INTERNAL _dbus_loop_unref (ctx); -#else - g_main_context_unref (ctx); -#endif } void test_main_context_iterate (TestMainContext *ctx, dbus_bool_t may_block) { -#ifdef DBUS_TEST_USE_INTERNAL _dbus_loop_iterate (ctx, may_block); -#else - g_main_context_iteration (ctx, may_block); -#endif } void @@ -406,5 +353,5 @@ test_pending_call_store_reply (DBusPendingCall *pc, DBusMessage **message_p = data; *message_p = dbus_pending_call_steal_reply (pc); - test_assert (*message_p != NULL); + _dbus_assert (*message_p != NULL); } diff --git a/test/test-utils.h b/test/test-utils.h index b526e927..39fae77b 100644 --- a/test/test-utils.h +++ b/test/test-utils.h @@ -6,18 +6,9 @@ #include -#ifdef DBUS_TEST_USE_INTERNAL - -# include -# include - typedef DBusLoop TestMainContext; - -#else /* !DBUS_TEST_USE_INTERNAL */ - -# include - typedef GMainContext TestMainContext; - -#endif /* !DBUS_TEST_USE_INTERNAL */ +#include +#include +typedef DBusLoop TestMainContext; TestMainContext *test_main_context_get (void); TestMainContext *test_main_context_ref (TestMainContext *ctx); -- cgit v1.2.1